web-dev-qa-db-ja.com

シンプレックス(一方向)TCP / IPで暗号化は可能ですか?

TCP/IPガイド で説明されているように、TCP/IPをシンプレックスモードで動作するように構成することが可能で、このモードは特に衛星からの通信で利用されます。

ただし、TCP/IPに関する1つの考慮事項は、- この記事で説明 のように、それ自体が「認証や暗号化などのセキュリティの最も基本的なメカニズムでさえ欠けている」ということです。

この他の質問による によると、IPSecはIPの暗号化を提供するために使用できますが、読むことができるように Wikipediaで 、IPSecは相互認証と暗号化キーの交換

完全なシンプレックスモードでは、相互認証も鍵の交換も不可能である必要があります(または、可能ですが、何か不足していますか?)。

とにかく、私が聞きたかったのは、TCP/IPが実際にシンプレックスモードで運用されている場合、データを暗号化するためのオプションは何ですか。

4
coderworks

一方向通信では、データを暗号化できるように、送信者は受信者について少なくともある程度の知識が必要です。この知識は、対称通信で使用される一般的な事前共有秘密かもしれませんし、PGPやS/MIMEで使用されるような公開鍵かもしれません。次に、この公開鍵を使用して、秘密鍵(受信者のみがアクセスできる必要がある)によってのみ復号化できるメッセージを暗号化できます。実際には、この公開鍵は通常、パフォーマンス上の理由から短いランダムシークレットのみを暗号化するために使用され、このランダムシークレットは、より大きなデータを暗号化するための対称キーとして使用されます。

確立された標準のPGPおよびS/MIMEは、通信チャネル内でハンドシェイクを一切行わずにメッセージを暗号化する方法の実例です。送信者は、そのような暗号化されたメッセージを作成するために受信者の公開鍵のみを必要とします。

もちろん、共通の事前共有キーまたは送信者の秘密キーが危険にさらされている場合、このキーを使用して行われたすべての通信を解読できます。これには、すべての古い通信が含まれます。すべてのキーが危険にさらされるわけではないことを期待して、常に異なるキーを使用すると、このリスクを軽減できます。しかし、これは、新しい鍵を交換またはネゴシエートするために、時々何らかのバックコミュニケーションが必要になることを意味します。

4
Steffen Ullrich

OTPとそのバリエーションを利用でき、十分に強力な鍵を与えられれば最良の選択肢です。もちろん、従来の対称および非対称暗号も使用できます。

ただし、問題は以前の通信の転送機密性であり、データが暗号化されて送信されると、鍵が分解されてデータの侵害につながる可能性があるのは時間の問題です。

この問題はシンプレックスモードではさらに複雑になります。これは、通常ファームウェアに組み込まれているため、パーティ間でそれ以上のキー交換を実行できないためです。

1
jas-