iPhone 应用程序可以加密其存储的数据吗?因此,即使是拥有越狱 iOS 设备的用户也无法访问该文件。例如,游戏中心可能与本地数据同步,您不希望用户操纵分数。您也不希望您的 IAP 被规避。
在写入设备之前是否有一种简单的方法来加密您的数据?
可能我的问题不是很清楚。事实上,他们是:
当我使用像这样的东西时:[array writeToFile:path atomically:YES];是否有任何自动加密可确保只有我的应用才能正确访问该文件?
如果不能,最简单的实现方式是什么?
PS:现在我发现 NSData 可以完成这项工作,但是 NSDataWritingFileProtectionComplete 标志需要 #if __IPHONE_4_0 <= __IPHONE_OS_VERSION_MAX_ALLOWED
.我想知道在不受支持的设备上会发生什么情况?
最佳答案
@GrahamLee 对 this question 的回答中有关 iOS 加密的更多信息和其他 iOS 上标记的问题 security.stackexchange.com .
基本总结是——仅基于 iPhone 控件:
- 如果有人拥有设备且未锁定,他们可以访问所有数据
- 如果有人拥有设备并且设备已锁定,他们可以获得大部分数据,甚至可能是所有数据(可能有一些异常(exception)情况)
您可以在存储数据时混淆并在您的应用程序中使用加密,但攻击者可以对该加密代码进行逆向工程以进行解密。
您需要计算出此类 DRM 技术的值(value),并决定它们在这种情况下是否值得。
关于iphone - iOS 如何加密存储持久数据?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7511376/