Не удалось найти доверенный сертификат
-
05-07-2019 - |
Вопрос
Проблема:
Я получаю выданную ошибку из javax.net.ssl.SSLHandshakeException (см. прикрепленное изображение)
Возможно ли, чтобы Java имела поврежденный или отсутствующий сертификат CA?Если да, то как я могу исправить или устранить эту проблему / ошибку?
Вещи, которые я Пробовал:
- Я удалил все версии JRE с ПК и установил последнюю версию JRE (1.6.14).
- Очистил и удалил все ненужные доверенные сертификаты из пользовательского раздела сертификатов.
- Попробуйте запустить keytool, чтобы получить отпечатки пальцев центра сертификации
При попытке запустить keytool я получаю следующее:
ошибка ключевого инструмента:java.security.сертификат.Исключение CertificateParsingException:java.io.IOException Исключение:ключ темы, java.security.spec.Исключение InvalidKeySpecException:Неизвестная спецификация ключа.
Решение
Теоретически возможно, но ИМО крайне маловероятно, что Java имеет поврежденный сертификат CA.Более вероятно, что нужного вам сертификата CA нет в хранилище cacerts JRE.Вы можете проверить содержимое хранилища (по крайней мере, в Linux) с помощью keytool;например ,
keytool -list -keystore /usr/java/jdk1.6.0_14/jre/lib/security/cacerts
Просмотрите этот список, чтобы увидеть, можете ли вы увидеть отпечаток пальца для CAcert, который требуется для вашего URL.
Ссылка:в JDK 6.0 Инструменты разработки JDK / Средства безопасности страница/раздел.