JavaScript 使用 JS 开发的 H5 小游戏,但是分数被刷爆了

qinghe · 2017年11月14日 · 最后由 zouyu 回复于 2017年11月17日 · 7606 次阅读

这是一个跑分类游戏,游戏结束后更新用户分数,列出排名。 js 文件使用 uglifier,压缩成一个文件,分数通过 js MD5 处理,在游戏结束后上传到到服务器。 但是这两天,游戏分数被刷爆, 主要原因应该是 JS 源码暴露,请问大家是如何处理的?

没有什么好的办法,JS 代码是运行在客户端的,只要运行在客户端,即使你做了代码混淆也能被人家还原出来。 https://www.patrick-wied.at/blog/a-technique-for-hiding-your-javascript-code,可以看下这篇文章,这里面的保护代码的方法是把代码编码一张 canvas 图片,然后从图片里取出代码,这样也不能完美保护代码,只是这样还能搞清楚的代码的人一般都不太可能去偷代码。

与其限制用户去篡改的你 JS,不如多想点办法再后台,限制别人返回的数据

@lyb124553153 @tinyfeng 感谢,谢谢你们的建议。 找了一圈,最后决定把游戏过程数据一起返回服务器端,如果能够伪造所有的游戏数据,我只有跪服了。

针对分数做加密吧。。。指定几套分数计算规则,通过 token 匹配计算规则,后端计算真实数据。

需要 登录 后方可回复, 如果你还没有账号请 注册新账号