1
我试图使用存储下面的代码在Android密钥库AES密钥:的Android密钥库:不支持的密钥算法:AES/CBC/PKCS5Padding
SecretKey AESkey = new SecretKeySpec(
byteKey, 0, byteKey.length, "AES/CBC/PKCS5Padding");
if (ks == null)
{
ks = KeyStore.getInstance("AndroidKeyStore");
ks.load(null);
}
ks.deleteEntry("aes_key");
ks.setEntry("aes_key",
new KeyStore.SecretKeyEntry(AESkey),
new KeyProtection.Builder(KeyProperties.PURPOSE_ENCRYPT |
KeyProperties.PURPOSE_DECRYPT)
.setBlockModes(KeyProperties.BLOCK_MODE_CBC)
.setEncryptionPaddings(KeyProperties.ENCRYPTION_PADDING_PKCS7)
.build());
与该生产线的参数的setEntry(...)“失败throwig:
java.security.KeyStoreException: java.lang.IllegalArgumentException: Unsupported secret key algorithm: AES/CBC/PKCS5Padding
我如何保存我的Android.KeyStore关键?
'CBC'和'PKCS5Padding'不是键的一部分,但键的大小是。 – zaph
@zaph你想说我必须改变行SecretKeySpec( byteKey,0,byteKey.length,“AES/CBC/PKCS5Padding”);到新的SecretKeySpec( byteKey,0,byteKey.length,“AES”); ? – JoeFox