【发布时间】:2018-11-07 11:27:46
【问题描述】:
我正在研究如何在 Android 设备上安全地存储敏感数据。当然,没有 100% 安全的方法,我希望尽可能安全。
我已经阅读了the official recommendations。
举个例子,我有一个存储文本的应用程序(例如私人日记)。文本存储在 xml 文件中,该文件使用密钥加密 (aes256),存储在 Android KeyStore 中。
这应该意味着数据安全地存储在加密的 xml 文件中。 root 用户仍然可以从 KeyStore 访问密钥并对其进行解密,或者在应用程序解密后获取数据。
不过,这也意味着每个应用都使用相同的密钥。所以我可以在我的手机上安装应用程序,并使用我的密钥来解密其他手机的xml日记文件。
问题是,我如何创建一个密钥或至少是盐,这对于每个应用安装都是唯一的?
【问题讨论】:
-
来自您的链接:“使用现有的加密算法,例如 Cipher 类中提供的 AES 和 RSA 的实现。”。他们将创建唯一的密钥。
标签: android encryption aes keystore key-management