通常游戏专用服务器的安全性问题主要有协议安全、流程安全以及数据储存安全等三方面。
一、协议安全。
协议安全所指的是网络数据包的安全,通常意义上讲就是指网络数据包的加密和解密,由于网络数据包传输频繁,如果使用复杂的加解密技术将会带来巨大的CPU开销,另外由于客户端程序内存有数据包加密和解密的完整代码,因此无论多复杂的加解密算法都不能阻止破解数据包事件的发生。建议对于游戏中的一般网络包不需要进行复杂的加解密过程,只对数据包进行简单编码或者不加密也是可以接受的。
二、流程安全。
玩家游戏中的流程安全是相当重要的一个部分。对于一般的游戏,建议最好的方式是尽量维持使用同一条经过验证的Socket(Tcp)连接进行网络通信,因为相对来说想替换别人的网络数据是一件比较困难的事,除非玩家自己的设备中了木马。说简单一点就是尽量使用同一条TCP连接,先做登录验证,然后进行游戏,中间尽量不做切换连接的流程。但是对于实际的游戏而言并不一定能完全实现游戏过程中不切换连接。有些简单的游戏就没有网关的设计,如果切换线路服务器,必然会重新进行连接。还有部分游戏由于游戏过程是基于UDP或者Http短连接的通信模型,这些模式都需要重新验证玩家的有效性。
三、数据存储安全。
游戏最重要的部分是玩家游戏数据的安全性,必须要保证用户数据能够实时安全的保存。