Security 服务器如何在多玩家游戏中验证客户端?

Security 服务器如何在多玩家游戏中验证客户端?,security,authentication,ssl,multiplayer,Security,Authentication,Ssl,Multiplayer,所以很多游戏都是通过自定义客户端(称之为game.exe)运行的,但必须与服务器通信。开发人员如何确保只接受来自自定义客户端的连接,而不接受任何其他请求(例如来自web浏览器的请求) 我玩game.exe,我的请求没有问题然后,我使用web浏览器或其他POST实用程序向该游戏服务器提交请求,但游戏服务器会忽略该请求以防止作弊 这是通过编码到game.exe并随每个请求一起发送的秘密字符串完成的吗?用数据包嗅探器拦截它们似乎很容易受到攻击。同样适用于客户端SSL证书,有人可以很容易地在游戏文件中找

所以很多游戏都是通过自定义客户端(称之为game.exe)运行的,但必须与服务器通信。开发人员如何确保只接受来自自定义客户端的连接,而不接受任何其他请求(例如来自web浏览器的请求)

我玩game.exe,我的请求没有问题
然后,我使用web浏览器或其他POST实用程序向该游戏服务器提交请求,但游戏服务器会忽略该请求以防止作弊


这是通过编码到game.exe并随每个请求一起发送的秘密字符串完成的吗?用数据包嗅探器拦截它们似乎很容易受到攻击。同样适用于客户端SSL证书,有人可以很容易地在游戏文件中找到密钥文件并伪造请求。

与web浏览器不同,通常是独立应用程序的游戏(例如,在Windows上具有.exe扩展名)不使用http作为其协议


然而,不管使用何种协议,当建立连接时,游戏通常会发送凭据(通常是帐户凭据,类似于用户名和密码)。许多游戏使用持久的TCP连接,因此只有在登录到游戏时才需要这样做。

这样,只要知道自己的凭据,就可以通过发送伪造的请求来伪装自己是游戏客户端?我想这就是为什么大多数游戏都有权威的服务器设置。