Go游戏服务器防外挂之-安全通信算法
游戏服务器防外挂-通信安全
在游戏行业有太多因为外挂程序最终导致游戏产品快速死亡的血淋淋的教训了。这些外挂程序就是利用篡改/模拟客户端/服务器之间的通信数据来进行作弊牟得额外收益。因此在网络游戏中客户端/服务器之间的通信安全是游戏服务器技术中至关重要的一环。我们这篇文章讲一讲关于如何使用加密/校验的方式进行安全通信。
外挂利用非安全通信作弊溯源!
很多时候程序员修复bug/漏洞和医生治病差不多都要对症下药。一个可以被外挂作弊的服务器程序提供的服务可以说是一个病态的服务,那么为了解决这个问题我们需要找到症结所在。
我们先从对于客户端/服务器通信数据不采用任何安全处理方式开始分析。二者之间的通信数据虽然被转换成了二进制字节流的方式进行通信,但是以目前的技术手段这些数据几乎可以理解为就是明文传输的。那么外挂程序可以利用多种手段对通信数据进行二次加工。
通过修改客户端内存的方式篡改通信数据
通过拦截客户端/服务器收到/发出的协议包进行二次篡改
通过其他脚本/程序模拟客户端和服务器进行通信
...... ...