2 つの当事者が暗号化されたメッセージを相互に送信できるようにしたい。中間者が暗号化されたメッセージを再送信できないようにするにはどうすればよいですか? もちろん、中間者は自分が何を送信したかを知りませんが、受信者は、それが前の人から再度送信されただけではないという手がかりがありません。
それを回避するアルゴリズム技術はありますか?
あなたが私の問題を理解してくれることを願っています。
ご挨拶
2 つの当事者が暗号化されたメッセージを相互に送信できるようにしたい。中間者が暗号化されたメッセージを再送信できないようにするにはどうすればよいですか? もちろん、中間者は自分が何を送信したかを知りませんが、受信者は、それが前の人から再度送信されただけではないという手がかりがありません。
それを回避するアルゴリズム技術はありますか?
あなたが私の問題を理解してくれることを願っています。
ご挨拶
標準的な解決策は、特定のチャネルのすべてのメッセージに順番に番号を付けることです。シーケンス番号が前のメッセージよりも小さいメッセージが到着した場合は、そのメッセージを拒否します。
「昨日からメッセージを再送信しましたか?」という問題を解決するには、別のシステムが必要になります。
メッセージを送信する前にメッセージを暗号化できますが、受信側はそれを復号化するためのキーを知っている必要があります。.NET フレームワークを使用している場合、Microsoft は、選択できる多数の機能を備えた暗号化ライブラリを提供しています。
SSLの使用を試すことができます
単一の要求応答通信がある場合、クライアントは要求に nonce を含めることができ、応答で nonce が返されます。ノンスは、たとえば次のように使用されます。TSP プロトコルで。
単方向のデータ フローがある場合は、パケットの連続番号付けが機能します。
クライアントからサーバーに送信されるコマンドがある場合は、ある種の nonce も同様に機能します。nonce はサーバーによって作成され、クライアントに渡された後、クライアントによってサーバーに送信されるコマンドに含められます。サーバーのウェルカム メッセージには最初の nonce が含まれている必要があり、次のコマンドの nonce は前のコマンドへの応答に含まれている必要があります。