データグラムトランスポート層セキュリティ(DTLS)は、データグラムベースのアプリケーションにセキュリティを提供する通信プロトコルであり、盗聴、改ざん、またはメッセージの偽造を防ぐように設計された方法[1] [2] [3]で通信できるようにします。DTLSプロトコルは、ストリーム指向のトランスポート層セキュリティ(TLS)プロトコルに基づいており、同様のセキュリティ保証を提供することを目的としています。DTLSプロトコルデータグラムは、基礎となるトランスポートのセマンティクスを保持します。アプリケーションは、ストリームプロトコルに関連する遅延の影響を受けませんが、ユーザーデータグラムプロトコル(UDP)またはストリーム制御伝送プロトコル(SCTP)を使用するため、アプリケーションはパケットの並べ替え、データグラムの損失、およびデータグラムネットワークパケットのサイズを超えるデータを処理する必要があります。DTLSはTCPではなくUDPまたはSCTPを使用するため、 VPNトンネルの作成に使用された場合のTCPメルトダウン問題[4] [5]を回避します。
意味
次のドキュメントでは DTLS を定義しています。
- 2008年5月のRFC 5238 [6]データグラム輻輳制御プロトコル(DCCP)で使用する
- 2009年3月のRFC 5415 [7]無線アクセスポイントの制御とプロビジョニング(CAPWAP)で使用する
- 2010年5月のRFC 5764 [8]は、セキュアリアルタイムトランスポートプロトコル(SRTP)で使用するためのもので、その後、セキュアリアルタイムトランスポート制御プロトコル(SRTCP)のドラフトではDTLS-SRTPと呼ばれました[9]
- 2011年1月のRFC 6083 [10]ストリーム制御伝送プロトコル(SCTP)カプセル化での使用
- RFC 9147 2022年4月から[3]ユーザーデータグラムプロトコル(UDP)で使用する
DTLS 1.0 は TLS 1.1 に基づいており、DTLS 1.2 は TLS 1.2 に基づいており、DTLS 1.3 は TLS 1.3 に基づいています。DTLS 1.1 は存在しません。これは、バージョン番号を TLS と一致させるためにこのバージョン番号が省略されたためです。[2]以前の DTLS バージョンと同様に、DTLS 1.3 は「順序保護/非再生可能性を除いて [TLS 1.3 と] 同等のセキュリティ保証」を提供することを目的としています。[11]
実装
図書館
アプリケーション
- Cisco AnyConnect VPNクライアントはTLSを使用し、DTLSベースのVPNを発明しました。[34]
- OpenConnectは、(D)TLSをサポートするオープンソースのAnyConnect互換クライアントおよびocservサーバーです。[35]
- Cisco InterCloud FabricはDTLSを使用してプライベートコンピューティング環境とパブリック/プロバイダーコンピューティング環境の間にトンネルを形成します。[36]
- ZScalerトンネル2.0はトンネリングにDTLSを使用します。[37]
- F5 Networks Edge VPNクライアントはTLSとDTLSを使用します。[38]
- FortinetのSSL VPN [39]とArray NetworksのSSL VPN [40]もVPNトンネリングにDTLSを使用しています。
- Citrix Systems NetScalerはDTLSを使用してUDPを保護します。[41]
- ウェブブラウザ:Google Chrome、Opera、FirefoxはWebRTC用のDTLS-SRTP [42]をサポートしています。Firefox 86以降はDTLS 1.0をサポートしていません。[43]
- リモート デスクトップ プロトコル8.0 以降。
脆弱性
2013年2月、ロンドン大学ロイヤル・ホロウェイ校の研究者2名が、暗号ブロック連鎖モードの暗号化が使用されたDTLSのOpenSSLまたはGnuTLS実装を使用して、DTLS接続から平文(の一部)を復元できるタイミング攻撃[44]を発見しました。
参照
参考文献
- ^ ab E. Rescorla; N. Modadugu (2006 年 4 月). データグラム トランスポート層セキュリティ。ネットワーク ワーキング グループ。doi : 10.17487 / RFC4347。RFC 4347 。 廃止。RFC 6347 により廃止。RFC 5746 および 7507 により更新。
- ^ abc E. Rescorla; N. Modadugu (2012 年 1 月). Datagram Transport Layer Security バージョン 1.2. Internet Engineering Task Force (IETF). doi : 10.17487/RFC6347 . ISSN 2070-1721. RFC 6347. 廃止。RFC 9147 によって廃止。RFC 7507、7905、8996、9146 によって更新。RFC 4347 は廃止。
- ^ abc E. Rescorla; H. Tschofenig; N. Modadugu (2022 年 4 月). データグラム トランスポート層セキュリティ (DTLS) プロトコル バージョン 1.3. IETF TLS ワークグループ. doi : 10.17487/RFC9147 . RFC 9147. 提案された標準。 廃止されたRFC 6347
- ^ Titz, Olaf (2001-04-23). 「TCP Over TCP がなぜ悪い考えなのか」。2023-03-10 時点のオリジナルよりアーカイブ。2015-10-17に閲覧。
{{cite web}}: CS1 maint: bot: original URL status unknown (link) - ^ 本田 修、大崎 博之、今瀬 誠、石塚 美香、村山 純一 (2005 年 10 月)。「TCP over TCP の理解: TCP トンネリングがエンドツーエンドのスループットと待ち時間に与える影響」。Atiquzzaman, Mohammed、Balandin, Sergey I (編)。次世代通信およびセンサー ネットワークのパフォーマンス、サービス品質、および制御 III 。第3 巻。6011 号。Bibcode :2005SPIE.6011..138H。CiteSeerX 10.1.1.78.5815。doi : 10.1117 /12.630496。S2CID 8945952。
- ^ T. Phelan (2008 年 5 月)。データグラム輻輳制御プロトコル (DCCP) 上のデータグラム トランスポート層セキュリティ (DTLS)。ネットワーク ワーキング グループ。doi : 10.17487 / RFC5238。RFC 5238 。 情報提供。RFC 8996 により更新されました。
- ^ P. Calhoun、M. Montemurro、D. Stanley 編 (2009 年 3 月)。ワイヤレス アクセス ポイントの制御とプロビジョニング (CAPWAP) プロトコル仕様。ネットワーク ワーキング グループ。doi : 10.17487 / RFC5415。RFC 5415 。 提案された標準。RFC 8553 および 8996 によって更新されました。
- ^ D. McGrew、 E . Rescorla (2010 年 5 月)。セキュア リアルタイム トランスポート プロトコル (SRTP) のキーを確立するためのデータグラム トランスポート層セキュリティ (DTLS) 拡張。インターネットエンジニアリングタスク フォース。doi : 10.17487/RFC5764。ISSN 2070-1721。RFC 5764 。 提案された標準。RFC 7983 および 9443 によって更新されました。
- ^ Peck, M.; Igoe, K. (2012-09-25). 「データグラム トランスポート層セキュリティ/セキュア リアルタイム トランスポート プロトコル (DTLS-SRTP) の Suite B プロファイル」。IETF。
- ^ M. Tuexen、R. Seggelmann、E. Rescorla (2011 年 1 月)。ストリーム制御伝送プロトコル (SCTP) 用のデータグラム トランスポート層セキュリティ (DTLS)。インターネット技術タスク フォース(IETF)。doi : 10.17487 / RFC6083。ISSN 2070-1721。RFC 6083 。 提案された標準。RFC 8996 によって更新されました。
- ^ 「データグラム トランスポート層セキュリティ (DTLS) プロトコル バージョン 1.3」。
- ^ 「LibreSSL 3.3.2 リリースノート」。OpenBSD プロジェクト。2021 年 5 月 1 日。2021 年 6 月 13 日閲覧。
- ^ Julien Kauffmann. 「libsystools: OpenSSL を使用した Windows/Linux 用の TLS/DTLS オープンソース ライブラリ」。SourceForge。
- ^ ab 「mbed TLS 2.0.0 リリース」。ARM。2015 年 7 月 13 日。2015 年 8 月 25 日閲覧。
- ^ 「NSS 3.14 リリースノート」。Mozilla Developer Network。Mozilla。2013年 1 月 17 日時点のオリジナルよりアーカイブ。2012 年 10 月 27 日閲覧。
- ^ 「NSS 3.16.2 リリースノート」。Mozilla Developer Network。Mozilla。2014-06-30。2021-12-07時点のオリジナルよりアーカイブ。2014-06-30に取得。
- ^ 「バージョン 1.0.2 以降」。OpenSSL プロジェクト。OpenSSLプロジェクト。2015 年 1 月 22 日。2014 年 9 月 4 日時点のオリジナルよりアーカイブ。2015年 1 月 26 日閲覧。
- ^ Ray Brown. 「pydtls - Python 用データグラム トランスポート層セキュリティ」. GitHub .
- ^ Ray Brown. 「Python 用 DTLS」. Python Software Foundation。
- ^ Ray Brown/Mobius Software LTD. 「pydtls - Python 用データグラム トランスポート層セキュリティ」。GitHub。
- ^ Ray Brown/Mobius Software LTD. 「PyDTLS に基づく Python3 用 DTLS」。Python Software Foundation。
- ^ ab 「Windows 7 SP1 および Windows Server 2008 R2 SP1 で DTLS のサポートを追加する更新プログラムが利用可能になりました」。Microsoft。2012年11 月 13 日閲覧。
- ^ Justinha. 「Windows 10 および Windows Server 2016 での TLS (Schannel SSP) の変更」。docs.microsoft.com。2017年 9 月 1 日閲覧。
- ^ 「テクニカルノート TN2287: iOS 5 と TLS 1.2 の相互運用性の問題」。iOS 開発者ライブラリ。Apple Inc. 2012 年 5 月 3 日閲覧。
- ^ Olaf Bergmann. 「tinydtls」. Eclipse Foundation。
- ^ Peter Waher. 「Waher.Security.DTLS」。Waher Data AB。
- ^ 「wolfSSL 組み込み SSL/TLS ライブラリ」。
- ^ Dmitriy Tsvettsikh. 「純粋な js で DTLS を使用して UDP 通信を保護する」。GitHub。
- ^ ドミトリー・ツヴェツィク。 「純粋なjsのDTLS」。npm。
- ^ Mobius Software LTD. 「BouncyCastle と Netty に基づく非ブロッキング Java DTLS 実装」。Mobius Software LTD.
- ^ Sean DuBois. 「pion/dtls: Go 用の DTLS 1.2 サーバー/クライアント実装」. GitHub .
- ^ 「californium/scandium: Java および Coap 用の DTLS 1.2 サーバー/クライアント実装。接続 ID 拡張を含む」。Eclipse Foundation。
- ^ SNF4J.ORG. 「Java 用シンプル ネットワーク フレームワーク (SNF4J)」。GitHub。
{{cite web}}: CS1 maint: numeric names: authors list (link) - ^ 「AnyConnect FAQ: トンネル、再接続動作、および非アクティビティ タイマー」。Cisco。2017年2月 26 日閲覧。
- ^ "OpenConnect". OpenConnect . 2017年2月26日閲覧。
- ^ 「Cisco InterCloud アーキテクチャの概要」(PDF) . Cisco Systems .
- ^ 「ZScaler ZTNA 2.0 トンネル」。ZScaler。
- ^ 「f5 データグラム トランスポート層セキュリティ (DTLS)」。f5 ネットワーク。
- ^ 「 DTLSを使用して SSL VPN のパフォーマンスを向上させる」。Fortinet 2016 年 2 月 25 日。
- ^ 「OpenConnect の array.c」。2022年5月23日。
- ^ 「DTLS 仮想サーバーの構成」Citrix Systems。
- ^ 「WebRTC Interop Notes」。2013 年 5 月 11 日時点のオリジナルよりアーカイブ。
- ^ “Firefox 86.0、すべての新機能、更新、修正をご覧ください”. Mozilla . 2021-02-23. 2021-02-22にオリジナルからアーカイブされました。2021-02-23に取得。
Firefox 86以降、WebRTCのPeerConnectionsを確立するためのDTLS 1.0はサポートされなくなりました。すべてのWebRTCサービスは、今後、最小バージョンとしてDTLS 1.2をサポートする必要があります。
- ^ 「データグラム TLS に対するプレーンテキスト回復攻撃」(PDF)。
外部リンク
- 「トランスポート層セキュリティ (TLS) - 憲章」。IETF。
- Modadugu, Nagendra; Rescorla, Eric (2003-11-21). 「データグラム TLS の設計と実装」(PDF) .スタンフォード暗号グループ. 2013-03-17に取得。
- AlFardan, Nadhem J.、Paterson, Kenneth G.「データグラム TLS に対するプレーンテキスト回復攻撃」(PDF) 。2013 年 11 月 25 日閲覧。
- Gibson, Steve; Laporte, Leo (2012-11-28). 「データグラム トランスポート層セキュリティ」。Security Now 380 。2013-03-17に閲覧。1:07:14 までスキップします。
- Robin Seggelmann のサンプル コード: エコー、文字ジェネレーター、およびクライアント/サーバーの破棄。
- 図解DTLS接続
