Nous rencontrons un problème avec KeyManagerFactory dans Sun JRE 1.6. Nous utilisons un code similaire à celui-ci pour télécharger et utiliser un certificat en format p12:Mots de passe Sun Java KeyManagerFactory et null
KeyStore keyStore = KeyStore.getInstance(PKCS12);
KeyManagerFactory keyManagerFactory = KeyManagerFactory.getInstance(SUN_X509);
InputStream certificateFile = getSSLCertificate();
String certificatePassword = getSSLCertificatePassword();
keyStore.load(certificateFile, certificatePassword);
keyManagerFactory.init(keyStore, certificatePassword);
Ce code fonctionne correctement lorsque le mot de passe du certificat existe. Mais lorsque le mot de passe du certificat est nul (donc le certificat n'est pas protégé par un mot de passe), nous obtenons une erreur de division par zéro de la ligne keyManagerFactory.init.
Est-ce que quelqu'un sait pourquoi cela se produit? Est-il impossible d'utiliser un certificat sans mot de passe? Merci
c'est correct, vous devez avoir un mot de passe. –