2

私は現在、C での基本的なネットワーキングについて学んでおり、インターネットの「あいまいな」部分である秘密のプロトコルに興味があります。

マルチプレイヤーオンラインゲームを開発しているとしましょう。クライアントとサーバーの両方が情報を適切に送信、受信、解析できるように、データのパックとアンパックのための独自のプロトコルを設計します (例: 位置パケット、呪文のキャストなど)。もちろん、私はそのプロトコルをパブリック ドメインにしたくありません。なぜなら、私のサーバーで「悪いこと」をしたい人は誰でもそれを実行できるからです。しかし、私は自分のプロジェクトをフリー ソフトウェアのままにしておきたいと思っています。

じゃあどうすればいいの?私の架空のプロジェクトを安全でなくせずにオープンソースに保つ方法を教えていただけますか?

前もって感謝します

4

2 に答える 2

6

不可能です。ソース コードを提供する場合、プロトコルの実装も提供することになります。ドアが大きく開いているものを確保することはできません。代わりに、サーバー側のものへのアクセスを保護することに集中します。

たとえば、アプリケーションが英語を話すことを人々に知られないようにしようとしているのに、英語を話す人を ID バッジでフィルタリングすることに集中する必要があります。

于 2012-10-09T18:36:19.613 に答える
3

暗号化を使用して、クライアント キーをオープン ソースに含めることはできません。ただし、クライアントに含める必要があるため、簡単にハッキングされる可能性があります。サーバーをハッキングすることは常に可能ですが、多くの場合、サーバーで制御と検証を維持できます。たとえば、サーバーはあなたが持っている金の数を追跡でき、クライアントはサーバーにX金の新しいツールを購入するように指示できます. サーバーはトランザクションを簡単に確認し、在庫を保持できます。同じことが移動にも当てはまります。サーバーは、クライアントがどこにいて、どこに行くことができるかを知っています。それでも、これはロボットを妨げません。

于 2012-10-09T18:41:54.320 に答える