Mik*_*e76 5 android keystore android-keystore
我使用以下代码将对称密钥导入 Android 密钥库,如本示例所示: https: //developer.android.com/reference/kotlin/android/security/keystore/KeyProtection
final SecretKey aesKey = new SecretKeySpec(myKeyByteArray, 0, myKeyByteArray.length, "AES");
final KeyStore keyStore = KeyStore.getInstance("AndroidKeyStore");
keyStore.load(null);
keyStore.setEntry(
"my_key_alias",
new KeyStore.SecretKeyEntry(aesKey),
new KeyProtection.Builder(KeyProperties.PURPOSE_ENCRYPT | KeyProperties.PURPOSE_DECRYPT)
.setBlockMode(KeyProperties.BLOCK_MODE_GCM)
.setEncryptionPaddings(KeyProperties.ENCRYPTION_PADDING_NONE)
.build());
Run Code Online (Sandbox Code Playgroud)
还可以使用以下代码生成随机 AES 密钥:
final KeyGenerator keyGenerator = KeyGenerator.getInstance("AES");
keyGenerator.init(AES_KEY_LEN);
final SecretKey aesKey = keyGenerator.generateKey();
....
Run Code Online (Sandbox Code Playgroud)
请注意,此密钥生成器不会在安全硬件中生成密钥。它只是在应用程序进程中生成一个随机密钥。
如何将外部生成的对称密钥导入 Android 密钥存储?我是否需要采取一些使用公私密钥对的解决方法来加密对称密钥?
编辑:没有必要的解决方法。可以使用上述代码将外部生成的密钥导入到 Android 密钥库中。
| 归档时间: |
|
| 查看次数: |
1453 次 |
| 最近记录: |