我正在开发一款小型网络Flash游戏。我有自己的服务器内置在C / Linux中,我通过闪存套接字连接到服务器。我在争论是否将大量的游戏逻辑放在客户端或服务器上。主要关注的是有人攻击代码并破坏其他人的游戏。
即使我在服务器上放置尽可能多的逻辑,如果有人可以破解代码并找出发送到服务器的消息,那么似乎无法阻止所有入侵。
我该如何处理这个以及我对AS3黑客有多担心?
答案 0 :(得分:3)
是的,反编译swf并根据需要进行修改非常容易。风险相当低,但如果有很大的可能的金钱奖励,那么我会小心。
所以,我的建议是:
修改:我想补充一点。如果服务器依赖客户端来处理某些游戏状态,您还可以使用Charles之类的工具代理,检查并修改请求。有人可以使用此工具在请求上设置断点,然后在将结果转发到服务器之前修改结果。它比反编译和修改swf更容易。
经验教训是,你不应该依赖诚实的客户。
答案 1 :(得分:3)
2年前我在一次关于保护Flash游戏的会议上发表了演讲。 Check out the slides
答案 2 :(得分:0)
Flash代码非常容易破解。我可能错了,但我认为当你对swf进行反编译时,它是一个完全反编译 - 它会为你提供变量和所有内容的原始名称。使用Cheat Engine等工具在游戏运行时修改内存也相当容易。除非您故意混淆代码和数据结构,否则我建议将大部分计算放在服务器上。