Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/maven/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ios 核心数据加密_Ios_Core Data - Fatal编程技术网

Ios 核心数据加密

Ios 核心数据加密,ios,core-data,Ios,Core Data,据我所知,要为核心数据启用数据加密,设备需要启用/打开密码,并将此密钥包含在addPersistentStoreWithType:方法的可选字典中。我确实为我的设备启用了密码,并且在项目中启用了此代码: NSPersistentStore *store = [self.managedObjectContext.persistentStoreCoordinator addPersistentStoreWithType:NSSQLiteStoreType

据我所知,要为核心数据启用数据加密,设备需要启用/打开密码,并将此密钥包含在
addPersistentStoreWithType
:方法的可选字典中。我确实为我的设备启用了密码,并且在项目中启用了此代码:

NSPersistentStore *store = [self.managedObjectContext.persistentStoreCoordinator addPersistentStoreWithType:NSSQLiteStoreType
                                                                   configuration:nil
                                                                             URL:self.storeURL
                                                                         options:@{ NSPersistentStoreUbiquitousContentNameKey : @"iCloudStore",
                                                                                    NSPersistentStoreFileProtectionKey : NSFileProtectionComplete}
                                                                           error:&error];
但是,当我使用一个名为Liya(从Mac app store下载)的软件直接打开sqlite数据文件时,我能够看到sqlite数据库中的数据。我使用iTunes文件共享将sqlite数据库文件从设备保存到Mac


由于数据是加密的,我是否应该完全不能使用Liya之类的工具直接查看数据

加密仅在设备上有效。通过iTunes或Xcode从设备上复制的文件总是会被解密。当您将设备与iTunes配对时,它会在您的计算机上创建来自手机的所有加密密钥的副本。这是必要的,这样iTunes就可以在手机锁定时创建备份和同步