Код: Выделить всё
private SecretKey decryptDataKey(String encryptedDataKeyString) throws NoSuchAlgorithmException, InvalidKeyException,
NoSuchPaddingException, IllegalBlockSizeException, BadPaddingException, UnrecoverableKeyException, java.security.KeyStoreException, InvalidAlgorithmParameterException, NoSuchProviderException {
java.security.Key masterKey = getOrCreateKey();
Cipher cipher = Cipher.getInstance(transformation);
cipher.init(Cipher.DECRYPT_MODE, masterKey); // No GCMParameterSpec
byte[] encryptedDataKey = android.util.Base64.decode(encryptedDataKeyString, android.util.Base64.DEFAULT); // Correct Base64 class
byte[] decryptedDataKey = cipher.doFinal(encryptedDataKey);
return new SecretKeySpec(decryptedDataKey, KeyProperties.KEY_ALGORITHM_AES);
}

но код выдал ошибку "java.security.InvalidKeyException: при расшифровке требуется IV. Используйте IvParameterSpec или AlgorithmParameters для предоставления. это."
следуйте документации, все выглядит хорошо https://developer.android.com/reference ... ipher#init(int,%20java.security. Ключ)
Прошу Близнецов и других ИИ и даже прошу специально реализовать этот рецепт. Проблема при использовании отпечатка пальца Android: при расшифровке требуется IV. Чтобы предоставить его, используйте IvParameterSpec или AlgorithmParameters, но это не удалось. ИИ также понимает, что не так в строке cipher.init(Cipher.DECRYPT_MODE, masterKey)
Подробнее здесь: https://stackoverflow.com/questions/793 ... uired-when