3

Android JNCryptorの助けを借りて、 Cipher Algorithm "AES/CBC/PKCS7Padding"、HMAC アルゴリズム"HmacSHA256"、およびキー派生アルゴリズムを使用して暗号化コードを作成しようとしています。しかし、それは示しています:"PBKDF2WithHmacSHA256"

CryptorException: Failed to generate key from password using PBKDF2WithHmacSHA256

NoSuchAlgorithmException: SecretKeyFactory PBKDF2WithHmacSHA256 implementation not found

 try {
   SecretKeyFactory factory = SecretKeyFactory
     .getInstance(KEY_DERIVATION_ALGORITHM);
   SecretKey tmp = factory.generateSecret(new PBEKeySpec(password,
     salt, getPBKDFIterations(), AES_256_KEY_SIZE * 8));
   return new SecretKeySpec(tmp.getEncoded(), AES_NAME);
  } catch (GeneralSecurityException e) {
   throw new CryptorException(String.format(
     "Failed to generate key from password using %s.",
     KEY_DERIVATION_ALGORITHM), e);
  }

どんな助けでも大歓迎です。

4

1 に答える 1

2

私のソフトウェア JNCryptor について話していることに気づかずにコメントしてしまったことをお詫びします。

プロジェクトのフォークhttps://github.com/t0mm13b/AndroJNCryptorを見ることができます。これは、Android 関連のいくつかの改善をコードに加えようとしています。あなたの問題はそのコードベースで解決できると思います。

私の知る限り、 という名前のアルゴリズムを提供する Android プロバイダーはありませんPBKDF2WithHmacSHA256。かなりイライラします!

于 2014-07-04T20:27:21.763 に答える