我将开发一个服务器/客户端模式的游戏。客户端和服务器端通过TCP套接字进行通信。为了服务器的数据安全,我们用一些密钥加密了我们的数据流。
但问题是,actionscript代码很容易用工具反编译。因此,即使在混淆之后,密钥也是不安全的。如果你想花更多的时间,你仍然可以恢复它。
我也检查了FlashCC项目,但当组合stage3d时,它将花费我们的成本。
有没有办法把我的钥匙藏起来?
发布于 2013-01-17 09:31:51
我得出的结论是,你不可能拥有一个100%牢不可破的主权财富基金。你唯一能做的就是增加障碍来阻止黑客。
正如评论中所说,最安全的方法是将整个游戏逻辑放在服务器上,让服务器自己计算分数(或其他敏感数据)。但根据游戏类型的不同,这可能是一个非常愚蠢的想法。
发布于 2013-01-16 15:50:43
在套接字上使用非对称加密TLS或SSL。虽然flash Player11有原生的SecureSocket,但它也有一些问题,所以我推荐你从as3cryptolib获取TLSSocket (here是官方as3crypto库的最新版本的分支,带有来自issues列表的一些关键修复)
https://stackoverflow.com/questions/14353038
复制相似问题