我目前正在调查使用
Android 4.3中引入的安全/改进的Keystore.
我想在此密钥库中存储加密密钥,此密钥用于加密sqllite数据库以及我的共享首选项中包含的值.
当我查看SDK中的KeyStore示例时,我看到以下内容:
public static final String ALIAS = "my_key"
如果有人能够反编译我的代码,他们将能够看到明文别名(=从密钥库中检索加密密钥的密钥),因此他们将能够获得对我的加密密钥的引用.我怎样才能安全地管理我的ALIAS?还是我错过了这里的观点?
解决方法
别名不是敏感信息.每个密钥库都与一个密码相关联,每个密钥也有自己的(可选)密码.这些是必须保持安全的价值观.
如果没有密码,攻击者即使知道别名也无法读取您的密钥材料.