用户可以访问iOS上的钥匙串吗?

我们正在寻找在我们的应用程序中存储一些信息(认为相当于用户名,密码等),我们不希望用户能够插手。 一个(不好)的方法是将它们放在应用程序文件夹中的某个encryption文件中,但是如果我们这样做了,用户就可以使用任何iOS文件系统探索工具并编辑或replace该文件不想要。

如果我们将详细信息存储在钥匙串中,那么用户是否可以通过运行文件系统探索工具的钥匙串等来读取或写入这些详细信息? 或者是没有办法在没有运行该应用程序的情况下获取应用程序的钥匙链信息?

显然,如果用户黑客我们的应用程序,或有一个越狱的设备,或以某种方式中间连接发送信息到设备等,他们可以访问钥匙链项目。 我并不担心这个问题 – 只是一个使用普通的,没有受到攻击的设备,没有奇怪的应用程序的用户是否可以访问钥匙串中的数据。

谢谢你的帮助。

根据苹果文件 :

而在OS X中,任何应用程序都可以访问任何提供用户权限的钥匙串项目,而在iOS中,应用程序只能访问自己的钥匙串项目。

注意:在iPhone上,钥匙串权限取决于用于签署应用程序的供应configuration文件。 请确保始终在不同版本的应用程序中使用相同的configuration文件。

因此,如果您假设您的设备没有越狱并且钥匙串子系统正常工作,则只有您的应用程序(通过其供应configuration文件标识)可以访问其自己的钥匙串项目。 如果您有不同的应用程序共享相同的configuration文件,那么他们都可以访问相同的钥匙串项目。