No se pudo encontrar el certificado de confianza
-
05-07-2019 - |
Pregunta
Problema :
Recibo un error de javax.net.ssl.SSLHandshakeException (ver imagen adjunta)
¿Es posible que Java tenga un certificado de CA corrupto o faltante? Si es así, ¿cómo puedo reparar o resolver este problema / error?
Cosas que he probado:
- He eliminado todas las versiones de JRE de la PC e instalé la última versión de JRE (1.6.14).
- Se limpiaron y eliminaron todos los Certificados de confianza innecesarios de la sección de Certificados de Usuario.
- Intente ejecutar keytool para obtener las huellas digitales de los CA
Al intentar ejecutar Keytool obtengo lo siguiente:
error de herramienta clave: java.security.cert.CertificateParsingException: java.io.IOException: subject key, java.security.spec.InvalidKeySpecException: Especificación de clave desconocida.
Solución
Teóricamente es posible, pero IMO es muy poco probable, que Java tenga un certificado de CA corrupto. Es más probable que el certificado de CA que desea no esté en la tienda de cacerts de JRE. Puede verificar el contenido de la tienda (al menos en Linux) usando 'keytool'; por ejemplo
keytool -list -keystore /usr/java/jdk1.6.0_14/jre/lib/security/cacerts
Escanee esa lista para ver si puede ver la huella digital para el certificado que requiere su URL.
Referencia: JDK 6.0 Herramientas de desarrollo de JDK / Herramientas de seguridad página / sección.