<?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.39 (Ruby 3.4.9) -->
<rfc xmlns:xi="http://www.w3.org/2001/XInclude" ipr="trust200902" docName="draft-porfiri-tsvwg-sctp-dtls-handshake-00" category="std" consensus="true" submissionType="IETF" version="3">
  <!-- xml2rfc v2v3 conversion 3.34.0 -->
  <front>
    <title abbrev="TLS for DTLS in SCTP">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-00"/>
    <author initials="M." surname="Westerlund" fullname="Magnus Westerlund">
      <organization>Ericsson</organization>
      <address>
        <email>magnus.westerlund@ericsson.com</email>
      </address>
    </author>
    <author initials="J." surname="Preuß Mattsson" fullname="John Preuß Mattsson">
      <organization>Ericsson</organization>
      <address>
        <email>john.mattsson@ericsson.com</email>
      </address>
    </author>
    <author initials="C." surname="Porfiri" fullname="Claudio Porfiri">
      <organization>Ericsson</organization>
      <address>
        <email>claudio.porfiri@ericsson.com</email>
      </address>
    </author>
    <date year="2026" month="June" day="18"/>
    <area>Transport</area>
    <workgroup>TSVWG</workgroup>
    <abstract>
      <?line 68?>

<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 79?>

<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 multi-streaming and multi-homing.  In many
deployments, particularly telecommunication networks and WebRTC data
channels, 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="RFC8446"/>
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 "TLS for
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>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 assigned the client role during SCTP association
establishment.  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>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 assigned the server role during SCTP association
establishment.  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>
          <dt>Restart DKC:</dt>
          <dd>
            <t>A DTLS Key Context reserved exclusively for the SCTP association
restart procedure.</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 TLS for 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="464" width="440" viewBox="0 0 440 464" class="diagram" text-anchor="middle" font-family="monospace" font-size="13px" stroke-linecap="round">
                <path d="M 8,32 L 8,272" fill="none" stroke="black"/>
                <path d="M 8,368 L 8,448" fill="none" stroke="black"/>
                <path d="M 72,280 L 72,320" fill="none" stroke="black"/>
                <path d="M 96,320 L 96,360" fill="none" stroke="black"/>
                <path d="M 136,32 L 136,272" fill="none" stroke="black"/>
                <path d="M 152,32 L 152,272" fill="none" stroke="black"/>
                <path d="M 168,80 L 168,224" fill="none" stroke="black"/>
                <path d="M 176,384 L 176,432" fill="none" stroke="black"/>
                <path d="M 192,64 L 192,96" fill="none" stroke="black"/>
                <path d="M 192,128 L 192,160" fill="none" stroke="black"/>
                <path d="M 192,208 L 192,256" fill="none" stroke="black"/>
                <path d="M 280,160 L 280,208" fill="none" stroke="black"/>
                <path d="M 288,280 L 288,320" fill="none" stroke="black"/>
                <path d="M 352,384 L 352,432" fill="none" stroke="black"/>
                <path d="M 368,64 L 368,96" fill="none" stroke="black"/>
                <path d="M 368,128 L 368,160" fill="none" stroke="black"/>
                <path d="M 368,208 L 368,256" fill="none" stroke="black"/>
                <path d="M 392,80 L 392,400" fill="none" stroke="black"/>
                <path d="M 408,32 L 408,272" fill="none" stroke="black"/>
                <path d="M 408,368 L 408,448" fill="none" stroke="black"/>
                <path d="M 8,32 L 136,32" fill="none" stroke="black"/>
                <path d="M 152,32 L 408,32" fill="none" stroke="black"/>
                <path d="M 192,64 L 368,64" fill="none" stroke="black"/>
                <path d="M 168,80 L 184,80" fill="none" stroke="black"/>
                <path d="M 368,80 L 392,80" fill="none" stroke="black"/>
                <path d="M 192,96 L 368,96" fill="none" stroke="black"/>
                <path d="M 192,128 L 368,128" fill="none" stroke="black"/>
                <path d="M 168,144 L 192,144" fill="none" stroke="black"/>
                <path d="M 192,160 L 368,160" fill="none" stroke="black"/>
                <path d="M 192,208 L 368,208" fill="none" stroke="black"/>
                <path d="M 168,224 L 184,224" fill="none" stroke="black"/>
                <path d="M 192,256 L 368,256" fill="none" stroke="black"/>
                <path d="M 8,272 L 136,272" fill="none" stroke="black"/>
                <path d="M 152,272 L 408,272" fill="none" stroke="black"/>
                <path d="M 72,320 L 288,320" fill="none" stroke="black"/>
                <path d="M 8,368 L 408,368" fill="none" stroke="black"/>
                <path d="M 176,384 L 352,384" fill="none" stroke="black"/>
                <path d="M 360,400 L 392,400" fill="none" stroke="black"/>
                <path d="M 176,432 L 352,432" fill="none" stroke="black"/>
                <path d="M 8,448 L 408,448" fill="none" stroke="black"/>
                <polygon class="arrowhead" points="400,360 388,354.4 388,365.6" fill="black" transform="rotate(90,392,360)"/>
                <polygon class="arrowhead" points="368,400 356,394.4 356,405.6" fill="black" transform="rotate(180,360,400)"/>
                <polygon class="arrowhead" points="296,280 284,274.4 284,285.6" fill="black" transform="rotate(270,288,280)"/>
                <polygon class="arrowhead" points="192,224 180,218.4 180,229.6" fill="black" transform="rotate(0,184,224)"/>
                <polygon class="arrowhead" points="192,80 180,74.4 180,85.6" fill="black" transform="rotate(0,184,80)"/>
                <polygon class="arrowhead" points="104,360 92,354.4 92,365.6" fill="black" transform="rotate(90,96,360)"/>
                <polygon class="arrowhead" points="80,280 68,274.4 68,285.6" fill="black" transform="rotate(270,72,280)"/>
                <g class="text">
                  <text x="72" y="52">ULP</text>
                  <text x="264" y="52">TLS</text>
                  <text x="296" y="52">1.3</text>
                  <text x="240" y="84">Key</text>
                  <text x="292" y="84">Exporter</text>
                  <text x="240" y="148">Key</text>
                  <text x="300" y="148">Management</text>
                  <text x="224" y="196">ContentType</text>
                  <text x="240" y="228">TLS</text>
                  <text x="284" y="228">Record</text>
                  <text x="244" y="244">Protection</text>
                  <text x="324" y="244">Operator</text>
                  <text x="420" y="324">keys</text>
                  <text x="68" y="340">PPID</text>
                  <text x="92" y="404">SCTP</text>
                  <text x="236" y="404">DTLS</text>
                  <text x="280" y="404">Chunk</text>
                  <text x="228" y="420">Protection</text>
                  <text x="308" y="420">Operator</text>
                </g>
              </svg>
            </artwork>
            <artwork type="ascii-art" align="center"><![CDATA[
+---------------+ +-------------------------------+
|      ULP      | |            TLS 1.3            |
|               | |    +---------------------+    |
|               | | +->+    Key Exporter     +--+ |
|               | | |  +---------------------+  | |
|               | | |                           | |
|               | | |  +---------------------+  | |
|               | | +--+    Key Management   +  | |
|               | | |  +----------+----------+  | |
|               | | |             |             | |
|               | | | ContentType |             | |
|               | | |  +----------+----------+  | |
|               | | +->|    TLS Record       |  | |
|               | |    | Protection Operator |  | |
|               | |    +----------+----------+  | |
+-------+-------+ +-----------------------------+-+
        ^                          ^            |
        |                          |            |
        +--+-----------------------+            | keys
      PPID |                                    |
           V                                    V
+-----------------------------------------------+-+
|                    +---------------------+    | |
|        SCTP        |     DTLS Chunk      |<---+ |
|                    | Protection Operator |      |
|                    +---------------------+      |
+-------------------------------------------------+
]]></artwork>
          </artset>
        </figure>
        <t>Application data is never transmitted in TLS application_data records.
Instead, application data is sent via SCTP DATA chunks protected by
the DTLS Chunk Protection Operator.  TLS 1.3 is used solely for key
management: performing handshakes, deriving keys via the TLS Exporter,
and then closing the TLS connection.</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 initiates a new TLS 1.3 handshake
to derive fresh DKCs for the next epoch, providing forward secrecy
and re-authentication.  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="RFC8446"/>.  Earlier
versions of TLS MUST NOT be used.  Only one version of TLS MUST be
used 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 are NOT RECOMMENDED to support.  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>TLS for 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
certificate policies, 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>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>
      </section>
      <section anchor="rekey-policy">
        <name>Rekeying Policy</name>
        <t>Implementations MUST have policies for how often to set up new TLS
connections with ephemeral key exchange.  Implementations SHOULD
rekey at least every hour and every 100 GB of data, which is a common
policy for IPsec <xref target="ANSSI-DAT-NT-003"/>.</t>
        <t>Implementations MUST set up a new TLS connection using a full
handshake before any of the 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.</t>
        <t>TLS 1.3 tickets MAY be used for resumption (valid up to seven days).
Resumption can be used to chain the connections, increasing security
by forcing an adversary to break them in sequence <xref target="KTH-NCSA"/>.</t>
        <t>The endpoints MUST limit the number of simultaneous TLS connections
to one.</t>
      </section>
    </section>
    <section anchor="tls-user-message">
      <name>TLS Message Transport</name>
      <t>TLS records and control messages for key-management are sent as SCTP
user messages using reliable in-order delivery on stream 0 with the
DTLS Key Management Messages PPID (4242)
<xref target="I-D.ietf-tsvwg-sctp-dtls-chunk"/>.</t>
      <t>Each SCTP user message uses the format defined in
<xref target="sctp-dtls-user-message"/>.</t>
      <figure anchor="sctp-dtls-user-message">
        <name>Key Management User Message Structure</name>
        <artset>
          <artwork type="svg" align="center"><svg xmlns="http://www.w3.org/2000/svg" version="1.1" height="176" width="528" viewBox="0 0 528 176" class="diagram" text-anchor="middle" font-family="monospace" font-size="13px" stroke-linecap="round">
              <path d="M 8,64 L 8,160" fill="none" stroke="black"/>
              <path d="M 24,64 L 24,96" fill="none" stroke="black"/>
              <path d="M 136,64 L 136,96" fill="none" stroke="black"/>
              <path d="M 264,128 L 264,160" fill="none" stroke="black"/>
              <path d="M 520,64 L 520,128" fill="none" stroke="black"/>
              <path d="M 8,64 L 520,64" fill="none" stroke="black"/>
              <path d="M 8,96 L 136,96" fill="none" stroke="black"/>
              <path d="M 264,128 L 520,128" fill="none" stroke="black"/>
              <path d="M 8,160 L 264,160" fill="none" stroke="black"/>
              <g class="text">
                <text x="16" y="36">0</text>
                <text x="176" y="36">1</text>
                <text x="336" y="36">2</text>
                <text x="496" y="36">3</text>
                <text x="16" y="52">0</text>
                <text x="32" y="52">1</text>
                <text x="48" y="52">2</text>
                <text x="64" y="52">3</text>
                <text x="80" y="52">4</text>
                <text x="96" y="52">5</text>
                <text x="112" y="52">6</text>
                <text x="128" y="52">7</text>
                <text x="144" y="52">8</text>
                <text x="160" y="52">9</text>
                <text x="176" y="52">0</text>
                <text x="192" y="52">1</text>
                <text x="208" y="52">2</text>
                <text x="224" y="52">3</text>
                <text x="240" y="52">4</text>
                <text x="256" y="52">5</text>
                <text x="272" y="52">6</text>
                <text x="288" y="52">7</text>
                <text x="304" y="52">8</text>
                <text x="320" y="52">9</text>
                <text x="336" y="52">0</text>
                <text x="352" y="52">1</text>
                <text x="368" y="52">2</text>
                <text x="384" y="52">3</text>
                <text x="400" y="52">4</text>
                <text x="416" y="52">5</text>
                <text x="432" y="52">6</text>
                <text x="448" y="52">7</text>
                <text x="464" y="52">8</text>
                <text x="480" y="52">9</text>
                <text x="496" y="52">0</text>
                <text x="512" y="52">1</text>
                <text x="16" y="84">T</text>
                <text x="72" y="84">Epoch</text>
                <text x="264" y="100">Payload</text>
              </g>
            </svg>
          </artwork>
          <artwork type="ascii-art" align="center"><![CDATA[
 0                   1                   2                   3
 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|T|   Epoch     |                                               |
+-+-+-+-+-+-+-+-+            Payload                            |
|                                                               |
|                               +-------------------------------+
|                               |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
]]></artwork>
        </artset>
      </figure>
      <dl>
        <dt>T (Message Type): 1 bit</dt>
        <dd>
          <t>Indicates the type of payload carried in this user message.
A value of 0 indicates that the payload contains TLS records.
A value of 1 indicates that the payload is a control message
(see <xref target="control-messages"/>).</t>
        </dd>
        <dt>Epoch: 7 bits</dt>
        <dd>
          <t>The 7 lowest bits of the DTLS Key Context epoch that this
message corresponds to — i.e., the DKC that will be created from
this handshake, or that already exists.  The receiver uses this
field to associate incoming data with the correct key-management
session.</t>
        </dd>
        <dt>Payload: variable length</dt>
        <dd>
          <t>When T=0, one or more complete TLS records.  When T=1, a control
message as defined in <xref target="control-messages"/>.</t>
        </dd>
      </dl>
      <section anchor="control-messages">
        <name>Control Messages</name>
        <t>When the T bit is set to 1, the payload of the user message is a
control message with the following format:</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="112" width="528" viewBox="0 0 528 112" class="diagram" text-anchor="middle" font-family="monospace" font-size="13px" stroke-linecap="round">
                <path d="M 8,64 L 8,96" fill="none" stroke="black"/>
                <path d="M 136,64 L 136,96" fill="none" stroke="black"/>
                <path d="M 392,64 L 392,72" fill="none" stroke="black"/>
                <path d="M 392,88 L 392,96" fill="none" stroke="black"/>
                <path d="M 520,64 L 520,96" fill="none" stroke="black"/>
                <path d="M 8,64 L 520,64" fill="none" stroke="black"/>
                <path d="M 8,96 L 520,96" fill="none" stroke="black"/>
                <path class="jump" d="M 392,88 C 398,88 398,72 392,72" fill="none" stroke="black"/>
                <g class="text">
                  <text x="16" y="36">0</text>
                  <text x="176" y="36">1</text>
                  <text x="336" y="36">2</text>
                  <text x="496" y="36">3</text>
                  <text x="16" y="52">0</text>
                  <text x="32" y="52">1</text>
                  <text x="48" y="52">2</text>
                  <text x="64" y="52">3</text>
                  <text x="80" y="52">4</text>
                  <text x="96" y="52">5</text>
                  <text x="112" y="52">6</text>
                  <text x="128" y="52">7</text>
                  <text x="144" y="52">8</text>
                  <text x="160" y="52">9</text>
                  <text x="176" y="52">0</text>
                  <text x="192" y="52">1</text>
                  <text x="208" y="52">2</text>
                  <text x="224" y="52">3</text>
                  <text x="240" y="52">4</text>
                  <text x="256" y="52">5</text>
                  <text x="272" y="52">6</text>
                  <text x="288" y="52">7</text>
                  <text x="304" y="52">8</text>
                  <text x="320" y="52">9</text>
                  <text x="336" y="52">0</text>
                  <text x="352" y="52">1</text>
                  <text x="368" y="52">2</text>
                  <text x="384" y="52">3</text>
                  <text x="400" y="52">4</text>
                  <text x="416" y="52">5</text>
                  <text x="432" y="52">6</text>
                  <text x="448" y="52">7</text>
                  <text x="464" y="52">8</text>
                  <text x="480" y="52">9</text>
                  <text x="496" y="52">0</text>
                  <text x="512" y="52">1</text>
                  <text x="44" y="84">Ctrl</text>
                  <text x="84" y="84">Type</text>
                  <text x="240" y="84">Control</text>
                  <text x="292" y="84">Data</text>
                  <text x="352" y="84">(variable</text>
                </g>
              </svg>
            </artwork>
            <artwork type="ascii-art" align="center"><![CDATA[
 0                   1                   2                   3
 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|  Ctrl Type    |         Control Data (variable)               |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
]]></artwork>
          </artset>
        </figure>
        <dl>
          <dt>Ctrl Type: 8 bits</dt>
          <dd>
            <t>Identifies the control message type.</t>
          </dd>
          <dt>Control Data: variable length</dt>
          <dd>
            <t>Type-specific data.  May be empty.</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">Protection Established</td>
              <td align="left">Signals that DTLS chunk protection has been enforced</td>
            </tr>
          </tbody>
        </table>
        <section anchor="protection-established">
          <name>Protection Established</name>
          <t>The Protection Established control message (Ctrl Type = 0x01) is sent
by the Responder to the Initiator after the Responder has installed
all keys and enforced DTLS chunk protection.  This message carries no
Control Data (the payload following the Ctrl Type byte is empty).</t>
          <t>Upon receiving this message, the Initiator enforces DTLS chunk
protection and informs the ULP that the association is protected.</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
(Initiator/client or Responder/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="RFC8446"/>.  The exporter context is constructed as
the concatenation of the following fields:</t>
        <table>
          <thead>
            <tr>
              <th align="left">Field</th>
              <th align="left">Length</th>
              <th align="left">Value</th>
            </tr>
          </thead>
          <tbody>
            <tr>
              <td align="left">Direction</td>
              <td align="left">1 byte</td>
              <td align="left">0x00 = Client, 0x01 = Server</td>
            </tr>
            <tr>
              <td align="left">Key role</td>
              <td align="left">1 byte</td>
              <td align="left">0x00 = primary/traffic, 0x01 = restart</td>
            </tr>
            <tr>
              <td align="left">Key type</td>
              <td align="left">1 byte</td>
              <td align="left">0x00 = Key, 0x01 = SN_KEY, 0x02 = IV</td>
            </tr>
            <tr>
              <td align="left">Initiator KM Param</td>
              <td align="left">variable</td>
              <td align="left">DTLS Key Management Parameter sent by the Initiator</td>
            </tr>
            <tr>
              <td align="left">Responder KM Param</td>
              <td align="left">variable</td>
              <td align="left">DTLS Key Management Parameter sent by the Responder</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 Initiator (TLS client) installs exports with Direction=Client as
its write keys and Direction=Server as its read keys.  The Responder
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 two 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 uses the next consecutive
epoch.  After an SCTP restart, the epoch resets to 3.</t>
        <t>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="400" width="584" viewBox="0 0 584 400" class="diagram" text-anchor="middle" font-family="monospace" font-size="13px" stroke-linecap="round">
                <path d="M 40,48 L 40,368" fill="none" stroke="black"/>
                <path d="M 80,160 L 80,304" fill="none" stroke="black"/>
                <path d="M 424,160 L 424,304" fill="none" stroke="black"/>
                <path d="M 472,48 L 472,128" fill="none" stroke="black"/>
                <path d="M 472,160 L 472,368" fill="none" stroke="black"/>
                <path d="M 504,336 L 504,368" fill="none" stroke="black"/>
                <path d="M 40,64 L 232,64" fill="none" stroke="black"/>
                <path d="M 288,64 L 464,64" fill="none" stroke="black"/>
                <path d="M 48,80 L 216,80" fill="none" stroke="black"/>
                <path d="M 304,80 L 472,80" fill="none" stroke="black"/>
                <path d="M 40,96 L 200,96" fill="none" stroke="black"/>
                <path d="M 312,96 L 464,96" fill="none" stroke="black"/>
                <path d="M 48,112 L 208,112" fill="none" stroke="black"/>
                <path d="M 312,112 L 472,112" fill="none" stroke="black"/>
                <path d="M 40,176 L 72,176" fill="none" stroke="black"/>
                <path d="M 432,176 L 472,176" fill="none" stroke="black"/>
                <path d="M 80,208 L 152,208" fill="none" stroke="black"/>
                <path d="M 352,208 L 416,208" fill="none" stroke="black"/>
                <path d="M 400,240 L 424,240" fill="none" stroke="black"/>
                <path d="M 80,256 L 96,256" fill="none" stroke="black"/>
                <path d="M 392,256 L 416,256" fill="none" stroke="black"/>
                <path d="M 88,288 L 104,288" fill="none" stroke="black"/>
                <path d="M 352,288 L 424,288" fill="none" stroke="black"/>
                <path d="M 40,336 L 136,336" fill="none" stroke="black"/>
                <path d="M 368,336 L 464,336" fill="none" stroke="black"/>
                <path d="M 48,352 L 136,352" fill="none" stroke="black"/>
                <path d="M 368,352 L 472,352" fill="none" stroke="black"/>
                <path d="M 504,352 L 576,352" fill="none" stroke="black"/>
                <path d="M 488,320 C 496.83064,320 504,327.16936 504,336" fill="none" stroke="black"/>
                <polygon class="arrowhead" points="472,336 460,330.4 460,341.6" fill="black" transform="rotate(0,464,336)"/>
                <polygon class="arrowhead" points="472,96 460,90.4 460,101.6" fill="black" transform="rotate(0,464,96)"/>
                <polygon class="arrowhead" points="472,64 460,58.4 460,69.6" fill="black" transform="rotate(0,464,64)"/>
                <polygon class="arrowhead" points="440,176 428,170.4 428,181.6" fill="black" transform="rotate(180,432,176)"/>
                <polygon class="arrowhead" points="424,256 412,250.4 412,261.6" fill="black" transform="rotate(0,416,256)"/>
                <polygon class="arrowhead" points="424,208 412,202.4 412,213.6" fill="black" transform="rotate(0,416,208)"/>
                <polygon class="arrowhead" points="96,288 84,282.4 84,293.6" fill="black" transform="rotate(180,88,288)"/>
                <polygon class="arrowhead" points="80,176 68,170.4 68,181.6" fill="black" transform="rotate(0,72,176)"/>
                <polygon class="arrowhead" points="56,352 44,346.4 44,357.6" fill="black" transform="rotate(180,48,352)"/>
                <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="472" y="36">Responder</text>
                  <text x="20" y="68">1.</text>
                  <text x="260" y="68">[INIT]</text>
                  <text x="260" y="84">[INIT-ACK]</text>
                  <text x="232" y="100">[COOKIE</text>
                  <text x="288" y="100">ECHO]</text>
                  <text x="492" y="100">2.</text>
                  <text x="20" y="116">3.</text>
                  <text x="240" y="116">[COOKIE</text>
                  <text x="292" y="116">ACK]</text>
                  <text x="72" y="148">Key</text>
                  <text x="120" y="148">Manager</text>
                  <text x="384" y="148">Key</text>
                  <text x="432" y="148">Manager</text>
                  <text x="480" y="148">|</text>
                  <text x="20" y="180">4.</text>
                  <text x="104" y="180">TLS</text>
                  <text x="144" y="180">START</text>
                  <text x="352" y="180">TLS</text>
                  <text x="392" y="180">START</text>
                  <text x="192" y="212">[DATA(TLS</text>
                  <text x="260" y="212">Client</text>
                  <text x="320" y="212">Hello)]</text>
                  <text x="452" y="212">5.</text>
                  <text x="452" y="228">6.</text>
                  <text x="60" y="244">8.</text>
                  <text x="128" y="244">&lt;-[DATA(TLS</text>
                  <text x="204" y="244">Server</text>
                  <text x="256" y="244">Hello</text>
                  <text x="296" y="244">...</text>
                  <text x="356" y="244">Finished)]</text>
                  <text x="452" y="244">7.</text>
                  <text x="60" y="260">9.</text>
                  <text x="136" y="260">[DATA(TLS</text>
                  <text x="224" y="260">Certificate</text>
                  <text x="288" y="260">...</text>
                  <text x="348" y="260">Finished)]</text>
                  <text x="448" y="260">10.</text>
                  <text x="448" y="276">11.</text>
                  <text x="56" y="292">13.</text>
                  <text x="172" y="292">[DATA(Protection</text>
                  <text x="296" y="292">Established)]</text>
                  <text x="448" y="292">12.</text>
                  <text x="16" y="340">14.</text>
                  <text x="160" y="340">[DTLS</text>
                  <text x="244" y="340">CHUNK(DATA(APP</text>
                  <text x="336" y="340">DATA))]</text>
                  <text x="528" y="340">APP</text>
                  <text x="564" y="340">DATA</text>
                  <text x="160" y="356">[DTLS</text>
                  <text x="244" y="356">CHUNK(DATA(APP</text>
                  <text x="336" y="356">DATA))]</text>
                  <text x="256" y="372">...</text>
                </g>
              </svg>
            </artwork>
            <artwork type="ascii-art" align="center"><![CDATA[
Initiator                                             Responder
    |                                                     |
 1. +------------------------[INIT]---------------------->|
    |<---------------------[INIT-ACK]---------------------+
    +--------------------[COOKIE ECHO]------------------->| 2.
 3. |<--------------------[COOKIE ACK]--------------------+
    |                                                     |
    |  Key Manager                            Key Manager  |
    |    |                                          |     |
 4. +--->| TLS START                      TLS START |<----+
    |    |                                          |     |
    |    +---------[DATA(TLS Client Hello)]-------->|  5. |
    |    |                                          |  6. |
    | 8. |<-[DATA(TLS Server Hello ... Finished)]---+  7. |
    | 9. +--[DATA(TLS Certificate ... Finished)]--->| 10. |
    |    |                                          | 11. |
    |13. |<--[DATA(Protection Established)]---------+ 12. |
    |    |                                          |     |
    |                                                     | -.
14. +------------[DTLS CHUNK(DATA(APP DATA))]------------>|   | APP DATA
    +<-----------[DTLS CHUNK(DATA(APP DATA))]-------------+   +---------
    |                         ...                         |   |

]]></artwork>
          </artset>
        </figure>
        <t>The diagram <xref target="initial-establishment-diagram"/> shows the case
where SCTP Initiator is also resulting as Key Manager Client.
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.</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 sends TLS ClientHello per
<xref target="tls-user-message"/>.</t>
          </li>
          <li>
            <t>The server key manager receives the TLS ClientHello.  If a
HelloRetryRequest is needed, an additional round-trip occurs
before proceeding.</t>
          </li>
          <li>
            <t>The server key manager uses the TLS Exporter to derive the client
key material for both the Primary and Restart DKCs and installs
it as the read (receive) key material, per <xref target="dtls-key-derivation"/>.</t>
          </li>
          <li>
            <t>The server key manager sends its TLS ServerHello through Finished
messages.</t>
          </li>
          <li>
            <t>The client key manager receives the TLS ServerHello message,
exports all Primary and Restart DKC keys, and installs the client
key material as its write (send) key and the server key material
as its read (receive) key.</t>
          </li>
          <li>
            <t>The client key manager sends its TLS
Certificate/CertificateVerify/Finished, protected by the DTLS
Chunk using the new Primary DKC.</t>
          </li>
          <li>
            <t>The server key manager decrypts the DTLS-chunk-protected TLS
messages, completes the handshake, exports the server key
material for both the Primary and Restart DKCs, and installs it
as its write (send) key.</t>
          </li>
          <li>
            <t>The server key manager 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>The server key manager sends a Protection Established control
message (<xref target="protection-established"/>) to the client key manager.</t>
          </li>
          <li>
            <t>The client key manager receives the Protection Established
control message, 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>Application traffic can begin.</t>
          </li>
        </ol>
        <t>If the TLS handshake fails, the SCTP association MUST be aborted.</t>
        <t>After key installation, the TLS connection SHOULD be closed promptly.</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 forward-secrecy rekeying.</t>
            </li>
            <li>
              <t>Approaching the cipher suite's AEAD usage limits.</t>
            </li>
          </ul>
        </section>
        <section anchor="rekey-procedure">
          <name>Procedure</name>
          <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="272" width="504" viewBox="0 0 504 272" class="diagram" text-anchor="middle" font-family="monospace" font-size="13px" stroke-linecap="round">
                  <path d="M 40,48 L 40,240" fill="none" stroke="black"/>
                  <path d="M 80,112 L 80,160" fill="none" stroke="black"/>
                  <path d="M 416,112 L 416,160" fill="none" stroke="black"/>
                  <path d="M 464,48 L 464,240" fill="none" stroke="black"/>
                  <path d="M 80,128 L 152,128" fill="none" stroke="black"/>
                  <path d="M 352,128 L 408,128" fill="none" stroke="black"/>
                  <path d="M 400,144 L 416,144" fill="none" stroke="black"/>
                  <path d="M 80,160 L 96,160" fill="none" stroke="black"/>
                  <path d="M 392,160 L 408,160" fill="none" stroke="black"/>
                  <polygon class="arrowhead" points="416,160 404,154.4 404,165.6" fill="black" transform="rotate(0,408,160)"/>
                  <polygon class="arrowhead" points="416,128 404,122.4 404,133.6" fill="black" transform="rotate(0,408,128)"/>
                  <g class="text">
                    <text x="40" y="36">Initiator</text>
                    <text x="464" y="36">Responder</text>
                    <text x="92" y="68">(traffic</text>
                    <text x="168" y="68">continues</text>
                    <text x="232" y="68">using</text>
                    <text x="280" y="68">epoch</text>
                    <text x="312" y="68">N</text>
                    <text x="340" y="68">DKC)</text>
                    <text x="72" y="100">Key</text>
                    <text x="120" y="100">Manager</text>
                    <text x="376" y="100">Key</text>
                    <text x="424" y="100">Manager</text>
                    <text x="60" y="132">1.</text>
                    <text x="192" y="132">[DATA(TLS</text>
                    <text x="260" y="132">Client</text>
                    <text x="320" y="132">Hello)]</text>
                    <text x="436" y="132">2.</text>
                    <text x="60" y="148">4.</text>
                    <text x="128" y="148">&lt;-[DATA(TLS</text>
                    <text x="204" y="148">Server</text>
                    <text x="256" y="148">Hello</text>
                    <text x="296" y="148">...</text>
                    <text x="356" y="148">Finished)]</text>
                    <text x="436" y="148">3.</text>
                    <text x="60" y="164">5.</text>
                    <text x="136" y="164">[DATA(TLS</text>
                    <text x="224" y="164">Certificate</text>
                    <text x="288" y="164">...</text>
                    <text x="348" y="164">Finished)]</text>
                    <text x="436" y="164">6.</text>
                    <text x="92" y="196">(traffic</text>
                    <text x="176" y="196">transitions</text>
                    <text x="236" y="196">to</text>
                    <text x="272" y="196">epoch</text>
                    <text x="312" y="196">N+1</text>
                    <text x="348" y="196">DKC)</text>
                    <text x="84" y="228">(after</text>
                    <text x="152" y="228">draining,</text>
                    <text x="220" y="228">remove</text>
                    <text x="272" y="228">epoch</text>
                    <text x="304" y="228">N</text>
                    <text x="332" y="228">DKC)</text>
                  </g>
                </svg>
              </artwork>
              <artwork type="ascii-art" align="center"><![CDATA[
Initiator                                            Responder
    |                                                    |
    |  (traffic continues using epoch N DKC)             |
    |                                                    |
    |  Key Manager                           Key Manager |
    |    |                                         |     |
    | 1. +---------[DATA(TLS Client Hello)]------->| 2.  |
    | 4. |<-[DATA(TLS Server Hello ... Finished)]--+ 3.  |
    | 5. +--[DATA(TLS Certificate ... Finished)]-->| 6.  |
    |                                                    |
    |  (traffic transitions to epoch N+1 DKC)            |
    |                                                    |
    |  (after draining, remove epoch N DKC)              |
    |                                                    |

]]></artwork>
            </artset>
          </figure>
          <t>The diagram <xref target="rekey-diagram"/> shows the case where SCTP Initiator is
also resulting as Key Manager Client.  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 TLS roles. The Key manager roles are only used to handle in
the case both sides initiate a rekey simultanously, see
<xref target="sim-rekeying"/>.</t>
          <t>Either endpoint may initiate rekeying.  The procedure is as follows:</t>
          <ol spacing="normal" type="1"><li>
              <t>The peer willing to rekey becomes the TLS client for this rekey
procedure.  It sends a TLS ClientHello in a key management
message. TLS messages are carried inside DTLS chunks (the
association is already protected).</t>
            </li>
            <li>
              <t>The other peer becomes the TLS server for this rekey procedure.
It receives and processes the ClientHello, exports the client key
material for both the Primary and Restart DKCs, and installs it
as its read (receive) key.</t>
            </li>
            <li>
              <t>The server sends its TLS ServerHello through Finished messages to
the client.</t>
            </li>
            <li>
              <t>The client receives the TLS ServerHello message, exports all
Primary and Restart DKC keys, and installs the client key
material as its write (send) key and the server key material as
its read (receive) key.</t>
            </li>
            <li>
              <t>The client sends its TLS Certificate/CertificateVerify/Finished
encrypted with the new keys and starts the drain timer to remove
the old (epoch N) DKC.  From now on the client uses new keys.</t>
            </li>
            <li>
              <t>The server receives and verifies the Finished message, exports
and installs the server key material for both the Primary and
Restart DKCs as its write (send) key, and starts the drain timer
to remove the old (epoch N) DKC.  From now on the server uses
new keys.</t>
            </li>
          </ol>
          <t>The new DKCs use epoch N+1 (where N is the current epoch).  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.  TLS Key Update MUST
NOT be used.</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>The 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 last rekeying message has been confirmed (e.g.,
through SCTP acknowledgment of the DATA chunk carrying the TLS
Finished), the old DKC MAY be removed after a short drain timer.
A value of 120 seconds (one Maximum Segment Lifetime) is
RECOMMENDED in this case.</t>
            </li>
            <li>
              <t>If delivery has not been confirmed, the drain timer MUST be set to
at least the SCTP association failure time (T_fail).  This ensures
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 final rekeying message has not been confirmed.</t>
        </section>
        <section anchor="sim-rekeying">
          <name>Simultaneous Rekey Resolution</name>
          <t>As either endpoint can initiate a TLS handshake at the same time,
either endpoint may receive a TLS ClientHello when it has already sent
its own.  In this case, the ClientHello from the Initiator (the
endpoint with the keymanager client role) SHALL be processed, and the
other SHALL be dropped.</t>
        </section>
        <section anchor="key-transition-state-machine">
          <name>Key Transition State Machine</name>
          <t>This specification allows up to 2 Primary DKCs to be active at the
same time.  The following state machine governs the transition:</t>
          <figure anchor="dtls-rekeying-state-diagram">
            <name>State Diagram for Rekeying</name>
            <artset>
              <artwork type="svg" align="center"><svg xmlns="http://www.w3.org/2000/svg" version="1.1" height="592" width="480" viewBox="0 0 480 592" class="diagram" text-anchor="middle" font-family="monospace" font-size="13px" stroke-linecap="round">
                  <path d="M 8,208 L 8,560" fill="none" stroke="black"/>
                  <path d="M 24,224 L 24,400" fill="none" stroke="black"/>
                  <path d="M 96,32 L 96,64" fill="none" stroke="black"/>
                  <path d="M 96,192 L 96,240" fill="none" stroke="black"/>
                  <path d="M 96,320 L 96,368" fill="none" stroke="black"/>
                  <path d="M 96,480 L 96,528" fill="none" stroke="black"/>
                  <path d="M 136,64 L 136,184" fill="none" stroke="black"/>
                  <path d="M 136,240 L 136,312" fill="none" stroke="black"/>
                  <path d="M 136,368 L 136,400" fill="none" stroke="black"/>
                  <path d="M 136,432 L 136,472" fill="none" stroke="black"/>
                  <path d="M 144,528 L 144,560" fill="none" stroke="black"/>
                  <path d="M 160,144 L 160,184" fill="none" stroke="black"/>
                  <path d="M 176,32 L 176,64" fill="none" stroke="black"/>
                  <path d="M 176,192 L 176,240" fill="none" stroke="black"/>
                  <path d="M 176,320 L 176,368" fill="none" stroke="black"/>
                  <path d="M 176,480 L 176,528" fill="none" stroke="black"/>
                  <path d="M 296,320 L 296,368" fill="none" stroke="black"/>
                  <path d="M 336,368 L 336,432" fill="none" stroke="black"/>
                  <path d="M 344,224 L 344,312" fill="none" stroke="black"/>
                  <path d="M 376,320 L 376,368" fill="none" stroke="black"/>
                  <path d="M 384,480 L 384,528" fill="none" stroke="black"/>
                  <path d="M 424,352 L 424,472" fill="none" stroke="black"/>
                  <path d="M 464,480 L 464,528" fill="none" stroke="black"/>
                  <path d="M 96,32 L 176,32" fill="none" stroke="black"/>
                  <path d="M 96,64 L 176,64" fill="none" stroke="black"/>
                  <path d="M 160,144 L 304,144" fill="none" stroke="black"/>
                  <path d="M 96,192 L 176,192" fill="none" stroke="black"/>
                  <path d="M 8,208 L 88,208" fill="none" stroke="black"/>
                  <path d="M 24,224 L 88,224" fill="none" stroke="black"/>
                  <path d="M 176,224 L 344,224" fill="none" stroke="black"/>
                  <path d="M 96,240 L 176,240" fill="none" stroke="black"/>
                  <path d="M 96,320 L 176,320" fill="none" stroke="black"/>
                  <path d="M 296,320 L 376,320" fill="none" stroke="black"/>
                  <path d="M 184,352 L 296,352" fill="none" stroke="black"/>
                  <path d="M 376,352 L 424,352" fill="none" stroke="black"/>
                  <path d="M 96,368 L 176,368" fill="none" stroke="black"/>
                  <path d="M 296,368 L 376,368" fill="none" stroke="black"/>
                  <path d="M 24,400 L 136,400" fill="none" stroke="black"/>
                  <path d="M 136,432 L 336,432" fill="none" stroke="black"/>
                  <path d="M 96,480 L 176,480" fill="none" stroke="black"/>
                  <path d="M 384,480 L 464,480" fill="none" stroke="black"/>
                  <path d="M 96,528 L 176,528" fill="none" stroke="black"/>
                  <path d="M 384,528 L 464,528" fill="none" stroke="black"/>
                  <path d="M 8,560 L 144,560" fill="none" stroke="black"/>
                  <polygon class="arrowhead" points="432,472 420,466.4 420,477.6" fill="black" transform="rotate(90,424,472)"/>
                  <polygon class="arrowhead" points="352,312 340,306.4 340,317.6" fill="black" transform="rotate(90,344,312)"/>
                  <polygon class="arrowhead" points="192,352 180,346.4 180,357.6" fill="black" transform="rotate(180,184,352)"/>
                  <polygon class="arrowhead" points="168,184 156,178.4 156,189.6" fill="black" transform="rotate(90,160,184)"/>
                  <polygon class="arrowhead" points="144,472 132,466.4 132,477.6" fill="black" transform="rotate(90,136,472)"/>
                  <polygon class="arrowhead" points="144,312 132,306.4 132,317.6" fill="black" transform="rotate(90,136,312)"/>
                  <polygon class="arrowhead" points="144,184 132,178.4 132,189.6" fill="black" transform="rotate(90,136,184)"/>
                  <polygon class="arrowhead" points="96,224 84,218.4 84,229.6" fill="black" transform="rotate(0,88,224)"/>
                  <polygon class="arrowhead" points="96,208 84,202.4 84,213.6" fill="black" transform="rotate(0,88,208)"/>
                  <g class="text">
                    <text x="132" y="52">INIT</text>
                    <text x="240" y="52">Association</text>
                    <text x="320" y="52">started</text>
                    <text x="204" y="68">No</text>
                    <text x="232" y="68">TLS</text>
                    <text x="264" y="68">H/S</text>
                    <text x="296" y="68">yet</text>
                    <text x="156" y="100">1.</text>
                    <text x="184" y="100">TLS</text>
                    <text x="232" y="100">initial</text>
                    <text x="280" y="100">H/S</text>
                    <text x="208" y="116">completed</text>
                    <text x="360" y="148">Association</text>
                    <text x="440" y="148">Restart</text>
                    <text x="136" y="212">YOUNG</text>
                    <text x="156" y="276">2.</text>
                    <text x="196" y="276">Client</text>
                    <text x="248" y="276">Hello</text>
                    <text x="364" y="276">3.</text>
                    <text x="400" y="276">Aging</text>
                    <text x="448" y="276">event</text>
                    <text x="188" y="292">from</text>
                    <text x="228" y="292">peer</text>
                    <text x="204" y="324">4.</text>
                    <text x="244" y="324">Client</text>
                    <text x="280" y="324">H</text>
                    <text x="404" y="324">5.</text>
                    <text x="432" y="324">TLS</text>
                    <text x="464" y="324">H/S</text>
                    <text x="132" y="340">REMOTE</text>
                    <text x="248" y="340">tie-break</text>
                    <text x="336" y="340">LOCAL</text>
                    <text x="440" y="340">Timeout</text>
                    <text x="128" y="356">OLD</text>
                    <text x="332" y="356">AGED</text>
                    <text x="44" y="388">7.</text>
                    <text x="80" y="388">Flush</text>
                    <text x="188" y="420">6.</text>
                    <text x="228" y="420">Server</text>
                    <text x="280" y="420">Hello</text>
                    <text x="136" y="500">LOCAL</text>
                    <text x="424" y="500">ABORT</text>
                    <text x="136" y="516">OLD</text>
                    <text x="44" y="548">8.</text>
                    <text x="80" y="548">Flush</text>
                  </g>
                </svg>
              </artwork>
              <artwork type="ascii-art" align="center"><![CDATA[
           +---------+
           |  INIT   |  Association started
           +----+----+  No TLS H/S yet
                |
                | 1. TLS initial H/S
                |    completed
                |
                |  +------------------ Association Restart
                |  |
                V  V
           +---------+
+--------->|  YOUNG  |
| +------->|         +--------------------+
| |        +----+----+                    |
| |             |                         |
| |             | 2. Client Hello         | 3. Aging event
| |             |    from peer            |
| |             V                         V
| |        +---------+  4. Client H +---------+  5. TLS H/S
| |        | REMOTE  |    tie-break |  LOCAL  |    Timeout
| |        |  OLD    |<-------------+  AGED   +-----+
| |        +----+----+              +----+----+     |
| | 7. Flush    |                        |          |
| +-------------+                        |          |
|                     6. Server Hello    |          |
|               +------------------------+          |
|               |                                   |
|               V                                   V
|          +---------+                         +---------+
|          |  LOCAL  |                         |  ABORT  |
|          |   OLD   |                         |         |
|          +-----+---+                         +---------+
|   8. Flush     |
+----------------+

]]></artwork>
            </artset>
          </figure>
          <dl>
            <dt>INIT:</dt>
            <dd>
              <t>Initial state.  Only event 1 (TLS handshake completed) transitions
to YOUNG.</t>
            </dd>
            <dt>YOUNG:</dt>
            <dd>
              <t>Only the Current DKC is populated.  Event 2 (peer ClientHello)
transitions to REMOTE OLD; event 3 (aging) transitions to LOCAL
AGED.</t>
            </dd>
            <dt>LOCAL AGED:</dt>
            <dd>
              <t>A supervision timer runs.  Event 5 (timeout) causes the key manager to check
for local aging expire, in that case ABORT otherwise return to YOUNG.  Event
4 (peer ClientHello with tie-break yielding server role) transitions
to REMOTE OLD.  Event 6 (ServerHello received) transitions to LOCAL
OLD.</t>
            </dd>
            <dt>REMOTE OLD:</dt>
            <dd>
              <t>Both Old and Current DKCs exist.  Old DKC is used for sending until
the first packet encrypted with Current DKC is received from the
peer.  Event 7 (flush timer expires) transitions to YOUNG.</t>
            </dd>
            <dt>LOCAL OLD:</dt>
            <dd>
              <t>Both Old and Current DKCs exist.  Current DKC is used for sending.
Event 8 (flush timer expires) transitions to YOUNG.</t>
            </dd>
          </dl>
          <t>In REMOTE OLD and LOCAL OLD, if a new ClientHello or Aging event
arrives, the flushing timer is cleared and behavior is as in YOUNG.</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="584" viewBox="0 0 584 352" class="diagram" text-anchor="middle" font-family="monospace" font-size="13px" stroke-linecap="round">
                  <path d="M 40,48 L 40,320" fill="none" stroke="black"/>
                  <path d="M 464,48 L 464,320" fill="none" stroke="black"/>
                  <path d="M 496,96 L 496,112" fill="none" stroke="black"/>
                  <path d="M 496,160 L 496,176" fill="none" stroke="black"/>
                  <path d="M 40,96 L 240,96" fill="none" stroke="black"/>
                  <path d="M 280,96 L 456,96" fill="none" stroke="black"/>
                  <path d="M 48,112 L 224,112" fill="none" stroke="black"/>
                  <path d="M 296,112 L 464,112" fill="none" stroke="black"/>
                  <path d="M 496,112 L 552,112" fill="none" stroke="black"/>
                  <path d="M 40,160 L 144,160" fill="none" stroke="black"/>
                  <path d="M 352,160 L 456,160" fill="none" stroke="black"/>
                  <path d="M 48,176 L 144,176" fill="none" stroke="black"/>
                  <path d="M 344,176 L 464,176" fill="none" stroke="black"/>
                  <path d="M 496,176 L 576,176" fill="none" stroke="black"/>
                  <path d="M 48,256 L 128,256" fill="none" stroke="black"/>
                  <path d="M 376,256 L 464,256" fill="none" stroke="black"/>
                  <path d="M 40,288 L 136,288" fill="none" stroke="black"/>
                  <path d="M 368,288 L 456,288" fill="none" stroke="black"/>
                  <path d="M 48,304 L 136,304" fill="none" stroke="black"/>
                  <path d="M 368,304 L 464,304" fill="none" stroke="black"/>
                  <path d="M 480,80 C 488.83064,80 496,87.16936 496,96" fill="none" stroke="black"/>
                  <path d="M 480,128 C 488.83064,128 496,120.83064 496,112" fill="none" stroke="black"/>
                  <path d="M 480,144 C 488.83064,144 496,151.16936 496,160" fill="none" stroke="black"/>
                  <path d="M 480,192 C 488.83064,192 496,184.83064 496,176" fill="none" stroke="black"/>
                  <polygon class="arrowhead" points="464,288 452,282.4 452,293.6" fill="black" transform="rotate(0,456,288)"/>
                  <polygon class="arrowhead" points="464,160 452,154.4 452,165.6" fill="black" transform="rotate(0,456,160)"/>
                  <polygon class="arrowhead" points="464,96 452,90.4 452,101.6" fill="black" transform="rotate(0,456,96)"/>
                  <polygon class="arrowhead" points="56,304 44,298.4 44,309.6" fill="black" transform="rotate(180,48,304)"/>
                  <polygon class="arrowhead" points="56,256 44,250.4 44,261.6" fill="black" transform="rotate(180,48,256)"/>
                  <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="464" y="36">Responder</text>
                    <text x="20" y="68">1.</text>
                    <text x="92" y="68">(install</text>
                    <text x="160" y="68">restart</text>
                    <text x="212" y="68">keys</text>
                    <text x="252" y="68">from</text>
                    <text x="308" y="68">storage)</text>
                    <text x="20" y="100">2.</text>
                    <text x="260" y="100">INIT</text>
                    <text x="528" y="100">Plain</text>
                    <text x="20" y="116">3.</text>
                    <text x="260" y="116">INIT-ACK</text>
                    <text x="20" y="164">4.</text>
                    <text x="168" y="164">[DTLS</text>
                    <text x="244" y="164">CHUNK(COOKIE</text>
                    <text x="324" y="164">ECHO)]</text>
                    <text x="544" y="164">Protected</text>
                    <text x="20" y="180">5.</text>
                    <text x="168" y="180">[DTLS</text>
                    <text x="244" y="180">CHUNK(COOKIE</text>
                    <text x="320" y="180">ACK)]</text>
                    <text x="20" y="196">6.</text>
                    <text x="20" y="212">7.</text>
                    <text x="76" y="228">(TLS</text>
                    <text x="136" y="228">handshake</text>
                    <text x="192" y="228">for</text>
                    <text x="224" y="228">new</text>
                    <text x="264" y="228">keys,</text>
                    <text x="312" y="228">steps</text>
                    <text x="360" y="228">8-13)</text>
                    <text x="16" y="260">15.</text>
                    <text x="196" y="260">[DATA(Protection</text>
                    <text x="320" y="260">Established)]</text>
                    <text x="488" y="260">14.</text>
                    <text x="16" y="276">16.</text>
                    <text x="16" y="292">17.</text>
                    <text x="160" y="292">[DTLS</text>
                    <text x="244" y="292">CHUNK(DATA(APP</text>
                    <text x="336" y="292">DATA))]</text>
                    <text x="504" y="292">APP</text>
                    <text x="540" y="292">DATA</text>
                    <text x="160" y="308">[DTLS</text>
                    <text x="244" y="308">CHUNK(DATA(APP</text>
                    <text x="336" y="308">DATA))]</text>
                  </g>
                </svg>
              </artwork>
              <artwork type="ascii-art" align="center"><![CDATA[
Initiator                                            Responder
    |                                                    |
 1. |  (install restart keys from storage)               |
    |                                                    | -.
 2. +------------------------(INIT)--------------------->|   | Plain
 3. |<---------------------(INIT-ACK)--------------------+   +-------
    |                                                    | -'
    |                                                    | -.
 4. +-------------[DTLS CHUNK(COOKIE ECHO)]------------->|   | Protected
 5. |<------------[DTLS CHUNK(COOKIE ACK)]---------------+   +----------
 6. |                                                    | -'
 7. |                                                    |
    |  (TLS handshake for new keys, steps 8-13)          |
    |                                                    |
15. |<----------[DATA(Protection Established)]-----------+ 14.
16. |                                                    |
17. +------------[DTLS CHUNK(DATA(APP DATA))]----------->|   APP DATA
    +<-----------[DTLS CHUNK(DATA(APP DATA))]------------+
    |                                                    |

]]></artwork>
            </artset>
          </figure>
          <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).</t>
            </li>
            <li>
              <t>The Responder replies INIT-ACK in plain text per <xref target="RFC9260"/>.
Both include the DTLS Key Management Parameter with the same
method list 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.</t>
            </li>
            <li>
              <t>Both endpoints have a new established association.  Each endpoint
immediately calls Require Protected SCTP Packets to enforce DTLS
chunk protection (using the Restart DKC), then 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 that the assigned role is as expected.</t>
            </li>
            <li>
              <t>The ULP MAY be informed that the association is protected at this
point.  ULP traffic MAY begin immediately using the Restart DKC.</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 sends TLS ClientHello per
<xref target="tls-user-message"/>, protected by the Restart DKC.</t>
            </li>
            <li>
              <t>The server key manager receives the TLS ClientHello, exports the
client key material for the Primary DKC, and installs it as its
read (receive) key.</t>
            </li>
            <li>
              <t>The server key manager sends its TLS ServerHello through Finished
messages.</t>
            </li>
            <li>
              <t>The client key manager receives the TLS ServerHello message,
exports all Primary DKC keys, and installs the client key
material as its write (send) key and the server key material as
its read (receive) key for the Primary DKC.</t>
            </li>
            <li>
              <t>The client key manager sends its TLS
Certificate/CertificateVerify/Finished, protected by the DTLS
Chunk using the new Primary DKC.</t>
            </li>
            <li>
              <t>The server key manager decrypts the DTLS-chunk-protected TLS
messages, completes the handshake, exports the server key
material for the Primary DKC, and installs it as its write
(send) key.</t>
            </li>
            <li>
              <t>The server key manager sends a Protection Established control
message (<xref target="protection-established"/>) to the client key manager.
The server endpoint export and install the new Restart DKC key
material (both send and receive directions), remove the old
Restart DKC, and commit the new Restart DKC to persistent secure
storage.</t>
            </li>
            <li>
              <t>The client key manager receives the Protection Established
control message.</t>
            </li>
            <li>
              <t>The client key manager export and install the new Restart DKC key
material (both send and receive directions), remove the old
Restart DKC, and commit the new Restart DKC to persistent secure
storage.</t>
            </li>
            <li>
              <t>Application traffic uses to the new Primary DKC.</t>
            </li>
          </ol>
          <t>After restart, the new Primary DKC MUST use epoch 3 (the epoch
resets).</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 DTLS Key Management Messages PPID
(4242).</t>
      <t>If a TLS handshake fails during initial establishment, 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 policy 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="RFC8446"/>, <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 TLS for 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, TLS for 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>
      </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 for DTLS in SCTP</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>
  </middle>
  <back>
    <references anchor="sec-combined-references">
      <name>References</name>
      <references anchor="sec-normative-references">
        <name>Normative References</name>
        <reference anchor="RFC8446" target="https://www.rfc-editor.org/info/rfc8446" xml:base="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.8446.xml">
          <front>
            <title>The Transport Layer Security (TLS) Protocol Version 1.3</title>
            <author fullname="E. Rescorla" initials="E." surname="Rescorla"/>
            <date month="August" year="2018"/>
            <abstract>
              <t>This document specifies version 1.3 of the Transport Layer Security (TLS) protocol. TLS allows client/server applications to communicate over the Internet in a way that is designed to prevent eavesdropping, tampering, and message forgery.</t>
              <t>This document updates RFCs 5705 and 6066, and obsoletes RFCs 5077, 5246, and 6961. This document also specifies new requirements for TLS 1.2 implementations.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8446"/>
          <seriesInfo name="DOI" value="10.17487/RFC8446"/>
        </reference>
        <reference anchor="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="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="I-D.ietf-tsvwg-sctp-dtls-chunk" target="https://datatracker.ietf.org/doc/html/draft-ietf-tsvwg-sctp-dtls-chunk-03" 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="18" month="June" 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-03"/>
        </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="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="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://www.ssi.gouv.fr/uploads/2015/09/NT_IPsec_EN.pdf&gt;">
          <front>
            <title>Recommendations for securing networks with IPsec</title>
            <author initials="" surname="Agence nationale de la sécurité des systèmes d'information">
              <organization/>
            </author>
            <date year="2015" month="August"/>
          </front>
          <seriesInfo name="ANSSI Technical Report DAT-NT-003" value=""/>
        </reference>
        <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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
intHEmglui0u5WvY6J70sfTrXJv6EowG9IFmkmNHTWbReMyxRskQFOpEUE1W
UgIXGx3ZAt1vvl5ABFkbB/DLDuJnxI28H7ATBYwhqpBLdRU61NKKQtXTpAS1
Lb7kMlmWfSFvvIiS1GX9uQP6Njo3aRme+JSeYKqBxjOdNk40vXbhfB/zFZkb
JvJSPaPWh//4/uR0dHj6Ccb59Ork9BNi4NPR8SfyU5Ha4FQ+zhy2ecAudbdH
B0s4JJrXGI9xnnaOdwmdLbGQzs3NEjcD85VTeVWjRuDAz2iPM8/qTieZ0yRj
x3MU1xHAUVZAQpVM3dMLZDqIiOG2bY7mfV7hmraDhGT9x38HKwQnKRX8fEIz
oAuUkOJPYodEETGerlVzSplOfOEO8J+YQSGrRAv8usDAqiMI30wYF/mAMezE
edbWOHanVZF7mDOl0YdqPc2ssiPKBLljv29c21zaQxbEJMOQHxMimvRHvCKn
nnyO+0nw6Ivwi3IeA8LLi3naqIdzewH2CkXUqaZiTwdJx+J9DlKKXRoxtgyz
AWoptG1Js2SAJEXJzcOkAq63WyzrJeQ+xvASkr5i78cTm00eVOGFEDu/KKVO
IJ8x8RxTRbm/VYRcaF1AZX2Dp8AU4Yr8KE8E7nChLuyJAffIOhAifW3StG+l
NjSvQNWRLBOqusPQEaccBX59xqwgtavLnJkg6ivKu9Ep4ENOjBIODacZcX5s
I9PeVhtScj6n5rMy+96nyZIpYrNiiZhaM3Ooro+e92s53q1Zsj4Jf5UN2Prn
j0vd5H/I363Sw8Fq3+hvR8dHo//Y/u4vnNFHCXErevb39t+09+bUxtZ5fwsy
Ydo6/+VWbw8UUnL71L/57JnWuTe/DV3c12sQd+5Zrdmtn/gBs9/aiXd4n2D5
yIjORnuno/Ye/jUjaPPb5rW//Wb9htl5JB6E7b+Gw5t3HbYx3/bp4OvX+8z3
/YF22U8oAoQm1IPBAHTtjNggzb6pQct3fV8QwgJgg1yBpa4A83Dr62EeDl3f
oVAmT9zum/C4ApiH29+AK13bowf/3er+QA13GizgN86pef3h+E2HVrH3nlMy
u93akaLE6ltt3/KZ/vErBqKIkQfhngXh5t2Fklu15IxsZcb9ccLlIeKaauXk
d4Vf0GyWIW5u7pziyxeqyRM/ZVQadY3VeSxEPftHZ3YKYow1bIojlzUmwgdu
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
+bhrXQWzy+ixaLRI/H/aQrM0kJIAAA==

-->

</rfc>
