【发布时间】:2016-01-26 16:23:05
【问题描述】:
我已经阅读了许多不同的帖子、线程等,这些文章、主题等都是关于存储要在整个游戏应用程序中使用的关卡数据(关卡边界数据、图像、角色、时间等)的最佳实践。
- 许多人建议使用
Property List (.plist)是合适的,因为存储游戏信息然后在需要时读取它非常简单。虽然这很容易创建和引用,但plist文件在任何方面都不完全安全,除了简单的 AES 加密字符串内容。 - 另一种方法可能是将这些数据硬编码到一个单独的类文件中,标题为
LevelData.m,并直接引用类来读取关卡数据,因为以这种方式存储它应该“更安全”,因为(从什么我知道)一旦应用程序通过 iOS App Store 进行打包和分发,用户就无法直接或根本无法访问这些类文件。 - 我还阅读了使用 SpriteKit 内置的 NSCoding,其中数据可以存档到文件(或 NSData 对象)中,然后从该存档中取消存档。
我的问题,任何人都可以建议最好的方法,或者我没有提到的方法吗?是的,我知道它们都是保存大数据的完全有效的方法,尤其是需要读取的重要且有些重复的数据,并且在安全措施方面各有利弊.我只是想找到最安全的方式来存储这些数据,而用户不能以任何方式篡改可能遇到类似问题并找到理想解决方案的其他人。
注意:我确信托管此数据服务器端并在应用程序启动时检索数据将是理想的安全方法。但是,我只是想看看哪种方法应该是严格通过在设备上存储数据的安全性方面的最佳实践。谢谢!
【问题讨论】:
标签: ios security encryption plist