繁体   English   中英

如何在iOS 5中关闭对核心数据的自动加密

[英]How to turn off automatic encryption for core data in iOS 5

我有一个大型核心数据存储,我不关心加密。 我担心自动加密的开销,因此我试图禁用它。

来自文档的报价是

对于为iOS 5.0或更高版本构建的应用程序,永久存储现在默认情况下以加密格式在磁盘上存储数据。

这是我正在使用的代码,它没有崩溃,但是我不是100%确定正在做任何事情。 (我从这里得到常量名)。

NSDictionary* optionsDictionary = [NSDictionary 
                                   dictionaryWithObject:NSFileProtectionNone 
                                   forKey:NSFileProtectionKey];

if (![__persistentStoreCoordinator addPersistentStoreWithType:NSSQLiteStoreType 
                                   configuration:nil
                                   URL:storeURL
                                   options:optionsDictionary
                                   error:&error]) {
  • 这是正确的代码吗?

  • 我如何知道是否已停止加密?

罗伯特,

iOS上的所有加密均在硬件中执行。 如果您看到加密文件系统的任何性能差异,我和与之交谈的Apple工程师都会感到非常惊讶。 (iOS设备上的Flash太慢了,您看不到加密延迟。)

正如您上面的注释所建议的那样,使用模拟器和运行时系统向您显示为获取而实际发出的SQL,以查看两次获取之间实际的性能差异是什么。

安德鲁

根据文档,即使在iOS5上,该代码也应关闭所有文件保护功能。 但是,您无法轻松对其进行测试。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM