Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/security/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
iOS密钥链是否在没有设备密码的情况下加密?_Ios_Security_Encryption_Keychain - Fatal编程技术网

iOS密钥链是否在没有设备密码的情况下加密?

iOS密钥链是否在没有设备密码的情况下加密?,ios,security,encryption,keychain,Ios,Security,Encryption,Keychain,到目前为止,我相信iOS钥匙链是存储用户名和密码的最佳方式。然而,我发现有这样一种说法: “如果没有密码,设备上的所有数据(包括存储在钥匙链中的敏感数据)都可以被任何人立即访问设备读取” 我已经阅读了Apple文档中的相关章节,但没有明确说明这一点 这个说法是真的还是我误解了什么 密钥链实现为存储在文件上的SQLite数据库 系统。只有一个数据库securityd守护程序决定 每个流程或应用程序可以访问哪些钥匙链项目。钥匙链访问 API导致对守护进程的调用,守护进程查询应用程序的 “钥匙链访问组

到目前为止,我相信iOS钥匙链是存储用户名和密码的最佳方式。然而,我发现有这样一种说法:

“如果没有密码,设备上的所有数据(包括存储在钥匙链中的敏感数据)都可以被任何人立即访问设备读取”

我已经阅读了Apple文档中的相关章节,但没有明确说明这一点

这个说法是真的还是我误解了什么

密钥链实现为存储在文件上的SQLite数据库 系统。只有一个数据库<代码>securityd守护程序决定 每个流程或应用程序可以访问哪些钥匙链项目。钥匙链访问 API导致对守护进程的调用,守护进程查询应用程序的 “钥匙链访问组”、“应用程序标识符”和 “应用程序组”权利。而不是限制访问 单进程访问组允许共享钥匙链项目 在应用程序之间

这意味着即使没有密码,黑客也无法访问你的钥匙链数据。 它由苹果的securityd守护进程控制。 如果没有securityd守护进程,您将无法访问keychain的数据

更新

也许这就是你想知道的:


钥匙链项目只能在同一个开发者的应用程序之间通过securityd守护程序共享。如果设备正在越狱,则无法隐藏任何内容。那么,解决您的问题的最佳解决方案是手动对应用程序数据(如AES)进行加密。在这种情况下,您如何保护加密密钥?黑客会入侵系统,这就是为什么他们被称为黑客。如果必须的话,他们不会以官方/法律的方式做事。不管怎样,问题不在于黑客能否访问钥匙链。问题是:钥匙链内容是否加密取决于是否有密码。黑客是否在这两种情况下都无法破解它是无关紧要的。-1因为答案并没有回答最初的问题“iOS密钥链是否在没有设备密码的情况下加密?”。相反,答案说iOS如何管理访问密钥链(没有第一手资料知道它实际上是如何实现的),还说“黑客即使没有密码也不能访问你的密钥链数据”,这是不正确的。应用程序数据可以加密,这也取决于设备是否有密码/pin码。然而,我相信钥匙链不会受到影响。在我遇到问题中的资源之前,我一直很自信。