1

我需要在哪里存储将在 Android 应用程序中随每个请求提交的身份验证令牌?我要求一个安全的存储位置,例如 iphone 有钥匙串,Android 中是否有等效服务?存储在共享首选项中是否安全?

4

1 回答 1

0

在 Android 4.3+ 中有一个叫做 AndoridKeystore 的东西,它大致相当于 iOS 密钥链。是一篇很好的博客文章和官方API 示例项目

通常,如果您使用Context.MODE_PRIVATE它们创建共享首选项,则只能由您的应用程序(或由您的密钥签名的其他应用程序)访问。但是,如果设备已植根,则用户和任何应用程序都可能读取您的应用程序的私人共享首选项。

我帮助创建和维护了一个名为secure-preferences的库,以混淆存储在共享首选项中的密钥和值,以使攻击者更难攻击,然后需要对应用程序进行逆向工程(尽管这不是火箭科学)。安全首选项的一个很好的替代方案是由 SQLcipher 支持的 Mark Murphy的CWAC-prefs 。

于 2013-11-06T10:46:06.360 回答