2017-08-25 5 views
0

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?

Répondre

1

Il semble que votre fichier .p12 ne soit pas un fichier PKCS # 12 mais un type de magasin de clés différent. Je voudrais essayer de l'ouvrir avec le Keystore Explorer qui essaie d'ouvrir le fichier en utilisant tous les types de magasin de clés disponibles (PKCS12, BKS, JKS, ...).

Il peut charger le fichier que vous verrez dans les informations du fichier au bas de la veuve principale quel algorithme de chargement a réussi.

+0

Merci. Ce n'est en effet pas un fichier PKCS # 12, mais BKS. –