2011-11-11 1 views
12

Existe-t-il une implémentation PBKDF2 pour Android? J'essaie de dériver une clé en utilisant la fonction PBKDF2. Je n'ai pas trouvé d'exemple pour le faire.Fonction PBKDF2 dans Android

Répondre

9

Options gratuites seraient:

Si un composant commercial est une option voir pour examen http://www.chilkatsoft.com/java-encryption.asp (code d'échantillon http://www.example-code.com/android/crypt2_pbkdf2.asp).

Une autre option consiste à utiliser javax.crypto et mettre en œuvre vous-même, bien que je ne recommanderais pas que ...

+0

Merci pour la réponse détaillée. – ssk

11

tard à la fête, mais beaucoup d'appareils Android ne comprennent PBKDF2 avec le SecretKeyFactory standard. Cependant, beaucoup de gens recommandent d'utiliser quelque chose comme Spongycastle pour garantir que vous aurez cet algorithme disponible.

Il ne jette une exception si elle ne peut pas trouver un

SecretKeyFactory keyFactory = null; 
    try 
    { 
     keyFactory = SecretKeyFactory.getInstance("PBKDF2WithHmacSHA1"); 
    } 
    catch (NoSuchAlgorithmException e) 
+5

L'article suivant inclut un exemple de méthode pour l'utilisation de PBKDF de SecretKeyFactory: http://android-developers.blogspot.de/2013/02/using-cryptography-to-store-credentials.html (voir la section «Encore plus de sécurité»). – user1364368

+2

Fonctionne avec l'API 10+ pour Android, comme indiqué sur https://developer.android.com/reference/javax/crypto/SecretKeyFactory.html pour tous ceux qui se demandent – Warrick

Questions connexes