【问题标题】:Secured communication in a real time game实时游戏中的安全通信
【发布时间】:2013-05-12 23:42:30
【问题描述】:

我想创建一个实时多人游戏,我想知道我应该如何保护和识别每个用户。例如,假设我有一张地图,里面有 5 个玩家,每个玩家每 1/60 秒通过 udp 将他的位置发送到服务器。消息应该是什么样子?也许从客户端到服务器的 udp 消息可能是:

repos player player idx, y

然后有人可以使用他想要的任何玩家 ID 向我的服务器发送数十亿条消息,并且基本上可以管理每个用户的位置。有什么想法应该如何解决?

【问题讨论】:

    标签: security ssl tcp udp


    【解决方案1】:

    您正确地注意到,欺骗是这里的主要威胁。

    解决此问题的一种方法是要求玩家先登录。成功登录后,给他们一个令牌或临时密钥,然后使用此密钥检查每条消息的有效性。

    为了检查有效性,您可以使用一种数字签名方案对消息进行签名,也可以简单地将秘密临时令牌与消息一起包含。

    您可以通过每隔几分钟更换一次此密钥来进一步改进此方案。这将需要一个单独的消息类型,它还必须使用现有的临时密钥进行身份验证。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2010-10-29
      • 2023-03-23
      • 2011-12-13
      • 2016-01-16
      • 1970-01-01
      • 2023-03-25
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多