提问人:Piotr Wittchen 提问时间:3/27/2022 最后编辑:Piotr Wittchen 更新时间:3/30/2022 访问量:449
如何使用 Swift 在 iOS 上正确加密/解密核心数据?
How to properly encrypt/decrypt Core Data on iOS with Swift?
问:
我是 iOS 开发的新手。我有一个本地SQLite数据库,它使用Core Data。我想加密这个数据库,所以如果有人从iPhone设备检索带有数据库的文件,则无法读取其内容。我找到了几个解决方案(包括 StackOverflow 线程)和第三方库,但它们不起作用或不支持我正在使用的功能(例如批量删除)。我在官方文档中也找不到相关信息。您能否提供一个完整的示例,在 iOS 上使用 Swift 使用 Core Data 加密 SQLite 数据库,或者给我一些提示或资源,我该怎么做?我很欣赏你的回答。
我正在按以下方式初始化数据库:
let bundle = Bundle(for: DatabaseManager.self)
let modelUrl = bundle.url(forResource: modelName, withExtension: "momd")!
let managedObjectModel = NSManagedObjectModel(contentsOf: modelUrl)!
persistentContainer = NSPersistentContainer(name: modelName, managedObjectModel: managedObjectModel)
persistentContainer.loadPersistentStores { (storeDescription, error) in
if let error = error as NSError? {
FrameworkLogger.error("Unresolved error \(String(describing: error)), \(error.userInfo)")
}
context = persistentContainer.newBackgroundContext()
如何向此代码添加加密?
问候
皮奥特
答: 暂无答案
评论