在哪里/如何存储敏感信息?

时间:2019-05-28 10:33:52

标签: android android-keystore android-jetpack android-security android-account

我目前正在使用Android应用程序,并且没有其他选择来存储一些敏感信息(例如用户名和密码)以自动验证用户身份。

我知道这是一个非常非常非常糟糕的做法,因为我使用的服务器不管理某些令牌或此类事情,所以我没有其他选择。

我阅读了很多有关该主题的文档和文章,但无法决定如何存储这些敏感信息。

我有3种可能性:

  1. 使用Android AccountManager系统
  2. 使用Android Keystore系统
  3. 使用新的Jetpack安全组件

AccountManager系统不是最佳方法,因为如文档所述:

  

重要的是要了解AccountManager不是加密服务或钥匙串。它在您传递帐户凭据时以纯文本形式存储它们。在大多数设备上,这不是特别要担心的问题,因为它将它们存储在只能由root用户访问的数据库中。但是,在具有root用户权限的设备上,具有adb访问权限的任何人都可以读取该凭据。

因此,我想使用密钥库系统或新的jetpack安全组件来存储这些敏感信息。但是老实说,我不是安全专家,我不确定要哪种方法更安全。

根据the document,新的jetpack安全组件似乎非常易于使用。

您认为此新组件不如Keystore系统安全吗?

预先感谢您的帮助!

0 个答案:

没有答案