当有人拥有越狱设备时,objective-c中的序列化对象的安全性如何?

时间:2010-11-19 16:56:12

标签: iphone cocoa-touch security serialization keychain

我有一个游戏,我需要保存状态。我很谨慎,有意图的人可以保存游戏,然后编辑保存的文件作弊。

我正在考虑使用串行对象来存储状态数据。串行对象的安全性如何?有人能够轻松编辑吗?

我一直在使用钥匙串来存储敏感数据并且效果很好(尽管我并不是100%确定一个好的黑客无法破解钥匙串),更好的办法是将对象值存储在钥匙串,然后使用它们而不是使用序列化对象重新创建它?

由于

3 个答案:

答案 0 :(得分:3)

客户端上发生的任何事情都不安全。他可以反汇编和修补你的代码,修改你的存档游戏,编写机器人,伪造发送到服务器的数据包,......

假设他可以对客户端的源代码做任何事情。

唯一安全的事情是服务器上发生的事情。

答案 1 :(得分:2)

拥有越狱设备的用户可以比您更多地控制设备。没有安全的地方可以隐藏秘密或防止数据被修改。

答案 2 :(得分:0)

通过首先序列化对象,创建文件的校验和,然后在重新加载保存状态后对其进行检查,你总是可以让它更难破解。