客户担心数据应用程序在设备本地使用和存储的安全性(例如,他们希望防止在越狱的 iPhone 上读取我们的数据文件)。所以我想知道 - 有哪些可能的方法来确保 iPhone 上的数据安全?
编辑:我正在考虑两种存储数据的方式——一堆 xml 文件(最大大小——大约 1MB)或 sqlite 数据库。我更倾向于第二种变体,但仍然不确定
客户担心数据应用程序在设备本地使用和存储的安全性(例如,他们希望防止在越狱的 iPhone 上读取我们的数据文件)。所以我想知道 - 有哪些可能的方法来确保 iPhone 上的数据安全?
编辑:我正在考虑两种存储数据的方式——一堆 xml 文件(最大大小——大约 1MB)或 sqlite 数据库。我更倾向于第二种变体,但仍然不确定
您可能想查看这篇文章 -保护 iPhone 和 iPad 应用程序中的资源。它讨论了在构建时加密应用程序资源的方案,然后可以在您的应用程序需要时对其进行解密。解密发生在内存中,因此未受保护的临时文件不会留在文件系统上。您甚至可以将加密的 HTML、PDF 和图像直接加载到 UIWebView 中。
为了透明起见:我写了那篇文章,它托管在我自己的网站上。
任何时候代码在您无法控制的物理硬件上运行时,它都是易受攻击的——iPhone 必须具有解码数据的能力才能使用它,如果 iPhone 有这种能力,那么用户也有这种能力。如果数据足够有价值,就会有人破解你的加密。
电影业在他们的 DVD DRM 上花费了数百万美元。几周后就裂开了。
手机上提供的 commoncrypto 库支持对称加密。您可以将密钥存储在钥匙串中,该钥匙串本身是非对称加密的。解密钥匙串的密钥被烘焙到硬件中,因此您需要花费一些时间来检索数据。
(例如,他们想要阻止在越狱的 iPhone 上读取我们的数据文件)。您可以使用 localytics 移动分析(开源)来确定该应用程序是否已在越狱 iphone 中使用。他们也有高级选项。很多移动分析可用。你可以检查..