我见过很多在线高分的Flash游戏。不仅是 Flash 游戏,还有游戏制作者游戏。服务器端如何验证客户端是否真的收到了它声称的分数?
问问题
259 次
2 回答
3
取决于避免作弊者的重要性。如果它不重要,只需相信来自客户的分数。如果它有点重要,您可以使用密钥对其进行签名(尽管此密钥需要存在于客户端中,并且可能进行逆向工程)。如果非常重要,您可以监控整个游戏过程,在游戏过程中计算服务器上的分数并检测不可能的动作;这将要求作弊者能够将整个看似合理的游戏回放到您的服务器,以便让您相信他们的分数。
于 2012-05-30T13:32:18.520 回答
3
对于我制作的游戏(不是 Flash),我动态提供了一个 salt,客户端代码必须使用这个 salt 对一些我可以在服务器上验证的东西(用户名、IP、整个游戏、分数)进行哈希处理. 在我看来,这与调试检测(基于时间)之类的一些东西相结合,对于大多数情况来说已经足够强大了。
于 2012-05-30T13:32:44.527 回答