0

リアルタイムのマルチプレイヤー ゲームを作成したいのですが、各ユーザーをどのように保護して識別すればよいのでしょうか。たとえば、5 人のプレイヤーがいるマップがあるとします。各プレイヤーは 1/60 秒ごとに自分の位置を udp 経由でサーバーに送信します。メッセージはどのように表示されますか? おそらく、クライアントからサーバーへの udp メッセージは次のようになります。

repos playerプレイヤー IDx , yに

しかし、誰かが自分の望む任意のプレイヤー ID を使用して何十億ものメッセージを私のサーバーに送信し、基本的にすべてのユーザーの位置を管理することができます。それを解決する方法はありますか?

4

1 に答える 1

0

なりすましがここでの主な脅威であることは当然のことです。

これに対処する 1 つの方法は、プレイヤーに最初にサインインするよう要求することです。サインインに成功したら、トークンまたは一時キーを提供し、このキーを使用して各メッセージの有効性を確認します。

有効性を確認するには、いずれかのデジタル署名方式でメッセージに署名するか、単に秘密の一時トークンをメッセージと共に含めることができます。

この秘密鍵を数分ごとに置き換えることで、この方式をさらに改善できます。これには別のメッセージ タイプが必要であり、これも既存の一時キーで認証する必要があります。

于 2013-05-13T07:33:58.973 に答える