我已经用JavaScript编写了一个基本游戏并正在为它开发一个高分系统,但是因为它是用JavaScript编码的,我们都知道打开Firebug或Chrome的开发工具并编辑代码非常容易。例如,在分数中添加乘数。
有没有人知道 A)检查JavaScript的方法尚未修改和/或 B)发布分数的安全方式
答案 0 :(得分:4)
你无能为力。脚本本身将负责检查,因此无法信任。
一般来说,人们决定a)不够关心,如果出现明显的假冒高分,b)在服务器端登录用户在页面上的时间,然后再提交以确定是否合理,或者c)采取更加艰难的路径记录所有游戏动作,发送游戏,并在服务器上重放游戏(可能与选项B结合)。
然而,这些保护在一个非常基本的层面上。在某种程度上,你所能做的就是让你不值得攻击你;你永远不能完全阻止它。
答案 1 :(得分:2)
如果可行,您可以跟踪游戏中发生的事件,然后将其与分数一起发送回服务器进行验证。如果所有“事件”的分数与您收到的分数不匹配,则表示该分数无效。如果你真的希望你甚至可以发送事件,并定期验证分数。
或者,您甚至可以使用服务器来计算分数,并从JavaScript中删除该逻辑。但客户仍然可以捏造它发送给你的“事件”。
当然,这并不能使您的应用程序真正安全,只会更难打破。