【发布时间】:2015-02-15 21:32:33
【问题描述】:
我听说我们可以加密文档,将它们转换为 NSData 并使用 WriteToFile 方法写入目录,为此我实现了以下测试:
NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
NSString *documentsDirectory = [paths objectAtIndex:0];
NSString *fileName = [documentsDirectory stringByAppendingPathComponent:@"confidencial"];
NSString *content = @"This message is confidential password number is xxxxxxxxxxxx!";
NSData *data = [content dataUsingEncoding:NSUTF8StringEncoding];
[data writeToFile:fileName options:NSDataWritingFileProtectionComplete error:nil];
文件保存在我的文档目录中,文档说命令 NSDataWritingFileProtectionComplete:
任何具有此设置的文件在设备启动十秒后都会受到保护 锁住了。这是最高级别的保护。带有这个的文件 当您的程序在 背景。当设备解锁时,这些文件不受保护。
为了检查是否为真,我锁定了我的设备(模拟器),转到我的文档目录并打开文件,令我惊讶的是,我可以阅读消息:
此消息为机密密码号码为xxxxxxxxxxxx!
为什么不加密?
【问题讨论】:
标签: objective-c nsdata writetofile