keyGenerator 中的提供程序和密钥名称
Provider and key name in keyGenerator
假设我们像这样创建一个 instance
of KeyStore
:
private val ANDROID_KEYSTORE = "AndroidKeyStore"
val keyStore = KeyStore.getInstance(ANDROID_KEYSTORE)
在代码中设置 ANDROID_KEYSTORE
String
的最佳和安全方法是什么?
为了生成 paramsBuilder
我们使用这样的键名 :
private fun createSecretKey(keyName: String){
val paramsBuilder= KeyGenParameterSpec.Builder(keyName,...)
}
我们传进去的keyName
取什么名字比较好fun
我们应该怎么坚持还是无所谓?
您如何跟踪 of/store 您的 keyName
并不重要。这不是安全问题。您也可以将其保存为源文件中的常量。
这通常称为 Keystore 别名,就像在 documentation. When you generate a key in the keystore, you will have to specify an alias. You will have to use the same alias to refer/access 以后的密钥中一样。
据我所知,别名有两点要记住:
- 每个密钥库条目的别名应该是唯一的。
- 别名不应仅在大小写上有所不同。根据实现,密钥库别名可能是 case-sensitive/case-insensitive。因此,为了谨慎起见,不要在 KeyStore 中使用仅大小写不同的别名。
假设我们像这样创建一个 instance
of KeyStore
:
private val ANDROID_KEYSTORE = "AndroidKeyStore"
val keyStore = KeyStore.getInstance(ANDROID_KEYSTORE)
在代码中设置 ANDROID_KEYSTORE
String
的最佳和安全方法是什么?
为了生成 paramsBuilder
我们使用这样的键名 :
private fun createSecretKey(keyName: String){
val paramsBuilder= KeyGenParameterSpec.Builder(keyName,...)
}
我们传进去的keyName
取什么名字比较好fun
我们应该怎么坚持还是无所谓?
您如何跟踪 of/store 您的 keyName
并不重要。这不是安全问题。您也可以将其保存为源文件中的常量。
这通常称为 Keystore 别名,就像在 documentation. When you generate a key in the keystore, you will have to specify an alias. You will have to use the same alias to refer/access 以后的密钥中一样。
据我所知,别名有两点要记住:
- 每个密钥库条目的别名应该是唯一的。
- 别名不应仅在大小写上有所不同。根据实现,密钥库别名可能是 case-sensitive/case-insensitive。因此,为了谨慎起见,不要在 KeyStore 中使用仅大小写不同的别名。