2017-10-04 10 views
0

Ich versuche, einen privaten Schlüssel Elliptische Kurve zu generieren, aber ich bekomme diesen Fehler auf Android-Betriebssystemversionen 5 und 6. Unten ist der Code zum Generieren des PrivateKey mit EC-Kryptografie .Android: InvalidKeySpecException: Routinen mit elliptischen Kurven: EC_GROUP_new_by_curve_name: UNKNOWN_GROUP

private static java.security.PrivateKey createPrivateKey(List<PrivateKey> privateKeys, String appInstallationIdentifier) throws Exception { 
    PrivateKey privateKey = getPrivateKeyForActivation(privateKeys); 
    String key = decryptMessage(privateKey.getEncryptedPrivateKey(), appInstallationIdentifier, privateKey.getIv()); 

    key = key.replace("-----BEGIN PRIVATE KEY-----", "") 
      .replace("-----END PRIVATE KEY-----", "") 
      .replaceAll("\\s", ""); 

    byte[] privateKeyFileContent = decode(key); 

    KeyFactory keyFactory = KeyFactory.getInstance("EC"); 
    PKCS8EncodedKeySpec ks = new PKCS8EncodedKeySpec(privateKeyFileContent); 
    return keyFactory.generatePrivate(ks); 
} 

Und hier ist es, die Fehler, die ich auf OS-Versionen erhalten Sie 5 und 6

java.security.spec.InvalidKeySpecException: java.lang.RuntimeException: error:0f06707b:elliptic curve routines:EC_GROUP_new_by_curve_name:UNKNOWN_GROUP 

Irgendwelche Ideen, warum ich diese Fehler erhalten? auch EC soll ab API 11 und höher unterstützt werden, daher sollte die Verwendung von EC kein Problem sein.

Antwort

0

Sie müssen vorsichtig sein, wenn Sie davon ausgehen, welche Kryptoalgorithmen auf einem Gerät und von welcher Version unterstützt werden.

Einige Anbieter stellen sogar eigene Versionen von Sicherheitsanbietern bereit, die noch mehr Probleme verursachen. ich empfehlen würde versuchen, Ihren eigenen Sicherheitsanbieter Installation namens SpongyCastle und wenn Sie glauben, dass die Europäische Kommission auf diesen Telefonen unterstützt werden, sollten Sie hier die verfügbaren Algorithmen wie vorgeschlagen überprüfen:

http://mobile.developer.com/ws/android/encrypting-with-android-cryptography-api.html

Verwandte Themen