是否有可能对一个数字进行编码,这样,在前端(使用javascript),我就可以知道这个数字,并在没有黑客的情况下用它计算出来吗?
我正在做一个浏览器游戏,它使用服务器端逻辑和客户端逻辑。
例如:
敌人的生命值是100。这可以在后端(服务器)中编码。
炮塔每秒伤害= 1。后端知道它,前端知道它。
我想计算一下离0还有多长时间(直到敌人被炮塔杀死)。
但我希望黑客不会发现敌人有100健康,通过查看我的源代码和转录它。
我不能设置这样的东西: will_die_at = 10分钟后。因为玩家会通过知道确切的死亡时间来发现这个敌人的生命值很低。敌人的生命值可以从10到100 K不等。出于战略目的,我们不应该知道这一点。
我相信任何在前端解析这个数字的解码功能也可以被黑客发现,他们也可以得到这个数字:)
另一个问题是,我不能每分钟都问服务器,否则敌人已经死了。因为战场上有数以百计的敌人。我的服务器会完全超载。这只应在前面进行:)
这是一个基于服务器的浏览器HTML5 MMO.我相信有些人会尽力破解我的代码,找出这些数字,并为其他玩家制作有用的脚本/助手/缓存。这将导致不公平的PvP。
到目前为止,我有两个选择:
发布于 2017-07-20 20:37:10
因为浏览器完全在用户控制之下,所以这是不可能的。您可以混淆您的代码和值,但不能对它们进行加密,以便其他人无法解密它们。因为如果你用非解密的方式加密它,你的程序也就无法解密了。
服务器交互是必要的,因为您需要一个“保护区域”来隐藏您的秘密。
https://stackoverflow.com/questions/45224663
复制相似问题