1

我正在为流行的 Minecraft 服务器软件 Bukkit 编写一个插件。

我的插件需要将玩家分数发送到我的服务器,以制定全球排行榜。

看到Java可以反编译,有人可以反编译插件,并找出它是如何工作的(无论如何它是开源的)。我正在寻找一种将数据发送到我的服务器(玩家分数)的方法,这样它就不会被欺骗,并且排行榜也不会被操纵。

我正在考虑让插件的用户(服务器所有者)注册到排行榜站点,然后使用他们自己的用户名/密码组合连接到我的排行榜。如果它被滥用,我可以简单地从排行榜中阻止该服务器。然而,这不是最有效的方法,因为我必须管理连接并批准杀死的数量。

我将如何确保客户端(Bukkit 服务器插件)不能欺骗杀戮?

4

2 回答 2

3

如果您担心合法用户受过足够的教育以反编译您的 jar,了解您的代码并弄清楚如何从您的插件发送错误数据,那么身份验证方法没有用(用户已经是合法的),我假设逻辑计算你想要的东西不能驻留在服务器中。在这种情况下,您最好的选择是混淆您的代码

于 2013-01-27T17:47:17.500 回答
1

让它开源是阻止你的原因。如果它是封闭源代码,您可以混淆您的 jar,并且反编译您的代码会更加困难。

如果您仍然希望它是开源的,您可以关注快速增长的服务器或得分非常高的服务器。但是就像你说的那样,这是非常低效的。

在 Bukkit 论坛上发帖,他们可能会为您提供更好的答案。

于 2013-01-27T21:04:02.390 回答