<?xml version='1.0' encoding='utf-8'?>
<!DOCTYPE rfc [
  <!ENTITY nbsp    "&#160;">
  <!ENTITY zwsp   "&#8203;">
  <!ENTITY nbhy   "&#8209;">
  <!ENTITY wj     "&#8288;">
]>
<?xml-stylesheet type="text/xsl" href="rfc2629.xslt" ?>
<!-- generated by https://github.com/cabo/kramdown-rfc version 1.6.35 (Ruby 3.2.2) -->
<rfc xmlns:xi="http://www.w3.org/2001/XInclude" ipr="trust200902" docName="draft-westerlund-tsvwg-sctp-crypto-dtls-01" category="std" consensus="true" submissionType="IETF" version="3">
  <!-- xml2rfc v2v3 conversion 3.17.3 -->
  <front>
    <title abbrev="DTLS in SCTP">Datagram Transport Layer Security (DTLS) in the Stream Control Transmission Protocol (SCTP) CRYPTO Chunk</title>
    <seriesInfo name="Internet-Draft" value="draft-westerlund-tsvwg-sctp-crypto-dtls-01"/>
    <author initials="M." surname="Westerlund" fullname="Magnus Westerlund">
      <organization>Ericsson</organization>
      <address>
        <email>magnus.westerlund@ericsson.com</email>
      </address>
    </author>
    <author initials="J." surname="Preuß Mattsson" fullname="John Preuß Mattsson">
      <organization>Ericsson</organization>
      <address>
        <email>john.mattsson@ericsson.com</email>
      </address>
    </author>
    <author initials="C." surname="Porfiri" fullname="Claudio Porfiri">
      <organization>Ericsson</organization>
      <address>
        <email>claudio.porfiri@ericsson.com</email>
      </address>
    </author>
    <date year="2023" month="June" day="28"/>
    <area>Transport</area>
    <workgroup>TSVWG</workgroup>
    <abstract>
      <?line 85?>

<t>This document defines a usage of Datagram Transport Layer Security (DTLS)
1.2 or 1.3 to protect the content of Stream Control Transmission Protocol
(SCTP) packets using the framework provided by the SCTP
CRYPTO chunk which we name DTLS in SCTP. DTLS in SCTP provides
encryption, source authentication, integrity and replay protection for
the SCTP association with mutual authentication of the peers. The
specification is also targeting very long-lived sessions of weeks and
months and supports mutual re-authentication and rekeying with ephemeral
key exchange. This is intended as an alternative to using DTLS/SCTP (RFC
6083) and SCTP-AUTH (RFC 4895).</t>
    </abstract>
    <note removeInRFC="true">
      <name>About This Document</name>
      <t>
        Status information for this document may be found at <eref target="https://datatracker.ietf.org/doc/draft-westerlund-tsvwg-sctp-crypto-dtls/"/>.
      </t>
      <t>
        Discussion of this document takes place on the
        Transport Area Working Group (tsvwg) Working Group mailing list (<eref target="mailto:tsvwg@ietf.org"/>),
        which is archived at <eref target="https://mailarchive.ietf.org/arch/browse/tsvwg/"/>.
        Subscribe at <eref target="https://www.ietf.org/mailman/listinfo/tsvwg/"/>.
      </t>
      <t>Source for this draft and an issue tracker can be found at
        <eref target="https://github.com/gloinul/draft-westerlund-tsvwg-sctp-crypto-dtls"/>.</t>
    </note>
  </front>
  <middle>
    <?line 98?>

<section anchor="introduction">
      <name>Introduction</name>
      <section anchor="overview">
        <name>Overview</name>
        <t>This document describes the usage of the Datagram Transport Layer
   Security (DTLS) protocol, as defined in DTLS 1.2 <xref target="RFC6347"/>, and
   DTLS 1.3 <xref target="RFC9147"/>, as protection engine in the Stream Control
   Transmission Protocol (SCTP), as defined in <xref target="RFC9260"/> with SCTP
   CRYPTO chunk <xref target="I-D.westerlund-tsvwg-sctp-crypto-chunk"/>.  This
   specification is intended as an alternative to DTLS/SCTP <xref target="RFC6083"/>
   and usage of SCTP-AUTH <xref target="RFC4895"/>.</t>
        <t>This specification provides mutual authentication of endpoints,
   data confidentiality, data origin authentication, data integrity
   protection, and data replay protection of SCTP packets. Ensuring
   these security services to the application and its upper layer
   protocol over SCTP.  Thus, it allows client/server applications to
   communicate in a way that is designed with communications
   privacy and preventing eavesdropping and detect tampering or
   message forgery.</t>
        <t>Applications using DTLS in SCTP can use all currently existing
   transport features provided by SCTP and its extensions, in some
   cases with some limitations, as specified in
   <xref target="I-D.westerlund-tsvwg-sctp-crypto-chunk"/>. DTLS in SCTP supports:</t>
        <ul spacing="normal">
          <li>preservation of message boundaries.</li>
          <li>no limitation on number of unidirectional and bidirectional streams.</li>
          <li>ordered and unordered delivery of SCTP user messages.</li>
          <li>the partial reliability extension as defined in <xref target="RFC3758"/>.</li>
          <li>multi-homing of the SCTP association per <xref target="RFC9260"/>.</li>
          <li>the dynamic address reconfiguration extension as defined in
 <xref target="RFC5061"/>.</li>
          <li>User messages of any size.</li>
          <li>SCTP Packets with a protected set of chunks up to a size of
2<sup>14</sup> bytes.</li>
        </ul>
      </section>
      <section anchor="protocol-overview">
        <name>Protocol Overview</name>
        <t>DTLS in SCTP is a protection engine specification for the SCTP
   CRYPTO chunk <xref target="I-D.westerlund-tsvwg-sctp-crypto-chunk"/> that
   utilizes DTLS 1.2 or 1.3 for the security functions like
   key exchange, authentication, encryption, integrity protection,
   and replay protection. The basic functionalities and how things
   are related are described below.</t>
        <t>In a SCTP association initiation where DTLS in SCTP is chosen as
   the protection engine for the CRYPTO chunk the DTLS handshake
   is exchanged encapsulated in plain DATA chunks with Protection
   Engine PPID (see section 10.6 of <xref target="I-D.westerlund-tsvwg-sctp-crypto-chunk"/>)
   until an initial DTLS connection has been established.
   If the DTLS handshake fails, the
   SCTP association is aborted. When the DTLS connection has been
   established PVALID chunks are exchanged to verify that no
   downgrade attack between different protection engines has
   occurred. To prevent manipulation, the PVALID chunks are protected
   by encapsulating them in DTLS protected CRYPTO chunks.</t>
        <t>Assuming that the PVALID validation is successful the SCTP
   association is established and the Upper Layer Protocol (ULP) can
   start sending data over the SCTP association. From this point all
   chunks will be protected by encapsulating them in DTLS protected
   CRYPTO chunks. The SCTP chunks to be included in an SCTP packet
   are the plain text application data input to DTLS. The
   encrypted DTLS application data record is then encapsulated in the
   CRYPTO chunk and the packet is transmitted, see <xref target="chunk-processing"/>.</t>
        <t>In the receiving SCTP endpoint each incoming SCTP packet on any of
   its interfaces and ports are matched to the SCTP association based
   on ports and VTAG in the common header. In that association context
   for the CRYPTO chunk there will exist reference to one or more DTLS
   connections used to protect the data. The DTLS connection actually
   used to protect this packet is identified by two DCI bits in the
   CRYPTO chunk's flags. Using the identified DTLS session the content
   of the CRYPTO chunk is attempted to be processed, including replay
   protection, decryption, and integrity checking. And if decryption
   and integrity verification was successful the produced plain text
   of one or more SCTP chunks are provided for normal SCTP processing
   in the identified SCTP association along with associated meta data
   such as path received on, original packet size, and ECN bits.</t>
        <t>When mutual re-authentication or rekeying with ephemeral key exchange is
   needed or desired by either endpoint a new DTLS connection handshake
   is performed between the SCTP endpoints. A different DTLS Connection
   Index (DCI) than currently used among the CRYPTO chunk flags are used to
   indicate that this is a new handshake. When the handshake has
   completed the DTLS in SCTP implementation can simply switch to use
   this DTLS connection to protect the plain text payload. After a
   short while (no longer than 2 min) to enable any outstanding
   packets to drain from the network path between the endpoints the
   old DTLS connection can be terminated.</t>
        <t>The DTLS connection is free to send any alert, handshake message, or
   other non-application data to its peer at any point in time. Thus,
   enabling DTLS 1.3 Key Updates for example.
   All non-application data SHOULD be sent by means of SCTP DATA chunks
   with Protection Engine PPID as specified in
   <xref target="I-D.westerlund-tsvwg-sctp-crypto-chunk"/>.</t>
        <figure anchor="overview-layering">
          <name>DTLS in SCTP layer in regard to SCTP and upper layer protocol</name>
          <artset>
            <artwork type="svg"><svg xmlns="http://www.w3.org/2000/svg" version="1.1" height="352" width="448" viewBox="0 0 448 352" class="diagram" text-anchor="middle" font-family="monospace" font-size="13px">
                <path d="M 8,32 L 8,336" fill="none" stroke="black"/>
                <path d="M 136,32 L 136,96" fill="none" stroke="black"/>
                <path d="M 152,32 L 152,96" fill="none" stroke="black"/>
                <path d="M 184,96 L 184,336" fill="none" stroke="black"/>
                <path d="M 224,208 L 224,272" fill="none" stroke="black"/>
                <path d="M 320,32 L 320,96" fill="none" stroke="black"/>
                <path d="M 400,208 L 400,272" fill="none" stroke="black"/>
                <path d="M 440,80 L 440,224" fill="none" stroke="black"/>
                <path d="M 8,32 L 136,32" fill="none" stroke="black"/>
                <path d="M 152,32 L 320,32" fill="none" stroke="black"/>
                <path d="M 320,64 L 424,64" fill="none" stroke="black"/>
                <path d="M 8,96 L 320,96" fill="none" stroke="black"/>
                <path d="M 336,128 L 352,128" fill="none" stroke="black"/>
                <path d="M 200,176 L 216,176" fill="none" stroke="black"/>
                <path d="M 8,208 L 184,208" fill="none" stroke="black"/>
                <path d="M 224,208 L 400,208" fill="none" stroke="black"/>
                <path d="M 192,240 L 216,240" fill="none" stroke="black"/>
                <path d="M 408,240 L 424,240" fill="none" stroke="black"/>
                <path d="M 8,272 L 184,272" fill="none" stroke="black"/>
                <path d="M 224,272 L 400,272" fill="none" stroke="black"/>
                <path d="M 200,304 L 216,304" fill="none" stroke="black"/>
                <path d="M 8,336 L 184,336" fill="none" stroke="black"/>
                <path d="M 184,272 L 200,304" fill="none" stroke="black"/>
                <path d="M 320,96 L 336,128" fill="none" stroke="black"/>
                <path d="M 184,208 L 200,176" fill="none" stroke="black"/>
                <path d="M 424,64 C 432.83064,64 440,71.16936 440,80" fill="none" stroke="black"/>
                <path d="M 424,240 C 432.83064,240 440,232.83064 440,224" fill="none" stroke="black"/>
                <polygon class="arrowhead" points="416,240 404,234.4 404,245.6" fill="black" transform="rotate(180,408,240)"/>
                <polygon class="arrowhead" points="224,240 212,234.4 212,245.6" fill="black" transform="rotate(0,216,240)"/>
                <polygon class="arrowhead" points="200,240 188,234.4 188,245.6" fill="black" transform="rotate(180,192,240)"/>
                <g class="text">
                  <text x="204" y="52">Protection</text>
                  <text x="276" y="52">Engine</text>
                  <text x="356" y="52">Keys</text>
                  <text x="72" y="68">ULP</text>
                  <text x="192" y="84">Key</text>
                  <text x="252" y="84">Management</text>
                  <text x="380" y="116">User</text>
                  <text x="384" y="132">Level</text>
                  <text x="36" y="148">SCTP</text>
                  <text x="84" y="148">Chunks</text>
                  <text x="144" y="148">Handler</text>
                  <text x="396" y="148">Messages</text>
                  <text x="244" y="180">SCTP</text>
                  <text x="312" y="180">Unprotected</text>
                  <text x="392" y="180">Payload</text>
                  <text x="100" y="228">CRYPTO</text>
                  <text x="276" y="228">Protection</text>
                  <text x="348" y="228">Engine</text>
                  <text x="96" y="244">Chunk</text>
                  <text x="96" y="260">Handler</text>
                  <text x="276" y="260">Protection</text>
                  <text x="356" y="260">Operator</text>
                  <text x="36" y="308">SCTP</text>
                  <text x="84" y="308">Header</text>
                  <text x="144" y="308">Handler</text>
                  <text x="244" y="308">DTLS</text>
                  <text x="304" y="308">Encrypted</text>
                  <text x="364" y="308">SCTP</text>
                  <text x="416" y="308">Payload</text>
                </g>
              </svg>
            </artwork>
            <artwork type="ascii-art"><![CDATA[
+---------------+ +--------------------+
|               | | Protection Engine  |  Keys
|      ULP      | |                    +-------------.
|               | |   Key Management   |              |
+---------------+-+---+----------------+              |
|                     |                 \    User     |
|                     |                  +-- Level    |
| SCTP Chunks Handler |                      Messages |
|                     |                               |
|                     | +-- SCTP Unprotected Payload  |
|                     |/                              |
+---------------------+    +---------------------+    |
|        CRYPTO       |    | Protection Engine   |    |
|        Chunk        |<-->|                     |<--'
|       Handler       |    | Protection Operator |
+---------------------+    +---------------------+
|                     |\
| SCTP Header Handler | +-- DTLS Encrypted SCTP Payload
|                     |
+---------------------+
]]></artwork>
          </artset>
        </figure>
      </section>
      <section anchor="properties-of-dtls-in-sctp">
        <name>Properties of DTLS in SCTP</name>
        <t>DTLS in SCTP has a number of properties that are attractive.</t>
        <ul spacing="normal">
          <li>Provides confidentiality, integrity protection, and source
authentication for each packet.</li>
          <li>Provides replay protection on SCTP packet level preventing
malicious replay attacks on SCTP, both protecting the data as well
as the SCTP functions themselves.</li>
          <li>Provides mutual authentication of the endpoints based on any
authentication mechanism supported by DTLS.</li>
          <li>Uses parallel DTLS connections to enable mutual re-authentication
and rekeying with ephemeral key exchange. Thus, enabling SCTP association
lifetimes without known limitations.</li>
          <li>Uses core of DTLS as it is and updates and fixes to DTLS security
properties can be implemented without further changes to this
specification.</li>
          <li>Secures all SCTP packets exchanged after SCTP association has
reached the established state. Making targeted attacks against
the SCTP protocol and implementation much harder.</li>
          <li>DTLS in SCTP results in no limitations on user message
transmission, those properties are the same as for an unprotected
SCTP association.</li>
          <li>Limited overhead on a per packet basis, with 4 bytes for the
CRYPTO chunk plus the DTLS record overhead. The DTLS
overhead is dependent on the DTLS version.</li>
          <li>Support of SCTP packet plain text payload sizes up to
2<sup>14</sup> bytes.</li>
        </ul>
        <section anchor="benefits-compared-to-dtlssctp">
          <name>Benefits Compared to DTLS/SCTP</name>
          <t>DTLS/SCTP as defined by <xref target="I-D.ietf-tsvwg-dtls-over-sctp-bis"/>
   has several important differences most to the benefit of DTLS in
   SCTP. This section reviews these differences.</t>
          <ul spacing="normal">
            <li>Replay Protection in DTLS/SCTP has some limitations due to
SCTP-AUTH <xref target="RFC4895"/> and its interaction with the SCTP implementation and
dependencies on the actual SCTP-AUTH rekeying frequency. DTLS
in SCTP relies on DTLS mechanism for replay protection that can
prevent both duplicates from being delivered as well as
preventing packets from outside the current window to be
delivered. Thus, a stronger protection especially for non-DATA
chunk are provided and protects the SCTP stack from replayed or
duplicated packets.</li>
            <li>Encryption in DTLS/SCTP is only applied to ULP data. For
DTLS in SCTP all chunk type after the association has reached
established state will be encrypted. This, makes protocol attacks
harder as a third-party attacker will have less insight into SCTP
protocol state. Also, protocol header information likes PPIDs will
also be encrypted, which makes targeted attacks harder but also
make management and debugging harder.</li>
            <li>DTLS/SCTP Rekeying is complicated and require advanced API or
user message tracking to determine when a key is no longer needed
so that it can be discarded. A DTLS/SCTP key that is prematurely
discarded can result in loss of parts of a user message and
failure of the assumptions on the transport where the sender
believes it delivered and the receiver never gets it. This
usually will result in the need to terminate the SCTP association
to restart the ULP session to avoid worse issues. DTLS in SCTP is
robust to discarding the DTLS key after having switched to a new
established DTLS connection. Any outstanding packets that have
not been decoded yet will simply be treated as lost between the
SCTP endpoints and SCTP's retransmission will retransmit any user
message data that requires it. Also, the algorithm for when to
discard a DTLS connection can be much simpler.</li>
            <li>DTLS/SCTP rekeying can put restrictions on user message sizes
unless the right APIs exist to the SCTP implementation to
determine the state of user messages. No such restriction exists
in DTLS in SCTP.</li>
            <li>By using the CRYPTO chunk that is acting on SCTP packet level
instead of user messages the consideration for extensions are
quite different. Only extensions that would affect the common
header or how packets are formed would interact with this
mechanism, any extension that just defines new chunks or
parameters for existing chunks is expected to just work and be
secured by the mechanism. DTLS/SCTP instead interact with
extensions that affects how user messages are handled.</li>
            <li>A known downside is that the defined DTLS in SCTP usage creates a
limitation on the maximum SCTP packet size that can be used of
2<sup>14</sup> bytes. If the DTLS implementation does not support
the maximum DTLS record size the maximum supported packet size
might be even lower. However, this value needs to be compared to
the supported MTU of IP, and are thus in reality often not an
actual limitation. Only for some special deployments or over
loopback may this limitation be visible.</li>
          </ul>
          <t>There are several significant differences in regard to
   implementation between the two realizations.</t>
          <ul spacing="normal">
            <li>DTLS in SCTP do requires the CRYPTO chunk to be implemented in
the SCTP stack implementation, and not as an adaptation layer
above the SCTP stack which DTLS/SCTP instead requires. This has
some extra challenges for operating system level
implementations. However, as some updates anyway will be required
to support the corrected SCTP-AUTH the implementation burden is
likely similar in this regard.</li>
            <li>
              <t>DTLS in SCTP can use a DTLS implementation that does not rely on
features from outside of the core protocol, where DTLS/SCTP
required a number of features as listed below:  </t>
              <ul spacing="normal">
                <li>DTLS Connection Index to identify which DTLS connection that
should process the DTLS record.</li>
                <li>Support for DTLS records of the maximum size of 16 KB.</li>
                <li>Optional to support negotiation of maximum DTLS record size
unless not supporting 16 KB records when it is
required. Even if implementing the negotiation,
interoperability failure may occur. DTLS in SCTP will only
require supporting DTLS record sizes that matches the
largest IP packet size that endpoint support or the SCTP
implementation.</li>
                <li>Implementation is required to support turning off the DTLS
replay protection.</li>
                <li>Implementation is required to not use DTLS Key-update
functionality. Where DTLS in SCTP is agnostic to its usage,
and it provides a useful tool to ensure that the key lifetime
never is an issue.</li>
              </ul>
            </li>
          </ul>
          <t>The conclusion of these implementation details is that where DTLS
   in SCTP can use existing DTLS implementations, including OpenSSL's
   DTLS 1.2 implementation. It is not known if any DTLS stack exist
   that fully support the requirements in DTLS/SCTP. It is
   expected that a DTLS/SCTP implementation will have to also
   extend some DTLS implementation.</t>
        </section>
      </section>
      <section anchor="terminology">
        <name>Terminology</name>
        <t>This document uses the following terms:</t>
        <dl>
          <dt>Association:</dt>
          <dd>
            <t>An SCTP association.</t>
          </dd>
          <dt>Connection:</dt>
          <dd>
            <t>A DTLS connection. It is uniquely identified by a
   connection identifier.</t>
          </dd>
          <dt>Stream:</dt>
          <dd>
            <t>A unidirectional stream of an SCTP association.  It is
   uniquely identified by a stream identifier.</t>
          </dd>
        </dl>
      </section>
      <section anchor="abbreviations">
        <name>Abbreviations</name>
        <dl>
          <dt>AEAD:</dt>
          <dd>
            <t>Authenticated Encryption with Associated Data</t>
          </dd>
          <dt>DCI:</dt>
          <dd>
            <t>DTLS Connection Index</t>
          </dd>
          <dt>DTLS:</dt>
          <dd>
            <t>Datagram Transport Layer Security</t>
          </dd>
          <dt>MTU:</dt>
          <dd>
            <t>Maximum Transmission Unit</t>
          </dd>
          <dt>PPID:</dt>
          <dd>
            <t>Payload Protocol Identifier</t>
          </dd>
          <dt>SCTP:</dt>
          <dd>
            <t>Stream Control Transmission Protocol</t>
          </dd>
          <dt>SCTP-AUTH:</dt>
          <dd>
            <t>Authenticated Chunks for SCTP <xref target="RFC4895"/></t>
          </dd>
          <dt>ULP:</dt>
          <dd>
            <t>Upper Layer Protocol</t>
          </dd>
        </dl>
      </section>
      <section anchor="conventions">
        <name>Conventions</name>
        <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.
<?line -6?>
        </t>
      </section>
    </section>
    <section anchor="dtls-identification">
      <name>DTLS Identification</name>
      <t>This section identifies how the extension described in this document
is identified in the Crypto Chunk and its negotiation
<xref target="I-D.westerlund-tsvwg-sctp-crypto-chunk"/>.</t>
      <section anchor="new-protection-engines-protection-engines">
        <name>New protection Engines {protection-engines}</name>
        <t>This document specifies the adoption of DTLS as protection engine
for SCTP Crypto Chunks for DTLS1.2 and DTLS1.3</t>
        <t>The following table applies.</t>
        <table anchor="dtls-protection-engines">
          <name>DTLS protection engines</name>
          <thead>
            <tr>
              <th align="right">VALUE</th>
              <th align="left">DTLS VERSION</th>
              <th align="left">REFERENCE</th>
            </tr>
          </thead>
          <tbody>
            <tr>
              <td align="right">0</td>
              <td align="left">DTLS 1.2</td>
              <td align="left">RFC-To-Be</td>
            </tr>
            <tr>
              <td align="right">1</td>
              <td align="left">DTLS 1.3</td>
              <td align="left">RFC-To-Be</td>
            </tr>
          </tbody>
        </table>
        <t>The values specified above shall be used in the Protected Association
parameter as protection engines as specified in
<xref target="I-D.westerlund-tsvwg-sctp-crypto-chunk"/> and are registered with
IANA below in <xref target="iana-protection-engines"/>.</t>
      </section>
    </section>
    <section anchor="dtls-usage-of-crypto-chunk">
      <name>DTLS Usage of CRYPTO Chunk</name>
      <t>DTLS in SCTP uses the CRYPTO chunk in the following way. Fields
   not discussed are used as specified in
   <xref target="I-D.westerlund-tsvwg-sctp-crypto-chunk"/>.</t>
      <figure anchor="sctp-CRYPTO-chunk-structure">
        <name>CRYPTO Chunk Structure</name>
        <artset>
          <artwork type="svg"><svg xmlns="http://www.w3.org/2000/svg" version="1.1" height="208" width="528" viewBox="0 0 528 208" class="diagram" text-anchor="middle" font-family="monospace" font-size="13px">
              <path d="M 8,64 L 8,192" fill="none" stroke="black"/>
              <path d="M 136,64 L 136,96" fill="none" stroke="black"/>
              <path d="M 232,64 L 232,96" fill="none" stroke="black"/>
              <path d="M 264,64 L 264,96" fill="none" stroke="black"/>
              <path d="M 264,160 L 264,192" fill="none" stroke="black"/>
              <path d="M 520,64 L 520,192" fill="none" stroke="black"/>
              <path d="M 8,64 L 520,64" fill="none" stroke="black"/>
              <path d="M 8,96 L 520,96" fill="none" stroke="black"/>
              <path d="M 264,160 L 520,160" fill="none" stroke="black"/>
              <path d="M 8,192 L 520,192" fill="none" stroke="black"/>
              <g class="text">
                <text x="16" y="36">0</text>
                <text x="176" y="36">1</text>
                <text x="336" y="36">2</text>
                <text x="496" y="36">3</text>
                <text x="16" y="52">0</text>
                <text x="32" y="52">1</text>
                <text x="48" y="52">2</text>
                <text x="64" y="52">3</text>
                <text x="80" y="52">4</text>
                <text x="96" y="52">5</text>
                <text x="112" y="52">6</text>
                <text x="128" y="52">7</text>
                <text x="144" y="52">8</text>
                <text x="160" y="52">9</text>
                <text x="176" y="52">0</text>
                <text x="192" y="52">1</text>
                <text x="208" y="52">2</text>
                <text x="224" y="52">3</text>
                <text x="240" y="52">4</text>
                <text x="256" y="52">5</text>
                <text x="272" y="52">6</text>
                <text x="288" y="52">7</text>
                <text x="304" y="52">8</text>
                <text x="320" y="52">9</text>
                <text x="336" y="52">0</text>
                <text x="352" y="52">1</text>
                <text x="368" y="52">2</text>
                <text x="384" y="52">3</text>
                <text x="400" y="52">4</text>
                <text x="416" y="52">5</text>
                <text x="432" y="52">6</text>
                <text x="448" y="52">7</text>
                <text x="464" y="52">8</text>
                <text x="480" y="52">9</text>
                <text x="496" y="52">0</text>
                <text x="512" y="52">1</text>
                <text x="36" y="84">Type</text>
                <text x="64" y="84">=</text>
                <text x="92" y="84">0x4x</text>
                <text x="184" y="84">Flags</text>
                <text x="248" y="84">DCI</text>
                <text x="360" y="84">Chunk</text>
                <text x="412" y="84">Length</text>
                <text x="264" y="132">Payload</text>
                <text x="384" y="180">Padding</text>
              </g>
            </svg>
          </artwork>
          <artwork type="ascii-art"><![CDATA[
 0                   1                   2                   3
 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Type = 0x4x   |   Flags   |DCI|         Chunk Length          |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|                                                               |
|                            Payload                            |
|                                                               |
|                               +-------------------------------+
|                               |           Padding             |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
]]></artwork>
        </artset>
      </figure>
      <dl newline="true">
        <dt>DCI: 2 bits (unsigned integer)</dt>
        <dd>
          <t>DTLS Connection Index is the
   lower two bits of an DTLS Connection Index counter. This is a
   counter implemented in DTLS in SCTP that is used to identify which
   DTLS connection instance that is capable of processing any received
   packet. This counter is recommended to be 64-bit to guarantee no
   lifetime issues for the SCTP Association.</t>
        </dd>
        <dt>Flags: 6 bits</dt>
        <dd>
          <t>Chunk Flag bits not currently used by DTLS in SCTP. They
   MUST be set to zero (0) and MUST be ignored on reception. They MAY
   be used in future updated specifications for DTLS in SCTP.</t>
        </dd>
        <dt>Payload: variable length</dt>
        <dd>
          <t>One or more DTLS records. In cases more
   than one DTLS record is included all DTLS records except the last
   MUST include a length field. Note that this matches what is specified in
   DTLS 1.3 <xref target="RFC9147"/> and DTLS 1.2 will always include the length
   field in each record.</t>
        </dd>
      </dl>
    </section>
    <section anchor="crypto-chunk-integration">
      <name>Crypto Chunk Integration</name>
      <t>There are a set of requirements stated in <xref target="I-D.westerlund-tsvwg-sctp-crypto-chunk"/> that
need to be addressed in this specification, this section deals with those
requirements and how they are met in the current specification.</t>
      <section anchor="state-machine">
        <name>State Machine</name>
        <t>The CRYPTO Chunk allows the protection engine to have inband or
out-of-band key establishment. DTLS in SCTP uses inband key
establishment, thus the DTLS handshake establishes shared keys with the
remote peer. As soon as the SCTP State Machine enters PROTECTION
PENDING state, DTLS is responsible for progressing to the PROTECTED
state when DTLS handshake has completed. The DCI counter is
initialized to the value zero that is used for the initial DTLS
handshake.</t>
        <section anchor="protection-pending-state">
          <name>PROTECTION PENDING state</name>
          <t>When entering PROTECTION PENDING state, DTLS will start the handshake
according to <xref target="dtls-handshake"/>.</t>
          <t>DTLS protection engine being initialized for a new SCTP association
will set the DCI counter = 0, which implies a DCI field value of 0,
for the initial DTLS connection. The DTLS handshake messages are
transmitted from this endpoint to the peer using DATA chunks with the
PPID value set to Protection Engine Protocol Identifier
<xref target="I-D.westerlund-tsvwg-sctp-crypto-chunk"/>.</t>
          <t>When a successful handshake has been completed, DTLS protection engine
will inform CRYPTO chunk Handler that will move SCTP State Machine
into PROTECTED state.</t>
        </section>
        <section anchor="protected-state">
          <name>PROTECTED state</name>
          <t>In the PROTECTED state the currently active DTLS connection is used
for protection operation of the payload of SCTP chunks in each packet
per below specification.  When necessary to meet requirements on
periodic re-authentication of the peer and establishment of new
forward secrecy keys a new parallel DTSL connection is established as
further specified in <xref target="parallel-dtls"/>.</t>
        </section>
        <section anchor="shutdown-states">
          <name>SHUTDOWN states</name>
          <t>When the SCTP association leaves the ESTABLISHED state per <xref target="RFC9260"/>
to be shutdown the DTLS connection is kept and continues to protect
the SCTP packet payloads through the shutdown process.</t>
          <t>When the association reaches the CLOSED state as part of the SCTP
association closing process all DTLS connections that existed are
terminated without further transmissions, i.e. DTLS close_notify is
not transmitted.</t>
        </section>
      </section>
      <section anchor="dtls-connection-handling">
        <name>DTLS Connection Handling</name>
        <t>It's up to DTLS protection engine to manage the DTLS connections and
their related DCI.</t>
        <section anchor="add-dtls-connection">
          <name>Add a New DTLS Connection</name>
          <t>Either peer can add a new DTLS connection to the SCTP association at
any time, but no more than 2 DTLS connections can exist at the same
time.  The new DCI value shall be the last active DCI increased by one
modulo 4, this makes the attempt to create a new DTLS connection to
use the same, known, value of DCI from both peers.  A new handshake
will be initiated by DTLS using the new DCI.  Details of the handshake
are described in <xref target="dtls-handshake"/>.</t>
          <t>As either endpoint can initiate a DTLS handshake at the same time,
either endpoint may receive a DTLS ClientHello message when it has
sent its own ClientHello. In this case the ClientHello from the
endpoint that had the DTLS Client role in the establishment of the
previous DTLS connection shall be continued to be processed and the
other dropped.</t>
          <t>When the handshake has been completed successfully, the new DTLS
connection will be possible to use for traffic, if the handshake is
not completed successfully, the new DCI value will not be considered
used and a next attempt will reuse that DCI.</t>
        </section>
        <section anchor="remove-dtls-connection">
          <name>Remove an existing DTLS Connection</name>
          <t>Either peers can initialize the removal of a DTLS connection from the
current SCTP association when it is no longer the active one, i.e. when a
newer DTLS connection is in use. It is RECOMMENDED to not initiate
removal until at least one SCTP packet protected by the new DTLS
connection has been received, and any transmitted packets protected
using the new DTLS connection has been acknowledge, alternatively one
Maximum Segment Lifetime (120 seconds) has passed since the last SCTP
packet protected by the old DTLS connection was transmitted.</t>
          <t>The closing of the DTLS connection when the SCTP association is in
PROTECTED and ESTABLISHED state is done by having the DTLS connection
send a DTLS close_notify. Note the difference in process for DTLS 1.2
and DTLS 1.3. Where sending the DTLS 1.2 close_notify will trigger an
immediate close also in the peer. Which is why it is recommended to
ensure that one have received packets from the peer using the new DTLS
connection.</t>
          <t>When DTLS closure for a DTLS connection is completed, the related DCI is
released in the DTLS protection engine.</t>
        </section>
      </section>
      <section anchor="error-cases">
        <name>Error Cases</name>
        <t>As DTLS has its own error reporting mechanism by exchanging DTLS alert
messages no new DTLS related cause codes are defined to use the error
handling defined in <xref target="I-D.westerlund-tsvwg-sctp-crypto-chunk"/>.</t>
        <t>When DTLS encounters an error it may report that issue using DTLS
alert message to its peer by putting the created DTLS record in a
DATA chunk with Protection Engine PPID and sending it in an SCTP packet.
This is independent of what to do in relation to the SCTP association.
Depending on the severance of the error different paths can be the result:</t>
        <dl>
          <dt>Non-critical:</dt>
          <dd>
            <t>the DTLS connection can continue to protect
   the SCTP association. In this case the issue may be worth reporting
   to the peer using a DTLS alert message, but otherwise continue
   without further action.</t>
          </dd>
          <dt>Critical, but not immediately fatal:</dt>
          <dd>
            <t>If the DTLS connection has a
   critical issue, but can still protect packets then a the endpoint
   SHOULD attempt to establish a new DTLS connection. If that succeeds
   then the SCTP association switches over to the new DTLS connection
   and can terminate the old one including reporting the error. In
   case the establishment fails, then this critical issue MUST be reported
   to the SCTP association so that it can send an ABORT chunk with the
   Error in Protection cause code. This will terminate the SCTP
   association immediately, provide ULP with notification of the
   failure and speeding up any higher layer management of the failure.</t>
          </dd>
          <dt>Critical, and immediately fatal:</dt>
          <dd>
            <t>If the DTLS connection fails so
   that no further data can be protected (i.e. either sent or
   received) with maintained security then it is not possible to
   establish a new DTLS connection and the protection engine will
   have to indicate this to the SCTP implementation so it can perform
   a one sides SCTP association termination. This will lead to an
   eventual SCTP association timeout in the peer.</t>
          </dd>
        </dl>
      </section>
    </section>
    <section anchor="dtls-considerations">
      <name>DTLS Considerations</name>
      <section anchor="version-of-dtls">
        <name>Version of DTLS</name>
        <t>This document defines the usage of either DTLS 1.3 <xref target="RFC9147"/>, or
   DTLS 1.2 <xref target="RFC6347"/>.  Earlier versions of DTLS MUST NOT be used
   (see <xref target="RFC8996"/>).  DTLS 1.3 is RECOMMENDED for security and
   performance reasons.  It is expected that DTLS in SCTP as described in
   this document will work with future versions of DTLS.</t>
        <t>Only one version of DTLS MUST be used during the lifetime of an
   SCTP Association, meaning that the procedure for replacing the DTLS
   version in use requires the existing SCTP Association to be
   terminated and a new SCTP Association with the desired DTLS version
   to be instantiated.</t>
      </section>
      <section anchor="configuration-of-dtls">
        <name>Configuration of DTLS</name>
        <section anchor="general">
          <name>General</name>
          <t>The DTLS Connection ID SHALL NOT be included in the DTLS records as
   it is not needed, the CRYPTO chunk indicates which DTLS connection
   the DTLS records are intended for using the DCI bits. Avoiding
   overhead and addition implementation requirements on DTLS
   implementation.</t>
          <t>The DTLS record length field is normally not needed as the CRYPTO
   Chunk provides a length field unless multiple records are put in
   same chunk payload. If multiple DTLS records are included in one
   CRYPTO chunk payload the DTLS record length field MUST be present
   in all but the last.</t>
          <t>DTLS record replay detection MUST be used.</t>
          <t>Sequence number size can be adapted based on how quickly it wraps.</t>
          <t>Many of the TLS registries have a "Recommended" column. Parameters
   not marked as "Y" are NOT RECOMMENDED to support in DTLS in
   SCTP. Non-AEAD cipher suites or cipher suites without
   confidentiality MUST NOT be supported. Cipher suites and parameters
   that do not provide ephemeral key exchange MUST NOT be supported.</t>
        </section>
        <section anchor="authentication-and-policy-decisions">
          <name>Authentication and Policy Decisions</name>
          <t>DTLS in SCTP MUST be mutually authenticated. Authentication is the
process of establishing the identity of a user or system and verifying
that the identity is valid. DTLS only provides proof of possession of
a key. DTLS in SCTP MUST perform identity authentication. It is
RECOMMENDED that DTLS in SCTP is used with certificate-based
authentication. When certificates are used the application using DTLS
in SCTP is responsible for certificate policies, certificate chain
validation, and identity authentication (HTTPS does for example match
the hostname with a subjectAltName of type dNSName). The application
using DTLS in SCTP defines what the identity is and how it is encoded
and the client and server MUST use the same identity format. Guidance
on server certificate validation can be found in
<xref target="I-D.ietf-uta-rfc6125bis"/>. DTLS in SCTP enables periodic transfer of
mutual revocation information (OSCP stapling) every time a new
parallel connection is set up. All security decisions MUST be based on
the peer's authenticated identity, not on its transport layer
identity.</t>
          <t>It is possible to authenticate DTLS endpoints based on IP addresses in
certificates. SCTP associations can use multiple IP addresses per SCTP
endpoint. Therefore, it is possible that DTLS records will be sent
from a different source IP address or to a different destination IP
address than that originally authenticated. This is not a problem
provided that no security decisions are made based on the source or
destination IP addresses.</t>
        </section>
        <section anchor="new-connections">
          <name>New Connections</name>
          <t>Implementations MUST set up new DTLS connections before any of the
certificates expire. It is RECOMMENDED that all negotiated and
exchanged parameters are the same except for the timestamps in the
certificates. Clients and servers MUST NOT accept a change of identity
during the setup of a new connections, but MAY accept negotiation of
stronger algorithms and security parameters, which might be motivated
by new attacks.</t>
          <t>Allowing new connections can enable denial-of-service attacks. The
endpoints MUST limit the number of simultaneous connections to two.</t>
          <t>To force attackers to do dynamic key exfiltration and limits the
amount of compromised data due to key compromise implementations MUST
have policies for how often to set up new connections with ephemeral
key exchange such as ECDHE. Implementations SHOULD set up new
connections frequently to force attackers to dynamic key
extraction. E.g., at least every hour and every 100 GB of data which
is a common policy for IPsec <xref target="ANSSI-DAT-NT-003"/>. See
<xref target="I-D.ietf-tls-rfc8446bis"/> for a more detailed discussion on key
compromise and key exfiltration in (D)TLS.</t>
          <t>For many DTLS in SCTP deployments the SCTP association is expected to
have a very long lifetime of months or even years. For associations
with such long lifetimes there is a need to frequently re-authenticate
both client and server by setting up new connections. TLS Certificate
lifetimes significantly shorter than a year are common which is
shorter than many expected SCTP associations protected by DTLS in
SCTP.</t>
        </section>
        <section anchor="padding-of-dtls-records">
          <name>Padding of DTLS Records</name>
          <t>Both SCTP and DTLS contains mechanisms to padd SCTP payloads, and DTLS
records respectively. If padding of SCTP packets are desired to hide
actual message sizes it RECOMMEDED to use the SCTP Padding Chunck
<xref target="RFC4820"/> to generate a consisted SCTP payload size. Support of this
chunk is only required on the sender side. However, if the PAD chunk
is not supported DTLS padding MAY be used.</t>
          <t>It needs to be noted that independent if SCTP padding or DTLS padding
is used the padding is not taken into account by the SCTP congestion
control. Extensive use of padding has potential for worsen congestion
situations as the SCTP association will consume more bandwidth than
its derived share by the congestion control.</t>
          <t>The use of SCTP PAD chunk is recommened as it at least can enable
future extension or SCTP implementation that account also for the
padding. Use of DTLS padding hides this packet expansion from SCTP.</t>
        </section>
        <section anchor="dtls-12">
          <name>DTLS 1.2</name>
          <t>The updates in Section 13 of <xref target="RFC9147"/> SHALL be followed for DTLS
1.2. DTLS 1.2 MUST be configured to disable options known to provide
insufficient security. HTTP/2 <xref target="RFC9113"/> gives good minimum
requirements based on the attacks that where publicly known in 2022.</t>
          <t>The AEAD limits in DTLS 1.3 are equally valid for DTLS 1.2 and SHOULD
be followed for DTLS in SCTP, but are not mandated by the DTLS 1.2
specification.</t>
          <t>Use of renegotiation is NOT RECOMMENDED as it is disables in many
implementations and does not provide any benefits in DTLS in SCTP
compared to setting up a new connection. Resumption MAY be used but
does not provide ephemeral key exchange as in DTLS 1.3</t>
        </section>
        <section anchor="dtls-13">
          <name>DTLS 1.3</name>
          <t>DTLS 1.3 is preferred over DTLS 1.2 being a newer protocol that
addresses known vulnerabilities and only defines strong algorithms
without known major weaknesses at the time of publication.</t>
          <t>DTLS 1.3 requires rekeying before algorithm specific AEAD limits have
been reached. Implementations MAY setup a new DTLS connection instead
of using key update.</t>
          <t>In DTLS 1.3 any number of tickets can be issued in a connection and
the tickets can be used for resumption as long as they are valid,
which is up to seven days. The nodes in a resumed connection have the
same roles (client or server) as in the connection where the ticket
was issued. Resumption can have significant latency benefits for
quickly restarting a broken DTLS/SCTP association. If tickets and
resumption are used it is enough to issue a single ticket per
connection.</t>
          <t>The PSK key exchange mode psk_ke MUST NOT be used as it does not
provide ephemeral key exchange.</t>
        </section>
      </section>
    </section>
    <section anchor="establishing-dtls-in-sctp">
      <name>Establishing DTLS in SCTP</name>
      <t>This section specifies how DTLS in SCTP is established after
   Protected Association Parameter with DTLS 1.2 or DTLS 1.3 as
   protection engine has been negotiated in the Init and Init-ACK
   exchange per <xref target="I-D.westerlund-tsvwg-sctp-crypto-chunk"/>.</t>
      <section anchor="dtls-handshake">
        <name>DTLS Handshake</name>
        <section anchor="handshake-of-initial-dtls-connection">
          <name>Handshake of initial DTLS connection</name>
          <t>As soon the SCTP Association has entered the SCTP state PROTECTION
   PENDING as defined by <xref target="I-D.westerlund-tsvwg-sctp-crypto-chunk"/>
   the DTLS handshake procedure is initiated by the endpoint that
   has initiated the SCTP association.</t>
          <t>The DTLS endpoint will if necessary fragment the handshake into
   multiple records each meeting the known or set MTU limit of the
   path between SCTP endpoints. Each DTLS handshake message fragment
   is sent as a SCTP user message on the same stream where each
   message is configured for reliable and in-order delivery with the
   Protection Engine PPID.  The DTLS instance SHOULD NOT use DTLS
   retransmission to repair any packet losses of handshake message
   fragment. Note: If the DTLS implementation support configuring a
   MTU larger than the actual IP MTU it could be used as SCTP provides
   reliability and fragmentation.</t>
          <t>If the DTLS handshake is successful in establishing a security
   context to protect further communication and the peer identity is
   accepted then the SCTP association is informed that it can
   move to the PROTECTED state.</t>
          <t>If the DTLS handshake failed the SCTP association SHALL be aborted
   and an ERROR chunk with the Error in Protection error cause, with
   the appropriate extra error causes is generated, the right
   selection of "Error During Protection Handshake" or "Timeout During
   Protection Handshake or Validation".</t>
        </section>
        <section anchor="handshake-of-further-dtls-connections">
          <name>Handshake of further DTLS connections</name>
          <t>When the SCTP Association has entered the ESTABLISHED state,
   each of the endpoint can initiate an DTLS handshake.</t>
          <t>The DTLS endpoint will if necessary fragment the handshake into
   multiple records each meeting the known or set MTU limit of the
   path between SCTP endpoints. Each DTLS handshake message fragment
   is sent as a SCTP user message on the same stream where each
   message is configured for reliable and in-order delivery with the
   Protection Engine PPID.  The DTLS instance SHOULD NOT use DTLS
   retransmission to repair any packet losses of handshake message
   fragment. Note: If the DTLS implementation support configuring a
   MTU larger than the actual IP MTU it could be used as SCTP provides
   reliability and fragmentation.</t>
          <t>If the DTLS handshake failed the SCTP association SHALL generate
   an ERROR chunk with the Error in Protection error cause, with
   extra error causes "Error During Protection Handshake".</t>
        </section>
      </section>
      <section anchor="validation-against-downgrade-attacks">
        <name>Validation Against Downgrade Attacks</name>
        <t>When the SCTP association has entered the PROTECTED state after the
   DTLS handshake has completed, the protection against downgrade in
   the negotiation of protection engine is performed per
   <xref target="I-D.westerlund-tsvwg-sctp-crypto-chunk"/>. The PVALID chunk will
   sent as a DTLS protected CRYPTO chunk payload per
   <xref target="chunk-processing"/>, thus protecting the plain text chunk.</t>
        <t>If the validation completes successful the SCTP association will
   enter ESTABLISHED state. ULP data exchanges can now happen and
   will be protected together will all other SCTP packets.</t>
      </section>
    </section>
    <section anchor="chunk-processing">
      <name>Processing a CRYPTO Chunk</name>
      <section anchor="sending">
        <name>Sending</name>
        <t>CRYPTO chunk sending happens when SCTP requires transferring control
or DATA chunk(s) to the remote SCTP Endpoint.  For a proper handling, DCI
shall be set to an established instance of DTLS connection.</t>
        <t>SCTP Chunk handler will create the payload of a legacy SCTP packet
according to <xref target="RFC9260"/> and any used SCTP extensions. Such payload
will assume a PMTU that is equal to the value computed by SCTP minus
the size of the CRYPTO Chunk header and DTLS record and authentication
tag overhead. It's up to SCTP Chunk Handler to implement all the SCTP
rules for bundling and retransmission mechanism.  Once ready, the
payload will be transferred to DTLS as a single array of bytes.</t>
        <t>Once DTLS has created the related DTLS record (or DTLS records), it
will transfer the encrypted data as an array of bytes to CRYPTO chunk
handler for encapsulation into a CRYPTO chunk and being forwarded to
the SCTP header handler for transmission.</t>
        <t>The interface between SCTP and DTLS related to SCTP Payload will need
to carefully evaluate the PMTU as seen by SCTP and DTLS so that each
payload generated by SCTP Chunk Handler will not cause the finished
SCTP packet to exceed the known path MTU unless it is a Path MTUD
discovery packet.</t>
      </section>
      <section anchor="receiving">
        <name>Receiving</name>
        <t>When receiving an SCTP packet containing a CRYPTO Chunk it will
contain an payload of protected SCTP control or data chunks. Since
there's at most one CRYPTO Chunk per SCTP packet, the payload of that
chunk will be transferred to the proper DTLS instance according to DCI
for decryption and processing.</t>
        <t>As discussed in CRYPTO Chunk specification when receiving packets
certain meta data will be needed to associate with the protected
CRYPTO chunk payload for SCTP to correctly process it. This includes
packet size, source IP and arrival interface, i.e. path information,
and ECN bits.</t>
        <t>When DTLS processes a DTLS record with decryption and integrity
verification and that contains application data, it will output the
data as an array of bytes and transfer it back to the CRYPTO Handler
that delivers it for SCTP chunk handling.</t>
        <t>SCTP Chunk handler will threat the array as the payload of an SCTP
packet, thus it will extract all the chunks and handle them according
to <xref target="RFC9260"/> and any supported extension.</t>
      </section>
    </section>
    <section anchor="parallel-dtls">
      <name>Parallel DTLS Rekeying</name>
      <t>Rekeying in this specification is implemented by replacing the DTLS connection
getting old with a new one. This feature exploits the capability of parallel
DTLS connections and the possibility to add and remove DTLS connections
during the lifetime of the SCTP Association.</t>
      <section anchor="criteria-for-rekeying">
        <name>Criteria for Rekeying</name>
        <t>The criteria for rekeying may vary depending on the ULP requirement on
security properties, chosen cipher suits etc. Therefore it is assumed
that the implementation will be configurable by the ULP to meet its demand.</t>
        <t>Likely criteria to impact the need for rekeying through the usage of
new DTLS connection are:</t>
        <ul spacing="normal">
          <li>Maximum time since last authentication of the peer</li>
          <li>Amount of data transferred since last forward secrecy preserving
rekeying</li>
          <li>The cipher suit's maximum key usage being reached. Although for
DTLS 1.3 usage of the Key Update mechanism can generate new keys
without forward secrecy properties.</li>
        </ul>
      </section>
      <section anchor="procedure-for-rekeying">
        <name>Procedure for Rekeying</name>
        <t>This specification allows up to 2 DTLS connection to be active at the same
time for the current SCTP Association.
The following state machine applies.</t>
        <figure anchor="dtls-rekeying-state-diagram">
          <name>State Diagram for Rekeying</name>
          <artset>
            <artwork type="svg"><svg xmlns="http://www.w3.org/2000/svg" version="1.1" height="560" width="472" viewBox="0 0 472 560" class="diagram" text-anchor="middle" font-family="monospace" font-size="13px">
                <path d="M 8,48 L 8,528" fill="none" stroke="black"/>
                <path d="M 96,32 L 96,64" fill="none" stroke="black"/>
                <path d="M 96,144 L 96,176" fill="none" stroke="black"/>
                <path d="M 96,240 L 96,272" fill="none" stroke="black"/>
                <path d="M 96,336 L 96,368" fill="none" stroke="black"/>
                <path d="M 96,448 L 96,480" fill="none" stroke="black"/>
                <path d="M 136,64 L 136,136" fill="none" stroke="black"/>
                <path d="M 136,176 L 136,232" fill="none" stroke="black"/>
                <path d="M 136,272 L 136,328" fill="none" stroke="black"/>
                <path d="M 136,368 L 136,440" fill="none" stroke="black"/>
                <path d="M 136,480 L 136,528" fill="none" stroke="black"/>
                <path d="M 176,32 L 176,64" fill="none" stroke="black"/>
                <path d="M 176,144 L 176,176" fill="none" stroke="black"/>
                <path d="M 176,240 L 176,272" fill="none" stroke="black"/>
                <path d="M 176,336 L 176,368" fill="none" stroke="black"/>
                <path d="M 176,448 L 176,480" fill="none" stroke="black"/>
                <path d="M 96,32 L 176,32" fill="none" stroke="black"/>
                <path d="M 8,48 L 88,48" fill="none" stroke="black"/>
                <path d="M 96,64 L 176,64" fill="none" stroke="black"/>
                <path d="M 96,144 L 176,144" fill="none" stroke="black"/>
                <path d="M 96,176 L 176,176" fill="none" stroke="black"/>
                <path d="M 96,240 L 176,240" fill="none" stroke="black"/>
                <path d="M 96,272 L 176,272" fill="none" stroke="black"/>
                <path d="M 96,336 L 176,336" fill="none" stroke="black"/>
                <path d="M 96,368 L 176,368" fill="none" stroke="black"/>
                <path d="M 96,448 L 176,448" fill="none" stroke="black"/>
                <path d="M 96,480 L 176,480" fill="none" stroke="black"/>
                <path d="M 8,528 L 136,528" fill="none" stroke="black"/>
                <polygon class="arrowhead" points="144,440 132,434.4 132,445.6" fill="black" transform="rotate(90,136,440)"/>
                <polygon class="arrowhead" points="144,328 132,322.4 132,333.6" fill="black" transform="rotate(90,136,328)"/>
                <polygon class="arrowhead" points="144,232 132,226.4 132,237.6" fill="black" transform="rotate(90,136,232)"/>
                <polygon class="arrowhead" points="144,136 132,130.4 132,141.6" fill="black" transform="rotate(90,136,136)"/>
                <polygon class="arrowhead" points="96,48 84,42.4 84,53.6" fill="black" transform="rotate(0,88,48)"/>
                <g class="text">
                  <text x="136" y="52">YOUNG</text>
                  <text x="224" y="52">There's</text>
                  <text x="276" y="52">only</text>
                  <text x="312" y="52">one</text>
                  <text x="212" y="68">DTLS</text>
                  <text x="276" y="68">connection</text>
                  <text x="344" y="68">until</text>
                  <text x="216" y="84">aging</text>
                  <text x="276" y="84">criteria</text>
                  <text x="328" y="84">are</text>
                  <text x="360" y="84">met</text>
                  <text x="96" y="116">AGING</text>
                  <text x="180" y="116">REMOTE</text>
                  <text x="232" y="116">AGING</text>
                  <text x="132" y="164">AGED</text>
                  <text x="212" y="164">When</text>
                  <text x="244" y="164">in</text>
                  <text x="276" y="164">AGED</text>
                  <text x="320" y="164">state</text>
                  <text x="352" y="164">a</text>
                  <text x="208" y="180">new</text>
                  <text x="244" y="180">DTLS</text>
                  <text x="308" y="180">connection</text>
                  <text x="204" y="196">is</text>
                  <text x="240" y="196">added</text>
                  <text x="284" y="196">with</text>
                  <text x="312" y="196">a</text>
                  <text x="336" y="196">new</text>
                  <text x="368" y="196">DCI</text>
                  <text x="72" y="212">NEW</text>
                  <text x="108" y="212">DTLS</text>
                  <text x="136" y="260">OLD</text>
                  <text x="204" y="260">In</text>
                  <text x="232" y="260">OLD</text>
                  <text x="272" y="260">state</text>
                  <text x="320" y="260">there</text>
                  <text x="208" y="276">are</text>
                  <text x="232" y="276">2</text>
                  <text x="268" y="276">active</text>
                  <text x="316" y="276">DTLS</text>
                  <text x="384" y="276">connections</text>
                  <text x="224" y="292">Traffic</text>
                  <text x="268" y="292">is</text>
                  <text x="316" y="292">switched</text>
                  <text x="364" y="292">to</text>
                  <text x="392" y="292">the</text>
                  <text x="424" y="292">new</text>
                  <text x="456" y="292">one</text>
                  <text x="84" y="308">SWITCH</text>
                  <text x="136" y="356">DRAIN</text>
                  <text x="208" y="356">The</text>
                  <text x="244" y="356">aged</text>
                  <text x="284" y="356">DTLS</text>
                  <text x="348" y="356">connection</text>
                  <text x="204" y="372">is</text>
                  <text x="248" y="372">drained</text>
                  <text x="308" y="372">before</text>
                  <text x="360" y="372">being</text>
                  <text x="408" y="372">ready</text>
                  <text x="204" y="388">to</text>
                  <text x="228" y="388">be</text>
                  <text x="268" y="388">closed</text>
                  <text x="96" y="420">DRAINED</text>
                  <text x="164" y="420">DTLS</text>
                  <text x="236" y="420">close_notify</text>
                  <text x="132" y="468">DEAD</text>
                  <text x="204" y="468">In</text>
                  <text x="236" y="468">DEAD</text>
                  <text x="280" y="468">state</text>
                  <text x="320" y="468">the</text>
                  <text x="356" y="468">aged</text>
                  <text x="236" y="484">connection</text>
                  <text x="292" y="484">is</text>
                  <text x="332" y="484">closed</text>
                  <text x="88" y="516">REMOVED</text>
                </g>
              </svg>
            </artwork>
            <artwork type="ascii-art"><![CDATA[
           +---------+
+--------->|  YOUNG  |  There's only one
|          +----+----+  DTLS connection until
|               |       aging criteria are met
|               |
|        AGING  |  REMOTE AGING
|               V
|          +---------+
|          |  AGED   |  When in AGED state a
|          +----+----+  new DTLS connection
|               |       is added with a new DCI
|      NEW DTLS |
|               V
|          +---------+
|          |   OLD   |  In OLD state there
|          +----+----+  are 2 active DTLS connections
|               |       Traffic is switched to the new one
|      SWITCH   |
|               V
|          +---------+
|          |  DRAIN  |  The aged DTLS connection
|          +----+----+  is drained before being ready
|               |       to be closed
|               |
|       DRAINED | DTLS close_notify
|               V
|          +---------+
|          |  DEAD   |  In DEAD state the aged
|          +----+----+  connection is closed
|               |
|      REMOVED  |
+---------------+

]]></artwork>
          </artset>
        </figure>
        <t>Trigger for rekeying can either be a local AGING event, triggered by
the DTLS connection meeting the criteria for rekeying, or a REMOTE AGING
event, triggered by receiving a DTLS record on the DCI that would be
used for new DTLS connection. In such case a new DTLS connection
shall be added according to <xref target="add-dtls-connection"/> with a new DCI.</t>
        <t>As soon as the new DTLS connection completes handshaking, the traffic is moved
from the old one, then the procedure for closing the old DTLS connection is
initiated, see <xref target="remove-dtls-connection"/>.</t>
      </section>
      <section anchor="race-condition-in-rekeying">
        <name>Race Condition in Rekeying</name>
        <t>A race condition may happen when both peer experience local AGING event at
the same time and start creation of a new DTLS connection.</t>
        <t>Since the criteria for calculating a new DCI is known and specified in
<xref target="add-dtls-connection"/>, the peers will use the same DCI for
identifying the new DTLS connection. And the race condition is solved
as specified in <xref target="add-dtls-connection"/>.</t>
      </section>
    </section>
    <section anchor="pmtu-discovery-considerations">
      <name>PMTU Discovery Considerations</name>
      <t>Due to the DTLS record limitation for application data SCTP MUST use
2<sup>14</sup> as input to determine absolute maximum MTU when running
PMTUD and using DTLS in SCTP as protection engine.</t>
      <t>The DTLS protection engine MUST provide its maximum overhead for DTLS
records and authentication tags when protecting the SCTP payload. This
so that SCTP PMTUD can take this into consideration and ensure that
produced packets that are not PMTUD probes does not become oversized.
This may require updating during the SCTP associations lifetime due to
future handshakes affecting cipher suit in use, or changes to record layer
configurations.</t>
      <t>Note that this implies that DTLS protection engine is expected to
accept application data payloads of potentially larger sizes than what
it configured to use for messages the DTLS implementation generates
itself for signaling.</t>
    </section>
    <section anchor="security-considerations">
      <name>Security Considerations</name>
      <section anchor="general-1">
        <name>General</name>
        <t>The security considerations given in <xref target="RFC9147"/>, <xref target="RFC6347"/>, and
<xref target="RFC9260"/> also apply to this document. BCP 195 <xref target="RFC9325"/>
          <xref target="RFC8996"/> provides recommendations and requirements for improving
the security of deployed services that use DTLS. BCP 195 MUST be
followed which implies that DTLS 1.0 SHALL NOT be supported and are
therefore not defined.</t>
      </section>
      <section anchor="privacy-considerations">
        <name>Privacy Considerations</name>
        <t>Although DTLS in SCTP provides privacy for the actual user message as
well as almost all chunks, some fields are not confidentiality
protected.  In addition to the DTLS record header, the SCTP common
header and the CRYPTO chunk header are not confidentiality
protected. An attacker can correlate DTLS connections over the same
SCTP association using the SCTP common header.</t>
        <t>To provide identity protection it is RECOMMENDED that DTLS in SCTP is
used with certificate-based authentication in DTLS 1.3 <xref target="RFC9147"/> and
to not reuse tickets.  DTLS 1.2 and DTLS 1.3 with external PSK
authentication does not provide identity protection.</t>
        <t>By mandating ephemeral key exchange and cipher suites with
confidentiality DTLS in SCTP effectively mitigate many forms of
passive pervasive monitoring.  By recommending implementations to
frequently set up new DTLS connections with (EC)DHE force attackers to
do dynamic key exfiltration and limits the amount of compromised data
due to key compromise.</t>
      </section>
    </section>
    <section anchor="iana-consideration">
      <name>IANA Consideration</name>
      <t>This document adds the two new entries listed in
<xref target="dtls-protection-engines"/> into the "CRYPTO Chunk Protection
Engine Identifiers" registry in the Stream Control Transmission
Protocol (SCTP) Parameters grouping.</t>
      <section anchor="iana-protection-engines">
        <name>Protection Engine Registration</name>
        <t>IANA is requested to register two Protection Engine Identifiers in the
"CRYPTO Chunk Protection Engine Identifiers" registry defined by
<xref target="I-D.westerlund-tsvwg-sctp-crypto-chunk"/>. The entries to be
registered are provided in <xref target="iana-protection-engines-table"/>.</t>
        <table anchor="iana-protection-engines-table">
          <name>CRYPTO Chunk protection engines</name>
          <thead>
            <tr>
              <th align="right">ID VALUE</th>
              <th align="left">Name</th>
              <th align="left">Reference</th>
              <th align="left">Contact</th>
            </tr>
          </thead>
          <tbody>
            <tr>
              <td align="right">0</td>
              <td align="left">DTLS 1.2</td>
              <td align="left">RFC-To-Be</td>
              <td align="left">Authors</td>
            </tr>
            <tr>
              <td align="right">1</td>
              <td align="left">DTLS 1.3</td>
              <td align="left">RFC-To-Be</td>
              <td align="left">Authors</td>
            </tr>
          </tbody>
        </table>
      </section>
    </section>
  </middle>
  <back>
    <references>
      <name>References</name>
      <references>
        <name>Normative References</name>
        <reference anchor="RFC4820" target="https://www.rfc-editor.org/info/rfc4820" xml:base="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.4820.xml">
          <front>
            <title>Padding Chunk and Parameter for the Stream Control Transmission Protocol (SCTP)</title>
            <author fullname="M. Tuexen" initials="M." surname="Tuexen"/>
            <author fullname="R. Stewart" initials="R." surname="Stewart"/>
            <author fullname="P. Lei" initials="P." surname="Lei"/>
            <date month="March" year="2007"/>
            <abstract>
              <t>This document defines a padding chunk and a padding parameter and describes the required receiver side procedures.  The padding chunk is used to pad a Stream Control Transmission Protocol (SCTP) packet to an arbitrary size.  The padding parameter is used to pad an SCTP INIT chunk to an arbitrary size. [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="4820"/>
          <seriesInfo name="DOI" value="10.17487/RFC4820"/>
        </reference>
        <reference anchor="RFC6347" target="https://www.rfc-editor.org/info/rfc6347" xml:base="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.6347.xml">
          <front>
            <title>Datagram Transport Layer Security Version 1.2</title>
            <author fullname="E. Rescorla" initials="E." surname="Rescorla"/>
            <author fullname="N. Modadugu" initials="N." surname="Modadugu"/>
            <date month="January" year="2012"/>
            <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="RFC8996" target="https://www.rfc-editor.org/info/rfc8996" xml:base="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.8996.xml">
          <front>
            <title>Deprecating TLS 1.0 and TLS 1.1</title>
            <author fullname="K. Moriarty" initials="K." surname="Moriarty"/>
            <author fullname="S. Farrell" initials="S." surname="Farrell"/>
            <date month="March" year="2021"/>
            <abstract>
              <t>This document formally deprecates Transport Layer Security (TLS) versions 1.0 (RFC 2246) and 1.1 (RFC 4346). Accordingly, those documents have been moved to Historic status. These versions lack support for current and recommended cryptographic algorithms and mechanisms, and various government and industry profiles of applications using TLS now mandate avoiding these old TLS versions. TLS version 1.2 became the recommended version for IETF protocols in 2008 (subsequently being obsoleted by TLS version 1.3 in 2018), providing sufficient time to transition away from older versions. Removing support for older versions from implementations reduces the attack surface, reduces opportunity for misconfiguration, and streamlines library and product maintenance.</t>
              <t>This document also deprecates Datagram TLS (DTLS) version 1.0 (RFC 4347) but not DTLS version 1.2, and there is no DTLS version 1.1.</t>
              <t>This document updates many RFCs that normatively refer to TLS version 1.0 or TLS version 1.1, as described herein. This document also updates the best practices for TLS usage in RFC 7525; hence, it is part of BCP 195.</t>
            </abstract>
          </front>
          <seriesInfo name="BCP" value="195"/>
          <seriesInfo name="RFC" value="8996"/>
          <seriesInfo name="DOI" value="10.17487/RFC8996"/>
        </reference>
        <reference anchor="RFC9113" target="https://www.rfc-editor.org/info/rfc9113" xml:base="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.9113.xml">
          <front>
            <title>HTTP/2</title>
            <author fullname="M. Thomson" initials="M." role="editor" surname="Thomson"/>
            <author fullname="C. Benfield" initials="C." role="editor" surname="Benfield"/>
            <date month="June" year="2022"/>
            <abstract>
              <t>This specification describes an optimized expression of the semantics of the Hypertext Transfer Protocol (HTTP), referred to as HTTP version 2 (HTTP/2). HTTP/2 enables a more efficient use of network resources and a reduced latency by introducing field compression and allowing multiple concurrent exchanges on the same connection.</t>
              <t>This document obsoletes RFCs 7540 and 8740.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="9113"/>
          <seriesInfo name="DOI" value="10.17487/RFC9113"/>
        </reference>
        <reference anchor="RFC9147" target="https://www.rfc-editor.org/info/rfc9147" xml:base="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.9147.xml">
          <front>
            <title>The Datagram Transport Layer Security (DTLS) Protocol Version 1.3</title>
            <author fullname="E. Rescorla" initials="E." surname="Rescorla"/>
            <author fullname="H. Tschofenig" initials="H." surname="Tschofenig"/>
            <author fullname="N. Modadugu" initials="N." surname="Modadugu"/>
            <date month="April" year="2022"/>
            <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 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="RFC" value="9147"/>
          <seriesInfo name="DOI" value="10.17487/RFC9147"/>
        </reference>
        <reference anchor="RFC9325" target="https://www.rfc-editor.org/info/rfc9325" xml:base="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.9325.xml">
          <front>
            <title>Recommendations for Secure Use of Transport Layer Security (TLS) and Datagram Transport Layer Security (DTLS)</title>
            <author fullname="Y. Sheffer" initials="Y." surname="Sheffer"/>
            <author fullname="P. Saint-Andre" initials="P." surname="Saint-Andre"/>
            <author fullname="T. Fossati" initials="T." surname="Fossati"/>
            <date month="November" year="2022"/>
            <abstract>
              <t>Transport Layer Security (TLS) and Datagram Transport Layer Security (DTLS) are used to protect data exchanged over a wide range of application protocols and can also form the basis for secure transport protocols. Over the years, the industry has witnessed several serious attacks on TLS and DTLS, including attacks on the most commonly used cipher suites and their modes of operation. This document provides the latest recommendations for ensuring the security of deployed services that use TLS and DTLS. These recommendations are applicable to the majority of use cases.</t>
              <t>RFC 7525, an earlier version of the TLS recommendations, was published when the industry was transitioning to TLS 1.2. Years later, this transition is largely complete, and TLS 1.3 is widely available. This document updates the guidance given the new environment and obsoletes RFC 7525. In addition, this document updates RFCs 5288 and 6066 in view of recent attacks.</t>
            </abstract>
          </front>
          <seriesInfo name="BCP" value="195"/>
          <seriesInfo name="RFC" value="9325"/>
          <seriesInfo name="DOI" value="10.17487/RFC9325"/>
        </reference>
        <reference anchor="RFC9260" target="https://www.rfc-editor.org/info/rfc9260" xml:base="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.9260.xml">
          <front>
            <title>Stream Control Transmission Protocol</title>
            <author fullname="R. Stewart" initials="R." surname="Stewart"/>
            <author fullname="M. Tüxen" initials="M." surname="Tüxen"/>
            <author fullname="K. Nielsen" initials="K." surname="Nielsen"/>
            <date month="June" year="2022"/>
            <abstract>
              <t>This document describes the Stream Control Transmission Protocol (SCTP) and obsoletes RFC 4960. It incorporates the specification of the chunk flags registry from RFC 6096 and the specification of the I bit of DATA chunks from RFC 7053. Therefore, RFCs 6096 and 7053 are also obsoleted by this document. In addition, RFCs 4460 and 8540, which describe errata for SCTP, are obsoleted by this document.</t>
              <t>SCTP was originally designed to transport Public Switched Telephone Network (PSTN) signaling messages over IP networks. It is also suited to be used for other applications, for example, WebRTC.</t>
              <t>SCTP is a reliable transport protocol operating on top of a connectionless packet network, such as IP. It offers the following services to its users:</t>
              <t>The design of SCTP includes appropriate congestion avoidance behavior and resistance to flooding and masquerade attacks.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="9260"/>
          <seriesInfo name="DOI" value="10.17487/RFC9260"/>
        </reference>
        <reference anchor="I-D.westerlund-tsvwg-sctp-crypto-chunk" target="https://datatracker.ietf.orghttps://datatracker.ietf.org/doc/draft-westerlund-tsvwg-sctp-crypto-chunk/">
          <front>
            <title>Stream Control Transmission Protocol (SCTP) CRYPTO chunk</title>
            <author initials="M." surname="Westerlund" fullname="Magnus Westerlund">
              <organization>Ericsson</organization>
            </author>
            <author initials="J." surname="Preuß Mattsson" fullname="John Preuß Mattsson">
              <organization>Ericsson</organization>
            </author>
            <author initials="C." surname="Porfiri" fullname="Claudio Porfiri">
              <organization>Ericsson</organization>
            </author>
            <date year="2023" month="June"/>
          </front>
        </reference>
        <reference anchor="RFC2119" target="https://www.rfc-editor.org/info/rfc2119" xml:base="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.2119.xml">
          <front>
            <title>Key words for use in RFCs to Indicate Requirement Levels</title>
            <author fullname="S. Bradner" initials="S." surname="Bradner"/>
            <date month="March" year="1997"/>
            <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="RFC8174" target="https://www.rfc-editor.org/info/rfc8174" xml:base="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.8174.xml">
          <front>
            <title>Ambiguity of Uppercase vs Lowercase in RFC 2119 Key Words</title>
            <author fullname="B. Leiba" initials="B." surname="Leiba"/>
            <date month="May" year="2017"/>
            <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>
      </references>
      <references>
        <name>Informative References</name>
        <reference anchor="RFC3758" target="https://www.rfc-editor.org/info/rfc3758" xml:base="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.3758.xml">
          <front>
            <title>Stream Control Transmission Protocol (SCTP) Partial Reliability Extension</title>
            <author fullname="R. Stewart" initials="R." surname="Stewart"/>
            <author fullname="M. Ramalho" initials="M." surname="Ramalho"/>
            <author fullname="Q. Xie" initials="Q." surname="Xie"/>
            <author fullname="M. Tuexen" initials="M." surname="Tuexen"/>
            <author fullname="P. Conrad" initials="P." surname="Conrad"/>
            <date month="May" year="2004"/>
            <abstract>
              <t>This memo describes an extension to the Stream Control Transmission Protocol (SCTP) that allows an SCTP endpoint to signal to its peer that it should move the cumulative ack point forward.  When both sides of an SCTP association support this extension, it can be used by an SCTP implementation to provide partially reliable data transmission service to an upper layer protocol.  This memo describes the protocol extensions, which consist of a new parameter for INIT and INIT ACK, and a new FORWARD TSN chunk type, and provides one example of a partially reliable service that can be provided to the upper layer via this mechanism. [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="3758"/>
          <seriesInfo name="DOI" value="10.17487/RFC3758"/>
        </reference>
        <reference anchor="RFC4895" target="https://www.rfc-editor.org/info/rfc4895" xml:base="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.4895.xml">
          <front>
            <title>Authenticated Chunks for the Stream Control Transmission Protocol (SCTP)</title>
            <author fullname="M. Tuexen" initials="M." surname="Tuexen"/>
            <author fullname="R. Stewart" initials="R." surname="Stewart"/>
            <author fullname="P. Lei" initials="P." surname="Lei"/>
            <author fullname="E. Rescorla" initials="E." surname="Rescorla"/>
            <date month="August" year="2007"/>
            <abstract>
              <t>This document describes a new chunk type, several parameters, and procedures for the Stream Control Transmission Protocol (SCTP).  This new chunk type can be used to authenticate SCTP chunks by using shared keys between the sender and receiver.  The new parameters are used to establish the shared keys. [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="4895"/>
          <seriesInfo name="DOI" value="10.17487/RFC4895"/>
        </reference>
        <reference anchor="RFC5061" target="https://www.rfc-editor.org/info/rfc5061" xml:base="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.5061.xml">
          <front>
            <title>Stream Control Transmission Protocol (SCTP) Dynamic Address Reconfiguration</title>
            <author fullname="R. Stewart" initials="R." surname="Stewart"/>
            <author fullname="Q. Xie" initials="Q." surname="Xie"/>
            <author fullname="M. Tuexen" initials="M." surname="Tuexen"/>
            <author fullname="S. Maruyama" initials="S." surname="Maruyama"/>
            <author fullname="M. Kozuka" initials="M." surname="Kozuka"/>
            <date month="September" year="2007"/>
            <abstract>
              <t>A local host may have multiple points of attachment to the Internet, giving it a degree of fault tolerance from hardware failures.  Stream Control Transmission Protocol (SCTP) (RFC 4960) was developed to take full advantage of such a multi-homed host to provide a fast failover and association survivability in the face of such hardware failures.  This document describes an extension to SCTP that will allow an SCTP stack to dynamically add an IP address to an SCTP association, dynamically delete an IP address from an SCTP association, and to request to set the primary address the peer will use when sending to an endpoint. [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="5061"/>
          <seriesInfo name="DOI" value="10.17487/RFC5061"/>
        </reference>
        <reference anchor="RFC6083" target="https://www.rfc-editor.org/info/rfc6083" xml:base="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.6083.xml">
          <front>
            <title>Datagram Transport Layer Security (DTLS) for Stream Control Transmission Protocol (SCTP)</title>
            <author fullname="M. Tuexen" initials="M." surname="Tuexen"/>
            <author fullname="R. Seggelmann" initials="R." surname="Seggelmann"/>
            <author fullname="E. Rescorla" initials="E." surname="Rescorla"/>
            <date month="January" year="2011"/>
            <abstract>
              <t>This document describes the usage of the Datagram Transport Layer Security (DTLS) protocol over the Stream Control Transmission Protocol (SCTP).</t>
              <t>DTLS over SCTP provides communications privacy for applications that use SCTP as their transport protocol and allows client/server applications to communicate in a way that is designed to prevent eavesdropping and detect tampering or message forgery.</t>
              <t>Applications using DTLS over SCTP can use almost all transport features provided by SCTP and its extensions. [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="6083"/>
          <seriesInfo name="DOI" value="10.17487/RFC6083"/>
        </reference>
        <reference anchor="I-D.ietf-tls-rfc8446bis" target="https://datatracker.ietf.org/doc/html/draft-ietf-tls-rfc8446bis-07" xml:base="https://bib.ietf.org/public/rfc/bibxml3/reference.I-D.ietf-tls-rfc8446bis.xml">
          <front>
            <title>The Transport Layer Security (TLS) Protocol Version 1.3</title>
            <author fullname="Eric Rescorla" initials="E." surname="Rescorla">
              <organization>Mozilla</organization>
            </author>
            <date day="26" month="March" year="2023"/>
            <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. This document updates RFCs 5705, 6066, 7627, and 8422 and obsoletes RFCs 5077, 5246, 6961, and 8446. This document also specifies new requirements for TLS 1.2 implementations.</t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-ietf-tls-rfc8446bis-07"/>
        </reference>
        <reference anchor="I-D.ietf-tsvwg-dtls-over-sctp-bis" target="https://datatracker.ietf.org/doc/html/draft-ietf-tsvwg-dtls-over-sctp-bis-06" xml:base="https://bib.ietf.org/public/rfc/bibxml3/reference.I-D.ietf-tsvwg-dtls-over-sctp-bis.xml">
          <front>
            <title>Datagram Transport Layer Security (DTLS) over Stream Control Transmission Protocol (SCTP)</title>
            <author fullname="Magnus Westerlund" initials="M." surname="Westerlund">
              <organization>Ericsson</organization>
            </author>
            <author fullname="John Preuß Mattsson" initials="J. P." surname="Mattsson">
              <organization>Ericsson</organization>
            </author>
            <author fullname="Claudio Porfiri" initials="C." surname="Porfiri">
              <organization>Ericsson</organization>
            </author>
            <date day="24" month="April" year="2023"/>
            <abstract>
              <t>This document describes the usage of the Datagram Transport Layer Security (DTLS) protocol to protect user messages sent over the Stream Control Transmission Protocol (SCTP). It is an improved alternative to the existing RFC 6083. DTLS over SCTP provides mutual authentication, confidentiality, integrity protection, and replay protection for applications that use SCTP as their transport protocol and allows client/server applications to communicate in a way that is designed to give communications privacy and to prevent eavesdropping and detect tampering or message forgery. Applications using DTLS over SCTP can use almost all transport features provided by SCTP and its extensions. This document is an improved alternative to RFC 6083 and removes the 16 kB limitation on protected user message size by defining a secure user message fragmentation so that multiple DTLS records can be used to protect a single user message. It further contains a large number of security fixes and improvements. It updates the DTLS versions and SCTP-AUTH HMAC algorithms to use. It mitigates reflection attacks of data and control chunks and replay attacks of data chunks. It simplifies secure implementation by some stricter requirements on the establishment procedures as well as rekeying to align with zero trust principles.</t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-ietf-tsvwg-dtls-over-sctp-bis-06"/>
        </reference>
        <reference anchor="I-D.ietf-uta-rfc6125bis" target="https://datatracker.ietf.org/doc/html/draft-ietf-uta-rfc6125bis-14" xml:base="https://bib.ietf.org/public/rfc/bibxml3/reference.I-D.ietf-uta-rfc6125bis.xml">
          <front>
            <title>Service Identity in TLS</title>
            <author fullname="Peter Saint-Andre" initials="P." surname="Saint-Andre">
              <organization>independent</organization>
            </author>
            <author fullname="Rich Salz" initials="R." surname="Salz">
              <organization>Akamai Technologies</organization>
            </author>
            <date day="27" month="June" year="2023"/>
            <abstract>
              <t>Many application technologies enable secure communication between two entities by means of Transport Layer Security (TLS) with Internet Public Key Infrastructure Using X.509 (PKIX) certificates. This document specifies procedures for representing and verifying the identity of application services in such interactions. This document obsoletes RFC 6125.</t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-ietf-uta-rfc6125bis-14"/>
        </reference>
        <reference anchor="ANSSI-DAT-NT-003" target="&lt;https://www.ssi.gouv.fr/uploads/2015/09/NT_IPsec_EN.pdf&gt;">
          <front>
            <title>Recommendations for securing networks with IPsec</title>
            <author initials="" surname="Agence nationale de la sécurité des systèmes d'information">
              <organization/>
            </author>
            <date year="2015" month="August"/>
          </front>
          <seriesInfo name="ANSSI Technical Report DAT-NT-003" value=""/>
        </reference>
      </references>
    </references>
  </back>
  <!-- ##markdown-source:
H4sIAAAAAAAAA+1923Yb15Xge33FGerBUgxApCQrtpaTboikLSaSyCYpe3ml
s7IKqAOwokIVUhdSjKT+lZnH6d+Y/Fjv67lUFSgp7od5aHWvGASqzmWffb+d
6XSaZNWyTDf2mcnqdNVOb2zT2rroymzaNtc362mzbLfTZX27batp1hbNdP8g
afO2gDeO0jZd1+nGXNZp2WyrujUv01tbmwu77Oq8vTX3jy5fXjwweWnaK2su
2trC04dV2dZVwW9t8qbJq9Kc1VVbLeHb+xeHl2cPzOH5L2eXp+bwqivfJuli
UdtrmBBGw8HwkaRaNFVhW9s8S5Zp+8w0bZbk2/qZaeuuaR/t73+3/yi5WT8z
lxc//fxjksLcz/xKk6ZbyNzt7RY2c3J8+YMx90xaNNUzs5eXmd1a+J+y3ZuY
vZP5c/hPVcOn88sf9pLk2padfZYYs66rbhsMbOYwkfm5qt/m5dr8iL+a+wTK
B/D0Js0LWCH++a+5bVezql7jIHl71S2emXVR5WVXPPzMs0iStGuvqvpZMoVB
ADLNM2NezczP7kX8mo/3Vbouu6b3E8z+zBzX+bJpqhK/sLzADT088wv4VysP
zZbVJpjtDzM4Odv943/D+G2ro/CMf6iuyrFfd036V3h+tpEHd014CBNW9Sqv
cz/RYZF2WV6FP+yaY8mPzrb8aDxLkperqoYV5Nd0tOc/HD7+7Tffyscn3373
jXz8Zv/pgXx8uv/tY/x4Mj2a4YFOkUTq1fLbJ0+eLvIm/okOkYiourY1H2f/
oa5N8f2nB4++oZ/gt/nriwv4fX45fX053d+n+Yxp03ptAe+/v2rbbfPs4cOb
m5sZIPRsXXXXs1X9sNsWVZo1Dx/tH3zzcP+7h68v/3Jy1tjlX45fz7bZ6vc8
CpPyuQUAbADfYfNV2RiAg2mIigGJS9veAD435gbQ1NAY9G4D0LMNAo1XJCs1
l3Z5VebLtIBhiST80uk5RVp+Zyr/lQOer225tHCyuJC0sCazpkhN84//JJ7y
j/+ELxrT3DbtP/7vBj5lX7lT45M2sAfY0bxbAxswuPkkKXvH+uTbR/t6gI+f
/FY+fvvdd0/l43cHB4/dR/fAd48ffUMngp8fPd2nz3hyd1LqEnlYfGZ7emaw
1rSt0+VbW8+UH9z120Ng15/DHWjOh3vhEe/9E+yXhtm769B28BxzN98xYyRq
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
LH3iKjm6TO6/ABGkjocfswAA

-->

</rfc>
