48
  1. TLS と DTLS の機能上の違いは何ですか?
  2. TLS と DTLS を使用している場合、アプリケーション フロー/ネゴシエーションはどのように異なりますか?
4

4 に答える 4

38

基本的に DTLS は、データグラム (UDP、DCCP など) を介して TLS を構築することです。

DTLS は意図的に TLS に似ていますが、DTLS は 2 つの問題 (パケットの損失と並べ替え) を解決する必要があります。DTLS 実装

  1. パケット再送
  2. ハンドシェイク内でシーケンス番号を割り当てる
  3. リプレイ検出。

詳細については、 RFC 6347を参照してください。

于 2013-05-21T06:48:10.090 に答える
28

UDP が TCP に対するものであるように、可能な限り DTLS に対するものは TLSに対するものであるという考え方です。

仕様の詳細とその議論へのリンクについては、RFC 6347を廃止する可能性が高いhttps://datatracker.ietf.org/doc/draft-ietf-tls-dtls13/を参照してください。

DTLS とトランスポート層セキュリティ (TLS) プロトコルの間には重要な違いがあり、アプリケーション プログラマーは、他の答えが見逃されたり存在しないことを認識しておく必要があります。

DTLS プロトコルは、データグラム プロトコルの通信プライバシーを提供します。この記事の執筆時点 (アーカイブ)で現存する最高評価の回答とは対照的に、DTLS はUDP (または一般的なデータグラム プロトコル) を介した TLS の実装 (または「構成」) ではなくリプレイ検出は TLS の必須機能です。ただし、DTLSではオプションです。DTLS には、データグラム プロトコルで動作するように変更された、非常に TLS に似たハンドシェイクの実装が含まれています。実装は、パケットの並べ替えと損失の問題を処理しますが、DTLS ハンドシェイク (および暗号選択) に使用されるパケットに対してのみです。つまり、これらのパケットが配信する「フライト」確実にお届けします。ただし、ペイロード (アプリケーション データ) を含む DTLS パケットは、それらをカプセル化する DTLS パケット (通常は UDP) よりも確実にペイロードを配信しない場合があります。

さらに、DTLS プロトコル (v1.2) は TLS プロトコル (v1.2) から派生したものであり、「同等のセキュリティ保証を提供する」と主張していますが、そうではありません2 2013 年に、研究者は DTLS 実装と DTLS プロトコル自体の両方に重大なセキュリティ上の欠点があることを特定し、少なくとも GnuTLS と OpenSSL の実装では修正されました。2さらに、DTLS は非再生可能性を保証しません。

最後に、OP は、TLS と DTLS を使用しているときにアプリケーション フローがどのように異なるかを尋ねます。TLS は、データ ストリームを確実に、認証された暗号化を使用してエンドツーエンドで配信することを目的としています。DTLS は、エンドツーエンドで認証および暗号化されたアプリケーション データの配信を目的としていますが、すべてのアプリケーション データの配信が保証されている場合よりもレイテンシが低くなります。これが、VoIP、ライブ ビデオ フィード、MMO ゲームなど、遅延よりも損失が重要でないストリーミング アプリケーションを保護するために DTLS が使用される理由です。

PS: DTLS 1.3 は完成しています。これを読んでいる頃には、おそらく RFC として公開されているでしょう。3

PPS: ああ、もしこれが読む価値があるなら、RFC 7457を見逃さないでください。 DTLS 1.3 (いずれにせよ最終ドラフト) がそれを参照していないことに驚いています (セキュリティに関する考慮事項セクションなどから) (推奨) TLS 1.3 仕様も参照していません!

于 2019-05-09T02:39:25.660 に答える
9

DTLS は、TLS over UDP (データグラム プロトコル) の実装です。ウィキペディアによると、TLS は TCP を使用し、DTLS は UDP を使用するため、すべての従来の違いが適用されます。UDP 通信は、順序付け、配信の信頼性、またはフロー制御のないパケットのストリームとして存在します。データグラム プロトコルを使用するアプリケーションは、これらの問題を内部的に処理できることを確認する必要があります。

https://en.wikipedia.org/wiki/Transport_Layer_Security#Applications_and_adoption

http://www.diffen.com/difference/TCP_vs_UDP

于 2013-03-11T04:51:41.343 に答える