核心数据 SQLite 加密?
Posted
技术标签:
【中文标题】核心数据 SQLite 加密?【英文标题】:Core Data SQLite encryption? 【发布时间】:2011-06-08 21:08:49 【问题描述】:有人在他们的 Core Data SQLite 存储上使用过加密吗?您是如何实现的?
【问题讨论】:
【参考方案1】:我很确定在 Core Data 中使用加密的唯一方法是在应用程序退出时加密整个持久存储文件,或者在托管对象子类中使用自定义访问器来加密和解密数据,因为它们分别保存到持久存储。
【讨论】:
我认为你的第二个选项是迄今为止最好的。 谢谢。 - 您认为它会对性能产生多大影响? 我认为性能损失会很大。加密算法是计算密集型的,每次获取或设置属性时都会运行加密。最后,这将取决于您的数据大小。如果您的数据集相对较小,那么无论操作多么复杂,Core Data 操作对用户来说都是即时的,但是当您开始谈论数以千计的活动对象和数以千计的更新时,任何减速都会开始建立并变得明显。 Apple 安全框架将允许您保护相对少量的数据,因此如果您只是保存少量数据,例如登录名或密码,你应该使用它而不是重载整个核心数据堆栈。【参考方案2】:我开始包含这个精彩的项目:
https://github.com/project-imas/encrypted-core-data
在我的代码中,一切顺利。我有一个奇怪的问题,只使用 NSPredicate 在相关字段中创建搜索查询。
【讨论】:
以上是关于核心数据 SQLite 加密?的主要内容,如果未能解决你的问题,请参考以下文章