<?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.21 (Ruby 3.0.2) -->
<?rfc rfcedstyle="yes"?>
<?rfc tocindent="yes"?>
<?rfc strict="yes"?>
<?rfc comments="yes"?>
<?rfc inline="yes"?>
<?rfc text-list-symbols="o-*+"?>
<?rfc compact="yes"?>
<?rfc subcompact="yes"?>
<?rfc consensus="no"?>
<rfc xmlns:xi="http://www.w3.org/2001/XInclude" ipr="trust200902" docName="draft-ietf-uta-tls13-iot-profile-12" category="std" consensus="true" submissionType="IETF" updates="7925" tocInclude="true" sortRefs="true" symRefs="true" version="3">
  <!-- xml2rfc v2v3 conversion 3.25.0 -->
  <front>
    <title abbrev="TLS/DTLS 1.3 IoT Profiles">TLS/DTLS 1.3 Profiles for the Internet of Things</title>
    <seriesInfo name="Internet-Draft" value="draft-ietf-uta-tls13-iot-profile-12"/>
    <author initials="H." surname="Tschofenig" fullname="Hannes Tschofenig">
      <organization abbrev="H-BRS">University of Applied Sciences Bonn-Rhein-Sieg</organization>
      <address>
        <postal>
          <country>Germany</country>
        </postal>
        <email>Hannes.Tschofenig@gmx.net</email>
      </address>
    </author>
    <author initials="T." surname="Fossati" fullname="Thomas Fossati">
      <organization>Linaro</organization>
      <address>
        <email>Thomas.Fossati@linaro.com</email>
      </address>
    </author>
    <author initials="M." surname="Richardson" fullname="Michael Richardson">
      <organization>Sandelman Software Works</organization>
      <address>
        <email>mcr+ietf@sandelman.ca</email>
      </address>
    </author>
    <date year="2025" month="January" day="20"/>
    <area>Security</area>
    <workgroup>UTA</workgroup>
    <keyword>Internet-Draft</keyword>
    <abstract>
      <?line 111?>

<t>This document is a companion to RFC 7925 and defines TLS/DTLS 1.3 profiles for
Internet of Things devices.  It also updates RFC 7925 with regards to the X.509
certificate profile and ciphersuite requirements.</t>
    </abstract>
  </front>
  <middle>
    <?line 117?>

<section anchor="introduction">
      <name>Introduction</name>
      <t>In the rapidly evolving Internet of Things (IoT) ecosystem, securing device-to-device communication is a critical requirement. The Transport Layer Security (TLS) and Datagram Transport Layer Security (DTLS) protocols have been foundational for ensuring encryption, integrity, and authenticity in network communications. However, the inherent constraints of IoT devices, such as limited processing capacity, memory, and energy, render conventional, off-the-shelf TLS/DTLS implementations suboptimal for many IoT use cases. This document, TLS/DTLS 1.3 Profiles for the Internet of Things (IoT), addresses these limitations by specifying profiles of TLS 1.3 and DTLS 1.3, optimized for the operational constraints of resource-constrained IoT systems.</t>
      <t>These profiles aim to balance strong security with the hardware and software limitations of IoT devices. TLS/DTLS 1.3 introduces numerous enhancements over previous versions, including reduced handshake overhead, more efficient encryption schemes, and mechanisms to thwart replay and downgrade attacks. However, the default configurations may still present excessive computational and memory demands for constrained devices with limited CPU, RAM, and power resources. The document mitigates these challenges by defining lightweight protocol configurations while maintaining the essential security guarantees of TLS/DTLS. This specification also updates <xref target="RFC7925"/> with regards to the X.509 certificate profile (<xref target="certificate_profile"/>) and ciphersuites requirements (<xref target="ciphersuites"/>).</t>
      <t>Key adaptations in the IoT-specific profiles include streamlining the handshake protocol, minimizing cryptographic operation complexity, and reducing the reliance on resource-heavy certificate chains. For example, where mutual authentication is needed, the profiles advocate the use of pre-shared keys (PSKs) over a full public key infrastructure (PKI) to mitigate the overhead associated with certificate management. Moreover, the profiles address session resumption techniques and the handling of stateful versus stateless session management, which are pivotal for maintaining resource-efficient, persistent connections in IoT deployments.</t>
      <t>TLS 1.3 has been re-designed and several previously defined extensions are not
applicable to the new version of TLS/DTLS anymore. The following features changed
with the transition from TLS 1.2 to 1.3:</t>
      <ul spacing="compact">
        <li>
          <t>TLS 1.3 introduced the concept of post-handshake authentication messages, which
partially replaced the need for the re-negotiation feature <xref target="RFC5746"/> available
in earlier TLS versions. However, rekeying defined in <xref section="4.6.3" sectionFormat="of" target="TLS13"/>
does not provide forward secrecy and post-handshake authentication defined in
<xref section="4.6.2" sectionFormat="of" target="TLS13"/> only offers client-to-server authentication.
The "Exported Authenticator" specification, see <xref target="RFC9261"/>, recently added support for mutual,
post-handshake authentication but
requires the Certificate, CertificateVerify and the Finished messages to be exchanged by the application layer protocol, as it is exercised for HTTP/2 and HTTP/3 in <xref target="I-D.ietf-httpbis-secondary-server-certs"/>.</t>
        </li>
        <li>
          <t>Rekeying of the application traffic secret does not lead to an update of the
exporter secret (see <xref section="7.5" sectionFormat="of" target="TLS13"/>) since the derived export secret is
based on the exporter_master_secret and not on the application traffic secret.</t>
        </li>
        <li>
          <t>Flight #4, which was used by EAP-TLS 1.2 <xref target="RFC5216"/>, does not exist in TLS 1.3.
As a consequence, EAP-TLS 1.3 <xref target="RFC9190"/> introduced a dummy message.</t>
        </li>
        <li>
          <t><xref target="RFC4279"/> introduced PSK-based authentication to TLS, a feature re-designed
in TLS 1.3. The "PSK identity hint" defined in <xref target="RFC4279"/>, which is used by the
server to help the client in selecting which PSK identity to use, is, however, not
available anymore in TLS 1.3.</t>
        </li>
        <li>
          <t>Finally, ciphersuites were depreciated and the RSA-based key transport is not yet
supported in TLS 1.3.</t>
        </li>
      </ul>
      <t>The profiles in this specification are designed to be adaptable to the broad spectrum of IoT applications, from low-power consumer devices to large-scale industrial deployments. It provides guidelines for implementing TLS/DTLS 1.3 in diverse networking contexts, including reliable, connection-oriented transport via TCP for TLS, and lightweight, connectionless communication via UDP for DTLS. In particular, DTLS is emphasized for scenarios where low-latency communication is paramount, such as multi-hop mesh networks and low-power wide-area networks, where the amount of data exchanged needs to be minimized.</t>
      <t>In conclusion, this document offers comprehensive guidance for deploying secure communication in resource-constrained IoT environments. It outlines best practices for configuring TLS/DTLS 1.3 to meet the unique needs of IoT devices, ensuring robust security without overwhelming their limited processing, memory, and power resources. The document plays a vital role in facilitating secure, efficient IoT deployments, supporting the broad adoption of secure communication standards.</t>
      <section anchor="conventions-and-terminology">
        <name>Conventions and Terminology</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>This document reuses the terms "SHOULD+", "SHOULD-" and "MUST-" from <xref target="RFC8221"/>.</t>
      </section>
    </section>
    <section anchor="credential-types">
      <name>Credential Types</name>
      <t>In accordance with the recommendations in <xref target="RFC7925"/>, a compliant
implementation MUST implement TLS_AES_128_CCM_8_SHA256. It SHOULD implement
TLS_CHACHA20_POLY1305_SHA256.</t>
      <t>Pre-shared key based authentication is integrated into the main TLS/DTLS 1.3
specification and has been harmonized with session resumption.</t>
      <t>A compliant implementation supporting authentication based on certificates and
raw public keys MUST support digital signatures with ecdsa_secp256r1_sha256. A
compliant implementation MUST support the key exchange with secp256r1 (NIST
P-256) and SHOULD support key exchange with X25519.</t>
      <t>A plain PSK-based TLS/DTLS client or server MUST implement the following
extensions:</t>
      <ul spacing="compact">
        <li>
          <t>Supported Versions,</t>
        </li>
        <li>
          <t>Cookie,</t>
        </li>
        <li>
          <t>Server Name Indication (SNI),</t>
        </li>
        <li>
          <t>Pre-Shared Key,</t>
        </li>
        <li>
          <t>PSK Key Exchange Modes, and</t>
        </li>
        <li>
          <t>Application-Layer Protocol Negotiation (ALPN).</t>
        </li>
      </ul>
      <t>For use of external pre-shared keys <xref target="RFC9258"/> makes the following
recommendation:</t>
      <ul empty="true">
        <li>
          <t>Applications SHOULD provision separate PSKs for (D)TLS 1.3 and prior versions.</t>
        </li>
      </ul>
      <t>Where possible, the importer interface defined in <xref target="RFC9258"/> MUST be used
for external PSKs. This ensures that external PSKs used in (D)TLS 1.3
are bound to a specific key derivation function (KDF) and hash function.</t>
      <t>The SNI extension is discussed in this document and the justification
for implementing and using the ALPN extension can be found in <xref target="RFC9325"/>.</t>
      <t>For TLS/DTLS clients and servers implementing raw public keys and/or
certificates the guidance for mandatory-to-implement extensions described in
Section 9.2 of <xref target="RFC8446"/> MUST be followed.</t>
    </section>
    <section anchor="error-handling">
      <name>Error Handling</name>
      <t>TLS 1.3 simplified the Alert protocol but the underlying challenge in an
embedded context remains unchanged, namely what should an IoT device do when it
encounters an error situation. The classical approach used in a desktop
environment where the user is prompted is often not applicable with unattended
devices. Hence, it is more important for a developer to find out from which
error cases a device can recover from.</t>
    </section>
    <section anchor="session-resumption">
      <name>Session Resumption</name>
      <t>TLS 1.3 has built-in support for session resumption by utilizing PSK-based
credentials established in an earlier exchange.</t>
    </section>
    <section anchor="compression">
      <name> Compression</name>
      <t>TLS 1.3 does not have support for compression of application data traffic, as offered
by previous versions of TLS. Applications are therefore responsible for transmitting
payloads that are either compressed or use a more efficient encoding otherwise.</t>
      <t>With regards to the handshake itself, various strategies have
been applied to reduce the size of the exchanged payloads. TLS and DTLS 1.3 use less
overhead, depending on the type of key confirmations, when compared to previous versions of the
protocol. Additionally, the work on Compact TLS (cTLS) <xref target="I-D.ietf-tls-ctls"/> has taken compression of the handshake
a step further by utilizing out-of-band knowledge between the communication parties to reduce
the amount of data to be transmitted at each individual handshake, among applying other techniques.</t>
    </section>
    <section anchor="forward-secrecy">
      <name> Forward Secrecy</name>
      <t>RFC 8446 has removed Static RSA and Static Diffie-Hellman cipher suites, therefore all public-key-based key exchange mechanisms available in TLS 1.3 provide forward secrecy.</t>
      <t>Pre-shared keys (PSKs) can be used with (EC)DHE key exchange to provide forward secrecy or can be used alone, at the cost of losing forward secrecy for the application data.</t>
    </section>
    <section anchor="authentication-and-integrity-only-cipher-suites">
      <name>Authentication and Integrity-only Cipher Suites</name>
      <t>For a few, very specific Industrial IoT use cases <xref target="RFC9150"/> defines two cipher suites that provide data authenticity, but not data confidentiality.
Please review the security and privacy considerations about their use detailed in <xref section="9" sectionFormat="of" target="RFC9150"/>.</t>
    </section>
    <section anchor="keep-alive">
      <name>Keep-Alive</name>
      <t>The discussion in Section 10 of <xref target="RFC7925"/> is applicable.</t>
    </section>
    <section anchor="timers-and-acks">
      <name>Timers and ACKs</name>
      <t>Compared to DTLS 1.2 timeout-based whole flight retransmission, DTLS 1.3 ACKs sensibly decrease the risk of congestion collapse which was the basis for the very conservative recommendations given in <xref section="11" sectionFormat="of" target="RFC7925"/>.</t>
      <t>In general, the recommendations in <xref section="7.3" sectionFormat="of" target="DTLS13"/> regarding ACKs apply.
In particular, "[w]hen DTLS 1.3 is used in deployments with lossy networks, such as low-power, long-range radio networks as well as low-power mesh networks, the use of ACKs is recommended" to signal any sign of disruption or lack of progress.
This allows for selective or early retransmission, which leads to more efficient use of bandwidth and memory resources.</t>
      <t>Due to the vast range of network technologies used in IoT deployments, from wired LAN to GSM-SMS, it's not possible to provide a universal recommendation for an initial timeout.
Therefore, it is RECOMMENDED that DTLS 1.3 implementations allow developers to explicitly set the initial timer value.
Developers SHOULD set the initial timeout to be twice the expected round-trip time (RTT), but no less than 1000ms.
For specific application/network combinations, a sub-second initial timeout MAY be set.
In cases where no RTT estimates are available, a 1000ms initial timeout is suitable for the general Internet.</t>
      <t>For RRC, the recommendations in <xref section="7.5" sectionFormat="of" target="I-D.ietf-tls-dtls-rrc"/> apply.
Just like the handshake initial timers, it is RECOMMENDED that DTLS 1.2 and 1.3 implementations offer an option for their developers to explicitly set the RRC timer.</t>
    </section>
    <section anchor="random-number-generation">
      <name> Random Number Generation</name>
      <t>The discussion in Section 12 of <xref target="RFC7925"/> is applicable with one exception:
the ClientHello and the ServerHello messages in TLS 1.3 do not contain
gmt_unix_time component anymore.</t>
    </section>
    <section anchor="server-name-indication">
      <name>Server Name Indication</name>
      <t>This specification mandates the implementation of the Server Name Indication (SNI)
extension. Where privacy requirements require it, the ECH (Encrypted Client Hello)
extension <xref target="I-D.ietf-tls-esni"/> prevents an on-path attacker to determine the domain
name the client is trying to connect to.</t>
      <t>Since the Encrypted Client Hello extension requires use of Hybrid Public Key
Encryption (HPKE) <xref target="I-D.irtf-cfrg-hpke"/> and additional protocols require
further protocol exchanges and cryptographic operations, there is a certain
overhead associated with this privacy feature.</t>
      <t>Note that in industrial IoT deployments the use of ECH may not be an option because
network administrators inspect DNS traffic generated by IoT devices in order to
detect malicious behaviour.</t>
      <t>Besides, to avoid leaking DNS lookups from network inspection altogether further
protocols are needed, including DoH <xref target="RFC8484"/> and DPRIVE <xref target="RFC7858"/> <xref target="RFC8094"/>.
For use of such techniques in managed networks, the reader is advised to keep up to
date with the protocols defined by the Adaptive DNS Discovery (add) working group <xref target="ADD"/>.</t>
    </section>
    <section anchor="maximum-fragment-length-negotiation">
      <name> Maximum Fragment Length Negotiation</name>
      <t>The Maximum Fragment Length Negotiation (MFL) extension has been superseded by
the Record Size Limit (RSL) extension <xref target="RFC8449"/>. Implementations in
compliance with this specification MUST implement the RSL extension and SHOULD
use it to indicate their RAM limitations.</t>
    </section>
    <section anchor="crypto-agility">
      <name>Crypto Agility</name>
      <t>The recommendations in Section 19 of <xref target="RFC7925"/> are applicable.</t>
    </section>
    <section anchor="key-length-recommendations">
      <name>Key Length Recommendations</name>
      <t>The recommendations in Section 20 of <xref target="RFC7925"/> are applicable.</t>
    </section>
    <section anchor="rtt-data">
      <name>0-RTT Data</name>
      <t><xref section="E.5" sectionFormat="of" target="TLS13"/> establishes that:</t>
      <ul empty="true">
        <li>
          <t>Application protocols MUST NOT use 0-RTT data without a profile that
defines its use.  That profile needs to identify which messages or
interactions are safe to use with 0-RTT and how to handle the
situation when the server rejects 0-RTT and falls back to 1-RTT.</t>
        </li>
      </ul>
      <t>At the time of writing, no such profile has been defined for CoAP <xref target="CoAP"/>.
Therefore, 0-RTT MUST NOT be used by CoAP applications.</t>
    </section>
    <section anchor="certificate_profile">
      <name>Certificate Profile</name>
      <t>This section contains updates and clarifications to the certificate profile
defined in <xref target="RFC7925"/>. The content of Table 1 of <xref target="RFC7925"/> has been
split by certificate "type" in order to clarify exactly what requirements and
recommendations apply to which entity in the PKI hierarchy.</t>
      <t>The content is also better aligned with the IEEE 802.1AR <xref target="_8021AR"/>
specification, which introduces the terms Initial Device Identifier
(IDevID) and Locally Significant Device Identifiers (LDevIDs).
IDevIDs and LDevIDs are Device Identifier (DevID) and a DevID consists of</t>
      <ul spacing="compact">
        <li>
          <t>a private key,</t>
        </li>
        <li>
          <t>a certificate (containing the public key and the identifier certified by
the certificate's issuer), and</t>
        </li>
        <li>
          <t>a certificate chain up to a trust anchor. The trust anchor is is usually
the root certificate).</t>
        </li>
      </ul>
      <t>The IDevID is typically provisioned by a manufacturer and signed by the
manufacturer CA. It is then used to obtain operational certificates,
the LDevIDs, from the operator or owner of the device. Some protocols
also introduce an additional hierarchy with application instance
certificates, which are obtained for use with specific applications.</t>
      <t>IDevIDs are primarily used with device onboarding or bootstrapping protocols,
such as the Bootstrapping Remote Secure Key Infrastructure (BRSKI) protocol
<xref target="RFC8995"/> or by LwM2M Bootstrap <xref target="LwM2M"/>. Hence, the use of IDevIDs
is limited in purpose even though they have a long lifetime, or do not expire
at all. While some bootstrapping protocols use TLS (and therefore make use of
the IDevID as part of client authentication) there are other bootstrapping
protocols that do not use TLS/DTLS for client authentication, such as FIDO
Device Onboarding (FDO) <xref target="FDO"/>.  In many cases, a profile for the certificate
content is provided by those specifications. For these reasons, this
specification focuses on the description of LDevIDs.</t>
      <t>While the IEEE 802.1AR terminology is utilized in this document,
this specification does not claim conformance to IEEE 802.1AR
since such a compliance statement goes beyond the use of the terminology
and the certificate content and would include the use of management
protocols, fulfillment of certain hardware security requirements, and
interfaces to access these hardware security modules. Placing these
requirements on network equipment like routers may be appropriate but
designers of constrained IoT devices have opted for different protocols
and hardware security choices.</t>
      <section anchor="all-certificates">
        <name>All Certificates</name>
        <t>To avoid repetition, this section outlines requirements on X.509
certificates applicable to all PKI entities.</t>
        <section anchor="version">
          <name>Version</name>
          <t>Certificates MUST be of type X.509 v3. Note that TLS 1.3 allows to
convey payloads other than X.509 certificates in the Certificate
message. The description in this section only focuses on X.509 v3
certificates and leaves the description of other formats to other
sections or even other specifications.</t>
        </section>
        <section anchor="serial-number">
          <name>Serial Number</name>
          <t>CAs MUST generate non-sequential serial numbers greater than or equal to eight
(8) octets from a cryptographically secure pseudo-random number generator.
<xref target="RFC5280"/> limits this field to a maximum of 20 octets.
The serial number MUST be unique
for each certificate issued by a given CA (i.e., the issuer name
and the serial number uniquely identify a certificate).</t>
          <t>This requirement is aligned with <xref target="RFC5280"/>.</t>
        </section>
        <section anchor="signature">
          <name>Signature</name>
          <t>The signature MUST be ecdsa-with-SHA256 or stronger <xref target="RFC5758"/>.</t>
          <t>Note: In contrast to IEEE 802.1AR this specification does not require
end entity certificates, subordinate CA certificates, and CA
certificates to use the same signature algorithm. Furthermore,
this specification does not utlize RSA for use with constrained IoT
devices and networks.</t>
        </section>
        <section anchor="issuer">
          <name>Issuer</name>
          <t>The issuer field MUST contain a non-empty distinguished name (DN)
of the entity that has signed and issued the certificate in accordance
to <xref target="RFC5280"/>.</t>
        </section>
        <section anchor="validity">
          <name> Validity</name>
          <t>In IoT deployment scenarios it is often expected that the IDevIDs have
no maximum validity period. For this purpose the use of a special value
for the notAfter date field, the GeneralizedTime value of 99991231235959Z,
is utilized. If this is done, then the CA certificates and the certificates
of subordinate CAs cannot have a maximum validity period either. Hence,
it requires careful consideration whether it is appropriate to issue
IDevID certificates with no maximum validity period.</t>
          <t>LDevID certificates are, however, issued by the operator or owner,
and may be renewed at a regular interval using protocols, such
as Enrollment over Secure Transport (EST) <xref target="RFC7030"/> or the
Certificate Management Protocol (CMP) <xref target="RFC9483"/>.
It is therefore RECOMMENDED to limit the lifetime of these LDevID certificates
using the notBefore and notAfter fields, as described in Section 4.1.2.5 of
<xref target="RFC5280"/>. Values MUST be expressed in Greenwich Mean Time (Zulu) and
MUST include seconds even where the number of seconds is zero.</t>
          <t>Note that the validity period is defined as the period of time from notBefore
through notAfter, inclusive. This means that a hypothetical certificate with a
notBefore date of 9 June 2021 at 03:42:01 and a notAfter date of 7 September
2021 at 03:42:01 becomes valid at the beginning of the :01 second, and only
becomes invalid at the :02 second, a period that is 90 days plus 1 second.  So
for a 90-day, notAfter must actually be 03:42:00.</t>
          <t>For devices without a reliable source of time we advise the use of a device
management solution, which typically includes a certificate management protocol,
to manage the lifetime of all the certificates used by the device. While this
approach does not utilize certificates to its widest extent, it is a solution
that extends the capabilities offered by a raw public key approach.</t>
        </section>
        <section anchor="subject-public-key-info">
          <name> Subject Public Key Info</name>
          <t>The subjectPublicKeyInfo field indicates the algorithm and any associated
parameters for the ECC public key. This profile uses the id-ecPublicKey
algorithm identifier for ECDSA signature keys, as defined and specified in
<xref target="RFC5480"/>. This specification assumes that devices supported one of the
following algorithms:</t>
          <ul spacing="compact">
            <li>
              <t>id-ecPublicKey with secp256r1,</t>
            </li>
            <li>
              <t>id-ecPublicKey with secp384r1, and</t>
            </li>
            <li>
              <t>id-ecPublicKey with secp521r1.</t>
            </li>
          </ul>
          <t>There is no requirement to use CA certificates and certificates of
subordinate CAs to use the same algorithm as the end entity certificate.
Certificates with longer lifetime may well use a cryptographic stronger
algorithm.</t>
        </section>
        <section anchor="certificate-revocation-checks">
          <name>Certificate Revocation Checks</name>
          <t>The guidance in <xref section="4.4.3" sectionFormat="of" target="RFC7925"/> still holds: for certificate
revocation, neither the Online Certificate Status Protocol (OCSP) nor
Certificate Revocation Lists (CRLs) are used by constrained IoT devices.</t>
          <t>Since the publication of RFC 7925 the need for firmware update mechanisms
has been reinforced and the work on standardizing a secure and
interoperable firmware update mechanism has made substantial progress,
see <xref target="RFC9019"/>. RFC 7925 recommends to use a software / firmware update
mechanism to provision devices with new trust anchors. This approach only addresses the distribution of trust anchors and not end entity certificates or certificates of subordinate CAs.</t>
          <t>The use of device management protocols for IoT devices, which often include
an onboarding or bootstrapping mechanism, has also seen considerable uptake
in deployed devices. These protocols, some of which are standardized,
allow for the distribution and updating of certificates on demand. This enables a
deployment model where IoT device utilize end entity certificates with
shorter lifetime making certificate revocation protocols, like OCSP
and CRLs, less relevant. Whenever certificates are updated the TLS stack
needs to be informed since the communication endpoints need to be aware
of the new certificates. This is particularly important when long-lived
TLS connections are used. In such a case, the a post-handshake
authentication exchange is triggered when the application requires it. TLS 1.3 provides
client-to-server post-handshake authentication only. Mutual
authentication via post-handshake messages is available by the use of the "Exported
Authenticator" <xref target="RFC9261"/> but requires the application layer protocol
to carry the payloads.</t>
          <t>Hence, instead of performing certificate revocation checks on the IoT device
itself this specification recommends to delegate this task to the IoT device
operator and to take the necessary action to allow IoT devices to remain
operational.</t>
          <t>The CRL distribution points extension has been defined in RFC 5280 to
identify how CRL information is obtained. The authority information access
extension indicates how to access information like the online certificate
status service (OCSP). Both extensions SHOULD NOT be set. If set, they
MUST NOT be marked critical.</t>
        </section>
      </section>
      <section anchor="root-ca-certificate">
        <name>Root CA Certificate</name>
        <t>This section outlines the requirements for root CA certificates.</t>
        <section anchor="subject">
          <name>Subject</name>
          <t><xref target="RFC5280"/> mandates that Root CA certificates MUST have a non-empty subject field. The subject field MUST contain the commonName, the organizationName, and the countryName attribute and MAY contain an organizationalUnitName attribute.</t>
        </section>
        <section anchor="authority-key-identifier">
          <name>Authority Key Identifier</name>
          <t>Section 4.2.1.1 of <xref target="RFC5280"/> defines the Authority Key Identifier as follows:
"The authority key identifier extension provides a means of identifying the
public key corresponding to the private key used to sign a certificate. This
extension is used where an issuer has multiple signing keys."</t>
          <t>The Authority Key Identifier extension MAY be omitted. If it is set, it MUST NOT be
marked critical, and MUST contain the subjectKeyIdentifier of this certificate.</t>
          <t>[Editor's Note: Do we need to set the Authority Key Identifier in the CA certificate?]</t>
        </section>
        <section anchor="subject-key-identifier">
          <name>Subject Key Identifier</name>
          <t><xref section="4.2.1.2" sectionFormat="of" target="RFC5280"/> defines the SubjectKeyIdentifier as follows:
"The subject key identifier extension provides a means of identifying
certificates that contain a particular public key."</t>
          <t>The Subject Key Identifier extension MUST be set, MUST NOT be marked critical, and MUST
contain the key identifier of the public key contained in the subject public key
info field.</t>
          <t>The subjectKeyIdentifier is used by path construction algorithms to identify which CA has signed a subordinate certificate.</t>
        </section>
        <section anchor="key-usage">
          <name>Key Usage</name>
          <t><xref target="RFC5280"/> defines the key usage field as follows: "The key usage extension defines
the purpose (e.g., encipherment, signature, certificate signing) of the key contained
in the certificate."</t>
          <t>The Key Usage extension MAY be set. If it is set, it MUST be marked critical and
the keyCertSign or cRLSign purposes MUST be set. Additional key usages MAY be set
depending on the intended usage of the public key.</t>
          <t><xref target="RFC5280"/> defines the extended key usage as follows: "This extension indicates
one or more purposes for which the certified public key may be used, in addition to
or in place of the basic purposes indicated in the key usage extension."</t>
          <t>This extendedKeyUsage extension MUST NOT be set in CA certificates.</t>
        </section>
        <section anchor="basic-constraints">
          <name>Basic Constraints</name>
          <t><xref target="RFC5280"/> states that "The Basic Constraints extension identifies whether the subject
of the certificate is a CA and the maximum depth of valid certification paths that include
this certificate. The cA boolean indicates whether the certified public key may be used to
verify certificate signatures."</t>
          <t>For the pathLenConstraint RFC 5280 makes further statements:</t>
          <ul spacing="compact">
            <li>
              <t>"The pathLenConstraint field is meaningful only if the cA boolean is asserted and the
key usage extension, if present, asserts the keyCertSign bit. In this case, it gives the
maximum number of non-self-issued intermediate certificates that may follow this
certificate in a valid certification path."</t>
            </li>
            <li>
              <t>"A pathLenConstraint of zero indicates that no non-self-issued intermediate CA
certificates may follow in a valid certification path."</t>
            </li>
            <li>
              <t>"Where pathLenConstraint does not appear, no limit is imposed."</t>
            </li>
            <li>
              <t>"Conforming CAs MUST include this extension in all CA certificates that contain public
keys used to validate digital signatures on certificates and MUST mark the extension as
critical in such certificates."</t>
            </li>
          </ul>
          <t>The Basic Constraints extension MUST be set, MUST be marked critical, the cA flag MUST
be set to true and the pathLenConstraint MUST be omitted.</t>
          <t>[Editor's Note: Should we soften the requirement to: "The pathLenConstraint field SHOULD NOT be present."]</t>
        </section>
      </section>
      <section anchor="subordinate-ca-certificate">
        <name>Subordinate CA Certificate</name>
        <t>This section outlines the requirements for subordinate CA certificates.</t>
        <section anchor="subject-1">
          <name>Subject</name>
          <t>The subject field MUST be set and MUST contain the commonName, the organizationName,
and the countryName attribute and MAY contain an organizationalUnitName attribute.</t>
        </section>
        <section anchor="authority-key-identifier-1">
          <name>Authority Key Identifier</name>
          <t>The Authority Key Identifier extension MUST be set, MUST NOT be marked critical, and
MUST contain the subjectKeyIdentifier of the CA that issued this certificate.</t>
        </section>
        <section anchor="subject-key-identifier-1">
          <name>Subject Key Identifier</name>
          <t>The Subject Key Identifier extension MUST be set, MUST NOT be marked critical, and MUST
contain the key identifier of the public key contained in the subject public key info
field.</t>
        </section>
        <section anchor="key-usage-1">
          <name>Key Usage</name>
          <t>The Key Usage extension MUST be set, MUST be marked critical, the keyCertSign or
cRLSign purposes MUST be set, and the digitalSignature purpose SHOULD be set.</t>
          <t>Subordinate certification authorities SHOULD NOT have any extendedKeyUsage.
<xref target="RFC5280"/> reserves EKUs to be meaningful only in end entity certificates.</t>
        </section>
        <section anchor="basic-constraints-1">
          <name>Basic Constraints</name>
          <t>The Basic Constraints extension MUST be set, MUST be marked critical, the cA flag
MUST be set to true and the pathLenConstraint SHOULD be omitted.</t>
        </section>
        <section anchor="crl-distribution-point">
          <name>CRL Distribution Point</name>
          <t>The CRL Distribution Point extension SHOULD NOT be set. If it is set, it MUST NOT
be marked critical and MUST identify the CRL relevant for this certificate.</t>
        </section>
        <section anchor="authority-information-access">
          <name>Authority Information Access</name>
          <t>The Authority Information Access extension SHOULD NOT be set. If it is set, it MUST
NOT be marked critical and MUST identify the location of the certificate of the CA
that issued this certificate and the location it provides an online certificate
status service (OCSP).</t>
        </section>
      </section>
      <section anchor="end-entity-certificate">
        <name>End Entity Certificate</name>
        <t>This section outlines the requirements for end entity certificates.</t>
        <section anchor="subject-2">
          <name>Subject</name>
          <t>This section describes the use of end entity certificate primarily for (D)TLS
clients running on IoT devices. Operating (D)TLS servers on IoT devices is
possible but less common.</t>
          <t><xref section="2" sectionFormat="comma" target="RFC9525"/> mandates that the subject field not be used to identify a service.
However, certain IoT applications (for example, <xref target="I-D.ietf-anima-constrained-voucher"/>,
<xref target="_8021AR"/>) use the subject field to encode the device serial number.</t>
          <t>The requirement in <xref section="4.4.2" sectionFormat="of" target="RFC7925"/> to only use EUI-64 for end
entity certificates as a subject field is lifted.</t>
          <t>Two fields are typically used to encode a device identifer, namely the
Subject and the subjectAltName fields. Protocol specifications tend to offer
recommendations what identifiers to use and the deployment situation is
fragmented.</t>
          <t>The subject field MAY include a unique device serial number. If the serial
number is included, it MUST be encoded in the X520SerialNumber attribute.
e.g., <xref target="RFC8995"/> use requires a serial number in IDevID certificates.</t>
          <t><xref target="RFC5280"/> defines: "The subject alternative name extension allows identities
to be bound to the subject of the certificate. These identities may be included
in addition to or in place of the identity in the subject field of the certificate."</t>
          <t>The subject alternative name extension MAY be set. If it is set, it MUST NOT be
marked critical, except when the subject DN contains an empty sequence.</t>
          <t>If the EUI-64 format is used to identify the subject of an end entity
certificate, it MUST be encoded as a Subject DN using the X520SerialNumber
attribute.  The contents of the field is a string of the form <tt>HH-HH-HH-HH-HH-HH-HH-HH</tt>
where 'H' is one of the symbols '0'-'9' or 'A'-'F'.</t>
          <t>Per <xref target="RFC9525"/> domain names MUST NOT be encoded in the subject commonName. Instead they
MUST be encoded in a subjectAltName of type DNS-ID. Domain names MUST NOT
contain wildcard (<tt>*</tt>) characters. The subjectAltName MUST NOT contain multiple
names.</t>
          <t>Note: The IEEE 802.1AR recomments to encode information about a Trusted
Platform Module (TPM), if present, in the HardwareModuleName. This
specification does not follow this recommendation.</t>
          <t>Where IoT devices are accepting (D)TLS connections, i.e., they are acting as a server,
it is unlikely that there will be a useful name that can go into the SNI. In general,
the use of SNI for the purpose of virtual hosting on constrained IoT devices is rare.
The IoT device cannot depend on a client providing a correct SNI, and so it MUST ignore the extension.
This implies that IoT devices cannot do name-based virtual hosting of TLS connections.
In the unlikely event that an IoT device has multiple servers responding with different
server certificate, then the server SHOULD use different IP addresses or port numbers.</t>
        </section>
        <section anchor="authority-key-identifier-2">
          <name>Authority Key Identifier</name>
          <t>The Authority Key Identifier extension MUST be set, MUST NOT be marked critical,
and MUST contain the subjectKeyIdentifier of the CA that issued this certificate.</t>
        </section>
        <section anchor="subject-key-identifier-2">
          <name>Subject Key Identifier</name>
          <t>The Subject Key Identifier MUST NOT be included in end entity certificates, as it can be calculated from the public key, so it just takes up space.
End entity certificates are not used in path construction, so there is no ambiguity regarding which certificate chain to use, as there can be with subordinate CAs.</t>
        </section>
        <section anchor="key-usage-2">
          <name>Key Usage</name>
          <t>The key usage extension MUST be set and MUST be marked as critical. For
signature verification keys the digitialSignature key usage purpose MUST
be specified. Other key usages are set according to the intended usage
of the key.</t>
          <t>If enrollment of new certificates uses server-side key generation, encrypted
delivery of the private key is required. In such cases the key usage
keyEncipherment or keyAgreement MUST be set because the encrypted delivery
of the newly generated key involves encryption or agreement of a symmetric
key. On-device key generation is, however, the preferred approach.</t>
          <t>In IDevID certificates, the extendedKeyUsage SHOULD NOT be present, as it reduces the utility of the IDevID.
In locally assigned LDevID certificates, the extendedKeyUsage, if present, MUST contain at least one of id-kp-serverAuth or id-kp-clientAuth in order to be useable with TLS.</t>
        </section>
      </section>
    </section>
    <section anchor="certificate-overhead">
      <name>Certificate Overhead</name>
      <t>In a public key-based key exchange, certificates and public keys are a major
contributor to the size of the overall handshake. For example, in a regular TLS
1.3 handshake with minimal ECC certificates and no subordinate CA utilizing
the secp256r1 curve with mutual authentication, around 40% of the entire
handshake payload is consumed by the two exchanged certificates.</t>
      <t>Hence, it is not surprising that there is a strong desire to reduce the size of
certificates and certificate chains. This has lead to various standardization
efforts. Below is a brief summary of what options an implementer has to reduce
the bandwidth requirements of a public key-based key exchange. Note that many
of the standardized extensions are not readily available in TLS/DTLS stacks since
optimizations typically get implemented last.</t>
      <ul spacing="compact">
        <li>
          <t>Use elliptic curve cryptography (ECC) instead of RSA-based certificate due to
the smaller certificate size. This document recommends the use of elliptic
curve cryptography only.</t>
        </li>
        <li>
          <t>Avoid deep and complex CA hierarchies to reduce the number of subordinate CA
certificates that need to be transmitted and processed. See
<xref target="I-D.irtf-t2trg-taxonomy-manufacturer-anchors"/> for a discussion about CA
hierarchies.
Most security requirements can be satisfied with a PKI depth of 3 (root CA, one subordinate CA, and end entity certificates).</t>
        </li>
        <li>
          <t>Pay attention to the amount of information conveyed inside certificates.</t>
        </li>
        <li>
          <t>Use session resumption to reduce the number of times a full handshake is
needed.  Use Connection IDs <xref target="RFC9146"/>, when possible, to enable
long-lasting connections.</t>
        </li>
        <li>
          <t>Use the TLS cached info <xref target="RFC7924"/> extension to avoid sending certificates
with every full handshake.</t>
        </li>
        <li>
          <t>Use client certificate URLs <xref target="RFC6066"/> instead of full certificates for
clients. When applications perform TLS client authentication via
DNS-Based Authentication of Named Entities (DANE) TLSA records then the
<xref target="I-D.ietf-dance-tls-clientid"/> specification may be used to reduce the
packets on the wire. Note: The term "TLSA" does not stand for anything;
it is just the name of the RRtype, as explained in <xref target="RFC6698"/>.</t>
        </li>
        <li>
          <t>Use certificate compression as defined in
<xref target="RFC8879"/>.</t>
        </li>
        <li>
          <t>Use alternative certificate formats, where possible, such as raw public keys
<xref target="RFC7250"/> or CBOR-encoded certificates
<xref target="I-D.ietf-cose-cbor-encoded-cert"/>.</t>
        </li>
      </ul>
      <t>The use of certificate handles, as introduced in cTLS <xref target="I-D.ietf-tls-ctls"/>,
is a form of caching or compressing certificates as well.</t>
      <t>Whether to utilize any of the above extensions or a combination of them depends
on the anticipated deployment environment, the availability of code, and the
constraints imposed by already deployed infrastructure (e.g., CA
infrastructure, tool support).</t>
    </section>
    <section anchor="ciphersuites">
      <name>Ciphersuites</name>
      <t>According to <xref section="4.5.3" sectionFormat="of" target="DTLS13"/>, the use of AES-CCM with 8-octet
authentication tags (CCM_8) is considered unsuitable for general use with DTLS.
This is because it has low integrity limits (i.e., high sensitivity to
forgeries) which makes endpoints that negotiate ciphersuites based on such AEAD
vulnerable to a trivial DoS attack. See also Sections <xref target="I-D.irtf-cfrg-aead-limits" section="5.3" sectionFormat="bare"/> and <xref target="I-D.irtf-cfrg-aead-limits" section="5.4" sectionFormat="bare"/> of <xref target="I-D.irtf-cfrg-aead-limits"/> for further discussion on this topic, as well as
references to the analysis supporting these conclusions.</t>
      <t>Specifically, <xref target="DTLS13"/> warns that:</t>
      <artwork><![CDATA[
> TLS_AES_128_CCM_8_SHA256 MUST NOT be used in DTLS without additional
> safeguards against forgery. Implementations MUST set usage limits for
> AEAD_AES_128_CCM_8 based on an understanding of any additional forgery
> protections that are used.
]]></artwork>
      <t>Since all the ciphersuites required by <xref target="RFC7925"/> and <xref target="CoAP"/> rely on CCM_8,
there is no alternate ciphersuite available for applications that aim to
eliminate the security and availability threats related to CCM_8 while retaining
interoperability with the larger ecosystem.</t>
      <t>In order to ameliorate the situation, this document RECOMMENDS that
implementations support the following two ciphersuites for TLS 1.3:</t>
      <ul spacing="compact">
        <li>
          <t><tt>TLS_AES_128_GCM_SHA256</tt></t>
        </li>
        <li>
          <t><tt>TLS_AES_128_CCM</tt></t>
        </li>
      </ul>
      <t>and offer them as their first choice.  These ciphersuites provide
confidentiality and integrity limits that are considered acceptable in the most
general settings.  For the details on the exact bounds of both ciphersuites see
<xref section="4.5.3" sectionFormat="of" target="DTLS13"/>.  Note that the GCM-based ciphersuite offers
superior interoperability with cloud services at the cost of a slight increase
in the wire and peak RAM footprints.</t>
      <t>When the GCM-based ciphersuite is used with TLS 1.2, the recommendations in
<xref section="7.2.1" sectionFormat="of" target="RFC9325"/> related to deterministic nonce generation
apply.  In addition, the integrity limits on key usage detailed in <xref section="4.4" sectionFormat="of" target="RFC9325"/> also apply.</t>
      <t><xref target="tab-cipher-reqs"/> summarizes the recommendations regarding ciphersuites:</t>
      <table align="left" anchor="tab-cipher-reqs">
        <name>TLS 1.3 Ciphersuite Requirements</name>
        <thead>
          <tr>
            <th align="left">Ciphersuite</th>
            <th align="left">MTI Requirement</th>
          </tr>
        </thead>
        <tbody>
          <tr>
            <td align="left">
              <tt>TLS_AES_128_CCM_8_SHA256</tt></td>
            <td align="left">MUST-</td>
          </tr>
          <tr>
            <td align="left">
              <tt>TLS_AES_128_CCM</tt></td>
            <td align="left">SHOULD+</td>
          </tr>
          <tr>
            <td align="left">
              <tt>TLS_AES_128_GCM_SHA256</tt></td>
            <td align="left">SHOULD+</td>
          </tr>
        </tbody>
      </table>
    </section>
    <section anchor="fault-attacks-on-deterministic-signature-schemes">
      <name>Fault Attacks on Deterministic Signature Schemes</name>
      <t>A number of passive side-channel attacks as well as active fault-injection
attacks (e.g., <xref target="Ambrose2017"/>) have been demonstrated to be successful in allowing a malicious
third party to gain information about the signing key if a fully deterministic
signature scheme (e.g., <xref target="RFC6979"/> ECDSA or EdDSA <xref target="RFC8032"/>) is used.</t>
      <t>Most of these attacks assume physical access to the device and are therefore
especially relevant to smart cards as well as IoT deployments with poor or
non-existent physical security.</t>
      <t>In this security model, it is recommended to combine both randomness and
determinism, for example, as described in
<xref target="I-D.irtf-cfrg-det-sigs-with-noise"/>.</t>
    </section>
    <section anchor="post-quantum-cryptography-pqc-considerations">
      <name>Post-Quantum Cryptography (PQC) Considerations</name>
      <t>As detailed in <xref target="I-D.ietf-pquip-pqc-engineers"/>, the IETF is actively working to address the challenges of adopting PQC in various protocols, including TLS. The document highlights key aspects engineers must consider, such as algorithm selection, performance impacts, and deployment strategies. It emphasizes the importance of gradual integration of PQC to ensure secure communication while accounting for the increased computational, memory, and bandwidth requirements of PQC algorithms. These challenges are especially relevant in the context of IoT, where device constraints limit the adoption of larger key sizes and more complex cryptographic operations <xref target="PQC-PERF"/>. Besides, any choice need to careful evaluate the associated energy requirements <xref target="PQC-ENERGY"/>.</t>
      <t>Incorporating PQC into TLS is still ongoing, with key exchange message sizes increasing due to larger public keys. These larger keys demand more flash storage and higher RAM usage, presenting significant obstacles for resource-constrained IoT devices. The transition from classical cryptographic algorithms to PQC will be a significant challenge for constrained IoT devices, requiring careful planning to select hardware suitable for the task considering the lifetime of an IoT product.</t>
    </section>
    <section anchor="open-issues">
      <name>Open Issues</name>
      <t>A list of open issues can be found at https://github.com/thomas-fossati/draft-tls13-iot/issues</t>
    </section>
    <section anchor="security-considerations">
      <name>Security Considerations</name>
      <t>This entire document is about security.</t>
    </section>
    <section anchor="iana-considerations">
      <name>IANA Considerations</name>
      <t>This document makes no requests to IANA.</t>
    </section>
  </middle>
  <back>
    <references anchor="sec-combined-references">
      <name>References</name>
      <references anchor="sec-normative-references">
        <name>Normative References</name>
        <reference anchor="DTLS13">
          <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="TLS13">
          <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="RFC7925">
          <front>
            <title>Transport Layer Security (TLS) / Datagram Transport Layer Security (DTLS) Profiles for the Internet of Things</title>
            <author fullname="H. Tschofenig" initials="H." role="editor" surname="Tschofenig"/>
            <author fullname="T. Fossati" initials="T." surname="Fossati"/>
            <date month="July" year="2016"/>
            <abstract>
              <t>A common design pattern in Internet of Things (IoT) deployments is the use of a constrained device that collects data via sensors or controls actuators for use in home automation, industrial control systems, smart cities, and other IoT deployments.</t>
              <t>This document defines a Transport Layer Security (TLS) and Datagram Transport Layer Security (DTLS) 1.2 profile that offers communications security for this data exchange thereby preventing eavesdropping, tampering, and message forgery. The lack of communication security is a common vulnerability in IoT products that can easily be solved by using these well-researched and widely deployed Internet security protocols.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="7925"/>
          <seriesInfo name="DOI" value="10.17487/RFC7925"/>
        </reference>
        <reference anchor="RFC2119">
          <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">
          <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>
        <reference anchor="RFC8221">
          <front>
            <title>Cryptographic Algorithm Implementation Requirements and Usage Guidance for Encapsulating Security Payload (ESP) and Authentication Header (AH)</title>
            <author fullname="P. Wouters" initials="P." surname="Wouters"/>
            <author fullname="D. Migault" initials="D." surname="Migault"/>
            <author fullname="J. Mattsson" initials="J." surname="Mattsson"/>
            <author fullname="Y. Nir" initials="Y." surname="Nir"/>
            <author fullname="T. Kivinen" initials="T." surname="Kivinen"/>
            <date month="October" year="2017"/>
            <abstract>
              <t>This document replaces RFC 7321, "Cryptographic Algorithm Implementation Requirements and Usage Guidance for Encapsulating Security Payload (ESP) and Authentication Header (AH)". The goal of this document is to enable ESP and AH to benefit from cryptography that is up to date while making IPsec interoperable.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8221"/>
          <seriesInfo name="DOI" value="10.17487/RFC8221"/>
        </reference>
        <reference anchor="RFC9258">
          <front>
            <title>Importing External Pre-Shared Keys (PSKs) for TLS 1.3</title>
            <author fullname="D. Benjamin" initials="D." surname="Benjamin"/>
            <author fullname="C. A. Wood" initials="C. A." surname="Wood"/>
            <date month="July" year="2022"/>
            <abstract>
              <t>This document describes an interface for importing external Pre-Shared Keys (PSKs) into TLS 1.3.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="9258"/>
          <seriesInfo name="DOI" value="10.17487/RFC9258"/>
        </reference>
        <reference anchor="RFC9325">
          <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="RFC8446">
          <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="I-D.ietf-tls-dtls-rrc">
          <front>
            <title>Return Routability Check for DTLS 1.2 and DTLS 1.3</title>
            <author fullname="Hannes Tschofenig" initials="H." surname="Tschofenig">
         </author>
            <author fullname="Achim Kraus" initials="A." surname="Kraus">
         </author>
            <author fullname="Thomas Fossati" initials="T." surname="Fossati">
              <organization>Linaro</organization>
            </author>
            <date day="24" month="September" year="2024"/>
            <abstract>
              <t>   This document specifies a return routability check for use in context
   of the Connection ID (CID) construct for the Datagram Transport Layer
   Security (DTLS) protocol versions 1.2 and 1.3.

Discussion Venues

   This note is to be removed before publishing as an RFC.

   Discussion of this document takes place on the Transport Layer
   Security Working Group mailing list (tls@ietf.org), which is archived
   at https://mailarchive.ietf.org/arch/browse/tls/.

   Source for this draft and an issue tracker can be found at
   https://github.com/tlswg/dtls-rrc.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-ietf-tls-dtls-rrc-12"/>
        </reference>
        <reference anchor="RFC8449">
          <front>
            <title>Record Size Limit Extension for TLS</title>
            <author fullname="M. Thomson" initials="M." surname="Thomson"/>
            <date month="August" year="2018"/>
            <abstract>
              <t>An extension to Transport Layer Security (TLS) is defined that allows endpoints to negotiate the maximum size of protected records that each will send the other.</t>
              <t>This replaces the maximum fragment length extension defined in RFC 6066.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8449"/>
          <seriesInfo name="DOI" value="10.17487/RFC8449"/>
        </reference>
        <reference anchor="RFC5280">
          <front>
            <title>Internet X.509 Public Key Infrastructure Certificate and Certificate Revocation List (CRL) Profile</title>
            <author fullname="D. Cooper" initials="D." surname="Cooper"/>
            <author fullname="S. Santesson" initials="S." surname="Santesson"/>
            <author fullname="S. Farrell" initials="S." surname="Farrell"/>
            <author fullname="S. Boeyen" initials="S." surname="Boeyen"/>
            <author fullname="R. Housley" initials="R." surname="Housley"/>
            <author fullname="W. Polk" initials="W." surname="Polk"/>
            <date month="May" year="2008"/>
            <abstract>
              <t>This memo profiles the X.509 v3 certificate and X.509 v2 certificate revocation list (CRL) for use in the Internet. An overview of this approach and model is provided as an introduction. The X.509 v3 certificate format is described in detail, with additional information regarding the format and semantics of Internet name forms. Standard certificate extensions are described and two Internet-specific extensions are defined. A set of required certificate extensions is specified. The X.509 v2 CRL format is described in detail along with standard and Internet-specific extensions. An algorithm for X.509 certification path validation is described. An ASN.1 module and examples are provided in the appendices. [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="5280"/>
          <seriesInfo name="DOI" value="10.17487/RFC5280"/>
        </reference>
        <reference anchor="RFC5758">
          <front>
            <title>Internet X.509 Public Key Infrastructure: Additional Algorithms and Identifiers for DSA and ECDSA</title>
            <author fullname="Q. Dang" initials="Q." surname="Dang"/>
            <author fullname="S. Santesson" initials="S." surname="Santesson"/>
            <author fullname="K. Moriarty" initials="K." surname="Moriarty"/>
            <author fullname="D. Brown" initials="D." surname="Brown"/>
            <author fullname="T. Polk" initials="T." surname="Polk"/>
            <date month="January" year="2010"/>
            <abstract>
              <t>This document updates RFC 3279 to specify algorithm identifiers and ASN.1 encoding rules for the Digital Signature Algorithm (DSA) and Elliptic Curve Digital Signature Algorithm (ECDSA) digital signatures when using SHA-224, SHA-256, SHA-384, or SHA-512 as the hashing algorithm. This specification applies to the Internet X.509 Public Key infrastructure (PKI) when digital signatures are used to sign certificates and certificate revocation lists (CRLs). This document also identifies all four SHA2 hash algorithms for use in the Internet X.509 PKI. [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="5758"/>
          <seriesInfo name="DOI" value="10.17487/RFC5758"/>
        </reference>
        <reference anchor="RFC5480">
          <front>
            <title>Elliptic Curve Cryptography Subject Public Key Information</title>
            <author fullname="S. Turner" initials="S." surname="Turner"/>
            <author fullname="D. Brown" initials="D." surname="Brown"/>
            <author fullname="K. Yiu" initials="K." surname="Yiu"/>
            <author fullname="R. Housley" initials="R." surname="Housley"/>
            <author fullname="T. Polk" initials="T." surname="Polk"/>
            <date month="March" year="2009"/>
            <abstract>
              <t>This document specifies the syntax and semantics for the Subject Public Key Information field in certificates that support Elliptic Curve Cryptography. This document updates Sections 2.3.5 and 5, and the ASN.1 module of "Algorithms and Identifiers for the Internet X.509 Public Key Infrastructure Certificate and Certificate Revocation List (CRL) Profile", RFC 3279. [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="5480"/>
          <seriesInfo name="DOI" value="10.17487/RFC5480"/>
        </reference>
        <reference anchor="RFC9525">
          <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>
      </references>
      <references anchor="sec-informative-references">
        <name>Informative References</name>
        <reference anchor="RFC9146">
          <front>
            <title>Connection Identifier for DTLS 1.2</title>
            <author fullname="E. Rescorla" initials="E." role="editor" surname="Rescorla"/>
            <author fullname="H. Tschofenig" initials="H." role="editor" surname="Tschofenig"/>
            <author fullname="T. Fossati" initials="T." surname="Fossati"/>
            <author fullname="A. Kraus" initials="A." surname="Kraus"/>
            <date month="March" year="2022"/>
            <abstract>
              <t>This document specifies the Connection ID (CID) construct for the Datagram Transport Layer Security (DTLS) protocol version 1.2.</t>
              <t>A CID is an identifier carried in the record layer header that gives the recipient additional information for selecting the appropriate security association. In "classical" DTLS, selecting a security association of an incoming DTLS record is accomplished with the help of the 5-tuple. If the source IP address and/or source port changes during the lifetime of an ongoing DTLS session, then the receiver will be unable to locate the correct security context.</t>
              <t>The new ciphertext record format with the CID also provides content type encryption and record layer padding.</t>
              <t>This document updates RFC 6347.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="9146"/>
          <seriesInfo name="DOI" value="10.17487/RFC9146"/>
        </reference>
        <reference anchor="I-D.ietf-pquip-pqc-engineers">
          <front>
            <title>Post-Quantum Cryptography for Engineers</title>
            <author fullname="Aritra Banerjee" initials="A." surname="Banerjee">
              <organization>Nokia</organization>
            </author>
            <author fullname="Tirumaleswar Reddy.K" initials="T." surname="Reddy.K">
              <organization>Nokia</organization>
            </author>
            <author fullname="Dimitrios Schoinianakis" initials="D." surname="Schoinianakis">
              <organization>Nokia</organization>
            </author>
            <author fullname="Tim Hollebeek" initials="T." surname="Hollebeek">
              <organization>DigiCert</organization>
            </author>
            <author fullname="Mike Ounsworth" initials="M." surname="Ounsworth">
              <organization>Entrust Limited</organization>
            </author>
            <date day="21" month="October" year="2024"/>
            <abstract>
              <t>   The advent of a Cryptographically Relevant Quantum Computer (CRQC)
   would render state-of-the-art, traditional public-key algorithms
   deployed today obsolete, as the mathematical assumptions underpinning
   their security would no longer hold.  To address this, protocols and
   infrastructure must transition to post-quantum algorithms, which are
   designed to resist both classical and quantum attacks.  This document
   explains why engineers need to be aware of and understand post-
   quantum cryptography, detailing the impact of CRQCs on existing
   systems and the challenges involved in transitioning.  Unlike
   previous cryptographic updates, this shift may require significant
   protocol redesign due to the unique properties of post-quantum
   algorithms.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-ietf-pquip-pqc-engineers-06"/>
        </reference>
        <reference anchor="PQC-ENERGY">
          <front>
            <title>Energy Consumption Evaluation of Post-Quantum TLS 1.3 for Resource-Constrained Embedded Devices</title>
            <author fullname="George Tasopoulos" initials="G." surname="Tasopoulos">
              <organization>Industrial Systems Institute, R.C. ATHENA, Patras, Greece</organization>
            </author>
            <author fullname="Charis Dimopoulos" initials="C." surname="Dimopoulos">
              <organization>Industrial Systems Institute, R.C. ATHENA &amp;amp; Electrical and Computer Engineering, Dpt, University of Patras, Patras, Greece</organization>
            </author>
            <author fullname="Apostolos P. Fournaris" initials="A." surname="Fournaris">
              <organization>Industrial Systems Institute, R.C. ATHENA, Patras, Greece</organization>
            </author>
            <author fullname="Raymond K. Zhao" initials="R." surname="Zhao">
              <organization>CSIRO's Data61 Sydney, Australia</organization>
            </author>
            <author fullname="Amin Sakzad" initials="A." surname="Sakzad">
              <organization>Monash University, Melbourne, Australia</organization>
            </author>
            <author fullname="Ron Steinfeld" initials="R." surname="Steinfeld">
              <organization>Monash University, Melbourne, Australia</organization>
            </author>
            <date month="May" year="2023"/>
          </front>
          <seriesInfo name="Proceedings of the 20th ACM International Conference on Computing Frontiers" value="pp. 366-374"/>
          <seriesInfo name="DOI" value="10.1145/3587135.3592821"/>
          <refcontent>ACM</refcontent>
        </reference>
        <reference anchor="PQC-PERF">
          <front>
            <title>Performance Evaluation of Post-Quantum TLS 1.3 on Resource-Constrained Embedded Systems</title>
            <author fullname="George Tasopoulos" initials="G." surname="Tasopoulos">
              <organization/>
            </author>
            <author fullname="Jinhui Li" initials="J." surname="Li">
              <organization/>
            </author>
            <author fullname="Apostolos P. Fournaris" initials="A." surname="Fournaris">
              <organization/>
            </author>
            <author fullname="Raymond K. Zhao" initials="R." surname="Zhao">
              <organization/>
            </author>
            <author fullname="Amin Sakzad" initials="A." surname="Sakzad">
              <organization/>
            </author>
            <author fullname="Ron Steinfeld" initials="R." surname="Steinfeld">
              <organization/>
            </author>
            <date year="2022"/>
          </front>
          <seriesInfo name="Lecture Notes in Computer Science" value="pp. 432-451"/>
          <seriesInfo name="DOI" value="10.1007/978-3-031-21280-2_24"/>
          <seriesInfo name="ISBN" value="[&quot;9783031212796&quot;, &quot;9783031212802&quot;]"/>
          <refcontent>Springer International Publishing</refcontent>
        </reference>
        <reference anchor="CoAP">
          <front>
            <title>The Constrained Application Protocol (CoAP)</title>
            <author fullname="Z. Shelby" initials="Z." surname="Shelby"/>
            <author fullname="K. Hartke" initials="K." surname="Hartke"/>
            <author fullname="C. Bormann" initials="C." surname="Bormann"/>
            <date month="June" year="2014"/>
            <abstract>
              <t>The Constrained Application Protocol (CoAP) is a specialized web transfer protocol for use with constrained nodes and constrained (e.g., low-power, lossy) networks. The nodes often have 8-bit microcontrollers with small amounts of ROM and RAM, while constrained networks such as IPv6 over Low-Power Wireless Personal Area Networks (6LoWPANs) often have high packet error rates and a typical throughput of 10s of kbit/s. The protocol is designed for machine- to-machine (M2M) applications such as smart energy and building automation.</t>
              <t>CoAP provides a request/response interaction model between application endpoints, supports built-in discovery of services and resources, and includes key concepts of the Web such as URIs and Internet media types. CoAP is designed to easily interface with HTTP for integration with the Web while meeting specialized requirements such as multicast support, very low overhead, and simplicity for constrained environments.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="7252"/>
          <seriesInfo name="DOI" value="10.17487/RFC7252"/>
        </reference>
        <reference anchor="ADD" target="https://datatracker.ietf.org/wg/add/about/">
          <front>
            <title>Adaptive DNS Discovery (add) Working Group</title>
            <author>
              <organization>IETF</organization>
            </author>
            <date year="2023" month="September"/>
          </front>
        </reference>
        <reference anchor="_8021AR" target="https://1.ieee802.org/security/802-1ar">
          <front>
            <title>IEEE Standard for Local and metropolitan area networks – Secure Device Identity, IEEE 802.1AR-2018</title>
            <author>
              <organization>IEEE</organization>
            </author>
            <date year="2018" month="August"/>
          </front>
        </reference>
        <reference anchor="FDO" target="https://fidoalliance.org/specifications/download-iot-specifications/">
          <front>
            <title>FIDO Device Onboard Specification 1.1</title>
            <author>
              <organization>FIDO Alliance</organization>
            </author>
            <date year="2022" month="April"/>
          </front>
        </reference>
        <reference anchor="LwM2M" target="https://openmobilealliance.org/release/LightweightM2M/V1_2_1-20221209-A/">
          <front>
            <title>Lightweight Machine to Machine (LwM2M) V.1.2.1 Technical Specification: Transport Bindings</title>
            <author>
              <organization>OMA SpecWorks</organization>
            </author>
            <date year="2022" month="December"/>
          </front>
        </reference>
        <reference anchor="Ambrose2017" target="https://eprint.iacr.org/2017/975.pdf">
          <front>
            <title>Differential Attacks on Deterministic Signatures</title>
            <author initials="C." surname="Ambrose" fullname="Christopher Ambrose">
              <organization/>
            </author>
            <author initials="J. W." surname="Bos" fullname="Joppe W. Bos">
              <organization/>
            </author>
            <author initials="B." surname="Fay" fullname="Björn Fay">
              <organization/>
            </author>
            <author initials="M." surname="Joye" fullname="Marc Joye">
              <organization/>
            </author>
            <author initials="M." surname="Lochter" fullname="Manfred Lochter">
              <organization/>
            </author>
            <author initials="B." surname="Murray" fullname="Bruce Murray">
              <organization/>
            </author>
            <date year="2017"/>
          </front>
        </reference>
        <reference anchor="RFC5746">
          <front>
            <title>Transport Layer Security (TLS) Renegotiation Indication Extension</title>
            <author fullname="E. Rescorla" initials="E." surname="Rescorla"/>
            <author fullname="M. Ray" initials="M." surname="Ray"/>
            <author fullname="S. Dispensa" initials="S." surname="Dispensa"/>
            <author fullname="N. Oskov" initials="N." surname="Oskov"/>
            <date month="February" year="2010"/>
            <abstract>
              <t>Secure Socket Layer (SSL) and Transport Layer Security (TLS) renegotiation are vulnerable to an attack in which the attacker forms a TLS connection with the target server, injects content of his choice, and then splices in a new TLS connection from a client. The server treats the client's initial TLS handshake as a renegotiation and thus believes that the initial data transmitted by the attacker is from the same entity as the subsequent client data. This specification defines a TLS extension to cryptographically tie renegotiations to the TLS connections they are being performed over, thus preventing this attack. [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="5746"/>
          <seriesInfo name="DOI" value="10.17487/RFC5746"/>
        </reference>
        <reference anchor="RFC9261">
          <front>
            <title>Exported Authenticators in TLS</title>
            <author fullname="N. Sullivan" initials="N." surname="Sullivan"/>
            <date month="July" year="2022"/>
            <abstract>
              <t>This document describes a mechanism that builds on Transport Layer Security (TLS) or Datagram Transport Layer Security (DTLS) and enables peers to provide proof of ownership of an identity, such as an X.509 certificate. This proof can be exported by one peer, transmitted out of band to the other peer, and verified by the receiving peer.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="9261"/>
          <seriesInfo name="DOI" value="10.17487/RFC9261"/>
        </reference>
        <reference anchor="I-D.ietf-httpbis-secondary-server-certs">
          <front>
            <title>Secondary Certificate Authentication of HTTP Servers</title>
            <author fullname="Eric Gorbaty" initials="E." surname="Gorbaty">
              <organization>Apple</organization>
            </author>
            <author fullname="Mike Bishop" initials="M." surname="Bishop">
              <organization>Akamai</organization>
            </author>
            <date day="12" month="October" year="2024"/>
            <abstract>
              <t>   This document defines a way for HTTP/2 and HTTP/3 servers to send
   additional certificate-based credentials after a TLS connection is
   established, based on TLS Exported Authenticators.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-ietf-httpbis-secondary-server-certs-01"/>
        </reference>
        <reference anchor="RFC5216">
          <front>
            <title>The EAP-TLS Authentication Protocol</title>
            <author fullname="D. Simon" initials="D." surname="Simon"/>
            <author fullname="B. Aboba" initials="B." surname="Aboba"/>
            <author fullname="R. Hurst" initials="R." surname="Hurst"/>
            <date month="March" year="2008"/>
            <abstract>
              <t>The Extensible Authentication Protocol (EAP), defined in RFC 3748, provides support for multiple authentication methods. Transport Layer Security (TLS) provides for mutual authentication, integrity-protected ciphersuite negotiation, and key exchange between two endpoints. This document defines EAP-TLS, which includes support for certificate-based mutual authentication and key derivation.</t>
              <t>This document obsoletes RFC 2716. A summary of the changes between this document and RFC 2716 is available in Appendix A. [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="5216"/>
          <seriesInfo name="DOI" value="10.17487/RFC5216"/>
        </reference>
        <reference anchor="RFC9190">
          <front>
            <title>EAP-TLS 1.3: Using the Extensible Authentication Protocol with TLS 1.3</title>
            <author fullname="J. Preuß Mattsson" initials="J." surname="Preuß Mattsson"/>
            <author fullname="M. Sethi" initials="M." surname="Sethi"/>
            <date month="February" year="2022"/>
            <abstract>
              <t>The Extensible Authentication Protocol (EAP), defined in RFC 3748, provides a standard mechanism for support of multiple authentication methods. This document specifies the use of EAP-TLS with TLS 1.3 while remaining backwards compatible with existing implementations of EAP-TLS. TLS 1.3 provides significantly improved security and privacy, and reduced latency when compared to earlier versions of TLS. EAP-TLS with TLS 1.3 (EAP-TLS 1.3) further improves security and privacy by always providing forward secrecy, never disclosing the peer identity, and by mandating use of revocation checking when compared to EAP-TLS with earlier versions of TLS. This document also provides guidance on authentication, authorization, and resumption for EAP-TLS in general (regardless of the underlying TLS version used). This document updates RFC 5216.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="9190"/>
          <seriesInfo name="DOI" value="10.17487/RFC9190"/>
        </reference>
        <reference anchor="RFC4279">
          <front>
            <title>Pre-Shared Key Ciphersuites for Transport Layer Security (TLS)</title>
            <author fullname="P. Eronen" initials="P." role="editor" surname="Eronen"/>
            <author fullname="H. Tschofenig" initials="H." role="editor" surname="Tschofenig"/>
            <date month="December" year="2005"/>
            <abstract>
              <t>This document specifies three sets of new ciphersuites for the Transport Layer Security (TLS) protocol to support authentication based on pre-shared keys (PSKs). These pre-shared keys are symmetric keys, shared in advance among the communicating parties. The first set of ciphersuites uses only symmetric key operations for authentication. The second set uses a Diffie-Hellman exchange authenticated with a pre-shared key, and the third set combines public key authentication of the server with pre-shared key authentication of the client. [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="4279"/>
          <seriesInfo name="DOI" value="10.17487/RFC4279"/>
        </reference>
        <reference anchor="I-D.ietf-tls-ctls">
          <front>
            <title>Compact TLS 1.3</title>
            <author fullname="Eric Rescorla" initials="E." surname="Rescorla">
              <organization>Windy Hill Systems, LLC</organization>
            </author>
            <author fullname="Richard Barnes" initials="R." surname="Barnes">
              <organization>Cisco</organization>
            </author>
            <author fullname="Hannes Tschofenig" initials="H." surname="Tschofenig">
         </author>
            <author fullname="Benjamin M. Schwartz" initials="B. M." surname="Schwartz">
              <organization>Meta Platforms, Inc.</organization>
            </author>
            <date day="17" month="April" year="2024"/>
            <abstract>
              <t>   This document specifies a "compact" version of TLS 1.3 and DTLS 1.3.
   It saves bandwidth by trimming obsolete material, tighter encoding, a
   template-based specialization technique, and alternative
   cryptographic techniques. cTLS is not directly interoperable with TLS
   1.3 or DTLS 1.3 since the over-the-wire framing is different.  A
   single server can, however, offer cTLS alongside TLS or DTLS.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-ietf-tls-ctls-10"/>
        </reference>
        <reference anchor="RFC9150">
          <front>
            <title>TLS 1.3 Authentication and Integrity-Only Cipher Suites</title>
            <author fullname="N. Cam-Winget" initials="N." surname="Cam-Winget"/>
            <author fullname="J. Visoky" initials="J." surname="Visoky"/>
            <date month="April" year="2022"/>
            <abstract>
              <t>This document defines the use of cipher suites for TLS 1.3 based on Hashed Message Authentication Code (HMAC). Using these cipher suites provides server and, optionally, mutual authentication and data authenticity, but not data confidentiality. Cipher suites with these properties are not of general applicability, but there are use cases, specifically in Internet of Things (IoT) and constrained environments, that do not require confidentiality of exchanged messages while still requiring integrity protection, server authentication, and optional client authentication. This document gives examples of such use cases, with the caveat that prior to using these integrity-only cipher suites, a threat model for the situation at hand is needed, and a threat analysis must be performed within that model to determine whether the use of integrity-only cipher suites is appropriate. The approach described in this document is not endorsed by the IETF and does not have IETF consensus, but it is presented here to enable interoperable implementation of a reduced-security mechanism that provides authentication and message integrity without supporting confidentiality.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="9150"/>
          <seriesInfo name="DOI" value="10.17487/RFC9150"/>
        </reference>
        <reference anchor="I-D.ietf-tls-esni">
          <front>
            <title>TLS Encrypted Client Hello</title>
            <author fullname="Eric Rescorla" initials="E." surname="Rescorla">
              <organization>Independent</organization>
            </author>
            <author fullname="Kazuho Oku" initials="K." surname="Oku">
              <organization>Fastly</organization>
            </author>
            <author fullname="Nick Sullivan" initials="N." surname="Sullivan">
              <organization>Cryptography Consulting LLC</organization>
            </author>
            <author fullname="Christopher A. Wood" initials="C. A." surname="Wood">
              <organization>Cloudflare</organization>
            </author>
            <date day="15" month="September" year="2024"/>
            <abstract>
              <t>   This document describes a mechanism in Transport Layer Security (TLS)
   for encrypting a ClientHello message under a server public key.

Discussion Venues

   This note is to be removed before publishing as an RFC.

   Source for this draft and an issue tracker can be found at
   https://github.com/tlswg/draft-ietf-tls-esni
   (https://github.com/tlswg/draft-ietf-tls-esni).

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-ietf-tls-esni-22"/>
        </reference>
        <reference anchor="I-D.irtf-cfrg-hpke">
          <front>
            <title>Hybrid Public Key Encryption</title>
            <author fullname="Richard Barnes" initials="R." surname="Barnes">
              <organization>Cisco</organization>
            </author>
            <author fullname="Karthikeyan Bhargavan" initials="K." surname="Bhargavan">
              <organization>Inria</organization>
            </author>
            <author fullname="Benjamin Lipp" initials="B." surname="Lipp">
              <organization>Inria</organization>
            </author>
            <author fullname="Christopher A. Wood" initials="C. A." surname="Wood">
              <organization>Cloudflare</organization>
            </author>
            <date day="2" month="September" year="2021"/>
            <abstract>
              <t>This document describes a scheme for hybrid public key encryption (HPKE). This scheme provides a variant of public key encryption of arbitrary-sized plaintexts for a recipient public key. It also includes three authenticated variants, including one that authenticates possession of a pre-shared key and two optional ones that authenticate possession of a key encapsulation mechanism (KEM) private key. HPKE works for any combination of an asymmetric KEM, key derivation function (KDF), and authenticated encryption with additional data (AEAD) encryption function. Some authenticated variants may not be supported by all KEMs. We provide instantiations of the scheme using widely used and efficient primitives, such as Elliptic Curve Diffie-Hellman (ECDH) key agreement, HMAC-based key derivation function (HKDF), and SHA2.

 This document is a product of the Crypto Forum Research Group (CFRG) in the IRTF.
              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-irtf-cfrg-hpke-12"/>
        </reference>
        <reference anchor="RFC8484">
          <front>
            <title>DNS Queries over HTTPS (DoH)</title>
            <author fullname="P. Hoffman" initials="P." surname="Hoffman"/>
            <author fullname="P. McManus" initials="P." surname="McManus"/>
            <date month="October" year="2018"/>
            <abstract>
              <t>This document defines a protocol for sending DNS queries and getting DNS responses over HTTPS. Each DNS query-response pair is mapped into an HTTP exchange.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8484"/>
          <seriesInfo name="DOI" value="10.17487/RFC8484"/>
        </reference>
        <reference anchor="RFC7858">
          <front>
            <title>Specification for DNS over Transport Layer Security (TLS)</title>
            <author fullname="Z. Hu" initials="Z." surname="Hu"/>
            <author fullname="L. Zhu" initials="L." surname="Zhu"/>
            <author fullname="J. Heidemann" initials="J." surname="Heidemann"/>
            <author fullname="A. Mankin" initials="A." surname="Mankin"/>
            <author fullname="D. Wessels" initials="D." surname="Wessels"/>
            <author fullname="P. Hoffman" initials="P." surname="Hoffman"/>
            <date month="May" year="2016"/>
            <abstract>
              <t>This document describes the use of Transport Layer Security (TLS) to provide privacy for DNS. Encryption provided by TLS eliminates opportunities for eavesdropping and on-path tampering with DNS queries in the network, such as discussed in RFC 7626. In addition, this document specifies two usage profiles for DNS over TLS and provides advice on performance considerations to minimize overhead from using TCP and TLS with DNS.</t>
              <t>This document focuses on securing stub-to-recursive traffic, as per the charter of the DPRIVE Working Group. It does not prevent future applications of the protocol to recursive-to-authoritative traffic.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="7858"/>
          <seriesInfo name="DOI" value="10.17487/RFC7858"/>
        </reference>
        <reference anchor="RFC8094">
          <front>
            <title>DNS over Datagram Transport Layer Security (DTLS)</title>
            <author fullname="T. Reddy" initials="T." surname="Reddy"/>
            <author fullname="D. Wing" initials="D." surname="Wing"/>
            <author fullname="P. Patil" initials="P." surname="Patil"/>
            <date month="February" year="2017"/>
            <abstract>
              <t>DNS queries and responses are visible to network elements on the path between the DNS client and its server. These queries and responses can contain privacy-sensitive information, which is valuable to protect.</t>
              <t>This document proposes the use of Datagram Transport Layer Security (DTLS) for DNS, to protect against passive listeners and certain active attacks. As latency is critical for DNS, this proposal also discusses mechanisms to reduce DTLS round trips and reduce the DTLS handshake size. The proposed mechanism runs over port 853.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8094"/>
          <seriesInfo name="DOI" value="10.17487/RFC8094"/>
        </reference>
        <reference anchor="RFC8995">
          <front>
            <title>Bootstrapping Remote Secure Key Infrastructure (BRSKI)</title>
            <author fullname="M. Pritikin" initials="M." surname="Pritikin"/>
            <author fullname="M. Richardson" initials="M." surname="Richardson"/>
            <author fullname="T. Eckert" initials="T." surname="Eckert"/>
            <author fullname="M. Behringer" initials="M." surname="Behringer"/>
            <author fullname="K. Watsen" initials="K." surname="Watsen"/>
            <date month="May" year="2021"/>
            <abstract>
              <t>This document specifies automated bootstrapping of an Autonomic Control Plane. To do this, a Secure Key Infrastructure is bootstrapped. This is done using manufacturer-installed X.509 certificates, in combination with a manufacturer's authorizing service, both online and offline. We call this process the Bootstrapping Remote Secure Key Infrastructure (BRSKI) protocol. Bootstrapping a new device can occur when using a routable address and a cloud service, only link-local connectivity, or limited/disconnected networks. Support for deployment models with less stringent security requirements is included. Bootstrapping is complete when the cryptographic identity of the new key infrastructure is successfully deployed to the device. The established secure connection can be used to deploy a locally issued certificate to the device as well.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8995"/>
          <seriesInfo name="DOI" value="10.17487/RFC8995"/>
        </reference>
        <reference anchor="RFC7030">
          <front>
            <title>Enrollment over Secure Transport</title>
            <author fullname="M. Pritikin" initials="M." role="editor" surname="Pritikin"/>
            <author fullname="P. Yee" initials="P." role="editor" surname="Yee"/>
            <author fullname="D. Harkins" initials="D." role="editor" surname="Harkins"/>
            <date month="October" year="2013"/>
            <abstract>
              <t>This document profiles certificate enrollment for clients using Certificate Management over CMS (CMC) messages over a secure transport. This profile, called Enrollment over Secure Transport (EST), describes a simple, yet functional, certificate management protocol targeting Public Key Infrastructure (PKI) clients that need to acquire client certificates and associated Certification Authority (CA) certificates. It also supports client-generated public/private key pairs as well as key pairs generated by the CA.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="7030"/>
          <seriesInfo name="DOI" value="10.17487/RFC7030"/>
        </reference>
        <reference anchor="RFC9483">
          <front>
            <title>Lightweight Certificate Management Protocol (CMP) Profile</title>
            <author fullname="H. Brockhaus" initials="H." surname="Brockhaus"/>
            <author fullname="D. von Oheimb" initials="D." surname="von Oheimb"/>
            <author fullname="S. Fries" initials="S." surname="Fries"/>
            <date month="November" year="2023"/>
            <abstract>
              <t>This document aims at simple, interoperable, and automated PKI management operations covering typical use cases of industrial and Internet of Things (IoT) scenarios. This is achieved by profiling the Certificate Management Protocol (CMP), the related Certificate Request Message Format (CRMF), and transfer based on HTTP or Constrained Application Protocol (CoAP) in a succinct but sufficiently detailed and self-contained way. To make secure certificate management for simple scenarios and constrained devices as lightweight as possible, only the most crucial types of operations and options are specified as mandatory. More specialized or complex use cases are supported with optional features.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="9483"/>
          <seriesInfo name="DOI" value="10.17487/RFC9483"/>
        </reference>
        <reference anchor="RFC9019">
          <front>
            <title>A Firmware Update Architecture for Internet of Things</title>
            <author fullname="B. Moran" initials="B." surname="Moran"/>
            <author fullname="H. Tschofenig" initials="H." surname="Tschofenig"/>
            <author fullname="D. Brown" initials="D." surname="Brown"/>
            <author fullname="M. Meriac" initials="M." surname="Meriac"/>
            <date month="April" year="2021"/>
            <abstract>
              <t>Vulnerabilities in Internet of Things (IoT) devices have raised the need for a reliable and secure firmware update mechanism suitable for devices with resource constraints. Incorporating such an update mechanism is a fundamental requirement for fixing vulnerabilities, but it also enables other important capabilities such as updating configuration settings and adding new functionality.</t>
              <t>In addition to the definition of terminology and an architecture, this document provides the motivation for the standardization of a manifest format as a transport-agnostic means for describing and protecting firmware updates.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="9019"/>
          <seriesInfo name="DOI" value="10.17487/RFC9019"/>
        </reference>
        <reference anchor="I-D.ietf-anima-constrained-voucher">
          <front>
            <title>Constrained Bootstrapping Remote Secure Key Infrastructure (cBRSKI)</title>
            <author fullname="Michael Richardson" initials="M." surname="Richardson">
              <organization>Sandelman Software Works</organization>
            </author>
            <author fullname="Peter Van der Stok" initials="P." surname="Van der Stok">
              <organization>vanderstok consultancy</organization>
            </author>
            <author fullname="Panos Kampanakis" initials="P." surname="Kampanakis">
              <organization>Cisco Systems</organization>
            </author>
            <author fullname="Esko Dijk" initials="E." surname="Dijk">
              <organization>IoTconsultancy.nl</organization>
            </author>
            <date day="8" month="January" year="2025"/>
            <abstract>
              <t>   This document defines the Constrained Bootstrapping Remote Secure Key
   Infrastructure (cBRSKI) protocol, which provides a solution for
   secure zero-touch onboarding of resource-constrained (IoT) devices
   into the network of a domain owner.  This protocol is designed for
   constrained networks, which may have limited data throughput or may
   experience frequent packet loss. cBRSKI is a variant of the BRSKI
   protocol, which uses an artifact signed by the device manufacturer
   called the "voucher" which enables a new device and the owner's
   network to mutually authenticate.  While the BRSKI voucher data is
   encoded in JSON, cBRSKI uses a compact CBOR-encoded voucher.  The
   BRSKI voucher data definition is extended with new data types that
   allow for smaller voucher sizes.  The Enrollment over Secure
   Transport (EST) protocol, used in BRSKI, is replaced with EST-over-
   CoAPS; and HTTPS used in BRSKI is replaced with DTLS-secured CoAP
   (CoAPS).  This document Updates RFC 8995 and RFC 9148.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-ietf-anima-constrained-voucher-26"/>
        </reference>
        <reference anchor="I-D.irtf-t2trg-taxonomy-manufacturer-anchors">
          <front>
            <title>A Taxonomy of operational security considerations for manufacturer installed keys and Trust Anchors</title>
            <author fullname="Michael Richardson" initials="M." surname="Richardson">
              <organization>Sandelman Software Works</organization>
            </author>
            <date day="2" month="January" year="2025"/>
            <abstract>
              <t>   This document provides a taxonomy of methods used by manufacturers of
   silicon and devices to secure private keys and public trust anchors.
   This deals with two related activities: how trust anchors and private
   keys are installed into devices during manufacturing, and how the
   related manufacturer held private keys are secured against
   disclosure.

   This document does not evaluate the different mechanisms, but rather
   just serves to name them in a consistent manner in order to aid in
   communication.

   RFCEDITOR: please remove this paragraph.  This work is occurring in
   https://github.com/mcr/idevid-security-considerations

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-irtf-t2trg-taxonomy-manufacturer-anchors-05"/>
        </reference>
        <reference anchor="RFC7924">
          <front>
            <title>Transport Layer Security (TLS) Cached Information Extension</title>
            <author fullname="S. Santesson" initials="S." surname="Santesson"/>
            <author fullname="H. Tschofenig" initials="H." surname="Tschofenig"/>
            <date month="July" year="2016"/>
            <abstract>
              <t>Transport Layer Security (TLS) handshakes often include fairly static information, such as the server certificate and a list of trusted certification authorities (CAs). This information can be of considerable size, particularly if the server certificate is bundled with a complete certificate chain (i.e., the certificates of intermediate CAs up to the root CA).</t>
              <t>This document defines an extension that allows a TLS client to inform a server of cached information, thereby enabling the server to omit already available information.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="7924"/>
          <seriesInfo name="DOI" value="10.17487/RFC7924"/>
        </reference>
        <reference anchor="RFC6066">
          <front>
            <title>Transport Layer Security (TLS) Extensions: Extension Definitions</title>
            <author fullname="D. Eastlake 3rd" initials="D." surname="Eastlake 3rd"/>
            <date month="January" year="2011"/>
            <abstract>
              <t>This document provides specifications for existing TLS extensions. It is a companion document for RFC 5246, "The Transport Layer Security (TLS) Protocol Version 1.2". The extensions specified are server_name, max_fragment_length, client_certificate_url, trusted_ca_keys, truncated_hmac, and status_request. [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="6066"/>
          <seriesInfo name="DOI" value="10.17487/RFC6066"/>
        </reference>
        <reference anchor="I-D.ietf-dance-tls-clientid">
          <front>
            <title>TLS Extension for DANE Client Identity</title>
            <author fullname="Shumon Huque" initials="S." surname="Huque">
              <organization>Salesforce</organization>
            </author>
            <author fullname="Viktor Dukhovni" initials="V." surname="Dukhovni">
              <organization>Two Sigma</organization>
            </author>
            <date day="7" month="November" year="2024"/>
            <abstract>
              <t>   This document specifies a TLS and DTLS extension to convey a DNS-
   Based Authentication of Named Entities (DANE) Client Identity to a
   TLS or DTLS server.  This is useful for applications that perform TLS
   client authentication via DANE TLSA records.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-ietf-dance-tls-clientid-04"/>
        </reference>
        <reference anchor="RFC6698">
          <front>
            <title>The DNS-Based Authentication of Named Entities (DANE) Transport Layer Security (TLS) Protocol: TLSA</title>
            <author fullname="P. Hoffman" initials="P." surname="Hoffman"/>
            <author fullname="J. Schlyter" initials="J." surname="Schlyter"/>
            <date month="August" year="2012"/>
            <abstract>
              <t>Encrypted communication on the Internet often uses Transport Layer Security (TLS), which depends on third parties to certify the keys used. This document improves on that situation by enabling the administrators of domain names to specify the keys used in that domain's TLS servers. This requires matching improvements in TLS client software, but no change in TLS server software. [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="6698"/>
          <seriesInfo name="DOI" value="10.17487/RFC6698"/>
        </reference>
        <reference anchor="RFC8879">
          <front>
            <title>TLS Certificate Compression</title>
            <author fullname="A. Ghedini" initials="A." surname="Ghedini"/>
            <author fullname="V. Vasiliev" initials="V." surname="Vasiliev"/>
            <date month="December" year="2020"/>
            <abstract>
              <t>In TLS handshakes, certificate chains often take up the majority of the bytes transmitted.</t>
              <t>This document describes how certificate chains can be compressed to reduce the amount of data transmitted and avoid some round trips.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8879"/>
          <seriesInfo name="DOI" value="10.17487/RFC8879"/>
        </reference>
        <reference anchor="RFC7250">
          <front>
            <title>Using Raw Public Keys in Transport Layer Security (TLS) and Datagram Transport Layer Security (DTLS)</title>
            <author fullname="P. Wouters" initials="P." role="editor" surname="Wouters"/>
            <author fullname="H. Tschofenig" initials="H." role="editor" surname="Tschofenig"/>
            <author fullname="J. Gilmore" initials="J." surname="Gilmore"/>
            <author fullname="S. Weiler" initials="S." surname="Weiler"/>
            <author fullname="T. Kivinen" initials="T." surname="Kivinen"/>
            <date month="June" year="2014"/>
            <abstract>
              <t>This document specifies a new certificate type and two TLS extensions for exchanging raw public keys in Transport Layer Security (TLS) and Datagram Transport Layer Security (DTLS). The new certificate type allows raw public keys to be used for authentication.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="7250"/>
          <seriesInfo name="DOI" value="10.17487/RFC7250"/>
        </reference>
        <reference anchor="I-D.ietf-cose-cbor-encoded-cert">
          <front>
            <title>CBOR Encoded X.509 Certificates (C509 Certificates)</title>
            <author fullname="John Preuß Mattsson" initials="J. P." surname="Mattsson">
              <organization>Ericsson AB</organization>
            </author>
            <author fullname="Göran Selander" initials="G." surname="Selander">
              <organization>Ericsson AB</organization>
            </author>
            <author fullname="Shahid Raza" initials="S." surname="Raza">
              <organization>RISE AB</organization>
            </author>
            <author fullname="Joel Höglund" initials="J." surname="Höglund">
              <organization>RISE AB</organization>
            </author>
            <author fullname="Martin Furuhed" initials="M." surname="Furuhed">
              <organization>Nexus Group</organization>
            </author>
            <date day="8" month="January" year="2025"/>
            <abstract>
              <t>   This document specifies a CBOR encoding of X.509 certificates.  The
   resulting certificates are called C509 Certificates.  The CBOR
   encoding supports a large subset of RFC 5280 and all certificates
   compatible with the RFC 7925, IEEE 802.1AR (DevID), CNSA, RPKI, GSMA
   eUICC, and CA/Browser Forum Baseline Requirements profiles.  When
   used to re-encode DER encoded X.509 certificates, the CBOR encoding
   can in many cases reduce the size of RFC 7925 profiled certificates
   with over 50% while also significantly reducing memory and code size
   compared to ASN.1.  The CBOR encoded structure can alternatively be
   signed directly ("natively signed"), which does not require re-
   encoding for the signature to be verified.  The document also
   specifies C509 Certificate Signing Requests, C509 COSE headers, a
   C509 TLS certificate type, and a C509 file format.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-ietf-cose-cbor-encoded-cert-12"/>
        </reference>
        <reference anchor="I-D.irtf-cfrg-aead-limits">
          <front>
            <title>Usage Limits on AEAD Algorithms</title>
            <author fullname="Felix Günther" initials="F." surname="Günther">
              <organization>IBM Research Europe - Zurich</organization>
            </author>
            <author fullname="Martin Thomson" initials="M." surname="Thomson">
              <organization>Mozilla</organization>
            </author>
            <author fullname="Christopher A. Wood" initials="C. A." surname="Wood">
              <organization>Cloudflare</organization>
            </author>
            <date day="9" month="October" year="2024"/>
            <abstract>
              <t>   An Authenticated Encryption with Associated Data (AEAD) algorithm
   provides confidentiality and integrity.  Excessive use of the same
   key can give an attacker advantages in breaking these properties.
   This document provides simple guidance for users of common AEAD
   functions about how to limit the use of keys in order to bound the
   advantage given to an attacker.  It considers limits in both single-
   and multi-key settings.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-irtf-cfrg-aead-limits-09"/>
        </reference>
        <reference anchor="RFC6979">
          <front>
            <title>Deterministic Usage of the Digital Signature Algorithm (DSA) and Elliptic Curve Digital Signature Algorithm (ECDSA)</title>
            <author fullname="T. Pornin" initials="T." surname="Pornin"/>
            <date month="August" year="2013"/>
            <abstract>
              <t>This document defines a deterministic digital signature generation procedure. Such signatures are compatible with standard Digital Signature Algorithm (DSA) and Elliptic Curve Digital Signature Algorithm (ECDSA) digital signatures and can be processed with unmodified verifiers, which need not be aware of the procedure described therein. Deterministic signatures retain the cryptographic security features associated with digital signatures but can be more easily implemented in various environments, since they do not need access to a source of high-quality randomness.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="6979"/>
          <seriesInfo name="DOI" value="10.17487/RFC6979"/>
        </reference>
        <reference anchor="RFC8032">
          <front>
            <title>Edwards-Curve Digital Signature Algorithm (EdDSA)</title>
            <author fullname="S. Josefsson" initials="S." surname="Josefsson"/>
            <author fullname="I. Liusvaara" initials="I." surname="Liusvaara"/>
            <date month="January" year="2017"/>
            <abstract>
              <t>This document describes elliptic curve signature scheme Edwards-curve Digital Signature Algorithm (EdDSA). The algorithm is instantiated with recommended parameters for the edwards25519 and edwards448 curves. An example implementation and test vectors are provided.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8032"/>
          <seriesInfo name="DOI" value="10.17487/RFC8032"/>
        </reference>
        <reference anchor="I-D.irtf-cfrg-det-sigs-with-noise">
          <front>
            <title>Hedged ECDSA and EdDSA Signatures</title>
            <author fullname="John Preuß Mattsson" initials="J. P." surname="Mattsson">
              <organization>Ericsson</organization>
            </author>
            <author fullname="Erik Thormarker" initials="E." surname="Thormarker">
              <organization>Ericsson</organization>
            </author>
            <author fullname="Sini Ruohomaa" initials="S." surname="Ruohomaa">
              <organization>Ericsson</organization>
            </author>
            <date day="6" month="November" year="2024"/>
            <abstract>
              <t>   Deterministic elliptic-curve signatures such as deterministic ECDSA
   and EdDSA have gained popularity over randomized ECDSA as their
   security does not depend on a source of high-quality randomness.
   Recent research, however, has found that implementations of these
   signature algorithms may be vulnerable to certain side-channel and
   fault injection attacks due to their deterministic nature.  One
   countermeasure to such attacks is hedged signatures where the
   calculation of the per-message secret number includes both fresh
   randomness and the message.  This document updates RFC 6979 and RFC
   8032 to recommend hedged constructions in deployments where side-
   channel attacks and fault injection attacks are a concern.  The
   updates are invisible to the validator of the signature and
   compatible with existing ECDSA and EdDSA validators.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-irtf-cfrg-det-sigs-with-noise-04"/>
        </reference>
      </references>
    </references>
    <?line 834?>

<section numbered="false" anchor="acknowledgments">
      <name>Acknowledgments</name>
      <t>We would like to thank
Ben Kaduk,
Hendrik Brockhaus,
and
John Mattsson.</t>
    </section>
    <section anchor="contributors" numbered="false" toc="include" removeInRFC="false">
      <name>Contributors</name>
      <contact initials="J." surname="Sosinowicz" fullname="Juliusz Sosinowicz">
        <organization/>
        <address>
      </address>
      </contact>
      <contact initials="A." surname="Kraus" fullname="Achim Kraus">
        <organization/>
        <address>
      </address>
      </contact>
    </section>
  </back>
  <!-- ##markdown-source:
H4sIAAAAAAAAA9V9a3LbWJbmf6wCLceEpW6SlmTJtjzTXUVLclppy1aJyqyu
7uhwQuQliTIIsAFQMivLHbOH2UCtYhZQs5NZyZzvnHNfIKWsqpieiMnIyKRI
4D7OPe/X7ff7SZu3hXmd3nwYPTuj/6QHg+fpVV1N88I06bSq03Zu0ouyNXVp
2rSapjfzvJw1SXZ7W5u7zosX1Y17OZlU4zJb0NiTOpu2/dy00/6qzfpt0Rw8
7+dV21/Ko/0ia03TJmP636yq16/Tpp0kq+UEX79OX54cHifjqmxM2azo77Ze
maRZ3S7ypsmrsl0vaY6L85u3SZIva/69aQ/390/2D5OsNtnrdGTGqzpv18l9
VX+Z1dVq+Tr94WaYfDFr+mby2u2vf4alJknTZuXkc1ZUJQ29pr0s89dJmtbT
sZk07brQb9O0rcbBx7ycmLK1XzRV3dZm2ri/14voz7bOx+7hcbVY0Lvu17ws
8tJPY762/SJv2j4NclsV9FjV//t/kPeWmR+GwNL5JgDcNCsakyTZqp1XNe2n
Tz9jJvrp3SC9acbzamrKfMZfy9G9y8qS8KDzmz37d/031yP+pqpnWZn/IWvp
QAi2ZX5n6oYgDoQZLpdFbibpaJybckyjvanKsn89N3nZH+VGhhxXq7LF0X9n
6kVWrvlLs8jywi5i4Bfx69ni64COK4n2cDNI31ZNQ2sINnAzrxZZE/0Qr3Xn
Q15mdbUTTigvDfSlXxf8xIAAG094OUiv8/E8qydNVQZzXuJLU3R/7Mw7IhQz
Be01HVXT9p4wNf0toWcTrWQxrv8BhPPrxj49GGcJqIGw53bVds/x+wGN1uRl
dZ+P/xAs6ftVka+aP0Q/Bq8NB+n7Ols1wRvD8Txf6LdJWdGhtHSooAJQ+8Hz
1+n129OTg6OX9I3/4tXR0Qsiw3IaviAPvsDHi/7ZgBnB8t9X+ZL+O+6bckaY
TuiC369+c9o//3h+/d3vXqdnny4GB/uDg4Oj42fPj1+9PHh+PHh+fHL46vBA
n7w6v37rn9vff/ns5OWr/vP+/vOD/uHB4av9/uHnwyN6+LQaXvH6Xh4eH9Lf
w7Oz17zX1BGD/kOHpMyE/1TuOJxkS+wmPfs4Ss/yZlwRfq/T3Wwy2eNTI5aY
fgfGoq9l9cwQCc7bdtm8fvaMOFnW1tn4i6l5+wOa5tn97Bm9/yy7rVbtM3kP
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
knxfzcv0kgQ40V05SP4PRDiwy7iiAAA=

-->

</rfc>
