| rfc9147v12.txt | rfc9147.txt | |||
|---|---|---|---|---|
| Internet Engineering Task Force (IETF) E. Rescorla | Internet Engineering Task Force (IETF) E. Rescorla | |||
| Request for Comments: 9147 Mozilla | Request for Comments: 9147 Mozilla | |||
| Obsoletes: 6347 H. Tschofenig | Obsoletes: 6347 H. Tschofenig | |||
| Category: Standards Track Arm Limited | Category: Standards Track Arm Limited | |||
| ISSN: 2070-1721 N. Modadugu | ISSN: 2070-1721 N. Modadugu | |||
| Google, Inc. | Google, Inc. | |||
| March 2022 | April 2022 | |||
| The Datagram Transport Layer Security (DTLS) Protocol Version 1.3 | The Datagram Transport Layer Security (DTLS) Protocol Version 1.3 | |||
| Abstract | Abstract | |||
| This document specifies version 1.3 of the Datagram Transport Layer | This document specifies version 1.3 of the Datagram Transport Layer | |||
| Security (DTLS) protocol. DTLS 1.3 allows client/server applications | Security (DTLS) protocol. DTLS 1.3 allows client/server applications | |||
| to communicate over the Internet in a way that is designed to prevent | to communicate over the Internet in a way that is designed to prevent | |||
| eavesdropping, tampering, and message forgery. | eavesdropping, tampering, and message forgery. | |||
| skipping to change at line 976 ¶ | skipping to change at line 976 ¶ | |||
| modifications to the handshake header are necessary. | modifications to the handshake header are necessary. | |||
| 2. Retransmission timers are introduced to handle message loss. | 2. Retransmission timers are introduced to handle message loss. | |||
| 3. A new ACK content type has been added for reliable message | 3. A new ACK content type has been added for reliable message | |||
| delivery of handshake messages. | delivery of handshake messages. | |||
| In addition, DTLS reuses TLS 1.3's "cookie" extension to provide a | In addition, DTLS reuses TLS 1.3's "cookie" extension to provide a | |||
| return-routability check as part of connection establishment. This | return-routability check as part of connection establishment. This | |||
| is an important DoS prevention mechanism for UDP-based protocols, | is an important DoS prevention mechanism for UDP-based protocols, | |||
| unlike TCP, which establishes return-routability as part of the | unlike TCP-based protocols, for which TCP establishes return- | |||
| connection establishment. | routability as part of the connection establishment. | |||
| DTLS implementations do not use the TLS 1.3 "compatibility mode" | DTLS implementations do not use the TLS 1.3 "compatibility mode" | |||
| described in Appendix D.4 of [TLS13]. DTLS servers MUST NOT echo the | described in Appendix D.4 of [TLS13]. DTLS servers MUST NOT echo the | |||
| "legacy_session_id" value from the client and endpoints MUST NOT send | "legacy_session_id" value from the client and endpoints MUST NOT send | |||
| ChangeCipherSpec messages. | ChangeCipherSpec messages. | |||
| With these exceptions, the DTLS message formats, flows, and logic are | With these exceptions, the DTLS message formats, flows, and logic are | |||
| the same as those of TLS 1.3. | the same as those of TLS 1.3. | |||
| 5.1. Denial-of-Service Countermeasures | 5.1. Denial-of-Service Countermeasures | |||
| skipping to change at line 2565 ¶ | skipping to change at line 2565 ¶ | |||
| [RFC6298] Paxson, V., Allman, M., Chu, J., and M. Sargent, | [RFC6298] Paxson, V., Allman, M., Chu, J., and M. Sargent, | |||
| "Computing TCP's Retransmission Timer", RFC 6298, | "Computing TCP's Retransmission Timer", RFC 6298, | |||
| DOI 10.17487/RFC6298, June 2011, | DOI 10.17487/RFC6298, June 2011, | |||
| <https://www.rfc-editor.org/info/rfc6298>. | <https://www.rfc-editor.org/info/rfc6298>. | |||
| [RFC8174] Leiba, B., "Ambiguity of Uppercase vs Lowercase in RFC | [RFC8174] Leiba, B., "Ambiguity of Uppercase vs Lowercase in RFC | |||
| 2119 Key Words", BCP 14, RFC 8174, DOI 10.17487/RFC8174, | 2119 Key Words", BCP 14, RFC 8174, DOI 10.17487/RFC8174, | |||
| May 2017, <https://www.rfc-editor.org/info/rfc8174>. | May 2017, <https://www.rfc-editor.org/info/rfc8174>. | |||
| [RFC9146] Rescorla, E., Ed., Tschofenig, H., Ed., Fossati, T., and | [RFC9146] Rescorla, E., Ed., Tschofenig, H., Ed., Fossati, T., and | |||
| A. Kraus, "Connection Identifiers for DTLS 1.2", RFC 9146, | A. Kraus, "Connection Identifier for DTLS 1.2", RFC 9146, | |||
| DOI 10.17487/RFC9146, March 2022, | DOI 10.17487/RFC9146, March 2022, | |||
| <https://www.rfc-editor.org/info/rfc9146>. | <https://www.rfc-editor.org/info/rfc9146>. | |||
| [TLS13] Rescorla, E., "The Transport Layer Security (TLS) Protocol | [TLS13] Rescorla, E., "The Transport Layer Security (TLS) Protocol | |||
| Version 1.3", RFC 8446, DOI 10.17487/RFC8446, August 2018, | Version 1.3", RFC 8446, DOI 10.17487/RFC8446, August 2018, | |||
| <https://www.rfc-editor.org/info/rfc8446>. | <https://www.rfc-editor.org/info/rfc8446>. | |||
| 15.2. Informative References | 15.2. Informative References | |||
| [AEAD-LIMITS] | [AEAD-LIMITS] | |||
| Günther, F., Thomson, M., and C.A. Wood, "Usage Limits on | Günther, F., Thomson, M., and C. A. Wood, "Usage Limits on | |||
| AEAD Algorithms", Work in Progress, Internet-Draft, draft- | AEAD Algorithms", Work in Progress, Internet-Draft, draft- | |||
| irtf-cfrg-aead-limits-03, 12 July 2021, | irtf-cfrg-aead-limits-04, 7 March 2022, | |||
| <https://datatracker.ietf.org/doc/html/draft-irtf-cfrg- | <https://datatracker.ietf.org/doc/html/draft-irtf-cfrg- | |||
| aead-limits-03>. | aead-limits-04>. | |||
| [AEBounds] Luykx, A. and K. Paterson, "Limits on Authenticated | [AEBounds] Luykx, A. and K. Paterson, "Limits on Authenticated | |||
| Encryption Use in TLS", 28 August 2017, | Encryption Use in TLS", 28 August 2017, | |||
| <https://www.isg.rhul.ac.uk/~kp/TLS-AEbounds.pdf>. | <https://www.isg.rhul.ac.uk/~kp/TLS-AEbounds.pdf>. | |||
| [CCM-ANALYSIS] | [CCM-ANALYSIS] | |||
| Jonsson, J., "On the Security of CTR + CBC-MAC", Selected | Jonsson, J., "On the Security of CTR + CBC-MAC", Selected | |||
| Areas in Cryptography pp. 76-93, | Areas in Cryptography pp. 76-93, | |||
| DOI 10.1007/3-540-36492-7_7, February 2003, | DOI 10.1007/3-540-36492-7_7, February 2003, | |||
| <https://doi.org/10.1007/3-540-36492-7_7>. | <https://doi.org/10.1007/3-540-36492-7_7>. | |||
| skipping to change at line 2715 ¶ | skipping to change at line 2715 ¶ | |||
| May 2021, <https://www.rfc-editor.org/info/rfc9002>. | May 2021, <https://www.rfc-editor.org/info/rfc9002>. | |||
| [ROBUST] Fischlin, M., Günther, F., and C. Janson, "Robust | [ROBUST] Fischlin, M., Günther, F., and C. Janson, "Robust | |||
| Channels: Handling Unreliable Networks in the Record | Channels: Handling Unreliable Networks in the Record | |||
| Layers of QUIC and DTLS 1.3", received 15 June 2020, last | Layers of QUIC and DTLS 1.3", received 15 June 2020, last | |||
| revised 22 February 2021, | revised 22 February 2021, | |||
| <https://eprint.iacr.org/2020/718>. | <https://eprint.iacr.org/2020/718>. | |||
| [TLS-ECH] Rescorla, E., Oku, K., Sullivan, N., and C.A. Wood, "TLS | [TLS-ECH] Rescorla, E., Oku, K., Sullivan, N., and C.A. Wood, "TLS | |||
| Encrypted Client Hello", Work in Progress, Internet-Draft, | Encrypted Client Hello", Work in Progress, Internet-Draft, | |||
| draft-ietf-tls-esni-11, 7 July 2021, | draft-ietf-tls-esni-14, 13 February 2022, | |||
| <https://datatracker.ietf.org/doc/html/draft-ietf-tls- | <https://datatracker.ietf.org/doc/html/draft-ietf-tls- | |||
| esni-11>. | esni-14>. | |||
| Appendix A. Protocol Data Structures and Constant Values | Appendix A. Protocol Data Structures and Constant Values | |||
| This section provides the normative protocol types and constants | This section provides the normative protocol types and constants | |||
| definitions. | definitions. | |||
| A.1. Record Layer | A.1. Record Layer | |||
| struct { | struct { | |||
| ContentType type; | ContentType type; | |||
| End of changes. 8 change blocks. | ||||
| 9 lines changed or deleted | 9 lines changed or added | |||
This html diff was produced by rfcdiff 1.48. The latest version is available from http://tools.ietf.org/tools/rfcdiff/ | ||||