实时游戏中的安全通信

时间:2013-05-12 23:42:31

标签: security ssl tcp udp

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

  

将玩家玩家ID 重新发送到 x y

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

1 个答案:

答案 0 :(得分:0)

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

解决这个问题的一种方法是要求玩家先登录。成功登录后,为其提供令牌或临时密钥,然后使用此密钥检查每封邮件的有效性。

为了检查有效性,您可以使用其中一种数字签名方案对消息进行签名,也可以只包含秘密临时令牌以及消息。

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