| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Java: Работа с сетью > проверить принадлежит ли данный сертификат к роот |
| Автор: heizer 4.8.2010, 10:53 |
| Доброго времени суток у меня следующая проблема есть Роот сертификат(А) и есть сертификаты (Б) которые были сделаны при его помощи. Можно как нибуть считать в яве что сертификат А является Роот сертификат для Б огромное всем спасибо. |
| Автор: Mabramyan 4.8.2010, 12:32 | ||
|
| Автор: heizer 4.8.2010, 17:31 | ||||
спасибо на следующей неделе попробую и отпишусь получилось или нет ещё какие нибуть предложения будут зарание благодарен |
| Автор: heizer 27.8.2010, 12:35 |
| Работает нужно только ешё в трастманагер (MyTrustManager implements X509TrustManager) следующую функтцию переписать public void checkServerTrusted(X509Certificate[] chain, String authType) throws CertificateException . . iFelherCode = -1 ; . . . ((Certificate) myCerts.get(j)).verify(chain[i].getPublicKey()); . . . где chain ето то что передаот сервер а myCerts сертификат в Клиенте если verify проходит нормально значит сертификаты подходяд если нет следуюшие исключения потом можно при помощи переменной catch (InvalidKeyException e) { iFelherCode = 0; } catch (CertificateException e) { iFelherCode = 1; } catch (NoSuchAlgorithmException e) { iFelherCode = 2; } catch (NoSuchProviderException e) { iFelherCode = 3; } catch (SignatureException e) { iFelherCode = 4; } потом можно самому вызывать исключения if (iFelherCode != -1) { throw new CertificateException(strExceptionMessage); } |