【发布时间】:2016-02-14 03:10:39
【问题描述】:
所以基本上,我有一个游戏客户端和一个游戏服务器。
游戏客户端连接到服务器,将其 Steam ID 发送到服务器。
游戏服务器看到这是一个新的 Steam ID,因此它创建一行并将玩家信息(ip、名称、steam id)添加到玩家表中。
游戏服务器可以通过 Steam ID 禁止玩家。所以下次玩家连接时,服务器会检查他们的 Steam ID 并在表中显示一个。如果它找到一个并且该 Steam ID 被禁止,请断开播放器。
游戏服务器知道玩家 Steam ID 的唯一方法是让玩家使用 Steam API 并通过与 Steam 建立的会话检索他的 Steam ID,然后将其作为字符串发送到游戏服务器。
但是,我有一个问题。仅仅发送 Steam ID 并不安全,因为被封禁的玩家可以简单地将发送到服务器的数据包修改为另一个 Steam ID,从而“解封”他们。
有什么安全的方法可以向我的游戏服务器发送 Steam ID 字符串之类的内容,并让服务器判断它是否已被修改或是否按照游戏客户端的预期发送?
我的游戏客户端使用 Game Maker: Studio,而我的游戏服务器使用 C++。
PS:我之前提过一个问题,但我的描述性不够,所以我提出了一个新问题。
【问题讨论】:
-
(我记得你的最后一个问题。)真的,你需要发布一些代码,否则这属于其他堆栈网络之一。
-
什么代码?我现在所做的只是向服务器发送一个字符串(Steam ID),服务器接收到该字符串并假设它没有被修改。
-
stackoverflow 用于编程问题/答案。我相信你应该在服务器故障上问这个。
标签: c++ encryption server