【问题标题】:Encrypting Core Data加密核心数据
【发布时间】:2012-11-25 12:48:06
【问题描述】:

我正在尝试加密我的核心数据。

正如另一个问题所建议的,我已经阅读了 Nick Harris https://nickharris.wordpress.com/2010/07/14/core-data-and-enterprise-iphone-applications-protecting-your-data/ 的以下帖子。

首先在我的设备上,我在设置中打开了我的密码。

然后在我的 appDelegate 中,当我创建我的 persistentStoreCoordinator 时,我将以下属性 NSFileProtectionComplete 添加到我的核心数据存储文件中,据我了解,这意味着当设备被密码锁定时,我的核心数据应该被加密或不可访问.

NSDictionary *fileAttributes = [NSDictionary dictionaryWithObject:NSFileProtectionComplete forKey:NSFileProtectionKey];
 if (![[NSFileManager defaultManager] setAttributes:fileAttributes ofItemAtPath:[storeURL path] error:&error]) {
        NSLog(@"Cant encrypt");
    }

但是,完成所有这些操作后,即使设备密码被锁定,我仍然可以使用 iExplorer 访问应用程序沙箱和包含 .sqllite 文件的文档文件夹,并且我可以将整个文件放到我的桌面上并完整查看未加密。

我错过了什么吗??

【问题讨论】:

  • 有人对此有任何想法吗?

标签: objective-c ios encryption


【解决方案1】:

以防万一有人感兴趣,我想通了为什么我愚蠢地认为我的问题中提到的苹果提供的加密不起作用.... 我正在打开我的 CoreData 文件的加密并进行测试,我只是尝试使用 iExplorer 从我的设备中获取 .sqlLite 文件。它似乎正在访问该文件,因为 .sqlLite 文件是使用我的 sqlLite 浏览器打开的。但是,它实际上并没有从设备打开最新文件,而是打开了文件的缓存版本...

【讨论】:

  • 正确。有同样的问题。
猜你喜欢
  • 2013-02-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-03-02
  • 1970-01-01
  • 1970-01-01
  • 2020-02-28
相关资源
最近更新 更多