<?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.7.43 (Ruby 3.4.9) -->
<rfc xmlns:xi="http://www.w3.org/2001/XInclude" ipr="trust200902" docName="draft-porfiri-tsvwg-sctp-dtls-handshake-03" category="std" consensus="true" submissionType="IETF" version="3">
  <!-- xml2rfc v2v3 conversion 3.34.1 -->
  <front>
    <title abbrev="TLS based Key Management for SCTP DTLS Chunk">Transport Layer Security (TLS) based Key Management of the Stream Control Transmission Protocol (SCTP) DTLS Chunk</title>
    <seriesInfo name="Internet-Draft" value="draft-porfiri-tsvwg-sctp-dtls-handshake-03"/>
    <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>
    <author initials="M." surname="Tüxen" fullname="Michael Tüxen">
      <organization abbrev="Münster Univ. of Appl. Sciences">Münster University of Applied Sciences</organization>
      <address>
        <postal>
          <street>Stegerwaldstrasse 39</street>
          <city>Steinfurt</city>
          <code>48565</code>
          <country>Germany</country>
        </postal>
        <email>tuexen@fh-muenster.de</email>
      </address>
    </author>
    <date year="2026" month="November" day="02"/>
    <area>Transport</area>
    <workgroup>TSVWG</workgroup>
    <abstract>
      <?line 79?>

<t>This document defines how Transport Layer Security (TLS) 1.3
is used as a key management method for the SCTP DTLS Chunk mechanism.
It specifies how a TLS handshake establishes the initial security
context for an SCTP association and how subsequent TLS handshakes
provide key updates and re-authentication. The goal is to enable
authenticated and confidential communication over SCTP using the
DTLS Chunk, leveraging standardized TLS 1.3 features for key
management and rekeying.</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-porfiri-tsvwg-sctp-dtls-handshake/"/>.
      </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/teiclap/draft-porfiri-tsvwg-sctp-dtls-handshake"/>.</t>
    </note>
  </front>
  <middle>
    <?line 90?>

<section anchor="introduction">
      <name>Introduction</name>
      <t>The Stream Control Transmission Protocol (SCTP) <xref target="RFC9260"/> is a
transport protocol designed to support message-oriented communication
with features such as multiple streams for messages and multi-homing.
In many deployments, particularly telecommunication networks, it is
essential to provide confidentiality, integrity, and peer
authentication for SCTP traffic.</t>
      <t><xref target="I-D.ietf-tsvwg-sctp-dtls-chunk"/> defines a mechanism for
securing SCTP by encapsulating SCTP chunks within DTLS 1.3 records at
the chunk level.  That specification defines the DTLS chunk format,
negotiation procedures, and an abstract API for key management, but
delegates the actual key management to external methods identified by
a DTLS Key Management Identifier.</t>
      <t>This document defines one such method: it uses TLS 1.3 <xref target="RFC9846"/>
handshakes carried as SCTP user messages to perform mutual
authentication and derive keying material for the DTLS Chunk
Protection Operator.  The combination of the SCTP DTLS Chunk and the
key management defined in this document is referred to as "DTLS in SCTP".</t>
      <t>The key advantages of this approach are:</t>
      <ul spacing="normal">
        <li>
          <t>It requires no extensions to TLS 1.3 to support long-lived sessions.</t>
        </li>
        <li>
          <t>It is based on TLS 1.3 rather than DTLS 1.3, leveraging widely
available TLS implementations.</t>
        </li>
      </ul>
      <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>
        <t>In this document, || denotes concatenation of byte sequences.</t>
      </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>Client:</dt>
          <dd>
            <t>The endpoint that has the key management client role. This
corresponds to the "client" role (C bit) in the DTLS Key Management
Parameter of <xref target="I-D.ietf-tsvwg-sctp-dtls-chunk"/>.</t>
          </dd>
          <dt>Connection:</dt>
          <dd>
            <t>A TLS 1.3 connection used for key management.</t>
          </dd>
          <dt>DTLS Key Context (DKC):</dt>
          <dd>
            <t>The keying material (record payload key, sequence number key, and
IV) for both send and receive directions, together with the replay
window and last used sequence number.  Each DKC is identified by a
tuple of (SCTP Association, restart indicator, DTLS epoch).</t>
          </dd>
          <dt>Initiator:</dt>
          <dd>
            <t>The endpoint initiating the SCTP association. In case of simultaneous open,
both SCTP endpoints may have started as Initiator.</t>
          </dd>
          <dt>Primary DKC:</dt>
          <dd>
            <t>A DTLS Key Context used to protect regular SCTP association traffic.</t>
          </dd>
          <dt>Responder:</dt>
          <dd>
            <t>The endpoint acting as server during SCTP association
establishment.</t>
          </dd>
          <dt>Restart DKC:</dt>
          <dd>
            <t>A DTLS Key Context reserved exclusively for the SCTP association
restart procedure.</t>
          </dd>
          <dt>Server:</dt>
          <dd>
            <t>The endpoint taking the key management server role. This corresponds
to the "server" role (S bit) in the DTLS Key Management Parameter of
<xref target="I-D.ietf-tsvwg-sctp-dtls-chunk"/>.</t>
          </dd>
        </dl>
      </section>
      <section anchor="abbreviations">
        <name>Abbreviations</name>
        <dl>
          <dt>AEAD:</dt>
          <dd>
            <t>Authenticated Encryption with Associated Data</t>
          </dd>
          <dt>DKC:</dt>
          <dd>
            <t>DTLS Key Context</t>
          </dd>
          <dt>DTLS:</dt>
          <dd>
            <t>Datagram Transport Layer Security</t>
          </dd>
          <dt>PPID:</dt>
          <dd>
            <t>Payload Protocol Identifier</t>
          </dd>
          <dt>SCTP:</dt>
          <dd>
            <t>Stream Control Transmission Protocol</t>
          </dd>
          <dt>TLS:</dt>
          <dd>
            <t>Transport Layer Security</t>
          </dd>
          <dt>ULP:</dt>
          <dd>
            <t>Upper Layer Protocol</t>
          </dd>
        </dl>
      </section>
    </section>
    <section anchor="overview">
      <name>Overview</name>
      <t>This section provides an informational overview of DTLS in
SCTP.  Normative procedures are specified in <xref target="procedures"/>.</t>
      <section anchor="architecture">
        <name>Architecture</name>
        <figure anchor="overview-layering">
          <name>Architecture</name>
          <artset>
            <artwork type="svg" align="center"><svg xmlns="http://www.w3.org/2000/svg" version="1.1" height="528" width="464" viewBox="0 0 464 528" class="diagram" text-anchor="middle" font-family="monospace" font-size="13px" stroke-linecap="round">
                <path d="M 8,32 L 8,336" fill="none" stroke="black"/>
                <path d="M 8,432 L 8,512" fill="none" stroke="black"/>
                <path d="M 72,344 L 72,384" fill="none" stroke="black"/>
                <path d="M 96,384 L 96,424" fill="none" stroke="black"/>
                <path d="M 136,32 L 136,336" fill="none" stroke="black"/>
                <path d="M 152,32 L 152,336" fill="none" stroke="black"/>
                <path d="M 168,64 L 168,304" fill="none" stroke="black"/>
                <path d="M 176,344 L 176,384" fill="none" stroke="black"/>
                <path d="M 184,112 L 184,256" fill="none" stroke="black"/>
                <path d="M 192,448 L 192,496" fill="none" stroke="black"/>
                <path d="M 208,96 L 208,128" fill="none" stroke="black"/>
                <path d="M 208,160 L 208,192" fill="none" stroke="black"/>
                <path d="M 208,240 L 208,288" fill="none" stroke="black"/>
                <path d="M 296,192 L 296,240" fill="none" stroke="black"/>
                <path d="M 296,312 L 296,384" fill="none" stroke="black"/>
                <path d="M 368,448 L 368,496" fill="none" stroke="black"/>
                <path d="M 384,96 L 384,128" fill="none" stroke="black"/>
                <path d="M 384,160 L 384,192" fill="none" stroke="black"/>
                <path d="M 384,240 L 384,288" fill="none" stroke="black"/>
                <path d="M 400,64 L 400,304" fill="none" stroke="black"/>
                <path d="M 416,112 L 416,464" fill="none" stroke="black"/>
                <path d="M 432,32 L 432,336" fill="none" stroke="black"/>
                <path d="M 432,432 L 432,512" fill="none" stroke="black"/>
                <path d="M 8,32 L 136,32" fill="none" stroke="black"/>
                <path d="M 152,32 L 432,32" fill="none" stroke="black"/>
                <path d="M 168,64 L 400,64" fill="none" stroke="black"/>
                <path d="M 208,96 L 384,96" fill="none" stroke="black"/>
                <path d="M 184,112 L 200,112" fill="none" stroke="black"/>
                <path d="M 384,112 L 416,112" fill="none" stroke="black"/>
                <path d="M 208,128 L 384,128" fill="none" stroke="black"/>
                <path d="M 208,160 L 384,160" fill="none" stroke="black"/>
                <path d="M 184,176 L 208,176" fill="none" stroke="black"/>
                <path d="M 208,192 L 384,192" fill="none" stroke="black"/>
                <path d="M 208,240 L 384,240" fill="none" stroke="black"/>
                <path d="M 184,256 L 200,256" fill="none" stroke="black"/>
                <path d="M 208,288 L 384,288" fill="none" stroke="black"/>
                <path d="M 168,304 L 400,304" fill="none" stroke="black"/>
                <path d="M 8,336 L 136,336" fill="none" stroke="black"/>
                <path d="M 152,336 L 432,336" fill="none" stroke="black"/>
                <path d="M 72,384 L 296,384" fill="none" stroke="black"/>
                <path d="M 8,432 L 432,432" fill="none" stroke="black"/>
                <path d="M 192,448 L 368,448" fill="none" stroke="black"/>
                <path d="M 376,464 L 416,464" fill="none" stroke="black"/>
                <path d="M 192,496 L 368,496" fill="none" stroke="black"/>
                <path d="M 8,512 L 432,512" fill="none" stroke="black"/>
                <polygon class="arrowhead" points="424,424 412,418.4 412,429.6" fill="black" transform="rotate(90,416,424)"/>
                <polygon class="arrowhead" points="384,464 372,458.4 372,469.6" fill="black" transform="rotate(180,376,464)"/>
                <polygon class="arrowhead" points="304,312 292,306.4 292,317.6" fill="black" transform="rotate(270,296,312)"/>
                <polygon class="arrowhead" points="208,256 196,250.4 196,261.6" fill="black" transform="rotate(0,200,256)"/>
                <polygon class="arrowhead" points="208,112 196,106.4 196,117.6" fill="black" transform="rotate(0,200,112)"/>
                <polygon class="arrowhead" points="184,344 172,338.4 172,349.6" fill="black" transform="rotate(270,176,344)"/>
                <polygon class="arrowhead" points="104,424 92,418.4 92,429.6" fill="black" transform="rotate(90,96,424)"/>
                <polygon class="arrowhead" points="80,344 68,338.4 68,349.6" fill="black" transform="rotate(270,72,344)"/>
                <g class="text">
                  <text x="72" y="52">ULP</text>
                  <text x="232" y="52">Key</text>
                  <text x="292" y="52">Management</text>
                  <text x="364" y="52">Method</text>
                  <text x="288" y="84">TLS</text>
                  <text x="320" y="84">1.3</text>
                  <text x="256" y="116">Key</text>
                  <text x="308" y="116">Exporter</text>
                  <text x="256" y="180">Key</text>
                  <text x="316" y="180">Management</text>
                  <text x="240" y="228">ContentType</text>
                  <text x="264" y="260">TLS</text>
                  <text x="308" y="260">Record</text>
                  <text x="260" y="276">Protection</text>
                  <text x="340" y="276">Operator</text>
                  <text x="224" y="372">PPID=4243</text>
                  <text x="344" y="372">PPID=4242</text>
                  <text x="444" y="388">keys</text>
                  <text x="68" y="404">PPID</text>
                  <text x="92" y="468">SCTP</text>
                  <text x="252" y="468">DTLS</text>
                  <text x="296" y="468">Chunk</text>
                  <text x="244" y="484">Protection</text>
                  <text x="324" y="484">Operator</text>
                </g>
              </svg>
            </artwork>
            <artwork type="ascii-art" align="center"><![CDATA[
+---------------+ +----------------------------------+
|      ULP      | |        Key Management Method     |
|               | | +----------------------------+   |
|               | | |             TLS 1.3        |   |
|               | | |    +---------------------+ |   |
|               | | | +->+    Key Exporter     +-+-+ |
|               | | | |  +---------------------+ | | |
|               | | | |                          | | |
|               | | | |  +---------------------+ | | |
|               | | | +--+    Key Management   + | | |
|               | | | |  +----------+----------+ | | |
|               | | | |             |            | | |
|               | | | | ContentType |            | | |
|               | | | |  +----------+----------+ | | |
|               | | | +->|     TLS Record      | | | |
|               | | |    | Protection Operator | | | |
|               | | |    +----------+----------+ | | |
|               | | +----------------------------+ | |
|               | |                 ^              | |
+-------+-------+ +-----------------+--------------+-+
        ^            ^              |              |
        |            | PPID=4243    | PPID=4242    |
        +--+---------+--------------+              | keys
      PPID |                                       |
           V                                       V
+--------------------------------------------------+-+
|                      +---------------------+     | |
|        SCTP          |     DTLS Chunk      |<----+ |
|                      | Protection Operator |       |
|                      +---------------------+       |
+----------------------------------------------------+
]]></artwork>
          </artset>
        </figure>
        <t>As shown in <xref target="overview-layering"/>, the Key Management Method is
layered above SCTP alongside the Upper Layer Protocol (ULP), while the
DTLS Chunk Protection Operator sits within SCTP and performs the actual
protection of SCTP packets by encrypting and decrypting them and performing
integrity verification.</t>
        <t>The Key Management Method instantiates a TLS 1.3 connection that is used
solely for mutual authentication and key establishment; it never carries
user data.  The key managers drive this connection through the TLS user
API (the client key manager acting as the TLS client, the server key
manager as the TLS server, role determination is specified in
<xref target="role-determination"/>) and relay the resulting TLS records to each
other as SCTP user messages, so that the TLS handshake is performed
between the two endpoints.</t>
        <t>TLS records and key management control information travel over the same
SCTP association as the ULP's data and are distinguished by the SCTP
Payload Protocol Identifier (PPID): PPID 4242 for TLS records, PPID 4243
for control information, and the ULP's own PPID(s) for application data.
This separation lets the receiver deliver each message to the TLS
connection, to the key management logic, or to the ULP, as appropriate.
The framing and control messages are specified in <xref target="tls-user-message"/>.</t>
        <t>When the TLS handshake completes, the key management function derives
keying material from the TLS Exporter and creates the DTLS Key Contexts
(DKCs) used by the DTLS Chunk Protection Operator to protect SCTP
packets; the TLS connection is then closed.  Key derivation and DKC
installation are specified in <xref target="dtls-key-derivation"/>.</t>
      </section>
      <section anchor="protocol-flow-summary">
        <name>Protocol Flow Summary</name>
        <t>The protocol operates in three phases:</t>
        <ol spacing="normal" type="1"><li>
            <t><strong>Initial Establishment:</strong> After SCTP association setup (with
DTLS Key Management Parameter negotiation), a TLS 1.3 handshake
derives the initial Primary and Restart DKCs.  Protection is then
enforced.</t>
          </li>
          <li>
            <t><strong>Rekeying:</strong> Either endpoint may trigger rekeying to derive fresh
DKCs for the next epoch, providing forward secrecy and
re-authentication.  The client key manager always performs the
TLS 1.3 handshake; when the server key manager needs to rekey it
requests one via a Rekey Request.  Old DKCs are removed after
draining.</t>
          </li>
          <li>
            <t><strong>SCTP Restart:</strong> The pre-established Restart DKC protects the
COOKIE ECHO/COOKIE ACK exchange, followed by a new TLS handshake
to establish fresh Primary and Restart DKCs.</t>
          </li>
        </ol>
      </section>
    </section>
    <section anchor="tls-config">
      <name>TLS Configuration Requirements</name>
      <section anchor="tls-version">
        <name>TLS Version</name>
        <t>This document defines the usage of TLS 1.3 <xref target="RFC9846"/>.  Earlier
versions of TLS MUST NOT be used. An endpoint MUST NOT use more
than one TLS version during the lifetime of an SCTP association.</t>
      </section>
      <section anchor="cipher-suite-constraints">
        <name>Cipher Suite Constraints</name>
        <t>Parameters not marked as "Y" in the "Recommended" column of TLS
registries SHOULD NOT be supported.  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>
        <t>The cipher suites negotiated in the key management TLS connection
MUST only include those supported by the DTLS Chunk Protection
Operator.  The DTLS Chunk provides an API to query supported cipher
suites (see Section 7.3 of <xref target="I-D.ietf-tsvwg-sctp-dtls-chunk"/>).</t>
      </section>
      <section anchor="tls-auth">
        <name>Authentication and Identity</name>
        <t>DTLS in SCTP MUST be mutually authenticated.  It is
RECOMMENDED to use certificate-based authentication.</t>
        <t>When certificates are used, the application is responsible for
trust anchor management, certificate chain validation, and identity
authentication.  The application defines what the identity is and
how it is encoded.  Guidance on server certificate validation can be
found in <xref target="RFC9525"/>.</t>
        <t>All security decisions MUST be based on the peer's authenticated
identity, not on its transport layer identity.  Since SCTP
associations can use multiple IP addresses per endpoint, DTLS records
may arrive from different source IP addresses than those originally
authenticated.</t>
        <t>The authenticated peer identity MUST remain stable across every TLS
connection established for the lifetime of the SCTP association,
including the connections used for rekeying (<xref target="rekeying"/>) and the
connection established after an SCTP restart (<xref target="sctp-restart"/>).
Clients and servers MUST NOT accept a change of identity during the
setup of a new TLS connection, but MAY accept negotiation of stronger
algorithms and security parameters.</t>
        <t>This requirement is independent of the key management role: the Client
and Server roles are re-derived from the SCTP handshake and MAY differ
after an SCTP restart (<xref target="sctp-restart"/>), but an endpoint that changes
role MUST still present the same authenticated identity.</t>
      </section>
      <section anchor="rekey-strategy">
        <name>Rekeying Considerations</name>
        <t>Implementations need to implement criteria for when to initiate
rekeying.  Implementations are RECOMMENDED to rekey at least every hour
and every 100 GB of data, which matches what is specified for IPsec in
<xref target="ANSSI-DAT-NT-003"/>.</t>
        <t>Implementations MUST set up a new TLS connection using a full
handshake with new certificates before any last used certificates
expire.</t>
        <t>The PSK key exchange mode psk_ke MUST NOT be used as it does not
provide ephemeral key exchange.  TLS Key Update MUST NOT be used as it
doesn't provide a new ephemeral key for the key exporter.</t>
        <t>TLS 1.3 tickets MAY be used for session resumption (see
<xref target="session-resumption"/>).</t>
        <t>The endpoints MUST limit the number of simultaneous TLS connections
to one.</t>
      </section>
      <section anchor="session-resumption">
        <name>Session Resumption</name>
        <t>Support for TLS 1.3 session resumption is OPTIONAL. When supported, it
provides the following benefits:</t>
        <ul spacing="normal">
          <li>
            <t>It avoids re-sending the full certificate chain on subsequent TLS
 connections. This saves a significant amount of message size,
 especially with post-quantum cryptography (PQC) certificates, which
 can be significantly larger than certificates based on Elliptic Curve
 Cryptography.</t>
          </li>
          <li>
            <t>It reduces processing, and thus energy consumption and latency.</t>
          </li>
          <li>
            <t>It allows successive TLS connections to be chained, increasing
 security by forcing an adversary to break them in sequence
 <xref target="KTH-NCSA"/>.</t>
          </li>
        </ul>
        <t>Session resumption tickets are delivered using the standard TLS 1.3
mechanisms: the server MAY send tickets unsolicited <xref target="RFC9846"/>, and
the client MAY request them <xref target="RFC9149"/>. To ensure the client has
the opportunity to obtain a ticket before the
TLS connection is torn down, the client key manager SHOULD initiate the
closure of the TLS connection, and the server key manager SHOULD NOT
close the TLS connection before the client has had the opportunity to
obtain the tickets it requested.</t>
      </section>
    </section>
    <section anchor="tls-user-message">
      <name>Key Management Messages</name>
      <t>All key management messages MUST be sent as SCTP user messages
using reliable in-order delivery on stream 0.</t>
      <t>There are two classes of these key management messages:</t>
      <ul spacing="normal">
        <li>
          <t>SCTP user messages containing TLS records.</t>
        </li>
        <li>
          <t>SCTP user messages containing control information.</t>
        </li>
      </ul>
      <t>These two classes are identified by using a specific PPID each.</t>
      <section anchor="tls-records">
        <name>TLS Records</name>
        <t>One or more complete TLS records are sent as an SCTP user message.
These user messages MUST use PPID 4242.
Other SCTP user messages MUST NOT use this PPID.</t>
      </section>
      <section anchor="control-messages">
        <name>Control Messages</name>
        <t>Control messages are sent as SCTP user messages, they MUST use PPID 4243
and contain a single byte identifying the type as shown in the following
<xref target="control-message-format"/>. Other user messages MUST NOT use this PPID.</t>
        <figure anchor="control-message-format">
          <name>Control Message Format</name>
          <artset>
            <artwork type="svg" align="center"><svg xmlns="http://www.w3.org/2000/svg" version="1.1" height="96" width="144" viewBox="0 0 144 96" class="diagram" text-anchor="middle" font-family="monospace" font-size="13px" stroke-linecap="round">
                <path d="M 8,48 L 8,80" fill="none" stroke="black"/>
                <path d="M 136,48 L 136,80" fill="none" stroke="black"/>
                <path d="M 8,48 L 136,48" fill="none" stroke="black"/>
                <path d="M 8,80 L 136,80" fill="none" stroke="black"/>
                <g class="text">
                  <text x="16" y="36">0</text>
                  <text x="32" y="36">1</text>
                  <text x="48" y="36">2</text>
                  <text x="64" y="36">3</text>
                  <text x="80" y="36">4</text>
                  <text x="96" y="36">5</text>
                  <text x="112" y="36">6</text>
                  <text x="128" y="36">7</text>
                  <text x="52" y="68">Ctrl</text>
                  <text x="92" y="68">Type</text>
                </g>
              </svg>
            </artwork>
            <artwork type="ascii-art" align="center"><![CDATA[
 0 1 2 3 4 5 6 7
+-+-+-+-+-+-+-+-+
|   Ctrl Type   |
+-+-+-+-+-+-+-+-+
]]></artwork>
          </artset>
        </figure>
        <dl>
          <dt>Ctrl Type: 8 bits</dt>
          <dd>
            <t>Identifies the control message type.</t>
          </dd>
        </dl>
        <t>The following control message type is defined:</t>
        <table anchor="control-message-types">
          <name>Control Message Types</name>
          <thead>
            <tr>
              <th align="left">Ctrl Type</th>
              <th align="left">Name</th>
              <th align="left">Description</th>
            </tr>
          </thead>
          <tbody>
            <tr>
              <td align="left">0x01</td>
              <td align="left">Read Key Installed</td>
              <td align="left">Notifies the peer that the read key is installed</td>
            </tr>
            <tr>
              <td align="left">0x02</td>
              <td align="left">Rekey Request</td>
              <td align="left">Requests the client key manager to initiate a rekeying TLS handshake</td>
            </tr>
          </tbody>
        </table>
        <section anchor="read-key-installed">
          <name>Read Key Installed</name>
          <t>The Read Key Installed control message (Ctrl Type = 0x01) is sent
by a key manager to its peer key manager for indicating that it has
set the read key material.
This enables the peer receiving this message to set its write key.</t>
          <t>The message is also used during rekeying in the same way as in the
initial handshake.</t>
        </section>
        <section anchor="rekey-request">
          <name>Rekey Request</name>
          <t>The Rekey Request control message (Ctrl Type = 0x02) is sent by the
server key manager to the client key manager to request that the client
key manager initiate a rekeying TLS handshake (see <xref target="rekeying"/>).</t>
          <t>Because only the client key manager initiates a TLS handshake, the
server key manager uses this message when it determines that rekeying
is needed (per its own criteria in <xref target="rekey-strategy"/>).  This division of
roles allows an endpoint holding only the client role to implement
a TLS client only, and an endpoint holding only the server role to implement
a TLS server only.</t>
          <t>Upon receiving a Rekey Request, the client key manager initiates a
rekeying TLS handshake as described in <xref target="rekeying"/>, unless a rekeying
is already in progress, in which case the Rekey Request is ignored (see
<xref target="sim-rekeying"/>).</t>
        </section>
      </section>
    </section>
    <section anchor="dtls-key-derivation">
      <name>Key Derivation</name>
      <section anchor="role-determination">
        <name>Role Determination</name>
        <t>Role determination and method selection follow the procedure defined
in Section 5.1 of
<xref target="I-D.ietf-tsvwg-sctp-dtls-chunk"/>.  After
the SCTP association is established, the key management function
retrieves from the SCTP stack's DTLS chunk API the assigned role
(Client or Server), the selected DTLS Key
Management Method, and the downgrade prevention data (both endpoints'
DTLS Key Management Parameters) used as input to key derivation.</t>
      </section>
      <section anchor="exporter-context">
        <name>Exporter Context</name>
        <t>DTLS Key Contexts are derived using the TLS Exporter as defined in
Section 7.5 of <xref target="RFC9846"/>.  The exporter context is constructed as
the concatenation of the following fields:</t>
        <table anchor="exporter-context-table">
          <name>Exporter Context</name>
          <thead>
            <tr>
              <th align="left">Field</th>
              <th align="center">Length</th>
              <th align="left">Value</th>
            </tr>
          </thead>
          <tbody>
            <tr>
              <td align="left">Direction</td>
              <td align="center">1 byte</td>
              <td align="left">0x00 = Client to Server, 0x01 = Server to Client</td>
            </tr>
            <tr>
              <td align="left">Key role</td>
              <td align="center">1 byte</td>
              <td align="left">0x00 = primary, 0x01 = restart</td>
            </tr>
            <tr>
              <td align="left">Key type</td>
              <td align="center">1 byte</td>
              <td align="left">0x00 = Key, 0x01 = SN_KEY, 0x02 = IV</td>
            </tr>
            <tr>
              <td align="left">Client KM Param</td>
              <td align="center">variable</td>
              <td align="left">DTLS Key Management Parameter sent by the endpoint designated as Client</td>
            </tr>
            <tr>
              <td align="left">Server KM Param</td>
              <td align="center">variable</td>
              <td align="left">DTLS Key Management Parameter sent by the endpoint designated as Server</td>
            </tr>
          </tbody>
        </table>
        <t>Each DTLS Key Management Parameter (Section 4.1 of
<xref target="I-D.ietf-tsvwg-sctp-dtls-chunk"/>) is included as the
sequence of bytes sent on the wire, including the parameter header
and excluding padding.</t>
        <t>This construction ensures that any modification to the DTLS Key
Management Parameter during the SCTP handshake (a downgrade attack)
results in mismatched keys and association failure.</t>
      </section>
      <section anchor="exporter-labels">
        <name>Exporter Labels</name>
        <t>A single TLS Exporter label is used to derive all keying material:</t>
        <artwork><![CDATA[
EXPORTER_TLS_FOR_DTLS_IN_SCTP
]]></artwork>
        <t>The specific key material (direction, role, and type) is
differentiated by the exporter context (<xref target="exporter-context"/>).  Each
combination of Direction, Key role, and Key type values produces a
distinct export, yielding 12 values in total (2 directions × 2 roles
× 3 types).</t>
        <t>The endpoint with the Client role installs exports with
Direction=Client to server as its write keys and
Direction=Server to client as its read keys.  The
endpoint with Server role does the reverse.</t>
        <t>The length of exported material depends on the negotiated cipher
suite.</t>
      </section>
      <section anchor="dkc-installation">
        <name>DKC Installation</name>
        <t>Each successful TLS handshake produces one or two (if restart is
supported) DKCs:</t>
        <ul spacing="normal">
          <li>
            <t>A Primary DKC for regular SCTP traffic.</t>
          </li>
          <li>
            <t>A Restart DKC for the SCTP restart procedure.</t>
          </li>
        </ul>
        <t>The first DKC established for any SCTP association MUST use DTLS
epoch 3.  Each subsequent Primary DKC, together with its paired
Restart DKC, uses the next consecutive epoch.  After an SCTP restart,
the epoch resets to 3.</t>
        <t>If SCTP Restart is supported the endpoint MUST generate a Restart DKC
for each epoch where a Primary DKC is generated.  The Restart DKC uses
the same DTLS epoch as the Primary DKC generated alongside it; the two
are distinguished not by epoch but by the restart indicator (the R bit
in the DTLS chunk, see <xref target="I-D.ietf-tsvwg-sctp-dtls-chunk"/>) and by the
Key role field of the exporter context (<xref target="exporter-context"/>).  The
Restart DKC MUST be maintained in a well-defined state (initialized but
never used for regular traffic) so that both endpoints have a
consistent view of sequence numbers and replay window.</t>
      </section>
    </section>
    <section anchor="procedures">
      <name>Procedures</name>
      <section anchor="initial-establishment">
        <name>Initial Establishment</name>
        <figure anchor="initial-establishment-diagram">
          <name>Initial Establishment</name>
          <artset>
            <artwork type="svg" align="center"><svg xmlns="http://www.w3.org/2000/svg" version="1.1" height="480" width="472" viewBox="0 0 472 480" class="diagram" text-anchor="middle" font-family="monospace" font-size="13px" stroke-linecap="round">
                <path d="M 40,48 L 40,432" fill="none" stroke="black"/>
                <path d="M 64,160 L 64,368" fill="none" stroke="black"/>
                <path d="M 104,160 L 104,368" fill="none" stroke="black"/>
                <path d="M 344,160 L 344,368" fill="none" stroke="black"/>
                <path d="M 384,160 L 384,368" fill="none" stroke="black"/>
                <path d="M 408,48 L 408,432" fill="none" stroke="black"/>
                <path d="M 432,384 L 432,432" fill="none" stroke="black"/>
                <path d="M 40,64 L 112,64" fill="none" stroke="black"/>
                <path d="M 168,64 L 400,64" fill="none" stroke="black"/>
                <path d="M 48,80 L 112,80" fill="none" stroke="black"/>
                <path d="M 200,80 L 408,80" fill="none" stroke="black"/>
                <path d="M 40,96 L 112,96" fill="none" stroke="black"/>
                <path d="M 224,96 L 400,96" fill="none" stroke="black"/>
                <path d="M 48,112 L 112,112" fill="none" stroke="black"/>
                <path d="M 216,112 L 408,112" fill="none" stroke="black"/>
                <path d="M 72,176 L 104,176" fill="none" stroke="black"/>
                <path d="M 344,176 L 376,176" fill="none" stroke="black"/>
                <path d="M 72,208 L 376,208" fill="none" stroke="black"/>
                <path d="M 64,256 L 96,256" fill="none" stroke="black"/>
                <path d="M 104,272 L 192,272" fill="none" stroke="black"/>
                <path d="M 240,272 L 336,272" fill="none" stroke="black"/>
                <path d="M 352,288 L 384,288" fill="none" stroke="black"/>
                <path d="M 112,336 L 200,336" fill="none" stroke="black"/>
                <path d="M 248,336 L 344,336" fill="none" stroke="black"/>
                <path d="M 40,400 L 112,400" fill="none" stroke="black"/>
                <path d="M 280,400 L 400,400" fill="none" stroke="black"/>
                <path d="M 48,416 L 112,416" fill="none" stroke="black"/>
                <path d="M 280,416 L 408,416" fill="none" stroke="black"/>
                <path d="M 432,416 L 456,416" fill="none" stroke="black"/>
                <polygon class="arrowhead" points="408,400 396,394.4 396,405.6" fill="black" transform="rotate(0,400,400)"/>
                <polygon class="arrowhead" points="408,96 396,90.4 396,101.6" fill="black" transform="rotate(0,400,96)"/>
                <polygon class="arrowhead" points="408,64 396,58.4 396,69.6" fill="black" transform="rotate(0,400,64)"/>
                <polygon class="arrowhead" points="384,208 372,202.4 372,213.6" fill="black" transform="rotate(0,376,208)"/>
                <polygon class="arrowhead" points="384,176 372,170.4 372,181.6" fill="black" transform="rotate(0,376,176)"/>
                <polygon class="arrowhead" points="360,288 348,282.4 348,293.6" fill="black" transform="rotate(180,352,288)"/>
                <polygon class="arrowhead" points="344,272 332,266.4 332,277.6" fill="black" transform="rotate(0,336,272)"/>
                <polygon class="arrowhead" points="120,336 108,330.4 108,341.6" fill="black" transform="rotate(180,112,336)"/>
                <polygon class="arrowhead" points="104,256 92,250.4 92,261.6" fill="black" transform="rotate(0,96,256)"/>
                <polygon class="arrowhead" points="80,208 68,202.4 68,213.6" fill="black" transform="rotate(180,72,208)"/>
                <polygon class="arrowhead" points="80,176 68,170.4 68,181.6" fill="black" transform="rotate(180,72,176)"/>
                <polygon class="arrowhead" points="56,416 44,410.4 44,421.6" fill="black" transform="rotate(180,48,416)"/>
                <polygon class="arrowhead" points="56,112 44,106.4 44,117.6" fill="black" transform="rotate(180,48,112)"/>
                <polygon class="arrowhead" points="56,80 44,74.4 44,85.6" fill="black" transform="rotate(180,48,80)"/>
                <g class="text">
                  <text x="40" y="36">Initiator</text>
                  <text x="408" y="36">Responder</text>
                  <text x="20" y="68">1.</text>
                  <text x="140" y="68">[INIT]</text>
                  <text x="156" y="84">[INIT-ACK]</text>
                  <text x="144" y="100">[COOKIE</text>
                  <text x="200" y="100">ECHO]</text>
                  <text x="428" y="100">2.</text>
                  <text x="20" y="116">3.</text>
                  <text x="144" y="116">[COOKIE</text>
                  <text x="196" y="116">ACK]</text>
                  <text x="64" y="148">TLS</text>
                  <text x="116" y="148">client</text>
                  <text x="156" y="148">KM</text>
                  <text x="308" y="148">server</text>
                  <text x="348" y="148">KM</text>
                  <text x="384" y="148">TLS</text>
                  <text x="20" y="180">4.</text>
                  <text x="168" y="180">SSL_connect()</text>
                  <text x="284" y="180">SSL_accept()</text>
                  <text x="452" y="180">5.</text>
                  <text x="452" y="212">6.</text>
                  <text x="20" y="260">7.</text>
                  <text x="132" y="260">READ</text>
                  <text x="192" y="260">installed</text>
                  <text x="216" y="276">[RKI]</text>
                  <text x="456" y="276">8b.</text>
                  <text x="456" y="292">8a.</text>
                  <text x="136" y="308">(wait</text>
                  <text x="176" y="308">for</text>
                  <text x="212" y="308">done</text>
                  <text x="240" y="308">+</text>
                  <text x="276" y="308">client</text>
                  <text x="324" y="308">RKI)</text>
                  <text x="180" y="324">(install</text>
                  <text x="236" y="324">R+W,</text>
                  <text x="292" y="324">enforce)</text>
                  <text x="224" y="340">[RKI]</text>
                  <text x="20" y="356">9.</text>
                  <text x="148" y="356">READ</text>
                  <text x="212" y="356">installed,</text>
                  <text x="288" y="356">enforce</text>
                  <text x="424" y="388">-</text>
                  <text x="16" y="404">10.</text>
                  <text x="156" y="404">[protected</text>
                  <text x="216" y="404">APP</text>
                  <text x="256" y="404">DATA]</text>
                  <text x="456" y="404">APP</text>
                  <text x="156" y="420">[protected</text>
                  <text x="216" y="420">APP</text>
                  <text x="256" y="420">DATA]</text>
                  <text x="200" y="436">...</text>
                </g>
              </svg>
            </artwork>
            <artwork type="ascii-art" align="center"><![CDATA[
 Initiator                                     Responder
     |                                             |
  1. +---------[INIT]----------------------------->|
     |<--------[INIT-ACK]--------------------------+
     +---------[COOKIE ECHO]---------------------->| 2.
  3. |<--------[COOKIE ACK]------------------------+
     |                                             |
     | TLS  client KM               server KM  TLS |
     |  |    |                             |    |  |
  4. |  |<---+ SSL_connect()  SSL_accept() +--->|  |    5.
     |  |    |                             |    |  |
     |  |<---+-----------------------------+--->|  |    6.
     |  |    |                             |    |  |
     |  |    |                             |    |  |
  7. |  +--->| READ installed              |    |  |
     |  |    +-----------[RKI]------------>|    |  |    8b.
     |  |    |                             |<---+  |    8a.
     |  |    | (wait for done + client RKI)|    |  |
     |  |    |     (install R+W, enforce)  |    |  |
     |  |    |<-----------[RKI]------------+    |  |
  9. |  |    |   READ installed, enforce   |    |  |
     |  |    |                             |    |  |
     |                                             | -.
 10. +---------[protected APP DATA]--------------->|  | APP
     +<--------[protected APP DATA]----------------+  +---
     |                  ...                        |  |

]]></artwork>
          </artset>
        </figure>
        <t>Legend: TLS = local TLS engine; client KM/server KM = client/server key manager;
RKI = Read Key Installed control message; R+W = read and write keys.</t>
        <t>The diagram <xref target="initial-establishment-diagram"/> shows the case where SCTP
  Initiator ends up with the Key Manager client role. The opposite case is
  identical but with inverted roles among Key Managers. In the following
  procedure we use Initiator and Responder referring to SCTP, Client and Server
  referring to Keymanager role, and implicitly TLS roles. The key managers drive
  TLS solely through the TLS user API.</t>
        <t>The procedure is as follows:</t>
        <ol spacing="normal" type="1"><li>
            <t>The Initiator sends INIT containing the DTLS Key Management Parameter
   (Section 4.1 of <xref target="I-D.ietf-tsvwg-sctp-dtls-chunk"/>) with this
   method's identifier (see <xref target="sec-iana-psi"/>) in its preference-ordered list.</t>
          </li>
          <li>
            <t>The Responder enters ESTABLISHED state. It retrieves the agreed DTLS
   Key Management Method and role from the SCTP stack (e.g., using
   the "Get Agreed DTLS Key Management Method and Role" API defined in
   Section 7.2 of <xref target="I-D.ietf-tsvwg-sctp-dtls-chunk"/>) and verifies that
   the selected method matches the one defined in this document
   (see <xref target="sec-iana-psi"/>) and gets the assigned role as key manager client or
   server (in the example depicted in <xref target="initial-establishment-diagram"/>
   it is server).</t>
          </li>
          <li>
            <t>The Initiator enters ESTABLISHED state. It performs the same retrieval and
   verification as the Responder, confirming the assigned role as key manager
   client or server (in the example depicted in
   <xref target="initial-establishment-diagram"/> it is client).</t>
          </li>
          <li>
            <t>The client key manager starts a TLS 1.3 handshake, limiting offered cipher
   suites to those supported by the DTLS Chunk Protection Operator, and relays
   the resulting flight of TLS records to the server key manager per
   <xref target="tls-user-message"/>.</t>
          </li>
          <li>
            <t>The server key manager starts a TLS 1.3 server and is ready to relay any
   received TLS records to the TLS server and to forward any TLS records
   produced by the TLS server to the client key manager per <xref target="tls-user-message"/>.</t>
          </li>
          <li>
            <t>The TLS endpoints continue to exchange TLS messages to complete the TLS handshake.</t>
          </li>
          <li>
            <t>The client key manager's TLS handshake completes. It exports all Primary
   and Restart DKC keys, installs the server to client key material as its read
   (receive) key, and sends a Read Key Installed control message
   (<xref target="read-key-installed"/>) to the server key manager.</t>
          </li>
          <li>
            <t>The server key manager proceeds only after both its own TLS handshake has
   completed (8a) and it has received the client key manager's Read Key
   Installed control message (8b). Once both conditions are met, it exports
   both direction key material for both the Primary and Restart DKCs, installs
   both the read (receive) key and the write (send) key, calls Require Protected
   SCTP Packets to enforce DTLS chunk protection for all future packets, informs
   the ULP that the association is protected, and sends a Read Key Installed
   control message (<xref target="read-key-installed"/>) to the client key manager.</t>
          </li>
          <li>
            <t>The client key manager receives the Read Key Installed control
   message, installs the client key material as its write (send) key, calls
   Require Protected SCTP Packets to enforce DTLS chunk protection for all
   future packets, and informs the ULP that the association is protected.</t>
          </li>
          <li>
            <t>Protected application traffic can begin.</t>
          </li>
        </ol>
        <t>If the TLS handshake fails in step 6, it SHOULD be retried according to <xref target="error-handling"/>.</t>
        <t>After key installation, the TLS connection SHOULD be closed promptly
 following the procedure in <xref target="session-resumption"/>.</t>
      </section>
      <section anchor="rekeying">
        <name>Rekeying</name>
        <section anchor="triggering-criteria">
          <name>Triggering Criteria</name>
          <t>Rekeying is triggered by implementation-configurable criteria,
including:</t>
          <ul spacing="normal">
            <li>
              <t>Time elapsed since last peer authentication.</t>
            </li>
            <li>
              <t>Volume of data transferred since last rekeying.</t>
            </li>
            <li>
              <t>Approaching the cipher suite's AEAD usage limits.</t>
            </li>
          </ul>
        </section>
        <section anchor="rekey-procedure">
          <name>Procedure</name>
          <t>The client key manager and the server key manager keep the same
  key management roles for the entire lifetime of the SCTP association:
  the client key manager is always the TLS client and the server key
  manager is always the TLS server, for the initial handshake and for
  every rekeying.  Consequently, only the client key manager ever
  initiates a TLS handshake.  This allows an endpoint holding only the
  client role to implement only a TLS client, and an endpoint holding
  only the server role to implement only a TLS server.</t>
          <t>Either endpoint may need to rekey.  The need is acted upon as follows:</t>
          <ul spacing="normal">
            <li>
              <t>If the client key manager needs to rekey, it directly initiates a
rekeying TLS handshake.</t>
            </li>
            <li>
              <t>If the server key manager needs to rekey, it cannot initiate a TLS
handshake itself.  Instead it sends a Rekey Request control message
(<xref target="rekey-request"/>) to the client key manager, which then initiates
the rekeying TLS handshake.</t>
            </li>
          </ul>
          <t>Because the key management messages are carried on SCTP stream 0 with
  reliable, in-order delivery, the Rekey Request and all handshake
  messages are guaranteed to be delivered and are not lost; no
  key-management-level retransmission is required.</t>
          <figure anchor="rekey-diagram">
            <name>Rekeying Procedure</name>
            <artset>
              <artwork type="svg" align="center"><svg xmlns="http://www.w3.org/2000/svg" version="1.1" height="464" width="456" viewBox="0 0 456 464" class="diagram" text-anchor="middle" font-family="monospace" font-size="13px" stroke-linecap="round">
                  <path d="M 40,48 L 40,416" fill="none" stroke="black"/>
                  <path d="M 64,96 L 64,392" fill="none" stroke="black"/>
                  <path d="M 104,96 L 104,384" fill="none" stroke="black"/>
                  <path d="M 344,96 L 344,384" fill="none" stroke="black"/>
                  <path d="M 384,96 L 384,384" fill="none" stroke="black"/>
                  <path d="M 408,48 L 408,416" fill="none" stroke="black"/>
                  <path d="M 112,128 L 176,128" fill="none" stroke="black"/>
                  <path d="M 272,128 L 344,128" fill="none" stroke="black"/>
                  <path d="M 72,192 L 104,192" fill="none" stroke="black"/>
                  <path d="M 344,192 L 376,192" fill="none" stroke="black"/>
                  <path d="M 72,224 L 376,224" fill="none" stroke="black"/>
                  <path d="M 64,256 L 96,256" fill="none" stroke="black"/>
                  <path d="M 104,272 L 176,272" fill="none" stroke="black"/>
                  <path d="M 224,272 L 336,272" fill="none" stroke="black"/>
                  <path d="M 352,288 L 384,288" fill="none" stroke="black"/>
                  <path d="M 112,352 L 176,352" fill="none" stroke="black"/>
                  <path d="M 224,352 L 344,352" fill="none" stroke="black"/>
                  <polygon class="arrowhead" points="384,224 372,218.4 372,229.6" fill="black" transform="rotate(0,376,224)"/>
                  <polygon class="arrowhead" points="384,192 372,186.4 372,197.6" fill="black" transform="rotate(0,376,192)"/>
                  <polygon class="arrowhead" points="360,288 348,282.4 348,293.6" fill="black" transform="rotate(180,352,288)"/>
                  <polygon class="arrowhead" points="344,272 332,266.4 332,277.6" fill="black" transform="rotate(0,336,272)"/>
                  <polygon class="arrowhead" points="120,352 108,346.4 108,357.6" fill="black" transform="rotate(180,112,352)"/>
                  <polygon class="arrowhead" points="120,128 108,122.4 108,133.6" fill="black" transform="rotate(180,112,128)"/>
                  <polygon class="arrowhead" points="104,256 92,250.4 92,261.6" fill="black" transform="rotate(0,96,256)"/>
                  <polygon class="arrowhead" points="80,224 68,218.4 68,229.6" fill="black" transform="rotate(180,72,224)"/>
                  <polygon class="arrowhead" points="80,192 68,186.4 68,197.6" fill="black" transform="rotate(180,72,192)"/>
                  <g class="text">
                    <text x="40" y="36">Initiator</text>
                    <text x="408" y="36">Responder</text>
                    <text x="92" y="52">(traffic</text>
                    <text x="168" y="52">continues</text>
                    <text x="232" y="52">using</text>
                    <text x="280" y="52">epoch</text>
                    <text x="312" y="52">N</text>
                    <text x="340" y="52">DKC)</text>
                    <text x="64" y="84">TLS</text>
                    <text x="116" y="84">client</text>
                    <text x="156" y="84">KM</text>
                    <text x="308" y="84">server</text>
                    <text x="348" y="84">KM</text>
                    <text x="384" y="84">TLS</text>
                    <text x="152" y="116">(server</text>
                    <text x="208" y="116">needs</text>
                    <text x="244" y="116">to</text>
                    <text x="288" y="116">rekey:)</text>
                    <text x="20" y="132">2.</text>
                    <text x="204" y="132">[Rekey</text>
                    <text x="252" y="132">Req]</text>
                    <text x="436" y="132">1.</text>
                    <text x="176" y="164">(client</text>
                    <text x="240" y="164">rekeys,</text>
                    <text x="164" y="180">or</text>
                    <text x="192" y="180">got</text>
                    <text x="232" y="180">Rekey</text>
                    <text x="280" y="180">Req:)</text>
                    <text x="20" y="196">3.</text>
                    <text x="168" y="196">SSL_connect()</text>
                    <text x="284" y="196">SSL_accept()</text>
                    <text x="436" y="196">4.</text>
                    <text x="436" y="228">5.</text>
                    <text x="20" y="260">6.</text>
                    <text x="132" y="260">READ</text>
                    <text x="180" y="260">(epoch</text>
                    <text x="228" y="260">N+1)</text>
                    <text x="200" y="276">[RKI]</text>
                    <text x="440" y="276">7b.</text>
                    <text x="440" y="292">7a.</text>
                    <text x="144" y="308">(wait</text>
                    <text x="184" y="308">own</text>
                    <text x="220" y="308">done</text>
                    <text x="248" y="308">+</text>
                    <text x="272" y="308">cli</text>
                    <text x="308" y="308">RKI)</text>
                    <text x="156" y="324">(install</text>
                    <text x="208" y="324">R+W</text>
                    <text x="244" y="324">N+1,</text>
                    <text x="292" y="324">drain,</text>
                    <text x="164" y="340">TX-&gt;N+1)</text>
                    <text x="200" y="356">[RKI]</text>
                    <text x="20" y="372">8.</text>
                    <text x="148" y="372">READ</text>
                    <text x="188" y="372">N+1,</text>
                    <text x="236" y="372">drain,</text>
                    <text x="296" y="372">TX-&gt;N+1</text>
                    <text x="92" y="404">(traffic</text>
                    <text x="176" y="404">transitions</text>
                    <text x="236" y="404">to</text>
                    <text x="272" y="404">epoch</text>
                    <text x="312" y="404">N+1</text>
                    <text x="348" y="404">DKC)</text>
                    <text x="84" y="420">(after</text>
                    <text x="152" y="420">draining,</text>
                    <text x="220" y="420">remove</text>
                    <text x="272" y="420">epoch</text>
                    <text x="304" y="420">N</text>
                    <text x="332" y="420">DKC)</text>
                  </g>
                </svg>
              </artwork>
              <artwork type="ascii-art" align="center"><![CDATA[
 Initiator                                     Responder
     |  (traffic continues using epoch N DKC)      |
     |                                             |
     | TLS  client KM               server KM  TLS |
     |  |    |                             |    |  |
     |  |    |  (server needs to rekey:)   |    |  |
  2. |  |    |<--------[Rekey Req]---------+    |  |  1.
     |  |    |                             |    |  |
     |  |    |     (client rekeys,         |    |  |
     |  |    |      or got Rekey Req:)     |    |  |
  3. |  |<---+ SSL_connect()  SSL_accept() +--->|  |  4.
     |  |    |                             |    |  |
     |  |<---+-----------------------------+--->|  |  5.
     |  |    |                             |    |  |
  6. |  +--->| READ (epoch N+1)            |    |  |
     |  |    +---------[RKI]-------------->|    |  |  7b.
     |  |    |                             |<---+  |  7a.
     |  |    |  (wait own done + cli RKI)  |    |  |
     |  |    |  (install R+W N+1, drain,   |    |  |
     |  |    |   TX->N+1)                  |    |  |
     |  |    |<--------[RKI]---------------+    |  |
  8. |  |    |   READ N+1, drain, TX->N+1  |    |  |
     |  |    |                             |    |  |
     |  (traffic transitions to epoch N+1 DKC)     |
     |  (after draining, remove epoch N DKC)       |

]]></artwork>
            </artset>
          </figure>
          <t>Legend: TLS = local TLS engine; client KM/server KM = client/server key manager;
Rekey Req = Rekey Request control message;
RKI = Read Key Installed control message; R+W = read and
write keys; N, N+1 = old and new epoch; TX-&gt;N+1 = switch sending to the
epoch N+1 DKC.</t>
          <t>The diagram in <xref target="rekey-diagram"/> shows both triggers.  Steps 1 and 2 (the
  Rekey Request) are present only when the server key manager is the one
  that needs to rekey; when the client key manager needs to rekey it
  starts directly at step 3.  As in initial establishment, the key
  managers drive TLS solely through the TLS user API.</t>
          <t>The procedure is as follows:</t>
          <ol spacing="normal" type="1"><li>
              <t>If the server key manager needs to rekey, it sends a Rekey Request
control message (<xref target="rekey-request"/>) to the client key manager.  The
server key manager does not start a TLS handshake.</t>
            </li>
            <li>
              <t>The client key manager receives the Rekey Request.  If it is not
already rekeying, it proceeds to initiate a rekeying TLS handshake
(step 3).  If it is already rekeying, it ignores the Rekey Request
(see <xref target="sim-rekeying"/>).</t>
            </li>
            <li>
              <t>The client key manager starts a rekeying TLS handshake for epoch
N+1 and relays the resulting flight of TLS records to the server key manager
per <xref target="tls-user-message"/>.</t>
            </li>
            <li>
              <t>The server key manager awaits the rekeying TLS handshake as a TLS
server.</t>
            </li>
            <li>
              <t>The TLS endpoints continue exchange TLS messages to complete the TLS handshake.</t>
            </li>
            <li>
              <t>The client key manager's TLS handshake completes.  It exports all
Primary and Restart DKC keys for epoch N+1, installs the server to
client key material as its read (receive) key, and sends a
Read Key Installed control message (<xref target="read-key-installed"/>)
to the server key manager.</t>
            </li>
            <li>
              <t>The server key manager proceeds only after both its own TLS
handshake has completed (7a) and it has received the client key
manager's Read Key Installed control message (7b).  Once both
conditions are met, it exports both direction key material for
both the Primary and Restart DKCs for epoch N+1, installs both
the read (receive) key and the write (send) key, starts the drain
timer to remove the old (epoch N) DKC, and switches sending to
the epoch N+1 DKC. The server key manager sends a Read Key
Installed control message (<xref target="read-key-installed"/>) to the
client key manager.</t>
            </li>
            <li>
              <t>The client key manager receives the Read Key Installed
control message (<xref target="read-key-installed"/>), installs the client
key material as its write (send) key, starts the drain timer to
remove the old (epoch N) DKC, and switches sending to the epoch
N+1 DKC.</t>
            </li>
          </ol>
          <t>If the TLS handshake fails in step 5, it SHOULD be retried according to <xref target="error-handling"/>.</t>
          <t>The new DKCs use epoch N+1 (where N is the current epoch when
  initiating rekeying).  Both old (epoch N) and new (epoch N+1) DKCs
  coexist temporarily until the drain timer expires (see
  <xref target="drain-timer"/>).</t>
          <t>All rekeying MUST use ephemeral key exchange.</t>
        </section>
        <section anchor="drain-timer">
          <name>Drain Timer Considerations</name>
          <t>The drain timer determines how long old (epoch N) DKCs are retained
after new (epoch N+1) DKCs have been activated.  Its purpose is to
allow in-flight packets protected with the old keys to be received
and processed before those keys are removed.</t>
          <t>When the client KM receives the Read Key Installed
control message <xref target="control-messages"/> in Step 8, installs the write
key and starts the drain timer it do knows that the server endpoint
already is sending using the new DKC. Thus it can set a short timer
to allow any reordered or delayed packets has been drained before
removing the old DKS. A value of 3 seconds are recommended.</t>
          <t>The server drain timer value depends on whether the delivery of the final
rekeying message has been confirmed:</t>
          <ul spacing="normal">
            <li>
              <t>If delivery of the server's Read Key Installed control message
<xref target="control-messages"/> has been confirmed (e.g.,
through SCTP acknowledgment of the DATA chunk carrying control message,
the old DKC MAY be removed after a short drain timer.
A value of 3 seconds is RECOMMENDED in this case to allow for
reordered or delayed packets to arrive.</t>
            </li>
            <li>
              <t>If delivery of the Read Key Installed control message
<xref target="control-messages"/> sent by this endpoint has not been confirmed,
the drain timer MUST be set to at least the SCTP association
failure time (T_fail).  This ensures first of all that the ULP
traffic is not impacted by the drainage, and that if the final
rekeying message is lost and requires
retransmission, the old DKC remains available for as long as SCTP
continues retransmission attempts.  If the association fails
(i.e., SCTP declares the peer unreachable), the DKCs are removed
as part of association teardown.</t>
            </li>
          </ul>
          <t>The SCTP association failure time depends on the Retransmission
Timeout (RTO) and the maximum number of retransmissions
(Association.Max.Retrans, as defined in <xref target="RFC9260"/>).  With the
default values from <xref target="RFC9260"/> (RTO.Initial = 1s, RTO.Max = 60s,
Association.Max.Retrans = 10), T_fail is approximately 303 seconds.</t>
          <t>Implementations SHOULD set the drain timer to at least T_fail when
delivery of the Read Key Installed message has not been confirmed.</t>
        </section>
        <section anchor="sim-rekeying">
          <name>Concurrent Rekey Requests</name>
          <t>Because only the client key manager ever initiates a TLS handshake,
two ClientHellos cannot cross and no tie-breaker is needed.</t>
          <t>The only concurrency to resolve is when the server key manager sends a
Rekey Request while the client key manager has already initiated (or is
about to initiate) a rekeying to epoch N+1.  Since both the direct
client trigger and the server's Rekey Request lead to the same outcome,
a single client-initiated rekeying to epoch N+1, the client key
manager treats an incoming Rekey Request as redundant and ignores it
while a rekeying is already in progress.</t>
          <t>Similarly, if the server key manager needs to rekey while a
client-initiated rekeying is already in progress, it does not send a
Rekey Request, as the in-progress rekeying already satisfies the need.</t>
        </section>
      </section>
      <section anchor="sctp-restart">
        <name>SCTP Association Restart</name>
        <section anchor="prerequisites">
          <name>Prerequisites</name>
          <t>For protected SCTP restart to succeed:</t>
          <ul spacing="normal">
            <li>
              <t>Both endpoints MUST have a valid Restart DKC.</t>
            </li>
            <li>
              <t>The Restart DKC MUST be stored securely and persistently to
survive crash events (see Section 10.4 of <xref target="I-D.ietf-tsvwg-sctp-dtls-chunk"/>).</t>
            </li>
            <li>
              <t>Both endpoints MUST have indicated restart support (R bit) in the
DTLS Key Management Parameter.</t>
            </li>
          </ul>
        </section>
        <section anchor="restart-procedure">
          <name>Restart Procedure</name>
          <figure anchor="restart-diagram">
            <name>SCTP Restart Procedure</name>
            <artset>
              <artwork type="svg" align="center"><svg xmlns="http://www.w3.org/2000/svg" version="1.1" height="352" width="488" viewBox="0 0 488 352" class="diagram" text-anchor="middle" font-family="monospace" font-size="13px" stroke-linecap="round">
                  <path d="M 40,48 L 40,288" fill="none" stroke="black"/>
                  <path d="M 368,48 L 368,288" fill="none" stroke="black"/>
                  <path d="M 400,96 L 400,112" fill="none" stroke="black"/>
                  <path d="M 400,160 L 400,176" fill="none" stroke="black"/>
                  <path d="M 40,96 L 112,96" fill="none" stroke="black"/>
                  <path d="M 168,96 L 360,96" fill="none" stroke="black"/>
                  <path d="M 48,112 L 112,112" fill="none" stroke="black"/>
                  <path d="M 200,112 L 368,112" fill="none" stroke="black"/>
                  <path d="M 400,112 L 448,112" fill="none" stroke="black"/>
                  <path d="M 40,160 L 88,160" fill="none" stroke="black"/>
                  <path d="M 248,160 L 360,160" fill="none" stroke="black"/>
                  <path d="M 48,176 L 88,176" fill="none" stroke="black"/>
                  <path d="M 240,176 L 368,176" fill="none" stroke="black"/>
                  <path d="M 400,176 L 480,176" fill="none" stroke="black"/>
                  <path d="M 40,256 L 88,256" fill="none" stroke="black"/>
                  <path d="M 304,256 L 360,256" fill="none" stroke="black"/>
                  <path d="M 48,272 L 88,272" fill="none" stroke="black"/>
                  <path d="M 304,272 L 368,272" fill="none" stroke="black"/>
                  <path d="M 384,80 C 392.83064,80 400,87.16936 400,96" fill="none" stroke="black"/>
                  <path d="M 384,128 C 392.83064,128 400,120.83064 400,112" fill="none" stroke="black"/>
                  <path d="M 384,144 C 392.83064,144 400,151.16936 400,160" fill="none" stroke="black"/>
                  <path d="M 384,192 C 392.83064,192 400,184.83064 400,176" fill="none" stroke="black"/>
                  <polygon class="arrowhead" points="368,256 356,250.4 356,261.6" fill="black" transform="rotate(0,360,256)"/>
                  <polygon class="arrowhead" points="368,160 356,154.4 356,165.6" fill="black" transform="rotate(0,360,160)"/>
                  <polygon class="arrowhead" points="368,96 356,90.4 356,101.6" fill="black" transform="rotate(0,360,96)"/>
                  <polygon class="arrowhead" points="56,272 44,266.4 44,277.6" fill="black" transform="rotate(180,48,272)"/>
                  <polygon class="arrowhead" points="56,176 44,170.4 44,181.6" fill="black" transform="rotate(180,48,176)"/>
                  <polygon class="arrowhead" points="56,112 44,106.4 44,117.6" fill="black" transform="rotate(180,48,112)"/>
                  <g class="text">
                    <text x="40" y="36">Initiator</text>
                    <text x="368" y="36">Responder</text>
                    <text x="20" y="68">1.</text>
                    <text x="84" y="68">(install</text>
                    <text x="152" y="68">Restart</text>
                    <text x="200" y="68">DKC</text>
                    <text x="236" y="68">from</text>
                    <text x="292" y="68">storage)</text>
                    <text x="20" y="100">2.</text>
                    <text x="140" y="100">[INIT]</text>
                    <text x="432" y="100">Plain</text>
                    <text x="20" y="116">3.</text>
                    <text x="156" y="116">[INIT-ACK]</text>
                    <text x="20" y="164">4.</text>
                    <text x="140" y="164">[DTLS(COOKIE</text>
                    <text x="220" y="164">ECHO)]</text>
                    <text x="448" y="164">Protected</text>
                    <text x="20" y="180">5.</text>
                    <text x="140" y="180">[DTLS(COOKIE</text>
                    <text x="216" y="180">ACK)]</text>
                    <text x="20" y="196">6.</text>
                    <text x="68" y="212">(TLS</text>
                    <text x="128" y="212">handshake</text>
                    <text x="184" y="212">for</text>
                    <text x="216" y="212">new</text>
                    <text x="256" y="212">keys,</text>
                    <text x="80" y="228">steps</text>
                    <text x="128" y="228">7-12,</text>
                    <text x="164" y="228">as</text>
                    <text x="188" y="228">in</text>
                    <text x="232" y="228">initial</text>
                    <text x="292" y="228">setup)</text>
                    <text x="16" y="260">13.</text>
                    <text x="152" y="260">[DTLS(protected</text>
                    <text x="232" y="260">APP</text>
                    <text x="276" y="260">DATA)]</text>
                    <text x="400" y="260">APP</text>
                    <text x="436" y="260">DATA</text>
                    <text x="152" y="276">[DTLS(protected</text>
                    <text x="232" y="276">APP</text>
                    <text x="276" y="276">DATA)]</text>
                    <text x="200" y="292">...</text>
                  </g>
                </svg>
              </artwork>
              <artwork type="ascii-art" align="center"><![CDATA[
 Initiator                                Responder
     |                                        |
  1. | (install Restart DKC from storage)     |
     |                                        | -.
  2. +---------[INIT]------------------------>|   | Plain
  3. |<--------[INIT-ACK]---------------------+   +------
     |                                        | -'
     |                                        | -.
  4. +------[DTLS(COOKIE ECHO)]-------------->|   | Protected
  5. |<-----[DTLS(COOKIE ACK)]----------------+   +----------
  6. |                                        | -'
     | (TLS handshake for new keys,           |
     |  steps 7-12, as in initial setup)      |
     |                                        |
 13. +------[DTLS(protected APP DATA)]------->|  APP DATA
     |<-----[DTLS(protected APP DATA)]--------+
     |                  ...                   |


]]></artwork>
            </artset>
          </figure>
          <t>Steps 1-5 are following what is defined in Section 5.4 (Restart Considerations)
in <xref target="I-D.ietf-tsvwg-sctp-dtls-chunk"/>.</t>
          <ol spacing="normal" type="1"><li>
              <t>The restarting endpoint (Initiator) retrieves the restart key
material from persistent secure storage and installs the Restart
DKC for both send and receive directions.</t>
            </li>
            <li>
              <t>The Initiator sends INIT (VTag=0). Include the DTLS Key Management
Parameter with the same method list and the same role and restart settings,
but a new random Tie Breaker.</t>
            </li>
            <li>
              <t>The Responder (the not restarting endpoint) replies INIT-ACK in
plain text per <xref target="RFC9260"/>.  Include the DTLS Key Management
Parameter with the same method list and the same role and restart
settings, but a new random Tie Breaker.</t>
            </li>
            <li>
              <t>The Initiator sends COOKIE ECHO in a DTLS chunk protected with
the Restart DKC (R bit set).</t>
            </li>
            <li>
              <t>The Responder replies COOKIE ACK in a DTLS chunk protected with
the Restart DKC (R bit set).</t>
            </li>
            <li>
              <t>Both endpoints have a restarted association, whose state is
as described in Section 5.2.4.1 of <xref target="RFC9260"/>, with two differences
specific to this document: DTLS chunk protection is enforced using
the Restart DKC (the COOKIE ECHO and COOKIE ACK were exchanged
protected with it), and the DTLS Key Management Client and Server
roles may differ from those of the previous instance of the
association, since the new INIT handshake re-runs role determination.
The authenticated peer identity, however, MUST remain the same as in
the previous instance of the association (see <xref target="tls-auth"/>).
The ULP MAY be informed that the association is restarted at this
point.  ULP traffic MAY begin immediately using the Restart DKC.</t>
            </li>
            <li>
              <t>Steps 7 to 12 perform the TLS 1.3 handshake and key installation, and
correspond one-to-one to steps 4 to 9 of the initial establishment
procedure (<xref target="initial-establishment"/>).  They differ only as follows:  </t>
              <ul spacing="normal">
                <li>
                  <t>all key management messages are carried inside DTLS chunks protected
with the Restart DKC;</t>
                </li>
                <li>
                  <t>in addition to the Primary DKC, each endpoint exports, installs, and
commits the new Restart DKC to persistent secure storage, removing
the old one;</t>
                </li>
                <li>
                  <t>at the key transition (steps 11 and 12), each endpoint switches the
active DTLS key context from the Restart DKC to the new Primary DKC
after the Read Key Installed exchange completes (the Read Key
Installed messages themselves are protected with the Restart DKC),
rather than enforcing protection for the first time; the ULP was
already informed at step 6.</t>
                </li>
              </ul>
            </li>
          </ol>
          <ol spacing="normal" type="1" start="13"><li>
              <t>Protected application traffic uses the new Primary DKC.</t>
            </li>
          </ol>
          <t>After restart, the new Primary DKC is required to use epoch 3 (the epoch
resets), see <xref section="5.4" sectionFormat="of" target="I-D.ietf-tsvwg-sctp-dtls-chunk"/>.</t>
          <t>The Responder MUST NOT change the Restart DKC during the restart
procedure.  After the new Restart DKC is installed, the old one is
removed.</t>
          <t>It is RECOMMENDED to complete the TLS handshake and install new DKCs
as soon as possible after restart, to minimize the window during
which no Restart DKC is available for a subsequent restart.</t>
          <t>Note: There MAY exist a short time gap after association establishment
where no Restart DKC is yet installed.  If an SCTP restart is
initiated during that time, it will fail.  However, this is unlikely
as the restarting endpoint sends INIT multiple times with exponential
back-off.</t>
        </section>
      </section>
    </section>
    <section anchor="error-handling">
      <name>Error Handling</name>
      <t>TLS has its own error reporting via TLS alert messages.  When a TLS
handshake error occurs, the TLS alert is sent in an SCTP user message
(see <xref target="tls-user-message"/>) with the TLS records for DTLS Chunk
Key Management PPID (4242).</t>
      <t>If a TLS handshake fails during initial establishment and the
implementation determines that it can address the cause of the error
(for example, by retrying with different parameters, as long as doing
so does not compromise security), it SHOULD retry
the TLS handshake.  Otherwise, the SCTP association MUST be aborted.</t>
      <t>If a TLS handshake fails during rekeying, and the current DKC has not
yet reached its usage limits, the implementation SHOULD retry the
handshake.  If retry is not possible or the current DKC is aged
beyond limits, the association MUST be aborted.</t>
    </section>
    <section anchor="security-considerations">
      <name>Security Considerations</name>
      <section anchor="general">
        <name>General</name>
        <t>The security considerations given in <xref target="RFC9846"/>, <xref target="RFC9147"/>, 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 TLS.  BCP 195 MUST be
followed.</t>
      </section>
      <section anchor="privacy-considerations">
        <name>Privacy Considerations</name>
        <t>Although DTLS in SCTP provides privacy for user messages and
almost all SCTP chunks, the SCTP common header, DTLS chunk header,
and DTLS record header are not confidentiality protected.  An
attacker can correlate TLS connections over the same SCTP association
using the SCTP common header.</t>
        <t>To provide identity protection, it is RECOMMENDED to use
certificate-based authentication in TLS 1.3 and to not reuse tickets.
TLS 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 mitigates many
forms of passive pervasive monitoring.  Frequent rekeying forces
attackers to perform dynamic key exfiltration and limits the amount
of compromised data due to key compromise.</t>
        <t>It is RECOMMENDED that implementations of this key management
method do not allow the ULP to exchange any data beyond the
key management information following this specification until
the peer is authenticated and the local endpoint and the remote
endpoint have both installed read and write keys and enforced
protection. This is to avoid any information leakage from
the ULP to unintended parties.</t>
      </section>
    </section>
    <section anchor="iana-considerations">
      <name>IANA Considerations</name>
      <section anchor="sec-iana-psi">
        <name>DTLS Key Management Method Identifier</name>
        <t>IANA is requested to assign one DTLS Key Management Method Identifier
in the "DTLS Key Management Method" registry defined by
<xref target="I-D.ietf-tsvwg-sctp-dtls-chunk"/> to identify the
key management method defined in this document.</t>
        <table anchor="iana-psi">
          <name>DTLS Key Management Method Identifier</name>
          <thead>
            <tr>
              <th align="right">Identifier</th>
              <th align="left">Key Management Method Name</th>
              <th align="left">Reference</th>
              <th align="left">Contact</th>
            </tr>
          </thead>
          <tbody>
            <tr>
              <td align="right">192</td>
              <td align="left">TLS based Key Management for SCTP DTLS Chunk</td>
              <td align="left">RFC-TBD</td>
              <td align="left">Draft Authors</td>
            </tr>
          </tbody>
        </table>
      </section>
      <section anchor="iana-export-label">
        <name>TLS Exporter Labels</name>
        <t>IANA is requested to register the following value in the TLS
Exporter Label Registry <xref target="RFC5705"/> with Reference RFC-TBD and empty
Comment.</t>
        <table anchor="iana-tls-exporter">
          <name>TLS Exporter Label</name>
          <thead>
            <tr>
              <th align="left">Value</th>
              <th align="left">DTLS-OK</th>
              <th align="left">Recommended</th>
            </tr>
          </thead>
          <tbody>
            <tr>
              <td align="left">EXPORTER_TLS_FOR_DTLS_IN_SCTP</td>
              <td align="left">Y</td>
              <td align="left">N</td>
            </tr>
          </tbody>
        </table>
      </section>
      <section anchor="sec-iana-ctrl-types">
        <name>DTLS Chunk Key Management Control Message Types</name>
        <t>IANA is requested to create a new registry called "DTLS Chunk
Key Management Control Message Types" in the Stream Control
Transmission Protocol (SCTP) Parameters group.  This registry
governs the values of the Ctrl Type field of the control messages
defined in <xref target="control-messages"/>.</t>
        <t>The registration policy for this registry is IETF Review as defined in
<xref target="RFC8126"/>.</t>
        <t>Each entry in the registry MUST contain the following fields:</t>
        <ul spacing="normal">
          <li>
            <t>Ctrl Type: an 8-bit unsigned integer value (0x00-0xFF).</t>
          </li>
          <li>
            <t>Name: a short, human-readable name for the control message type.</t>
          </li>
          <li>
            <t>Reference: a reference to the document defining the control message
type.</t>
          </li>
        </ul>
        <t>The initial contents of the registry are shown in
<xref target="iana-ctrl-types"/>.  The value 0x00 is reserved.</t>
        <table anchor="iana-ctrl-types">
          <name>DTLS Chunk Key Management Control Message Types</name>
          <thead>
            <tr>
              <th align="left">Ctrl Type</th>
              <th align="left">Name</th>
              <th align="left">Reference</th>
            </tr>
          </thead>
          <tbody>
            <tr>
              <td align="left">0x00</td>
              <td align="left">Reserved</td>
              <td align="left">RFC-TBD</td>
            </tr>
            <tr>
              <td align="left">0x01</td>
              <td align="left">Read Key Installed</td>
              <td align="left">RFC-TBD</td>
            </tr>
            <tr>
              <td align="left">0x02</td>
              <td align="left">Rekey Request</td>
              <td align="left">RFC-TBD</td>
            </tr>
            <tr>
              <td align="left">0x03-0xFF</td>
              <td align="left">Unassigned</td>
              <td align="left"> </td>
            </tr>
          </tbody>
        </table>
      </section>
      <section anchor="sec-iana-ppid">
        <name>SCTP Payload Protocol Identifier</name>
        <t>In the Stream Control Transmission Protocol (SCTP) Parameters group's
"Payload Protocol Identifiers" registry, IANA is requested to update the
name and reference for the PPID 4242 as depicted in
<xref target="iana-payload-protection-id"/>.
Furthermore, IANA is requested to add an entry in the "Payload Protocol
Identifiers" registry for the PPID 4243 as depicted in
<xref target="iana-payload-protection-id"/>.</t>
        <table anchor="iana-payload-protection-id">
          <name>Payload Protocol Identifier</name>
          <thead>
            <tr>
              <th align="right">ID Value</th>
              <th align="left">SCTP Payload Protocol Identifier</th>
              <th align="left">Reference</th>
            </tr>
          </thead>
          <tbody>
            <tr>
              <td align="right">4242</td>
              <td align="left">TLS records for DTLS Chunk Key Management</td>
              <td align="left">RFC-To-Be</td>
            </tr>
            <tr>
              <td align="right">4243</td>
              <td align="left">Control Messages for DTLS Chunk Key Management</td>
              <td align="left">RFC-To-Be</td>
            </tr>
          </tbody>
        </table>
      </section>
    </section>
  </middle>
  <back>
    <references anchor="sec-combined-references">
      <name>References</name>
      <references anchor="sec-normative-references">
        <name>Normative References</name>
        <reference anchor="RFC5705" target="https://www.rfc-editor.org/info/rfc5705" xml:base="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.5705.xml">
          <front>
            <title>Keying Material Exporters for Transport Layer Security (TLS)</title>
            <author fullname="E. Rescorla" initials="E." surname="Rescorla"/>
            <date month="March" year="2010"/>
            <abstract>
              <t>A number of protocols wish to leverage Transport Layer Security (TLS) to perform key establishment but then use some of the keying material for their own purposes. This document describes a general mechanism for allowing that. [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="5705"/>
          <seriesInfo name="DOI" value="10.17487/RFC5705"/>
        </reference>
        <reference anchor="RFC8126" target="https://www.rfc-editor.org/info/rfc8126" xml:base="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.8126.xml">
          <front>
            <title>Guidelines for Writing an IANA Considerations Section in RFCs</title>
            <author fullname="M. Cotton" initials="M." surname="Cotton"/>
            <author fullname="B. Leiba" initials="B." surname="Leiba"/>
            <author fullname="T. Narten" initials="T." surname="Narten"/>
            <date month="June" year="2017"/>
            <abstract>
              <t>Many protocols make use of points of extensibility that use constants to identify various protocol parameters. To ensure that the values in these fields do not have conflicting uses and to promote interoperability, their allocations are often coordinated by a central record keeper. For IETF protocols, that role is filled by the Internet Assigned Numbers Authority (IANA).</t>
              <t>To make assignments in a given registry prudently, guidance describing the conditions under which new values should be assigned, as well as when and how modifications to existing values can be made, is needed. This document defines a framework for the documentation of these guidelines by specification authors, in order to assure that the provided guidance for the IANA Considerations is clear and addresses the various issues that are likely in the operation of a registry.</t>
              <t>This is the third edition of this document; it obsoletes RFC 5226.</t>
            </abstract>
          </front>
          <seriesInfo name="BCP" value="26"/>
          <seriesInfo name="RFC" value="8126"/>
          <seriesInfo name="DOI" value="10.17487/RFC8126"/>
        </reference>
        <reference anchor="RFC8996" target="https://www.rfc-editor.org/info/rfc8996" xml:base="https://static.ietf.org/tmp/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="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="RFC9149" target="https://www.rfc-editor.org/info/rfc9149" xml:base="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.9149.xml">
          <front>
            <title>TLS Ticket Requests</title>
            <author fullname="T. Pauly" initials="T." surname="Pauly"/>
            <author fullname="D. Schinazi" initials="D." surname="Schinazi"/>
            <author fullname="C.A. Wood" initials="C.A." surname="Wood"/>
            <date month="April" year="2022"/>
            <abstract>
              <t>TLS session tickets enable stateless connection resumption for clients without server-side, per-client state. Servers vend an arbitrary number of session tickets to clients, at their discretion, upon connection establishment. Clients store and use tickets when resuming future connections. This document describes a mechanism by which clients can specify the desired number of tickets needed for future connections. This extension aims to provide a means for servers to determine the number of tickets to generate in order to reduce ticket waste while simultaneously priming clients for future connection attempts.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="9149"/>
          <seriesInfo name="DOI" value="10.17487/RFC9149"/>
        </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="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="RFC9846" target="https://www.rfc-editor.org/info/rfc9846" xml:base="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.9846.xml">
          <front>
            <title>The Transport Layer Security (TLS) Protocol Version 1.3</title>
            <author fullname="E. Rescorla" initials="E." surname="Rescorla"/>
            <date month="July" year="2026"/>
            <abstract>
              <t>This document specifies version 1.3 of the Transport Layer Security (TLS) protocol. TLS allows client/server applications to communicate over the Internet in a way that is designed to prevent eavesdropping, tampering, and message forgery.</t>
              <t>This document obsoletes RFC 8446, which specified TLS 1.3. This document obsoletes RFC 5246 (specifying TLS 1.2) and RFCs 5077, 6961, 7627, and 8422, all of which pertain to TLS 1.2 or earlier, and updates RFCs 5705 and 6066. This document also specifies new requirements for TLS 1.2 implementations.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="9846"/>
          <seriesInfo name="DOI" value="10.17487/RFC9846"/>
        </reference>
        <reference anchor="I-D.ietf-tsvwg-sctp-dtls-chunk" target="https://datatracker.ietf.org/doc/html/draft-ietf-tsvwg-sctp-dtls-chunk-06" xml:base="https://bib.ietf.org/public/rfc/bibxml3/reference.I-D.ietf-tsvwg-sctp-dtls-chunk.xml">
          <front>
            <title>Stream Control Transmission Protocol (SCTP) DTLS Chunk</title>
            <author fullname="Magnus Westerlund"/>
            <author fullname="John Preuß Mattsson"/>
            <author fullname="Claudio Porfiri"/>
            <author fullname="Michael Tüxen"/>
            <date day="2" month="November" year="2026"/>
            <abstract>
              <t>This document describes a method for adding Datagram Transport Layer
   Security (DTLS) based authentication and cryptographic protection to
   the Stream Control Transmission Protocol (SCTP).</t>
              <t>This SCTP extension is intended to enable communication privacy for
   applications that use SCTP as their transport protocol and allows
   applications to communicate in a way that is designed to prevent
   eavesdropping and detect tampering or message forgery.  Once enabled,
   this also applies to the SCTP payload as well as the SCTP control
   information.</t>
              <t>Applications using this SCTP extension can use most of the transport
   features provided by SCTP and its other extensions.  The use of the
   SCTP Authentication extension defined in RFC 4895 is incompatible
   with the extension defined in this document but would not provide any
   additional service.  This implies that the Dynamic Address
   Reconfiguration as specified in RFC 5061 can only be used as
   described in this document.</t>
              <t>This document obsoletes RFC 6083 and updates RFC 5061.</t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-ietf-tsvwg-sctp-dtls-chunk-06"/>
        </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 anchor="sec-informative-references">
        <name>Informative References</name>
        <reference anchor="RFC9525" target="https://www.rfc-editor.org/info/rfc9525" xml:base="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.9525.xml">
          <front>
            <title>Service Identity in TLS</title>
            <author fullname="P. Saint-Andre" initials="P." surname="Saint-Andre"/>
            <author fullname="R. Salz" initials="R." surname="Salz"/>
            <date month="November" 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.</t>
              <t>This document obsoletes RFC 6125.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="9525"/>
          <seriesInfo name="DOI" value="10.17487/RFC9525"/>
        </reference>
        <reference anchor="ANSSI-DAT-NT-003" target="&lt;https://messervices.cyber.gouv.fr/documents-guides/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>
        <reference anchor="KTH-NCSA" target="http://kth.diva-portal.org/smash/get/diva2:1902626/FULLTEXT01.pdf">
          <front>
            <title>On factoring integers, and computing discrete logarithms and orders, quantumly</title>
            <author initials="M." surname="Ekerå" fullname="Martin Ekerå">
              <organization/>
            </author>
            <date year="2024" month="October"/>
          </front>
          <seriesInfo name="KTH, School of Electrical Engineering and Computer Science (EECS), Computer Science, Theoretical Computer Science, TCS. Swedish NCSA, Swedish Armed Forces." value=""/>
        </reference>
      </references>
    </references>
  </back>
  <!-- ##markdown-source:
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
1A8LDr3rtkGSHRFdtdh7W/C8yK2+zukVWsqe2GSMUTsbY9QRYkfYlmW1Qha1
8WbLCIhaJehyGmYM2dJFuAFA+6tn8IkJydjPfkxl7Yn5BGVJfcrstDMS/497
jQaOb4oOYSSsix2N71C+G4pB9P9/90q90UC6rZ+H3WGj0fakw87+F7f//xoa
k23/W38/D8nAUr2EdaRbNUJjwgzwyc1yd9hqtPMdvqYH/6mepu/3az1quYwG
grD3toa3AH3ggWh6U+ouo8ff7TB63HYXib8IlUPvLyJn0Vo0DnxFuL4RV/UZ
9a8O/3Pyp/FPTWCsBUmI+y2Q1HxMTzp8TOG8ZOi/m4/J0SiijalLDXU77olU
0Ig1clsAaSS1kTroWpebh1lZw63jJGgnZf6n+nTsUSfPzhp2/P3uH+XdP8/0
uxGB9rkGwYp4GOeeA/SeuR1+rg3w05iL5YuqhKJcbWdanqQgf6DpPGLbAWsn
GAt2DBqa0Vs0/jZFtihdX/2QeKstvOCug+iTjVJn+SYZPKoa3CEo0nWj8MZF
usTC6IQ4vJUG9UoMl9ojNdPK3jVrrgtK92K8LVH5d3T7fJOQ2Cns8YHqNHLc
VtqTECDqqGMmtmoCQ7KlQQRenpuNI8HEJ6T9s6UcazLQ8Da/wkqYtG5nybtN
/hj3M+AtHoaDdPbNiRkd07P9sIella/hnBrrLPo9eScUyoYnkMfAY+iN8X/M
Es89rrVQP+i1mEbI/cwaCZ+vZrOaSaibPVxr9v5em/ej77F5N4zePNUeyyiH
wLr9YC7ZbQSXc7beEr7GDM7tb5Nu2GOf5A7WW8Mf/yFrOI9QM4mH9vDHt7KH
cydto/i6FT9Gi7g3iTuStsYufpNRnPu40TLeu/d+Ht9sKZfjjw9JupFu0rnN
UCQ5h7gccG4rFw85+pYwhng2ZykI1/ZTqbPuXrdawyTO7b8d6azA0Eb+lgvm
2y3ja1hXx1Q6jebcxe0s5819cVvCnXzXvvgt8bTcilS3sG0//G7btrK2rkvG
Y7S5eNQYcGzPOytOxcuSyrq52OncGwXDJGA8hi/wzNQhYKXLUIfDUdEkWCRf
Usy3TeZwLqMyBeqyBLKfteDM1Zu4TqJCXzE9HNNDy1OxjodjPS7GvadKE1uU
X9IQJzREq1BXOATH2YczChJssU4gBnq3t95WMONAaClM1gUMjmE+xVrcWIL8
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
MK8AAA==

-->

</rfc>
