<?xml version='1.0' encoding='utf-8'?>
<rfc xmlns:xi="http://www.w3.org/2001/XInclude" version="3" ipr="trust200902" docName="draft-ietf-tls-tls13-pkcs1-07" number="9963" updates="" obsoletes="" xml:lang="en" category="std" consensus="true" submissionType="IETF" tocInclude="true" sortRefs="true" symRefs="true" prepTime="2026-04-28T15:48:51" indexInclude="true" scripts="Common,Latin" tocDepth="3">
  <link href="https://datatracker.ietf.org/doc/draft-ietf-tls-tls13-pkcs1-07" rel="prev"/>
  <link href="https://dx.doi.org/10.17487/rfc9963" rel="alternate"/>
  <link href="urn:issn:2070-1721" rel="alternate"/>
  <front>
    <title abbrev="Legacy PKCS #1 Code Points for TLS 1.3">Legacy RSASSA-PKCS1-v1_5 Code Points for TLS 1.3</title>
    <seriesInfo name="RFC" value="9963" stream="IETF"/>
    <author initials="D." surname="Benjamin" fullname="David Benjamin">
      <organization showOnFrontPage="true">Google LLC</organization>
      <address>
        <email>davidben@google.com</email>
      </address>
    </author>
    <author initials="A." surname="Popov" fullname="Andrei Popov">
      <organization showOnFrontPage="true">Microsoft Corp.</organization>
      <address>
        <email>andreipo@microsoft.com</email>
      </address>
    </author>
    <date month="04" year="2026"/>
    <area>SEC</area>
    <workgroup>tls</workgroup>
    <abstract pn="section-abstract">
      <t indent="0" pn="section-abstract-1">This document allocates code points for the use of RSASSA-PKCS1-v1_5 with
client certificates in TLS 1.3. This removes an obstacle for some deployments
to migrate to TLS 1.3.</t>
    </abstract>
    <boilerplate>
      <section anchor="status-of-memo" numbered="false" removeInRFC="false" toc="exclude" pn="section-boilerplate.1">
        <name slugifiedName="name-status-of-this-memo">Status of This Memo</name>
        <t indent="0" pn="section-boilerplate.1-1">
            This is an Internet Standards Track document.
        </t>
        <t indent="0" pn="section-boilerplate.1-2">
            This document is a product of the Internet Engineering Task Force
            (IETF).  It represents the consensus of the IETF community.  It has
            received public review and has been approved for publication by
            the Internet Engineering Steering Group (IESG).  Further
            information on Internet Standards is available in Section 2 of 
            RFC 7841.
        </t>
        <t indent="0" pn="section-boilerplate.1-3">
            Information about the current status of this document, any
            errata, and how to provide feedback on it may be obtained at
            <eref target="https://www.rfc-editor.org/info/rfc9963" brackets="none"/>.
        </t>
      </section>
      <section anchor="copyright" numbered="false" removeInRFC="false" toc="exclude" pn="section-boilerplate.2">
        <name slugifiedName="name-copyright-notice">Copyright Notice</name>
        <t indent="0" pn="section-boilerplate.2-1">
            Copyright (c) 2026 IETF Trust and the persons identified as the
            document authors. All rights reserved.
        </t>
        <t indent="0" pn="section-boilerplate.2-2">
            This document is subject to BCP 78 and the IETF Trust's Legal
            Provisions Relating to IETF Documents
            (<eref target="https://trustee.ietf.org/license-info" brackets="none"/>) in effect on the date of
            publication of this document. Please review these documents
            carefully, as they describe your rights and restrictions with
            respect to this document. Code Components extracted from this
            document must include Revised BSD License text as described in
            Section 4.e of the Trust Legal Provisions and are provided without
            warranty as described in the Revised BSD License.
        </t>
      </section>
    </boilerplate>
    <toc>
      <section anchor="toc" numbered="false" removeInRFC="false" toc="exclude" pn="section-toc.1">
        <name slugifiedName="name-table-of-contents">Table of Contents</name>
        <ul bare="true" empty="true" indent="2" spacing="compact" pn="section-toc.1-1">
          <li pn="section-toc.1-1.1">
            <t indent="0" keepWithNext="true" pn="section-toc.1-1.1.1"><xref derivedContent="1" format="counter" sectionFormat="of" target="section-1"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-introduction">Introduction</xref></t>
          </li>
          <li pn="section-toc.1-1.2">
            <t indent="0" keepWithNext="true" pn="section-toc.1-1.2.1"><xref derivedContent="2" format="counter" sectionFormat="of" target="section-2"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-conventions-and-definitions">Conventions and Definitions</xref></t>
          </li>
          <li pn="section-toc.1-1.3">
            <t indent="0" keepWithNext="true" pn="section-toc.1-1.3.1"><xref derivedContent="3" format="counter" sectionFormat="of" target="section-3"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-pkcs-1-v15-signaturescheme-">PKCS #1 v1.5 SignatureScheme Types</xref></t>
          </li>
          <li pn="section-toc.1-1.4">
            <t indent="0" pn="section-toc.1-1.4.1"><xref derivedContent="4" format="counter" sectionFormat="of" target="section-4"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-security-considerations">Security Considerations</xref></t>
          </li>
          <li pn="section-toc.1-1.5">
            <t indent="0" pn="section-toc.1-1.5.1"><xref derivedContent="5" format="counter" sectionFormat="of" target="section-5"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-iana-considerations">IANA Considerations</xref></t>
          </li>
          <li pn="section-toc.1-1.6">
            <t indent="0" pn="section-toc.1-1.6.1"><xref derivedContent="6" format="counter" sectionFormat="of" target="section-6"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-references">References</xref></t>
            <ul bare="true" empty="true" indent="2" spacing="compact" pn="section-toc.1-1.6.2">
              <li pn="section-toc.1-1.6.2.1">
                <t indent="0" pn="section-toc.1-1.6.2.1.1"><xref derivedContent="6.1" format="counter" sectionFormat="of" target="section-6.1"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-normative-references">Normative References</xref></t>
              </li>
              <li pn="section-toc.1-1.6.2.2">
                <t indent="0" pn="section-toc.1-1.6.2.2.1"><xref derivedContent="6.2" format="counter" sectionFormat="of" target="section-6.2"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-informative-references">Informative References</xref></t>
              </li>
            </ul>
          </li>
          <li pn="section-toc.1-1.7">
            <t indent="0" pn="section-toc.1-1.7.1"><xref derivedContent="" format="none" sectionFormat="of" target="section-appendix.a"/><xref derivedContent="" format="title" sectionFormat="of" target="name-acknowledgements">Acknowledgements</xref></t>
          </li>
          <li pn="section-toc.1-1.8">
            <t indent="0" pn="section-toc.1-1.8.1"><xref derivedContent="" format="none" sectionFormat="of" target="section-appendix.b"/><xref derivedContent="" format="title" sectionFormat="of" target="name-authors-addresses">Authors' Addresses</xref></t>
          </li>
        </ul>
      </section>
    </toc>
  </front>
  <middle>
    <section anchor="introduction" numbered="true" removeInRFC="false" toc="include" pn="section-1">
      <name slugifiedName="name-introduction">Introduction</name>
      <t indent="0" pn="section-1-1">TLS 1.3 <xref target="RFC8446" format="default" sectionFormat="of" derivedContent="RFC8446"/> removed support for RSASSA-PKCS1-v1_5 <xref target="RFC8017" format="default" sectionFormat="of" derivedContent="RFC8017"/> in
CertificateVerify messages in favor of RSASSA-PSS. While RSASSA-PSS is a
long-established signature algorithm, some legacy hardware cryptographic devices
lack support for it. While uncommon in TLS servers, these devices are sometimes
used by TLS clients for client certificates.</t>
      <t indent="0" pn="section-1-2">For example, Trusted Platform Modules (TPMs) are ubiquitous hardware
cryptographic devices that are often used to protect TLS client certificate
private keys. However, a large number of TPMs are unable to produce RSASSA-PSS
signatures compatible with TLS 1.3. TPM specifications prior to 2.0 did not
define RSASSA-PSS support (see Section 5.8.1 of <xref target="TPM12" format="default" sectionFormat="of" derivedContent="TPM12"/>). TPM 2.0
includes RSASSA-PSS, but only those TPM 2.0 devices compatible with US FIPS
186-4 can be relied upon to use the salt length matching the digest length, as
required for compatibility with TLS 1.3 (see Appendix B.7 of <xref target="TPM2" format="default" sectionFormat="of" derivedContent="TPM2"/>).</t>
      <t indent="0" pn="section-1-3">TLS connections that rely on such devices cannot migrate to TLS 1.3. Staying on
TLS 1.2 leaks the client certificate to network attackers
<xref target="PRIVACY" format="default" sectionFormat="of" derivedContent="PRIVACY"/> and additionally prevents such
deployments from protecting traffic against retroactive decryption by an
attacker with a quantum computer <xref target="RFC9954" format="default" sectionFormat="of" derivedContent="RFC9954"/>.</t>
      <t indent="0" pn="section-1-4">Additionally, TLS negotiates protocol versions before client certificates.
Clients send ClientHellos without knowing whether the server will request to
authenticate with legacy keys. Conversely, servers respond with a TLS
version and CertificateRequest without knowing if the client will then
respond with a legacy key. If the client and server, respectively, offer and
negotiate TLS 1.3, the connection will fail due to the legacy key, when it
previously succeeded at TLS 1.2.</t>
      <t indent="0" pn="section-1-5">To recover from this failure, one side must globally disable TLS 1.3 or the
client must implement an external fallback. Disabling TLS 1.3 impacts
connections that would otherwise be unaffected by this issue, while external
fallbacks break TLS's security analysis and may introduce vulnerabilities
<xref target="POODLE" format="default" sectionFormat="of" derivedContent="POODLE"/>.</t>
      <t indent="0" pn="section-1-6">This document allocates code points to use these legacy keys with client
certificates in TLS 1.3. This reduces the pressure on implementations to select
one of these problematic mitigations and unblocks TLS 1.3 deployment.</t>
    </section>
    <section anchor="conventions-and-definitions" numbered="true" removeInRFC="false" toc="include" pn="section-2">
      <name slugifiedName="name-conventions-and-definitions">Conventions and Definitions</name>
      <t indent="0" pn="section-2-1">
    The key words "<bcp14>MUST</bcp14>", "<bcp14>MUST NOT</bcp14>", "<bcp14>REQUIRED</bcp14>", "<bcp14>SHALL</bcp14>", "<bcp14>SHALL NOT</bcp14>", "<bcp14>SHOULD</bcp14>", "<bcp14>SHOULD NOT</bcp14>", "<bcp14>RECOMMENDED</bcp14>", "<bcp14>NOT RECOMMENDED</bcp14>",
    "<bcp14>MAY</bcp14>", and "<bcp14>OPTIONAL</bcp14>" in this document are to be interpreted as
    described in BCP 14 <xref target="RFC2119" format="default" sectionFormat="of" derivedContent="RFC2119"/> <xref target="RFC8174" format="default" sectionFormat="of" derivedContent="RFC8174"/> 
    when, and only when, they appear in all capitals, as shown here.
      </t>
    </section>
    <section anchor="pkcs1-v15-signaturescheme-types" numbered="true" removeInRFC="false" toc="include" pn="section-3">
      <name slugifiedName="name-pkcs-1-v15-signaturescheme-">PKCS #1 v1.5 SignatureScheme Types</name>
      <t indent="0" pn="section-3-1">The following SignatureScheme values are defined for use with TLS 1.3.</t>
      <artwork align="left" pn="section-3-2">
    enum {
        rsa_pkcs1_sha256_legacy(0x0420),
        rsa_pkcs1_sha384_legacy(0x0520),
        rsa_pkcs1_sha512_legacy(0x0620),
    } SignatureScheme;</artwork>
      <t indent="0" pn="section-3-3">The above code points indicate a signature algorithm using RSASSA-PKCS1-v1_5
<xref target="RFC8017" format="default" sectionFormat="of" derivedContent="RFC8017"/> with the corresponding hash algorithm as defined in
<xref target="SHS" format="default" sectionFormat="of" derivedContent="SHS"/>. They are only defined for signatures in
the client CertificateVerify message and are not defined for use in other
contexts. In particular, servers that intend to advertise support for
RSASSA-PKCS1-v1_5 signatures in the certificates themselves should use the
<tt>rsa_pkcs1_*</tt> constants defined in <xref target="RFC8446" format="default" sectionFormat="of" derivedContent="RFC8446"/>.</t>
      <t indent="0" pn="section-3-4">Clients <bcp14>MUST NOT</bcp14> advertise these values in the <tt>signature_algorithms</tt> extension
of the ClientHello. They <bcp14>MUST NOT</bcp14> accept these values in the server
CertificateVerify message.</t>
      <t indent="0" pn="section-3-5">Servers that wish to support clients authenticating with legacy
RSASSA-PKCS1-v1_5-only keys <bcp14>MAY</bcp14> send these values in the
<tt>signature_algorithms</tt> extension of the CertificateRequest message and accept
them in the client CertificateVerify message. Servers <bcp14>MUST NOT</bcp14> accept these code
points if not offered in the CertificateRequest message.</t>
      <t indent="0" pn="section-3-6">Clients with such legacy keys <bcp14>MAY</bcp14> negotiate the use of these signature
algorithms if offered by the server.  Clients <bcp14>SHOULD NOT</bcp14> negotiate the use of these signature algorithms with
keys that support RSASSA-PSS, though this may not be practical to determine in
all applications. For example, attempting to test a key for support might
result in a message to the user or have other side effects.</t>
      <t indent="0" pn="section-3-7">TLS implementations <bcp14>SHOULD</bcp14> disable these code points by default. See
<xref target="security-considerations" format="default" sectionFormat="of" derivedContent="Section 4"/>.</t>
    </section>
    <section anchor="security-considerations" numbered="true" removeInRFC="false" toc="include" pn="section-4">
      <name slugifiedName="name-security-considerations">Security Considerations</name>
      <t indent="0" pn="section-4-1">The considerations in <xref target="introduction" format="default" sectionFormat="of" derivedContent="Section 1"/> do not apply to server keys, so these new
code points are forbidden for use with server certificates. RSASSA-PSS continues
to be required for TLS 1.3 servers using RSA keys. This minimizes the impact to
only those cases in which it is necessary to unblock deployment of TLS 1.3.</t>
      <t indent="0" pn="section-4-2">When implemented incorrectly, RSASSA-PKCS1-v1_5 admits signature
forgeries <xref target="MFSA201473" format="default" sectionFormat="of" derivedContent="MFSA201473"/>. Implementations producing or verifying signatures
with these algorithms <bcp14>MUST</bcp14> implement RSASSA-PKCS1-v1_5 as specified in <xref target="RFC8017" section="8.2" format="default" sectionFormat="of" derivedLink="https://rfc-editor.org/rfc/rfc8017#section-8.2" derivedContent="RFC8017"/>. In particular, clients <bcp14>MUST</bcp14> include the mandatory NULL
parameter in the DigestInfo structure and produce a valid DER <xref target="X690" format="default" sectionFormat="of" derivedContent="X690"/>
encoding. Servers <bcp14>MUST</bcp14> reject signatures which do not meet these requirements.</t>
    </section>
    <section anchor="iana-considerations" numbered="true" removeInRFC="false" toc="include" pn="section-5">
      <name slugifiedName="name-iana-considerations">IANA Considerations</name>
      <t indent="0" pn="section-5-1">IANA has created the following entries in the
"TLS SignatureScheme" registry. The "Recommended" column
has been set to "N", and the "Reference" column refers to this document.</t>
      <table align="center" pn="table-1">
        <thead>
          <tr>
            <th align="left" colspan="1" rowspan="1">Value</th>
            <th align="left" colspan="1" rowspan="1">Description</th>
          </tr>
        </thead>
        <tbody>
          <tr>
            <td align="left" colspan="1" rowspan="1">0x0420</td>
            <td align="left" colspan="1" rowspan="1">
              <tt>rsa_pkcs1_sha256_legacy</tt></td>
          </tr>
          <tr>
            <td align="left" colspan="1" rowspan="1">0x0520</td>
            <td align="left" colspan="1" rowspan="1">
              <tt>rsa_pkcs1_sha384_legacy</tt></td>
          </tr>
          <tr>
            <td align="left" colspan="1" rowspan="1">0x0620</td>
            <td align="left" colspan="1" rowspan="1">
              <tt>rsa_pkcs1_sha512_legacy</tt></td>
          </tr>
        </tbody>
      </table>
    </section>
  </middle>
  <back>
    <references anchor="sec-combined-references" pn="section-6">
      <name slugifiedName="name-references">References</name>
      <references anchor="sec-normative-references" pn="section-6.1">
        <name slugifiedName="name-normative-references">Normative References</name>
        <reference anchor="RFC2119" target="https://www.rfc-editor.org/info/rfc2119" quoteTitle="true" derivedAnchor="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 indent="0">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="RFC8017" target="https://www.rfc-editor.org/info/rfc8017" quoteTitle="true" derivedAnchor="RFC8017">
          <front>
            <title>PKCS #1: RSA Cryptography Specifications Version 2.2</title>
            <author fullname="K. Moriarty" initials="K." role="editor" surname="Moriarty"/>
            <author fullname="B. Kaliski" initials="B." surname="Kaliski"/>
            <author fullname="J. Jonsson" initials="J." surname="Jonsson"/>
            <author fullname="A. Rusch" initials="A." surname="Rusch"/>
            <date month="November" year="2016"/>
            <abstract>
              <t indent="0">This document provides recommendations for the implementation of public-key cryptography based on the RSA algorithm, covering cryptographic primitives, encryption schemes, signature schemes with appendix, and ASN.1 syntax for representing keys and for identifying the schemes.</t>
              <t indent="0">This document represents a republication of PKCS #1 v2.2 from RSA Laboratories' Public-Key Cryptography Standards (PKCS) series. By publishing this RFC, change control is transferred to the IETF.</t>
              <t indent="0">This document also obsoletes RFC 3447.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8017"/>
          <seriesInfo name="DOI" value="10.17487/RFC8017"/>
        </reference>
        <reference anchor="RFC8174" target="https://www.rfc-editor.org/info/rfc8174" quoteTitle="true" derivedAnchor="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 indent="0">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="RFC8446" target="https://www.rfc-editor.org/info/rfc8446" quoteTitle="true" derivedAnchor="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 indent="0">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 indent="0">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="SHS" target="https://nvlpubs.nist.gov/nistpubs/FIPS/NIST.FIPS.180-4.pdf" quoteTitle="true" derivedAnchor="SHS">
          <front>
            <title>Secure Hash Standard</title>
            <author>
              <organization abbrev="NIST" showOnFrontPage="true">National Institute of Standards and Technology</organization>
            </author>
            <date month="August" year="2015"/>
          </front>
          <seriesInfo name="NIST FIPS" value="180-4"/>
          <seriesInfo name="DOI" value="10.6028/NIST.FIPS.180-4"/>
        </reference>
        <reference anchor="TPM12" target="https://trustedcomputinggroup.org/wp-content/uploads/TPM-Main-Part-2-TPM-Structures_v1.2_rev116_01032011.pdf" quoteTitle="true" derivedAnchor="TPM12">
          <front>
            <title>TPM Main, Part 2 - Structures of the TPM</title>
            <author>
              <organization showOnFrontPage="true">Trusted Computing Group</organization>
            </author>
            <date year="2011" month="March" day="01"/>
          </front>
          <refcontent>Level 2, Version 1.2, Revision 116</refcontent>
        </reference>
        <reference anchor="TPM2" target="https://trustedcomputinggroup.org/wp-content/uploads/TCG_TPM2_r1p59_Part1_Architecture_pub.pdf" quoteTitle="true" derivedAnchor="TPM2">
          <front>
            <title>Trusted Platform Module Library, Part 1: Architecture</title>
            <author>
              <organization showOnFrontPage="true">Trusted Computing Group</organization>
            </author>
            <date year="2019" month="November" day="08"/>
          </front>
          <refcontent>Family 2.0, Level 00, Revision 01.59</refcontent>
        </reference>
        <reference anchor="X690" target="https://www.itu.int/rec/T-REC-X.690" quoteTitle="true" derivedAnchor="X690">
          <front>
            <title>Information technology - ASN.1 encoding rules: Specification of Basic Encoding Rules (BER), Canonical Encoding Rules (CER) and Distinguished Encoding Rules (DER)</title>
            <author>
              <organization showOnFrontPage="true">ITU-T</organization>
            </author>
            <date year="2021" month="February"/>
          </front>
          <seriesInfo name="ITU-T Recommendation" value="X.690"/>
          <seriesInfo name="ISO/IEC" value="8825-1:2021"/>
        </reference>
      </references>
      <references anchor="sec-informative-references" pn="section-6.2">
        <name slugifiedName="name-informative-references">Informative References</name>
        <reference anchor="MFSA201473" target="https://www.mozilla.org/en-US/security/advisories/mfsa2014-73/" quoteTitle="true" derivedAnchor="MFSA201473">
          <front>
            <title>Mozilla Foundation Security Advisory 2014-73: RSA Signature Forgery in NSS</title>
            <author initials="A." surname="Delignat-Lavaud" fullname="Antoine Delignat-Lavaud">
              <organization showOnFrontPage="true"/>
            </author>
            <date year="2014" month="September" day="24"/>
          </front>
        </reference>
        <reference anchor="POODLE" target="https://security.googleblog.com/2014/10/this-poodle-bites-exploiting-ssl-30.html" quoteTitle="true" derivedAnchor="POODLE">
          <front>
            <title>This POODLE bites: exploiting the SSL 3.0 fallback</title>
            <author initials="B." surname="Moeller" fullname="Bodo Moeller">
              <organization showOnFrontPage="true"/>
            </author>
            <date year="2014" month="October" day="14"/>
          </front>
          <refcontent>Google Security Blog</refcontent>
        </reference>
        <reference anchor="PRIVACY" quoteTitle="true" target="https://doi.org/10.23919/tma.2017.8002897" derivedAnchor="PRIVACY">
          <front>
            <title>Push away your privacy: Precise user tracking based on TLS client certificate authentication</title>
            <author fullname="Matthias Wachs" initials="M." surname="Wachs">
              <organization showOnFrontPage="true"/>
            </author>
            <author fullname="Quirin Scheitle" initials="Q." surname="Scheitle">
              <organization showOnFrontPage="true"/>
            </author>
            <author fullname="Georg Carle" initials="G." surname="Carle">
              <organization showOnFrontPage="true"/>
            </author>
            <date month="June" year="2017"/>
          </front>
          <refcontent>2017 Network Traffic Measurement and Analysis Conference (TMA). pp. 1-9</refcontent>
          <seriesInfo name="DOI" value="10.23919/tma.2017.8002897"/>
        </reference>
        <reference anchor="RFC9954" target="https://www.rfc-editor.org/info/rfc9954" quoteTitle="true" derivedAnchor="RFC9954">
          <front>
            <title>Hybrid Key Exchange in TLS 1.3</title>
            <author initials="D." surname="Stebila" fullname="Douglas Stebila">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="S." surname="Fluhrer" fullname="Scott Fluhrer">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="S." surname="Gueron" fullname="Shay Gueron">
              <organization showOnFrontPage="true"/>
            </author>
            <date month="April" year="2026"/>
          </front>
          <seriesInfo name="RFC" value="9954"/>
          <seriesInfo name="DOI" value="10.17487/RFC9954"/>
        </reference>
      </references>
    </references>
    <section numbered="false" anchor="acknowledgements" removeInRFC="false" toc="include" pn="section-appendix.a">
      <name slugifiedName="name-acknowledgements">Acknowledgements</name>
      <t indent="0" pn="section-appendix.a-1">Thanks to <contact fullname="Rifaat Shekh-Yusef"/>, <contact fullname="Martin Thomson"/>, and <contact fullname="Paul Wouters"/> for providing feedback on this document.</t>
    </section>
    <section anchor="authors-addresses" numbered="false" removeInRFC="false" toc="include" pn="section-appendix.b">
      <name slugifiedName="name-authors-addresses">Authors' Addresses</name>
      <author initials="D." surname="Benjamin" fullname="David Benjamin">
        <organization showOnFrontPage="true">Google LLC</organization>
        <address>
          <email>davidben@google.com</email>
        </address>
      </author>
      <author initials="A." surname="Popov" fullname="Andrei Popov">
        <organization showOnFrontPage="true">Microsoft Corp.</organization>
        <address>
          <email>andreipo@microsoft.com</email>
        </address>
      </author>
    </section>
  </back>
</rfc>
