<?xml version="1.0" encoding="UTF-8"?>
  <?xml-stylesheet type="text/xsl" href="rfc2629.xslt" ?>
  <!-- generated by https://github.com/cabo/kramdown-rfc2629 version 1.3.24 -->

<!DOCTYPE rfc SYSTEM "rfc2629.dtd" [
]>

<?rfc rfcedstyle="yes"?>
<?rfc toc="yes"?>
<?rfc tocindent="yes"?>
<?rfc sortrefs="yes"?>
<?rfc symrefs="yes"?>
<?rfc strict="yes"?>
<?rfc comments="yes"?>
<?rfc inline="yes"?>
<?rfc text-list-symbols="-o*+"?>
<?rfc docmapping="yes"?>

<rfc ipr="pre5378Trust200902" docName="draft-ietf-tls-dtls-connection-id-12" category="std" updates="6347">

  <front>
    <title abbrev="DTLS 1.2 Connection ID">Connection Identifiers for DTLS 1.2</title>

    <author initials="E." surname="Rescorla" fullname="Eric Rescorla" role="editor">
      <organization>RTFM, Inc.</organization>
      <address>
        <email>ekr@rtfm.com</email>
      </address>
    </author>
    <author initials="H." surname="Tschofenig" fullname="Hannes Tschofenig" role="editor">
      <organization>Arm Limited</organization>
      <address>
        <email>hannes.tschofenig@arm.com</email>
      </address>
    </author>
    <author initials="T." surname="Fossati" fullname="Thomas Fossati">
      <organization>Arm Limited</organization>
      <address>
        <email>thomas.fossati@arm.com</email>
      </address>
    </author>
    <author initials="A." surname="Kraus" fullname="Achim Kraus">
      <organization>Bosch.IO GmbH</organization>
      <address>
        <email>achim.kraus@bosch.io</email>
      </address>
    </author>

    <date year="2021" month="May" day="11"/>

    <area>Security</area>
    <workgroup>TLS</workgroup>
    <keyword>Internet-Draft</keyword>

    <abstract>


<t>This document specifies the Connection ID (CID) construct for the Datagram Transport
Layer Security (DTLS) protocol version 1.2.</t>

<t>A CID is an identifier carried in the record layer header that gives the
recipient additional information for selecting the appropriate security association.
In “classical” DTLS, selecting a security association of an incoming DTLS record
is accomplished with the help of the 5-tuple. If the source IP address and/or
source port changes during the lifetime of an ongoing DTLS session then the
receiver will be unable to locate the correct security context.</t>



    </abstract>


  </front>

  <middle>


<section anchor="introduction" title="Introduction">

<t>The Datagram Transport Layer Security (DTLS) <xref target="RFC6347"/> protocol was designed for
securing connection-less transports, like UDP. DTLS, like TLS, starts
with a handshake, which can be computationally demanding (particularly
when public key cryptography is used). After a successful handshake,
symmetric key cryptography is used to apply data origin
authentication, integrity and confidentiality protection. This
two-step approach allows endpoints to amortize the cost of the initial
handshake across subsequent application data protection. Ideally, the
second phase where application data is protected lasts over a long
period of time since the established keys will only need to be updated
once the key lifetime expires.</t>

<t>In DTLS as specified in RFC 6347, the IP address and port of the peer are used to
identify the DTLS association. Unfortunately, in some cases, such as NAT rebinding,
these values are insufficient. This is a particular issue in the Internet of Things
when devices enter extended sleep periods to increase their battery lifetime. The
NAT rebinding leads to connection failure, with the resulting cost of a new handshake.</t>

<t>This document defines an extension to DTLS 1.2 to add a Connection ID (CID) to the
DTLS record layer. The presence of the CID is negotiated via a DTLS
extension.</t>

</section>
<section anchor="conventions-and-terminology" title="Conventions and Terminology">

<t>The key words “MUST”, “MUST NOT”, “REQUIRED”, “SHALL”, “SHALL
NOT”, “SHOULD”, “SHOULD NOT”, “RECOMMENDED”, “NOT RECOMMENDED”,
“MAY”, and “OPTIONAL” in this document are to be interpreted as
described in BCP 14 <xref target="RFC2119"/> <xref target="RFC8174"/> when, and only when, they
appear in all capitals, as shown here.</t>

<t>This document assumes familiarity with DTLS 1.2 <xref target="RFC6347"/>. The presentation language 
used in this document is described in Section 4 of <xref target="RFC8446"/>.</t>

</section>
<section anchor="the-connectionid-extension" title="The “connection_id” Extension">

<t>This document defines the “connection_id” extension, which
is used in ClientHello and ServerHello messages.</t>

<t>The extension type is specified as follows.</t>

<figure><artwork><![CDATA[
  enum {
     connection_id(TBD1), (65535)
  } ExtensionType;
]]></artwork></figure>

<t>The extension_data field of this extension, when included in the
ClientHello, MUST contain the ConnectionId structure. This structure
contains the CID value the client wishes the server to use when sending
messages to the client. A zero-length CID value indicates that the client
is prepared to send using a CID but does not wish the server to use one when
sending.</t>

<figure><artwork><![CDATA[
  struct {
      opaque cid<0..2^8-1>;
  } ConnectionId;
]]></artwork></figure>

<t>A server willing to use CIDs will respond with a “connection_id”
extension in the ServerHello, containing the CID it wishes the
client to use when sending messages towards it. A zero-length value
indicates that the server will send using the client’s CID but does not
wish the client to include a CID when sending.</t>

<t>Because each party sends the value in the “connection_id” extension it wants to
receive as a CID in encrypted records, it is possible
for an endpoint to use a deployment-specific constant length for such connection
identifiers.  This can in turn ease parsing and connection lookup,
for example by having the length in question be a compile-time constant.
Such implementations MUST still be able to send
CIDs of different length to other parties.
Since the CID length information is not included in the record itself,
implementations that want to use variable-length CIDs are responsible
for constructing the CID in such a way that its length can be determined
on reception.</t>

<t>In DTLS 1.2, CIDs are exchanged at the beginning of the DTLS
session only. There is no dedicated “CID update” message
that allows new CIDs to be established mid-session, because
DTLS 1.2 in general does not allow TLS 1.3-style post-handshake messages
that do not themselves begin other handshakes. When a DTLS session is
resumed or renegotiated, the “connection_id” extension is negotiated afresh.</t>

<t>If DTLS peers have not negotiated the use of CIDs, or a zero-length
CID has been advertised for a given direction, then the RFC
6347-defined record format and content type MUST be used to send in
the indicated direction(s).</t>

<t>If DTLS peers have negotiated the use of a non-zero-length CID for a
given direction, then once encryption is enabled they MUST send with
the record format defined in <xref target="dtls-ciphertext"/> with the
new MAC computation defined in <xref target="mac"/> and the content type tls12_cid.
Plaintext payloads never use the new record format or the CID content
type.</t>

<t>When receiving, if the tls12_cid content type is set, then the CID is
used to look up the connection and the security association. If the
tls12_cid content type is not set, then the connection and security
association is looked up by the 5-tuple and a check MUST be made to
determine whether a non-zero length CID is expected.
If a non-zero-length CID is expected for the retrieved association,
then the datagram MUST be treated as invalid, as described
in Section 4.1.2.1 of <xref target="RFC6347"/>.</t>

<t>When receiving a datagram with the tls12_cid content type,
the new MAC computation defined in <xref target="mac"/> MUST be used. When receiving a datagram
with the RFC 6347-defined record format, the MAC calculation defined in Section 4.1.2
of <xref target="RFC6347"/> MUST be used.</t>

</section>
<section anchor="record-layer-extensions" title="Record Layer Extensions">

<t>This specification defines the DTLS 1.2 record layer format and
<xref target="I-D.ietf-tls-dtls13"/> specifies how to carry the CID in DTLS 1.3.</t>

<t>To allow a receiver to determine whether a record has a CID or not,
connections which have negotiated this extension use a distinguished
record type tls12_cid(TBD2). Use of this content type has the following
three implications:</t>

<t><list style="symbols">
  <t>The CID field is present and contains one or more bytes.</t>
  <t>The MAC calculation follows the process described in <xref target="mac"/>.</t>
  <t>The real content type is inside the encryption envelope, as described
below.</t>
</list></t>

<t>Plaintext records are not impacted by this extension. Hence, the format
of the DTLSPlaintext structure is left unchanged, as shown in <xref target="dtls-plaintext"/>.</t>

<figure title="DTLS 1.2 Plaintext Record Payload." anchor="dtls-plaintext"><artwork><![CDATA[
     struct {
         ContentType type;
         ProtocolVersion version;
         uint16 epoch;
         uint48 sequence_number;
         uint16 length;
         opaque fragment[DTLSPlaintext.length];
     } DTLSPlaintext;
]]></artwork></figure>

<t>When CIDs are being used, the content to be sent
is first wrapped along with its content type and optional padding into a
DTLSInnerPlaintext structure. This newly introduced structure is shown in
<xref target="dtls-innerplaintext"/>.</t>

<figure title="New DTLSInnerPlaintext Payload Structure." anchor="dtls-innerplaintext"><artwork><![CDATA[
     struct {
         opaque content[length];
         ContentType real_type;
         uint8 zeros[length_of_padding];
     } DTLSInnerPlaintext;
]]></artwork></figure>

<t><list style="hanging">
  <t hangText="content">
  Corresponds to the fragment of a given length.</t>
  <t hangText="real_type">
  The content type describing the cleartext payload.</t>
  <t hangText="zeros">
  An arbitrary-length run of zero-valued bytes may appear in
the cleartext after the type field.  This provides an opportunity
for senders to pad any DTLS record by a chosen amount as long as
the total stays within record size limits.  See Section 5.4 of
<xref target="RFC8446"/> for more details. (Note that the term TLSInnerPlaintext in
RFC 8446 refers to DTLSInnerPlaintext in this specification.)</t>
</list></t>

<t>The DTLSInnerPlaintext byte sequence is then encrypted. To create the
DTLSCiphertext structure shown in <xref target="dtls-ciphertext"/> the CID is added.</t>

<figure title="DTLS 1.2 CID-enhanced Ciphertext Record." anchor="dtls-ciphertext"><artwork><![CDATA[
     struct {
         ContentType outer_type = tls12_cid;
         ProtocolVersion version;
         uint16 epoch;
         uint48 sequence_number;
         opaque cid[cid_length];               // New field
         uint16 length;
         opaque enc_content[DTLSCiphertext.length];
     } DTLSCiphertext;
]]></artwork></figure>

<t><list style="hanging">
  <t hangText="outer_type">
  The outer content type of a DTLSCiphertext record carrying a CID
is always set to tls12_cid(TBD2). The real content
type of the record is found in DTLSInnerPlaintext.real_type after
decryption.</t>
  <t hangText="cid">
  The CID value, cid_length bytes long, as agreed at the time the extension
has been negotiated.  Recall that (as discussed previously) each peer chooses
the CID value it will receive and use to identify the connection, so an
implementation can choose to always receive CIDs of a fixed length.  If,
however, an implementation chooses to receive different lengths of CID,
the assigned CID values must be self-delineating since there is no other
mechanism available to determine what connection (and thus, what CID length)
is in use.</t>
  <t hangText="enc_content">
  The encrypted form of the serialized DTLSInnerPlaintext structure.</t>
</list></t>

<t>All other fields are as defined in RFC 6347.</t>

</section>
<section anchor="mac" title="Record Payload Protection">

<t>Several types of ciphers have been defined for use with TLS and DTLS and the
MAC calculations for those ciphers differ slightly.</t>

<t>This specification modifies the MAC calculation as defined in <xref target="RFC6347"/> and
<xref target="RFC7366"/>, as well as the definition of the additional data used with AEAD
ciphers provided in <xref target="RFC6347"/>, for records with content type tls12_cid.  The
modified algorithm MUST NOT be applied to records that do not carry a CID, i.e.,
records with content type other than tls12_cid.</t>

<t>The following fields are defined in this document; all other fields are as
defined in the cited documents.</t>

<t><list style="hanging">
  <t hangText="cid">
  Value of the negotiated CID (variable length).</t>
  <t hangText="cid_length">
  1 byte field indicating the length of the negotiated CID.</t>
  <t hangText="length_of_DTLSInnerPlaintext">
  The length (in bytes) of the serialized DTLSInnerPlaintext (two-byte integer).
The length MUST NOT exceed 2^14.</t>
  <t hangText="seq_num_placeholder">
  8 bytes of 0xff</t>
</list></t>

<t>Note “+” denotes concatenation.</t>

<section anchor="block-ciphers" title="Block Ciphers">

<t>The following MAC algorithm applies to block ciphers
that do not use the Encrypt-then-MAC processing
described in <xref target="RFC7366"/>.</t>

<figure><artwork><![CDATA[
    MAC(MAC_write_key,
        seq_num_placeholder +
        tls12_cid +
        cid_length +
        tls12_cid +
        DTLSCiphertext.version +
        epoch +
        sequence_number +
        cid +
        length_of_DTLSInnerPlaintext +
        DTLSInnerPlaintext.content +
        DTLSInnerPlaintext.real_type +
        DTLSInnerPlaintext.zeros
    );
]]></artwork></figure>

<t>The rationale behind this construction is to separate the MAC input
for DTLS without the connection ID from the MAC input with the
connection ID. The former always consists of a sequence number
followed by some other content type than tls12_cid; the latter
always consists of the seq_num_placeholder followed by tls12_cid.
Although 2^64-1 is potentially a valid sequence number, tls12_cid
will never be a valid content type when the connection ID is not in use.
In addition, the epoch and sequence_number are now fed into
the MAC in the same order as they appear on the wire.</t>

</section>
<section anchor="block-ciphers-with-encrypt-then-mac-processing" title="Block Ciphers with Encrypt-then-MAC processing">

<t>The following MAC algorithm applies to block ciphers
that use the Encrypt-then-MAC processing
described in <xref target="RFC7366"/>.</t>

<figure><artwork><![CDATA[
    MAC(MAC_write_key,
        seq_num_placeholder +
        tls12_cid +
        cid_length +
        tls12_cid +
        DTLSCiphertext.version +
        epoch +
        sequence_number +
        cid +
        DTLSCiphertext.length +
        IV +
        ENC(content + padding + padding_length));
]]></artwork></figure>

</section>
<section anchor="aead-ciphers" title="AEAD Ciphers">

<t>For ciphers utilizing authenticated encryption with additional
data the following modification is made to the additional data calculation.</t>

<figure><artwork><![CDATA[
    additional_data = seq_num_placeholder +
                      tls12_cid +
                      cid_length +
                      tls12_cid +
                      DTLSCiphertext.version +
                      epoch +
                      sequence_number +
                      cid +
                      length_of_DTLSInnerPlaintext;
]]></artwork></figure>

</section>
</section>
<section anchor="peer-address-update" title="Peer Address Update">

<t>When a record with a CID is received that has a source address
different from the one currently associated with the DTLS connection,
the receiver MUST NOT replace the address it uses for sending records
to its peer with the source address specified in the received datagram,
unless the following three conditions are met:</t>

<t><list style="symbols">
  <t>The received datagram has been cryptographically verified using
the DTLS record layer processing procedures.</t>
  <t>The received datagram is “newer” (in terms of both epoch and sequence
number) than the newest datagram received. Reordered datagrams that are
sent prior to a change in a peer address might otherwise cause a valid
address change to be reverted. This also limits the ability of an attacker
to use replayed datagrams to force a spurious address change, which
could result in denial of service. An attacker might be able to succeed
in changing a peer address if they are able to rewrite source addresses
and if replayed packets are able to arrive before any original.</t>
  <t>There is a strategy for ensuring that the new peer address is able to
receive and process DTLS records. No strategy is mandated by this specification 
but see note (*) below.</t>
</list></t>

<t>The conditions above are necessary to protect against attacks that use datagrams with
spoofed addresses or replayed datagrams to trigger attacks. Note that there
is no requirement for use of the anti-replay window mechanism defined in
Section 4.1.2.6 of DTLS 1.2. Both solutions, the “anti-replay window” or
“newer” algorithm, will prevent address updates from replay attacks while the
latter will only apply to peer address updates and the former applies to any
application layer traffic.</t>

<t>Note that datagrams that pass the DTLS cryptographic verification procedures
but do not trigger a change of peer address are still valid DTLS records and
are still to be passed to the application.</t>

<t>(*) Note: Application protocols that implement protection against spoofed addresses 
depend on being aware of changes in peer addresses so that they can engage the necessary
mechanisms. When delivered such an event, an application layer-specific
address validation mechanism can be triggered, for example one that is based on
successful exchange of a minimal amount of ping-pong traffic with the peer.
Alternatively, an DTLS-specific mechanism may be used, as described in
<xref target="I-D.tschofenig-tls-dtls-rrc"/>.</t>

<t>DTLS implementations MUST silently discard records with bad MACs or that are
otherwise invalid.</t>

</section>
<section anchor="examples" title="Examples">

<t><xref target="dtls-example2"/> shows an example exchange where a CID is
used uni-directionally from the client to the server. To indicate that
a zero-length CID is present in the “connection_id” extension
we use the notation ‘connection_id=empty’.</t>

<figure title="Example DTLS 1.2 Exchange with CID" anchor="dtls-example2"><artwork><![CDATA[
Client                                             Server
------                                             ------

ClientHello                 -------->
(connection_id=empty)


                            <--------      HelloVerifyRequest
                                                     (cookie)

ClientHello                 -------->
(connection_id=empty)
(cookie)

                                                  ServerHello
                                          (connection_id=100)
                                                  Certificate
                                            ServerKeyExchange
                                           CertificateRequest
                            <--------         ServerHelloDone

Certificate
ClientKeyExchange
CertificateVerify
[ChangeCipherSpec]
Finished                    -------->
<CID=100>

                                           [ChangeCipherSpec]
                            <--------                Finished


Application Data            ========>
<CID=100>

                            <========        Application Data

Legend:

<...> indicates that a connection id is used in the record layer
(...) indicates an extension
[...] indicates a payload other than a handshake message
]]></artwork></figure>

<t>Note: In the example exchange the CID is included in the record layer
once encryption is enabled. In DTLS 1.2 only one handshake message is
encrypted, namely the Finished message. Since the example shows how to
use the CID for payloads sent from the client to the server, only the
record layer payloads containing the Finished message or application data
include a CID.</t>

</section>
<section anchor="priv-cons" title="Privacy Considerations">

<t>The CID replaces the previously used 5-tuple and, as such, introduces
an identifier that remains persistent during the lifetime of a DTLS connection.
Every identifier introduces the risk of linkability, as explained in <xref target="RFC6973"/>.</t>

<t>An on-path adversary observing the DTLS protocol exchanges between the
DTLS client and the DTLS server is able to link the observed payloads to all
subsequent payloads carrying the same ID pair (for bi-directional
communication).  Without multi-homing or mobility, the use of the CID
exposes the same information as the 5-tuple.</t>

<t>With multi-homing, a passive attacker is able to correlate the communication
interaction over the two paths. The lack of a CID update mechanism
in DTLS 1.2 makes this extension unsuitable for mobility scenarios where
correlation must be considered. Deployments that use DTLS in multi-homing
environments and are concerned about these aspects SHOULD refuse to use CIDs in
DTLS 1.2 and switch to DTLS 1.3 where a CID update mechanism is provided and
sequence number encryption is available.</t>

<t>The specification introduces record padding for the CID-enhanced record layer,
which is a privacy feature not available with the original DTLS 1.2 specification.
Padding allows to inflate the size of the ciphertext making traffic analysis
more difficult. More details about record padding can be found in Section 5.4
and Appendix E.3 of RFC 8446.</t>

<t>Finally, endpoints can use the CID to attach arbitrary per-connection metadata
to each record they receive on a given connection. This may be used as a mechanism to communicate
per-connection information to on-path observers. There is no straightforward way to
address this concern with CIDs that contain arbitrary values. Implementations
concerned about this aspect SHOULD refuse to use CIDs.</t>

</section>
<section anchor="sec-cons" title="Security Considerations">

<t>An on-path adversary can create reflection attacks
against third parties because a DTLS peer has no means to distinguish a
genuine address update event (for example, due to a NAT rebinding) from one
that is malicious. This attack is of particular concern when the request is small
and the response large. See <xref target="peer-address-update"/> for more
on address updates.</t>

<t>Additionally, an attacker able to observe the data traffic exchanged between
two DTLS peers is able to replay datagrams with modified IP address/port numbers.</t>

<t>The topic of peer address updates is discussed in <xref target="peer-address-update"/>.</t>

</section>
<section anchor="iana-considerations" title="IANA Considerations">

<t>This document requests three actions from IANA.</t>

<section anchor="extra-column-to-tls-extensiontype-values-registry" title="Extra Column to TLS ExtensionType Values Registry">

<t>IANA is requested to add an extra column named “DTLS-Only” to the
“TLS ExtensionType Values” registry to indicate whether an extension is only
applicable to DTLS and to include this document as an additional reference
for the registry.</t>

</section>
<section anchor="entry-to-the-tls-extensiontype-values-registry" title="Entry to the TLS ExtensionType Values Registry">

<t>IANA is requested to allocate an entry to the existing “TLS ExtensionType
Values” registry, for connection_id(TBD1) as described
in the table below. Although the value 53 has been allocated by early allocation for a previous version of this document, it
is incompatible with this document.
Once this document is approved for publication, the early allocation will be deprecated
in favor of this assignment.</t>

<figure><artwork><![CDATA[
Value   Extension Name  TLS 1.3  DTLS-Only  Recommended  Reference
--------------------------------------------------------------------
TBD1    connection_id   CH, SH   Y          N           [[This doc]]
]]></artwork></figure>

<t>A new column “DTLS-Only” is added to the registry.
The valid entries are “Y” if the extension is only applicable to DTLS, “N” otherwise.
All the pre-existing entries are given the value “N”.</t>

<t>Note: The value “N” in the Recommended column is set because this
extension is intended only for specific use cases. This document describes
the behavior of this extension for DTLS 1.2 only; it is not applicable to TLS, and
its usage for DTLS 1.3 is described in <xref target="I-D.ietf-tls-dtls13"/>.</t>

</section>
<section anchor="entry-to-the-tls-contenttype-registry" title="Entry to the TLS ContentType Registry">

<t>IANA is requested to allocate tls12_cid(TBD2) in the “TLS ContentType”
registry. The tls12_cid ContentType is only applicable to DTLS 1.2.</t>

</section>
</section>


  </middle>

  <back>

    <references title='Normative References'>





<reference  anchor="RFC2119" target='https://www.rfc-editor.org/info/rfc2119'>
<front>
<title>Key words for use in RFCs to Indicate Requirement Levels</title>
<author initials='S.' surname='Bradner' fullname='S. Bradner'><organization /></author>
<date year='1997' month='March' />
<abstract><t>In many standards track documents several words are used to signify the requirements in the specification.  These words are often capitalized. This document defines these words as they should be interpreted in IETF documents.  This document specifies an Internet Best Current Practices for the Internet Community, and requests discussion and suggestions for improvements.</t></abstract>
</front>
<seriesInfo name='BCP' value='14'/>
<seriesInfo name='RFC' value='2119'/>
<seriesInfo name='DOI' value='10.17487/RFC2119'/>
</reference>



<reference  anchor="RFC6347" target='https://www.rfc-editor.org/info/rfc6347'>
<front>
<title>Datagram Transport Layer Security Version 1.2</title>
<author initials='E.' surname='Rescorla' fullname='E. Rescorla'><organization /></author>
<author initials='N.' surname='Modadugu' fullname='N. Modadugu'><organization /></author>
<date year='2012' month='January' />
<abstract><t>This document specifies version 1.2 of the Datagram Transport Layer Security (DTLS) protocol.  The DTLS protocol provides communications privacy for datagram protocols.  The protocol allows client/server applications to communicate in a way that is designed to prevent eavesdropping, tampering, or message forgery.  The DTLS protocol is based on the Transport Layer Security (TLS) protocol and provides equivalent security guarantees.  Datagram semantics of the underlying transport are preserved by the DTLS protocol.  This document updates DTLS 1.0 to work with TLS version 1.2.  [STANDARDS-TRACK]</t></abstract>
</front>
<seriesInfo name='RFC' value='6347'/>
<seriesInfo name='DOI' value='10.17487/RFC6347'/>
</reference>



<reference  anchor="RFC8446" target='https://www.rfc-editor.org/info/rfc8446'>
<front>
<title>The Transport Layer Security (TLS) Protocol Version 1.3</title>
<author initials='E.' surname='Rescorla' fullname='E. Rescorla'><organization /></author>
<date year='2018' month='August' />
<abstract><t>This document specifies version 1.3 of the Transport Layer Security (TLS) protocol.  TLS allows client/server applications to communicate over the Internet in a way that is designed to prevent eavesdropping, tampering, and message forgery.</t><t>This document updates RFCs 5705 and 6066, and obsoletes RFCs 5077, 5246, and 6961.  This document also specifies new requirements for TLS 1.2 implementations.</t></abstract>
</front>
<seriesInfo name='RFC' value='8446'/>
<seriesInfo name='DOI' value='10.17487/RFC8446'/>
</reference>



<reference  anchor="RFC8174" target='https://www.rfc-editor.org/info/rfc8174'>
<front>
<title>Ambiguity of Uppercase vs Lowercase in RFC 2119 Key Words</title>
<author initials='B.' surname='Leiba' fullname='B. Leiba'><organization /></author>
<date year='2017' month='May' />
<abstract><t>RFC 2119 specifies common key words that may be used in protocol  specifications.  This document aims to reduce the ambiguity by clarifying that only UPPERCASE usage of the key words have the  defined special meanings.</t></abstract>
</front>
<seriesInfo name='BCP' value='14'/>
<seriesInfo name='RFC' value='8174'/>
<seriesInfo name='DOI' value='10.17487/RFC8174'/>
</reference>



<reference  anchor="RFC7366" target='https://www.rfc-editor.org/info/rfc7366'>
<front>
<title>Encrypt-then-MAC for Transport Layer Security (TLS) and Datagram Transport Layer Security (DTLS)</title>
<author initials='P.' surname='Gutmann' fullname='P. Gutmann'><organization /></author>
<date year='2014' month='September' />
<abstract><t>This document describes a means of negotiating the use of the encrypt-then-MAC security mechanism in place of the existing MAC-then-encrypt mechanism in Transport Layer Security (TLS) and Datagram Transport Layer Security (DTLS).  The MAC-then-encrypt mechanism has been the subject of a number of security vulnerabilities over a period of many years.</t></abstract>
</front>
<seriesInfo name='RFC' value='7366'/>
<seriesInfo name='DOI' value='10.17487/RFC7366'/>
</reference>




    </references>

    <references title='Informative References'>





<reference  anchor="RFC6973" target='https://www.rfc-editor.org/info/rfc6973'>
<front>
<title>Privacy Considerations for Internet Protocols</title>
<author initials='A.' surname='Cooper' fullname='A. Cooper'><organization /></author>
<author initials='H.' surname='Tschofenig' fullname='H. Tschofenig'><organization /></author>
<author initials='B.' surname='Aboba' fullname='B. Aboba'><organization /></author>
<author initials='J.' surname='Peterson' fullname='J. Peterson'><organization /></author>
<author initials='J.' surname='Morris' fullname='J. Morris'><organization /></author>
<author initials='M.' surname='Hansen' fullname='M. Hansen'><organization /></author>
<author initials='R.' surname='Smith' fullname='R. Smith'><organization /></author>
<date year='2013' month='July' />
<abstract><t>This document offers guidance for developing privacy considerations for inclusion in protocol specifications.  It aims to make designers, implementers, and users of Internet protocols aware of privacy-related design choices.  It suggests that whether any individual RFC warrants a specific privacy considerations section will depend on the document's content.</t></abstract>
</front>
<seriesInfo name='RFC' value='6973'/>
<seriesInfo name='DOI' value='10.17487/RFC6973'/>
</reference>



<reference anchor="I-D.ietf-tls-dtls13">
<front>
<title>The Datagram Transport Layer Security (DTLS) Protocol Version 1.3</title>
<author initials='E' surname='Rescorla' fullname='Eric Rescorla'>
<organization />
</author>
<author initials='H' surname='Tschofenig' fullname='Hannes Tschofenig'>
<organization />
</author>
<author initials='N' surname='Modadugu' fullname='Nagendra Modadugu'>
<organization />
</author>
<date year='2021' month='April' day='30' />
<abstract><t>This document specifies Version 1.3 of the Datagram Transport Layer Security (DTLS) protocol.  DTLS 1.3 allows client/server applications to communicate over the Internet in a way that is designed to prevent eavesdropping, tampering, and message forgery.</t><t> The DTLS 1.3 protocol is intentionally based on the Transport Layer Security (TLS) 1.3 protocol and provides equivalent security guarantees with the exception of order protection/non-replayability. Datagram semantics of the underlying transport are preserved by the DTLS protocol.</t><t> This document obsoletes RFC 6347.</t></abstract>
</front>
<seriesInfo name='Internet-Draft' value='draft-ietf-tls-dtls13-43'/>
<format type='TXT' target='https://www.ietf.org/internet-drafts/draft-ietf-tls-dtls13-43.txt'/>
</reference>


<reference anchor="I-D.tschofenig-tls-dtls-rrc">
   <front>
      <title>Return Routability Check for DTLS 1.2 and DTLS 1.3</title>
      <author fullname="Thomas Fossati">
	 <organization>Arm Limited</organization>
      </author>
      <author fullname="Hannes Tschofenig">
	 <organization>Arm Limited</organization>
      </author>
      <date month="March" day="2" year="2020" />
      <abstract>
	 <t>   This document specifies a return routability check for use in context
   of the Connection ID (CID) construct for the Datagram Transport Layer
   Security (DTLS) protocol versions 1.2 and 1.3.

	 </t>
      </abstract>
   </front>
   <seriesInfo name="Internet-Draft" value="draft-tschofenig-tls-dtls-rrc-01" />
   <format type="TXT" target="https://www.ietf.org/archive/id/draft-tschofenig-tls-dtls-rrc-01.txt" />
</reference>




    </references>


<section anchor="history" title="History">

<t>RFC EDITOR: PLEASE REMOVE THE THIS SECTION</t>

<t>draft-ietf-tls-dtls-connection-id-12</t>

<t><list style="symbols">
  <t>Improved peer address update text</t>
  <t>Editorial improvements</t>
  <t>Clarification regarding the use of the TLS ExtensionType Values Registry</t>
</list></t>

<t>draft-ietf-tls-dtls-connection-id-11</t>

<t><list style="symbols">
  <t>Enhanced IANA considerations section</t>
  <t>Clarifications regarding CID negotiation and zero-length CIDs</t>
</list></t>

<t>draft-ietf-tls-dtls-connection-id-10</t>

<t><list style="symbols">
  <t>Clarify privacy impact.</t>
  <t>Have security considerations point to <xref target="peer-address-update"/>.</t>
</list></t>

<t>draft-ietf-tls-dtls-connection-id-09</t>

<t><list style="symbols">
  <t>Changed MAC/additional data calculation.</t>
  <t>Disallow sending MAC failure fatal alerts to non-validated peers.</t>
  <t>Incorporated editorial review comments by Ben Kaduk.</t>
</list></t>

<t>draft-ietf-tls-dtls-connection-id-08</t>

<t><list style="symbols">
  <t>RRC draft moved from normative to informative.</t>
</list></t>

<t>draft-ietf-tls-dtls-connection-id-07</t>

<t><list style="symbols">
  <t>Wording changes in the security and privacy
consideration and the peer address update
sections.</t>
</list></t>

<t>draft-ietf-tls-dtls-connection-id-06</t>

<t><list style="symbols">
  <t>Updated IANA considerations</t>
  <t>Enhanced security consideration section to describe a potential
man-in-the-middle attack concerning address validation.</t>
</list></t>

<t>draft-ietf-tls-dtls-connection-id-05</t>

<t><list style="symbols">
  <t>Restructed Section 5 “Record Payload Protection”</t>
</list></t>

<t>draft-ietf-tls-dtls-connection-id-04</t>

<t><list style="symbols">
  <t>Editorial simplifications to the ‘Record Layer Extensions’ and the ‘Record Payload Protection’ sections.</t>
  <t>Added MAC calculations for block ciphers with and without Encrypt-then-MAC processing.</t>
</list></t>

<t>draft-ietf-tls-dtls-connection-id-03</t>

<t><list style="symbols">
  <t>Updated list of contributors</t>
  <t>Updated list of contributors and acknowledgements</t>
  <t>Updated example</t>
  <t>Changed record layer design</t>
  <t>Changed record payload protection</t>
  <t>Updated introduction and security consideration section</t>
  <t>Author- and affiliation changes</t>
</list></t>

<t>draft-ietf-tls-dtls-connection-id-02</t>

<t><list style="symbols">
  <t>Move to internal content types a la DTLS 1.3.</t>
</list></t>

<t>draft-ietf-tls-dtls-connection-id-01</t>

<t><list style="symbols">
  <t>Remove 1.3 based on the WG consensus at IETF 101</t>
</list></t>

<t>draft-ietf-tls-dtls-connection-id-00</t>

<t><list style="symbols">
  <t>Initial working group version
(containing a solution for DTLS 1.2 and 1.3)</t>
</list></t>

<t>draft-rescorla-tls-dtls-connection-id-00</t>

<t><list style="symbols">
  <t>Initial version</t>
</list></t>

</section>
<section anchor="working-group-information" title="Working Group Information">

<t>RFC EDITOR: PLEASE REMOVE THE THIS SECTION</t>

<t>The discussion list for the IETF TLS working group is located at the e-mail
address <eref target="mailto:tls@ietf.org">tls@ietf.org</eref>. Information on the group and information on how to
subscribe to the list is at <eref target="https://www1.ietf.org/mailman/listinfo/tls">https://www1.ietf.org/mailman/listinfo/tls</eref></t>

<t>Archives of the list can be found at:
<eref target="https://www.ietf.org/mail-archive/web/tls/current/index.html">https://www.ietf.org/mail-archive/web/tls/current/index.html</eref></t>

</section>
<section anchor="contributors" title="Contributors">

<t>Many people have contributed to this specification, and we would like to thank
the following individuals for their contributions:</t>

<figure><artwork><![CDATA[
* Yin Xinxing
  Huawei
  yinxinxing@huawei.com
]]></artwork></figure>

<figure><artwork><![CDATA[
* Nikos Mavrogiannopoulos
  RedHat
  nmav@redhat.com
]]></artwork></figure>

<figure><artwork><![CDATA[
* Tobias Gondrom
  tobias.gondrom@gondrom.org
]]></artwork></figure>

<t>Additionally, we would like to thank the Connection ID task force team members:</t>

<t><list style="symbols">
  <t>Martin Thomson (Mozilla)</t>
  <t>Christian Huitema (Private Octopus Inc.)</t>
  <t>Jana Iyengar (Google)</t>
  <t>Daniel Kahn Gillmor (ACLU)</t>
  <t>Patrick McManus (Mozilla)</t>
  <t>Ian Swett (Google)</t>
  <t>Mark Nottingham (Fastly)</t>
</list></t>

<t>The task force team discussed various design ideas, including cryptographically generated session
ids using hash chains and public key encryption, but dismissed them due to their
inefficiency. The approach described in this specification is the
simplest possible design that works given the limitations of DTLS 1.2. DTLS 1.3 provides
better privacy features and developers are encouraged to switch to the new version of DTLS.</t>

</section>
<section anchor="acknowledgements" title="Acknowledgements">

<t>We would like to thank Hanno Becker, Martin Duke, Lars Eggert, Ben Kaduk, Warren Kumari, 
Francesca Palombini, Tom Petch, John Scudder, Sean Turner, Eric Vyncke, and Robert Wilton 
for their review comments.</t>

<t>Finally, we want to thank the IETF TLS working group chairs, Chris Wood, Joseph Salowey, and
Sean Turner, for their patience, support and feedback.</t>

</section>


  </back>

<!-- ##markdown-source:
H4sIANhYmmAAA+1923Ibt5boO74CR3mItDdJW7bjJMqlokhyrNm+jaUksyuV
cYHdIIlSs5vT6JbMuHK+5XzLfNmsGy7dohx55tR5OqxKIrIbwMK634BMp1PV
ua6yR/qkqWtbdK6p9Xlp684tnG29XjStPr18caEPZ4+Umc9be30UfxgMOlVl
U9RmDXOVrVl0U2e7xbSr/LTEfxXx1akrp5XprO9UAf9ZNu32SPuuVP2mxJ+P
9NPHT75Uym3aI71p7RePv/zqsu199+jhw68fAhStNUf6whZ967qtumnaq2Xb
9JsjDWCpK7uFX8ojfV53tq1tNz1FaJTynanLd6ZqaoBwa73auCOldbsobOm7
bSW/at01RfanqxEb4QfftF1rFz5+364HX7vWFfHlolmvYWx86urK1WkZ+76b
Vs53U5hk3lTw2rT529/hCeBxbTYbVy/5XdN3q6YFYKfwkD6uhrfPZvqt9UXT
Vib8zug/AyBuPWrapandHwYpcKTfXj57OQEUFbPwvG0QA7Z0XdOG3+zauAp+
vGp/aLvFegYbUmMons/0pS9WzcLWbjmE47kBkvsdj4ewHLdr/cKtXWfLewCz
oklnXZz0B9MyZCPALmf6WeM9LDKE6nLVrI0fP/tLkGT5jkbPFjz6rrWPZ/of
ren9cOXjYuXWwwfDZX9sYFez89f6p/X8+Whhg4NnVzj4hzm95xql6qZdw+Br
i6z89tnJo8PDr+VPFCL586snT54egUDVi9HrT7/+8jH+eT49nQ3E9TD+nBCd
ZLltC5huOp1qMweWNwWI1+XKeeTcHlle+40tUIN4QJgdqgm9f3J+egDCUcPQ
vuhIxeBbp6Yzy9as9WVrar8BSVMvzNa2UdT1PiqeA9AJDQhmU+lr0FA4Kaii
mVLHGibWAIWptYsqTBembZ0tgTC0SmtBLEpd0cwra0qLq5tOLwEtBK6CV9zG
4TZMCSwIK5hKR+TBegixtxVuqV7SrCCubbNpHegveCLgGu9Bf9CQmTqv9V5R
wU+uMNUeqdBJNonZOUw3C9pNDTyGb5Hi5R0o3GgBv29Ah6xgfzeuWxEsK1tt
cCD+/cW06zeVnelz/u6bvi2sPn+DW2utR2SVD0DI5AFiXRcgY0vARQnwyP4q
t7CdW1sBqKmXTYTHwzQIK7xXB/xZQGYLIFWVnlvd12ZeWdCmumpQ5dOUsAl4
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
qf8CU8s37PRlAAA=

-->

</rfc>

