如何安全地存储应用程序私有文件?

问题描述 投票:1回答:2

阅读了有关stackoverflow的一些文章和主题之后。我发现连入设备后都可以读取Context.MODE_PRIVATE中存储的文件。

那么,我必须有哪些私人存储文件的选项,这些文件只能由我的应用读取。

加密是我唯一的选择吗?我将保持文件加密,并且只有我的应用程序知道如何解密。

android平台是否为此目的提供任何其他机制?

android encryption android-file
2个回答
1
投票

实际上,对文件加密似乎是防止对数据进行无限制访问的很好的防御措施。

Android为您提供了一系列工具来安全地加密和解密您的数据:

    如果您想
  • 使用用户的生物特征保护数据](例如指纹或虹膜扫描(目前不同的生物特征具有不同的安全级别),则Biometrics API是理想的选择。)使用Biometrics API,您可以向用户询问其指纹/虹膜。用户通过身份验证后,您可以加密一些数据并存储加密的文本(和密码初始化向量),而不是存储明文(例如,在共享首选项或文件中)。请参阅here如何使用。
  • 如果您想安全地存储加密密钥,证书或类似的PKI相关数据
  • ,则可以使用key stores。密钥库是一个加密的文件,其中的每个条目都可以使用不同的密码进行保护。请参阅here如何使用。

    Android提供了生成新的key pairssecret keys的方法。


0
投票

[有些库提供Hawk之类的Secure Share Pref,足以满足您的目的。

© www.soinside.com 2019 - 2024. All rights reserved.