我有一个应用程序,下载几个pdf和图像,并将它们保存在Documents
目录中。我需要这些文件受到所有试图通过iExplorer等工具访问它们的人的保护。我发现iOS安全指南,并启用了Data Protection
功能。然后我试图以这种方式创建一个txt文件:如何使用加密保护Documents目录中的数据?
let documentsPath = NSSearchPathForDirectoriesInDomains(FileManager.SearchPathDirectory.documentDirectory, FileManager.SearchPathDomainMask.userDomainMask, true).first!
let filePath = documentsPath + "/hello.txt"
FileManager.default.createFile(atPath: filePath, contents: Data.init(base64Encoded: "HELLOOOOOOOO"), attributes: [kCFURLFileProtectionKey as String: FileProtectionType.complete])
于是,我试图用IEXPLORER访问txt文件,我能做到这一点对于任何其他非保护的文件。我确实已将我的iPhone解锁并锁定,等待5分钟后。这些文件在那里没有任何问题。我真的需要知道是否有办法让他们无法访问,至少在设备被锁定时。
我在想的另一个解决方案是使用自定义算法对Documents文件夹中的文件进行加密,但这样在发生大文件的情况下,我们会失去打开文件的速度,因为每次我们需要解密它,需要大量的时间,这取决于文件本身的大小。
对此提出建议?