在Android上是否有相当于iOS的钥匙串?
我对首选项API 的理解是它未加密。对于我的应用程序而言,这些凭据是否跨设备持久存在无关紧要(即iPhone-like Keychain in Android?不同的用例)
我还查看了 KeyStore API ,但它似乎将用户凭据的实际存储空间留给了应用程序开发人员。
感谢您的帮助!
答案 0 :(得分:9)
简短的回答,没有一个。但是你可以期望文件系统是安全的。
每个应用程序在不同的用户下运行,用于存储应用程序数据的文件系统由普通的UNIX用户权限保护。因此,默认情况下,每个应用程序的文件访问都是沙箱。文件系统也可以加密。
开发人员网站上的这个页面更好地解释了它:http://developer.android.com/guide/topics/security/security.html
答案 1 :(得分:3)
扩展@DJPlayer的回答:
一些相关文章。第三个包括一个github应用程序,演示如何使用密钥库提供程序生成密钥,然后加密字符串。
另请参阅Android Storage Options了解存储加密密码的方法 - 我建议使用共享首选项。
请注意,根据具有root访问权限的第二篇文章以及您的应用程序如何使用密钥库(可能通过反编译您的apk获得)的一些知识,可以劫持私钥并使用它来解密加密的材料(例如:持久密码)
答案 2 :(得分:3)
实际上有:
通过将Smart Lock for Passwords集成到Android应用中,您可以 使用凭据自动为用户签名 已经救了。用户可以保存用户名 - 密码凭据和 联合身份提供者凭证。
使用智能锁将智能锁密码集成到您的应用中 Credentials API用于在登录时检索已保存的凭据。使用 成功检索凭据以签署用户,或使用 凭证API通过部分完成快速加入新用户 您的应用登录或注册表单。登录后提示用户或 注册以存储他们的凭证以供将来自动使用 认证
https://developers.google.com/identity/smartlock-passwords/android/
答案 3 :(得分:-3)