如果尚未启用用户密码锁,我如何使用iOS磁盘加密保护数据?

Edw*_*lde 7 security iphone encryption ios

使用NSData.writeToFile时,如何确保数据已加密:options:error:使用NSDataWritingFileProtectionComplete

背景研究:启用数据加密

根据Apple文档:

大多数iOS设备都提供数据保护,并且符合以下要求:

  • 用户设备上的文件系统必须支持数据保护.这适用于较新的设备,但对于某些早期设备,用户可能必须重新格式化设备的磁盘并从备份中恢复任何内容.

  • 用户必须为设备设置活动密码锁.

https://developer.apple.com/library/ios/#documentation/iPhone/Conceptual/iPhoneOSProgrammingGuide/AdvancedAppTricks/AdvancedAppTricks.html#//apple_ref/doc/uid/TP40007072-CH7-SW11

要求声明用户必须为设备激活密码锁,以下最终用户文档强调了这一点:

通过为您的设备配置密码来启用数据保护:

  1. 点按设置>常规>密码.
  2. 按照提示创建密码.
  3. 设置密码后,向下滚动到屏幕底部并确认可以看到"数据保护已启用"文本.

密码锁定屏幕

http://support.apple.com/kb/HT4175

类似的SO问题:

如何确定iPhone用户当前是否设置了密码并启用加密?似乎这个问题的答案不再有效.

mih*_*iho 1

要求规定用户必须激活设备的密码锁,以下最终用户文档强化了这一点。

如果用户没有启用任何密码,则加密将毫无用处。无论如何,不​​需要的用户可以直接使用该应用程序。


解决您的问题的方法是手动对应用程序数据实施加密,并使用您在每次应用程序启动时询问用户的应用程序特定密码。

我在 iOS 网上银行软件中看到过该系统,但我不推荐该系统,因为它对用户来说非常烦人。