iPhone数据存储 - 了解什么是安全的,什么是不安全的

时间:2011-01-24 14:27:20

标签: iphone objective-c xcode sqlite

我正在开发我的第一个iPhone应用程序,目前正在考虑是否部署包含数据的应用程序,而不是调用Web服务来获取信息。显而易见的好处是那些您连接不良/不存在的情况,我可以轻松地编写可以在应用程序内定期更新客户端数据的内容。

我不确定如何存储数据 - sqlite,核心数据,plist或iphone文件结构 - 仅仅因为我不希望有人解压缩已部署的应用程序并获取原始数据。

这实际上是可行的吗?或者作为应用程序部署后,几乎所有东西都可以访问?

2 个答案:

答案 0 :(得分:2)

如果您使用sqlite,核心数据,plist或iphone文件结构,则无法阻止某人访问存储在设备上的数据。至少不在合理的范围内。

您可以轻松地做的是使数据无法用于未经授权的访问。换句话说:加密它。

如果您存储加密数据的格式取决于应用程序的需求。

答案 1 :(得分:1)

这很难做到。最简单的方法是使用Xcode Organizer面板,然后查看已安装的应用程序。如果它是您的某个应用程序(与您的开发凭证匹配),那么Xcode将为您提供下载应用程序的沙盒文件夹(docs,temp等)的选项。

从内存中,无法对另一个不属于您的应用程序执行此操作。简而言之,您可以安全地在应用中包含数据。老实说,如果有人想要获得这些数据,他们总会给予足够的时间和资源(这是我对所有安全性的看法)。