Dans mon application Android, j'ai un fichier de magasin de clés nommé keystore.p12
, qui se trouve dans /data/data/com.company.myapp/files
. J'ai tiré ce fichier particulier et maintenant je veux récupérer la clé stockée à l'intérieur.toDerInputStream rejette le type de balise 0 - Impossible de lire la clé à partir du magasin de clés
Je l'ai essayé avec le keytool comme ceci:
>keytool.exe -list -keystore C:\Users\user\Desktop\keystore.p12 -storepass letmein -storetype PKCS12 -v
Malheureusement, je reçois l'erreur suivante:
keytool error: java.io.IOException: toDerInputStream rejects tag type 0
java.io.IOException: toDerInputStream rejects tag type 0
at sun.security.util.DerValue.toDerInputStream(DerValue.java:874)
at sun.security.pkcs12.PKCS12KeyStore.engineLoad(PKCS12KeyStore.java:1915)
at java.security.KeyStore.load(KeyStore.java:1445)
at sun.security.tools.keytool.Main.doCommands(Main.java:795)
at sun.security.tools.keytool.Main.run(Main.java:343)
at sun.security.tools.keytool.Main.main(Main.java:336)
J'ai essayé la même chose avec Java, mais je l'expérience de la même exception:
public static void main(String[] args) {
try {
FileInputStream is = new FileInputStream("C:\\Users\\user\\Desktop\\keystore.p12");
KeyStore keystore = KeyStore.getInstance("pkcs12");
keystore.load(is, "letmein".toCharArray());
is.close();
} catch (Exception ex) {
ex.printStackTrace();
}
}
Une idée de comment je peux résoudre ce problème?
Merci. Ce n'est en effet pas un fichier PKCS # 12, mais BKS. –