¿Cómo accedo a un almacén de claves Java sin contraseña o cambio la contraseña?


121

Estoy intentando importar un certificado de confianza al almacén de claves de cacerts de Java , pero tengo un problema. Intenté enumerar los certificados de confianza existentes y parece que el almacén de claves no está protegido por contraseña.

$ keytool -list -keystore cacerts
Enter keystore password:

*****************  WARNING WARNING WARNING  *****************
* The integrity of the information stored in your keystore  *
* has NOT been verified!  In order to verify its integrity, *
* you must provide your keystore password.                  *
*****************  WARNING WARNING WARNING  *****************

Keystore type: JKS
Keystore provider: SUN

Your keystore contains 76 entries

Intenté importar un certificado de confianza:

$ keytool -importcert -alias "JiraCert" -file /root/c9ssl.crt -keystore /etc/java-6-sun/security/cacerts
Enter keystore password:  
Keystore password is too short - must be at least 6 characters
Enter keystore password:  
Keystore password is too short - must be at least 6 characters
Enter keystore password:  
Keystore password is too short - must be at least 6 characters
Too many failures - try later

También intenté cambiar la contraseña de "ninguna" a algo:

$ keytool -storepasswd -keystore cacerts.back
Enter keystore password:
Keystore password is too short - must be at least 6 characters
Enter keystore password:
Keystore password is too short - must be at least 6 characters
Enter keystore password:
Keystore password is too short - must be at least 6 characters
Too many failures - try later

Respuestas:


206

lo que significa que el almacén de claves de cacerts no está protegido por contraseña

Esa es una suposición falsa. Si lee más detenidamente, encontrará que la lista se proporcionó sin verificar la integridad del almacén de claves porque no proporcionó la contraseña. La lista no requiere una contraseña, pero su almacén de claves definitivamente tiene una contraseña, como lo indica:

Para verificar su integridad, debe proporcionar su contraseña del almacén de claves.

La contraseña predeterminada de cacerts de Java es "changeit", a menos que estés en una Mac, donde es "changeme" hasta cierto punto. Aparentemente, a partir de Mountain Lion (basado en comentarios y otra respuesta aquí), la contraseña para Mac ahora también es "changeit", probablemente porque Oracle ahora también está manejando la distribución para Mac JVM.


¡Gracias! ¡No pude entender por qué era la contraseña!
Jesse Barnum

2
Si gracias. Qué terrible contraseña predeterminada. Tampoco pude averiguar qué era. Acabo de eliminar el archivo cacerts y lo reemplacé con el mío.
HeyWatchThis

3
Como dice el datasmid a continuación, la contraseña de Mac si está ejecutando Mountain Lion también es "changeit"
Niro

19
"La contraseña de cacerts predeterminada de Java es" changeit "": ¡+1000 si pudiera! ¡Gracias Stackoverflow!
Neil Vass

55

La contraseña del almacén de claves por defecto es: "changeit". Funcioné según mis comandos que ingresó aquí, para la importación del certificado. Espero que ya hayas resuelto tu problema.



Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.