在钥匙串中存储游戏状态和分数

时间:2017-12-02 22:27:23

标签: ios objective-c keychain

我试图在钥匙串中存储我的游戏的一些字符串(得分,lastPlayedLevel等)。因为据说它是最安全的方法。 由于我是Keychain概念的新手,因此在理解“非常简单”的事情时遇到了问题。

我使用SAMKeychain包装器,我想设置lastPlayedLevel字符串,如下所示

[SAMKeychain setPassword:@"25" forService:[[NSBundle mainBundle] bundleIdentifier] account:@"lastPlayedLevel"];

这是一种正确的方法吗?我不确定“帐户”部分。我希望“lastPlayedLevel”在用户的所有设备上同步。我是否必须编写用户特定的字符串?

1 个答案:

答案 0 :(得分:1)

将得分和游戏状态放入钥匙串是骇人听闻的。您需要做的只是将它们存储在NSUserDefaults中,但在存储之前将数据编码为二进制文件,这样任何打开NSUSerDefaults文件的人都无法立即查看/编辑它。如果你想要更多保密,那么在编码为二进制之前先对值进行编码(例如char xor或其他)。