构建Java Applet时是否有任何可以阻止用户调用内部方法的步骤?
理论上,可以分析大多数对象,并且可以在客户端计算机上调用方法。
除了混淆之外还有其他任何可以帮助防止这种情况的步骤吗?
我的情况是确保从客户端直接发送最高分的游戏。
答案 0 :(得分:3)
如果你的游戏太难以自动化并且机器人以比任何人都能做的更富有成效的方式进行游戏,那么以某些随机间隔从服务器请求游戏状态是个好主意。你可以实现一个类似CAPTCHA的机制,它可以融入游戏的故事,并将Challenge-Response authentication的级别带到类似图灵的小测试中,玩家必须不时地“证明”通过解决一个特定的难题他是人。此时,您将验证分数的演变,并在给定当前系统状态的情况下,拒绝任何不符合每个级别或每单位时间最大分数的预计算公式的值。我不是安全专家,但我想这一切都会让潜在的攻击者非常困难。