我知道在Mac操作系统上,我们可以使用Macfuse在用户空间中编写文件系统,我们可以创建一个盒子加密。我不知道在IOS上有一个框架,像FUSE、Macfuse这样的库,我可以为加密/解密文件编写我的文件系统(可能安装在目录/文件夹上)。有人能给我一个解决方案吗?
至于内置的iOS支持,有很多选项,从基于每个文件到加密应用程序的整个沙盒。我建议您阅读iOS应用程序编程指南中的"使用磁盘加密保护数据"。
但是,所有这些选项都要求用户在设备上设置密码。较旧的设备可能不支持文件系统加密。
本文档中未提及的选项之一是将DataProtectionClass
权限值设置为NSFileProtectionComplete
。这将自动保护应用程序沙盒中的所有文件。
最后,我建议您观看WWDC 2011视频保护iOS应用程序(苹果视频页面上的"保护应用程序数据"),并直接听取苹果工程师关于最佳实践的意见。这个视频几乎涵盖了苹果提供的所有内容。
编辑:
根据开发论坛上的人的说法,DataProtectionClass权限在当前iOS版本中可能无法正常工作。
您可以设置文件的NSFileProtection
属性,使其使用从用户密码派生的密钥进行加密。