J'essaie d'utiliser KeyStore pour obtenir des informations à partir d'un keystore. J'ai généré le keystore en utilisant cette commande:Chargement du fichier keystore, aucun alias trouvé
keytool -genkey -alias server -keyalg RSA -keystore server.keystore -validity 365
pris this page.
Vérification ses informations keytool -list -v -keystore server.keystore
je reçois le texte suivant:
Nom Alias: serveur
Date de création: 30 avril 2014
Type d'entrée: PrivateKeyEntry
longueur de chaîne de certificat: 1
certificat [1 ]:
(autres informations ici)
En utilisant cette commande: keytool -list -keystore server.keystore -alias server
Je reçois ceci:
serveur30 Avr 2014, PrivateKeyEntry, empreinte de certificat (SHA1): 28: 65: 5B: 0C: B3: 3C: C9: AA: F1: 7C: CE: 91: 23: 77: DD: 0D: F8: 54: 70: B9
maintenant, mon code java:
keyStore = KeyStore.getInstance(KeyStore.getDefaultType());
keyStore.load(getClass().getResourceAsStream(KEYSTORE_FILE_PATH), "myPass".toCharArray());
keyStore.getCertificate("server").getPublicKey().getEncoded(); //here I get a null pointer exception - keystore.getCertificate("server") returns null.
Faire keyStore.aliases()
retourne un EmptyEnumeration.
L'application utilise maven, java ee 7 et j'ai copié le fichier keystore dans le dossier resources de mon application. KEYSTORE_FILE_PATH a la valeur "/server.keystore".
Merci.
Le projet utilise cependant plusieurs modules maven et le keystore a été construit dans le pot respectif et d'après ce que j'ai sorti du débogage, le type vu à l'exécution était ZipEntry. Déplacer le fichier vers le module emballé comme guerre a fait l'affaire. Merci. – Radu