2015-06-13 122 views
1

據我所知,爲啓用/打開密碼所需的設備啓用數據加密,並將該密鑰包含在addPersistentStoreWithType:方法的可選字典中。我沒有讓我的設備密碼和驗證碼項目:核心數據數據加密

NSPersistentStore *store = [self.managedObjectContext.persistentStoreCoordinator addPersistentStoreWithType:NSSQLiteStoreType 
                    configuration:nil 
                      URL:self.storeURL 
                     options:@{ NSPersistentStoreUbiquitousContentNameKey : @"iCloudStore", 
                        NSPersistentStoreFileProtectionKey : NSFileProtectionComplete} 
                      error:&error]; 

但是當我打開sqlite的數據文件中直接使用稱爲麗婭(從Mac App Store中下載)軟件,我能看到的數據在sqlite數據庫中。我使用iTunes文件共享將我的設備中的sqlite數據庫文件保存到我的Mac。

由於數據被加密,我應該無法直接使用Liya等工具直接看到數據嗎?

回答

2

加密僅適用於設備。通過iTunes或Xcode從設備複製的文件始終得到解密。當您將設備與iTunes配對時,它會在您的計算機上創建手機中所有加密密鑰的副本。這是必要的,因此iTunes可以在手機鎖定時創建備份和同步。