用户的健康相关数据是隐私的东西,它需要非常安全,即它需要存储在安全的地方。例如,我在看苹果官方的指纹解锁视频时,他们告诉我指纹数据存储在无法破解的地方。所以,出于好奇,我有一个问题,这些数据安全地存储在哪里?
我查看了 Apple 文档中的此链接,但找不到其中的信息。我发现的一件事是数据被加密并存储在哪里?
有没有人有同样的想法?
用户的健康相关数据是隐私的东西,它需要非常安全,即它需要存储在安全的地方。例如,我在看苹果官方的指纹解锁视频时,他们告诉我指纹数据存储在无法破解的地方。所以,出于好奇,我有一个问题,这些数据安全地存储在哪里?
我查看了 Apple 文档中的此链接,但找不到其中的信息。我发现的一件事是数据被加密并存储在哪里?
有没有人有同样的想法?
Apple 在本文档中描述了各种 iOS 功能的安全属性。去引用:
此数据存储在受保护的数据保护类中,除非打开。设备锁定 10 分钟后,对数据的访问将被放弃,并且在用户下次输入密码或使用 Touch ID 或 Face ID 解锁设备时,数据将变得可访问。
阅读文档的“加密和数据保护”部分,了解有关数据保护的更多信息。任何应用程序都可以对其持久数据使用“受保护的除非打开”数据保护类。
如您所知,NSUserDefaults 可以简单有效地将小而简单的数据(例如 NSNumbers 或 NSStrings)保存到设备的文件系统中。但这些数据绝不会安全存储,因为黑客可以很容易地从设备上访问它。
您已经发现敏感数据是加密的。但是您需要在需要存储的位置找到答案。答案是:
Keychain Services:Apple 提供了 Keychain Services API 来解决这个问题,并帮助开发人员构建安全处理密码和其他敏感信息的应用程序。
现在问题可能会提出为什么?答案是:Keychain 很棒,因为数据在存储到文件系统之前会自动进行加密,因此无需浪费时间构建加密算法。
您可以通过此链接获得更好的解释。 https://developer.apple.com/documentation/security/keychain_services