當我瞄準API 18時,如何獲得下面的等效代碼?下面的代碼僅適用於API 23及以上版本。考慮到我們不能使用KeyGenParameterSpec
並且API 18代碼可能使用不推薦的API,API 18代碼的安全性又如何?如何在API 18中使用Android KeyStore API?
KeyGenerator keyGenerator = KeyGenerator.getInstance(
KeyProperties.KEY_ALGORITHM_AES, "AndroidKeyStore");
keyGenerator.init(new KeyGenParameterSpec.Builder(alias,
KeyProperties.PURPOSE_ENCRYPT | KeyProperties.PURPOSE_DECRYPT)
.setBlockModes(KeyProperties.BLOCK_MODE_CBC)
.setKeySize(256)
.setUserAuthenticationRequired(true)
.setUserAuthenticationValidityDurationSeconds(400)
.setRandomizedEncryptionRequired(false)
.setEncryptionPaddings(KeyProperties.ENCRYPTION_PADDING_PKCS7)
.build());
SecretKey key = keyGenerator.generateKey();
有沒有什麼建議可以API級別23的對稱密鑰之前產生什麼辦法? – Arst