125 votes

Comment accéder à un keystore Java non protégé par mot de passe ou changer le mot de passe ?

J'essaie d'importer un certificat de confiance dans la base de données de l'entreprise. Keystore Java cacerts mais j'ai un problème. J'ai essayé de lister les certificats de confiance existants et il semble que le keystore ne soit pas protégé par un mot de passe.

$ 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

J'ai essayé d'importer un certificat de confiance :

$ 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

J'ai également essayé de changer le mot de passe de "aucun" à quelque chose :

$ 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

209voto

Ryan Stewart Points 46960

ce qui signifie que le keystore de cacerts n'est pas protégé par un mot de passe.

C'est une fausse supposition. Si vous lisez plus attentivement, vous verrez que la liste a été fournie sans vérifier l'intégrité du keystore parce que vous n'avez pas fourni le mot de passe. Le listing ne requiert pas de mot de passe, mais votre keystore en a bien un, comme l'indique :

Afin de vérifier son intégrité, vous devez fournir le mot de passe de votre keystore.

Le mot de passe cacerts par défaut de Java est "changeit", sauf si vous êtes sur un Mac, où c'est "changeme" jusqu'à un certain point. Apparemment, à partir de Mountain Lion (d'après les commentaires et une autre réponse ici), le mot de passe pour Mac est maintenant aussi "changeit", probablement parce qu'Oracle s'occupe maintenant de la distribution pour la JVM Mac également.

0 votes

Merci ! Je n'arrivais pas à comprendre pourquoi le mot de passe était ! !!

2 votes

Oui, merci. Quel horrible mot de passe par défaut. Je n'ai pas pu trouver ce que c'était non plus. J'ai juste supprimé le fichier cacerts et l'ai remplacé par le mien.

3 votes

Comme le dit datasmid ci-dessous, le mot de passe Mac si vous utilisez Mountain Lion est également "changeit".

57voto

user1687991 Points 131

Le mot de passe du keystore par défaut est : "changeit". J'ai fonctionné selon les commandes que vous avez entrées ici, pour l'importation du certificat. J'espère que vous avez déjà résolu votre problème.

4voto

datasmid Points 1664

Mac Mountain Lion a le même mot de passe, maintenant il utilise Oracle.

2voto

Radik Nurgaliev Points 344

Si vous utilisez l'authentification Google pour Android, le mot de passe du keystore de débogage est le suivant android comme spécifié ici : https://developers.google.com/Android/guides/client-auth

0voto

Oleksii Kyslytsyn Points 1165

Il est possible d'accéder à un keystore Java non protégé par mot de passe et de changer le mot de passe à l'aide du langage de programmation Java lui-même.

Cet article contient le code pour cela :

thetechawesomeness.ideasmatter.info

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X