0

对不起最后一个问题。(我讨厌谷歌 traductor)。

我在 MMO(大型多人在线)游戏中工作,但我多次看到一些服务器模拟器,例如 Lineage 2 或 NCSoft 的 Aion。

我的游戏是基于 C++ 的,服务​​器模拟器是 Java 的。

然后,我猜是 URL 编码方法,因为可以在两种编程语言中编码和解码,但很容易解码。

另一个想法是创建像 uint values 0x00000 + Action Parameters(URLEncoded) 这样的包,但我认为这不是一个好主意,因为它很容易解码。

另一种是创建一种简单的加密方法,将字符替换为另一个字符。一个例子:

To encode: Hello
Encoded: 72S/101NK&108-ASK+108P$I111?TRY

解码非常简单,拆分为没有数字字符并将其删除。是每个字符的 ASCII 简单编码,但会大大增加包的大小。

有人知道可以在 C++ 和 Java 中解码的编码方法吗?

感谢您阅读。祝你有美好的一天,马科斯。

4

1 回答 1

1

我假设您需要一种加密和解密数据的方法(我相信这些是您正在寻找的术语,而不是编码/解码)。还是您正在寻找代码混淆?

如果这是关于加密/解密的,那么有很多算法在许多编程语言中都有实现。出于对善良的热爱,不要使用 URL 编码或简单的替代密码之类的东西,因为它们很容易被破解。

在加密和安全方面,您的游戏用户依赖开发人员做出稳健的行业标准选择,以保护他们的个人信息和他们在角色构建上投入的时间。因此,我建议您要么认真阅读加密和身份验证的概念,然后做出可靠的选择,要么让该领域的专家来处理。

不要在这里自己动手,因为这通常是使某些东西易于破解的最佳方法。AES 等加密标准、SSL 和 TLS 等安全协议以及基于证书的身份验证都已完善,经过多年使用的全面测试并正确记录。如果客户端和服务器使用的语言有所不同,这可能无关紧要,但如果有适当的抽象,任何网络通信实际上都是如此。

于 2012-04-04T13:09:54.013 回答