<?xml version='1.0' encoding='UTF-8'?>

<!DOCTYPE rfc [
  <!ENTITY nbsp    "&#160;">
  <!ENTITY zwsp   "&#8203;">
  <!ENTITY nbhy   "&#8209;">
  <!ENTITY wj     "&#8288;">
]>

<rfc xmlns:xi="http://www.w3.org/2001/XInclude" ipr="trust200902" docName="draft-ietf-uta-require-tls13-12" number="9852" category="bcp" consensus="true" submissionType="IETF" updates="9325" obsoletes="" tocInclude="true" sortRefs="true" symRefs="true" version="3" xml:lang="en">

  <front>
    <title abbrev="New Protocols Using TLS Must Require TLS 1.3">New Protocols Using TLS Must Require TLS 1.3</title>
    <seriesInfo name="RFC" value="9852"/>
    <seriesInfo name="BCP" value="195"/>
    <author fullname="Rich Salz">
      <organization>Akamai Technologies</organization>
      <address>
        <email>rsalz@akamai.com</email>
      </address>
    </author>
    <author fullname="Nimrod Aviram">
      <organization/>
      <address>
        <email>nimrod.aviram@gmail.com</email>
      </address>
    </author>
    <date year="2026" month="January"/>
    <area>Security</area>
    <workgroup>Using TLS in Applications</workgroup>

    <keyword>TLS</keyword>
    <keyword>TLS Transition</keyword>
    <keyword>TLS Support</keyword>
    <keyword>Interoperability</keyword>
    <keyword>features</keyword>

    <abstract>

      
<t>TLS 1.3 is widely used, has had comprehensive security proofs, and
improves both security and privacy deficiencies in TLS 1.2.  Therefore, new protocols
that use TLS must require TLS 1.3.  As DTLS 1.3 is not widely available or
deployed, this prescription does not pertain to DTLS (in any DTLS version);
it pertains to TLS only.</t>
      <t>This document updates RFC 9325. It discusses post-quantum cryptography and the
security and privacy improvements in TLS 1.3 as the rationale for the update.</t>
    </abstract>

  </front>
  <middle>

    <section anchor="sec-reasons">
      <name>Introduction</name>

     <t>This document specifies that new protocols
that use TLS must assume that TLS 1.3 is available and require its use. 
As DTLS 1.3 is not widely available or
deployed, this prescription does not pertain to DTLS (in any DTLS version);
it pertains to TLS only.</t>
      <t>TLS 1.3 <xref target="RFC9846"/> is in widespread use and fixes most known deficiencies with
TLS 1.2.  Examples of this include encrypting more of the traffic so that it
is not readable by outsiders and removing most cryptographic primitives
now considered weak. Importantly, the protocol has had comprehensive
security proofs and should provide excellent security without any additional
configuration.</t>
      <t>TLS 1.2 <xref target="RFC5246"/> is in use and can be configured such that it provides good
security properties.  However, TLS 1.2 suffers from several deficiencies, as
described in <xref target="sec-considerations"/>.  Addressing them usually requires
      bespoke configuration.</t>

      <t>This document updates <xref target="RFC9325"/>. It discusses post-quantum cryptography
and the security and privacy improvements in TLS 1.3 as the rationale for the update. See <xref target="rfc9325-updates"/>.</t>
    </section>
    <section anchor="conventions">
      <name>Conventions</name>
        <t>
    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"/> <xref target="RFC8174"/> 
    when, and only when, they appear in all capitals, as shown here.
        </t>
    </section>
    <section anchor="implications-for-post-quantum-cryptography-pqc">
      <name>Implications for Post-Quantum Cryptography (PQC)</name>
      <t>Cryptographically Relevant Quantum Computers (CRQCs), once available, will
have a huge impact on TLS traffic (see, e.g., <xref section="3" sectionFormat="of" target="I-D.ietf-pquip-pqc-engineers"/>).  To mitigate this, TLS applications will
need to migrate to Post-Quantum Cryptography (PQC) <xref target="PQC"/>.  Detailed
considerations of when an application requires PQC or when a CRQC is a threat
that an application needs to protect against are beyond the scope of this
      document.</t>

      <t>It is important to note that the
TLS Working Group is focusing its efforts on TLS 1.3
or later; TLS 1.2 will not be supported (see <xref target="RFC9851"/>).
This is one more reason for new protocols to require TLS to default to TLS 1.3,
where
PQC is actively being standardized, as this gives new applications
the option to use PQC.</t>
    </section>
    <section anchor="tls-use-by-other-protocols-and-applications">
      <name>TLS Use by Other Protocols and Applications</name>
      <t>Any new protocol that uses TLS <bcp14>MUST</bcp14> specify TLS 1.3 as its default.
For example, QUIC <xref target="RFC9001"/> requires TLS 1.3 and specifies that endpoints
<bcp14>MUST</bcp14> terminate the connection if an older version is used.</t>
      <t>If deployment considerations are a concern, the protocol <bcp14>MAY</bcp14> specify TLS 1.2 as
an additional, non-default option.
As a counter example, the Usage Profile for DNS over TLS <xref target="RFC8310"/> specifies
TLS 1.2 as the default, while also allowing TLS 1.3.
For newer specifications that choose to support TLS 1.2, those preferences are
      to be reversed.</t>

      <t>The initial TLS handshake allows a client to specify which versions of 
TLS it supports, and the server is intended to pick the highest
version that it also supports.  This is known as "TLS version
negotiation"; protocol and negotiation details are discussed in <xref section="4.2.1" sectionFormat="of" target="RFC9846"/> and <xref section="E" sectionFormat="of" target="RFC5246"/>.  Many TLS libraries provide a way
for applications to specify the range of versions they want, including an
      open interval where only the lowest or highest version is specified.</t>

      <t>If the application is using a TLS implementation that supports TLS version negotiation
and if it knows that the TLS implementation will use the highest version
supported, then
clients <bcp14>SHOULD</bcp14> specify just the minimum version they want.
This <bcp14>MUST</bcp14> be TLS 1.3 or TLS 1.2, depending on the circumstances described
in the above paragraphs.</t>
    </section>
    <section anchor="rfc9325-updates">
      <name>Changes to RFC 9325</name>

      <t><xref target="RFC9325"/> provides recommendations for ensuring the security of deployed
services that use TLS and, unlike this document, DTLS as well.
<xref target="RFC9325"/> describes TLS 1.3
as "widely available", and the transition to TLS 1.3 has further increased since publication of that document.
This document thus makes two changes
to the recommendations in <xref section="3.1.1" sectionFormat="of" target="RFC9325"/>:</t>
      <ul spacing="normal">
        <li>
          <t>That section says that TLS 1.3 <bcp14>SHOULD</bcp14> be supported; this document mandates
that TLS 1.3 <bcp14>MUST</bcp14> be supported for new protocols using TLS.</t>
        </li>
        <li>
          <t>That section says that TLS 1.2 <bcp14>MUST</bcp14> be supported; this document says that
TLS 1.2 <bcp14>MAY</bcp14> be supported as described above.</t>
        </li>
      </ul>
      <t>Again, these changes only apply to TLS, and not DTLS.</t>
    </section>
    <section anchor="sec-considerations">
      <name>Security Considerations</name>
      <t>TLS 1.2 was specified with several cryptographic primitives and design choices
that have, over time, become significantly weaker. The purpose of this section is to
briefly survey several such prominent problems that have affected the protocol.
It should be noted, however, that TLS 1.2 can be configured securely; it is
merely much more difficult to configure it securely as opposed to using its
modern successor, TLS 1.3. See <xref target="RFC9325"/> for a more thorough guide on the
      secure deployment of TLS 1.2.</t>

      <t>First, without any extensions, TLS 1.2 is vulnerable to
renegotiation attacks (see <xref target="RENEG1"/> and <xref target="RENEG2"/>)  and the
Triple Handshake attack (see <xref target="TRIPLESHAKE"/>).
Broadly, these attacks
exploit the protocol's support for renegotiation in order to inject a prefix
chosen by the attacker into the plaintext stream. This is usually a devastating
threat in practice (e.g., it allows an attacker to obtain secret cookies in a web setting).
In light of
the above problems, <xref target="RFC5746"/> specifies an extension that prevents this
category of attacks. To securely deploy TLS 1.2, either renegotiation must be
disabled entirely, or this extension must be used. Additionally, clients must
      not allow servers to renegotiate the certificate during a connection.</t>

      <t>Second, the original key exchange methods specified for TLS 1.2, namely
RSA key exchange and finite field Diffie-Hellman, suffer from several
weaknesses. To securely deploy the protocol,
most of these key exchange
methods must be disabled.
      See <xref target="I-D.ietf-tls-deprecate-obsolete-kex"/> for details.</t>

      <t>Third, symmetric ciphers that are widely used in TLS 1.2, namely RC4
and Cipher Block Chaining (CBC) cipher suites, suffer from several weaknesses. RC4 suffers from
exploitable biases in its key stream; see <xref target="RFC7465"/>. CBC cipher suites have
been a source of vulnerabilities throughout the years. A straightforward
implementation of these cipher suites inherently suffers from the Lucky13 timing
attack <xref target="LUCKY13"/>. The first attempt to implement the cipher suites in
constant time introduced an even more severe vulnerability <xref target="LUCKY13FIX"/>.
Refer to <xref target="CBCSCANNING"/>
for another example of a vulnerability with CBC cipher suites and a survey of similar works.</t>
      <t>In addition, TLS 1.2 was affected by several other attacks that
TLS 1.3 is immune to:
BEAST <xref target="BEAST"/>, Logjam <xref target="WEAKDH"/>, FREAK <xref target="FREAK"/>, and SLOTH <xref target="SLOTH"/>.</t>
      <t>Finally, while
application-layer traffic in TLS 1.2 is always encrypted, most of the content of the handshake
messages is not. Therefore, the privacy provided is suboptimal.
This is a protocol issue that cannot be addressed by configuration.</t>
    </section>
    <section anchor="iana">
      <name>IANA Considerations</name>
      <t>This document has no IANA actions.</t>
    </section>
  </middle>
  <back>

    <displayreference target="I-D.ietf-tls-deprecate-obsolete-kex" to="KEY-EXCHANGE"/>
    <displayreference target="I-D.ietf-pquip-pqc-engineers" to="PQC-FOR-ENGINEERS"/>
    <displayreference target="RFC5246" to="TLS12"/>
    <displayreference target="RFC9846" to="TLS13"/> 
    <displayreference target="RFC9851" to="TLS12FROZEN"/>
    <displayreference target="RFC9001" to="QUICTLS"/>
    <displayreference target="RFC8310" to="DNSTLS"/>
    <references anchor="sec-combined-references">
      <name>References</name>
      <references anchor="sec-normative-references">
        <name>Normative References</name>
	<xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.5246.xml"/>

        <reference anchor="RFC9846" target="https://www.rfc-editor.org/info/rfc9846">
          <front>
            <title>The Transport Layer Security (TLS) Protocol Version 1.3</title>
            <author initials="E." surname="Rescorla" fullname="Eric Rescorla">
              <organization>Independent</organization>
            </author>
            <date month='January' year='2026'/>
          </front>
          <seriesInfo name="RFC" value="9846"/>
          <seriesInfo name="DOI" value="10.17487/RFC9846"/>
        </reference>

        <reference anchor="RFC9851" target="https://www.rfc-editor.org/info/rfc9851">
          <front>
            <title>TLS 1.2 is in Feature Freeze</title>
            <author initials="R." surname="Salz" fullname="Rich Salz">
              <organization>Akamai Technologies</organization>
            </author>
            <author initials="N." surname="Aviram" fullname="Nimrod Aviram">
            </author>
            <date month="January" year='2026'/>
          </front>
          <seriesInfo name="RFC" value="9851"/>
          <seriesInfo name="DOI" value="10.17487/RFC9851"/>
        </reference>

        <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.2119.xml"/>
        <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.8174.xml"/>
        <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.9325.xml"/>
      </references>
      <references anchor="sec-informative-references">
        <name>Informative References</name>
	<xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.5746.xml"/>
	<xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.9001.xml"/>
	<xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.8310.xml"/>

        <reference anchor="PQC" target="https://www.nist.gov/cybersecurity/what-post-quantum-cryptography">
          <front>
            <title>What Is Post-Quantum Cryptography?</title>
            <author>
              <organization>NIST</organization>
            </author>
            <date year="2025" month="June"/>
          </front>
        </reference>

        <reference anchor="TRIPLESHAKE" target="https://web.archive.org/web/20250804151857/https://mitls.org/pages/attacks/3SHAKE">
          <front>
            <title>Triple Handshakes Considered Harmful: Breaking and Fixing Authentication over TLS</title>
            <author>
              <organization/>
            </author>
          </front>
          <refcontent>Wayback Machine archive</refcontent>
        </reference>
        <reference anchor="RENEG1" target="https://web.archive.org/web/20091231034700/http://www.educatedguesswork.org/2009/11/understanding_the_tls_renegoti.html">
          <front>
            <title>Understanding the TLS Renegotiation Attack</title>
            <author initials="E." surname="Rescorla" fullname="Eric Rescorla">
              <organization/>
            </author>
            <date day="5" month="11" year="2009"/>
          </front>
          <refcontent>Wayback Machine archive</refcontent>
        </reference>
        <reference anchor="RENEG2" target="https://web.archive.org/web/20091228061844/http://extendedsubset.com/?p=8">
          <front>
            <title>Authentication Gap in TLS Renegotiation</title>
            <author initials="M." surname="Ray" fullname="Marsh Ray">
              <organization/>
            </author>
          </front>
          <refcontent>Wayback Machine archive</refcontent>
        </reference>
        <reference anchor="LUCKY13" target="http://www.isg.rhul.ac.uk/tls/TLStiming.pdf">
          <front>
            <title>Lucky Thirteen: Breaking the TLS and DTLS record protocols</title>
            <author initials="N. J." surname="Al Fardan">
              <organization/>
            </author>
            <author initials="K. G." surname="Paterson">
              <organization/>
            </author>
            <date month="2" year="2013"/>
          </front>
        </reference>
        <reference anchor="LUCKY13FIX" target="https://nds.rub.de/media/nds/veroeffentlichungen/2016/10/19/tls-attacker-ccs16.pdf">
          <front>
            <title>Systematic Fuzzing and Testing of TLS Libraries</title>
            <author initials="J." surname="Somorovsky" fullname="Juraj Somorovsky">
              <organization/>
            </author>
            <date month="10" year="2016"/>
          </front>
          <refcontent>CCS '16: Proceedings of the 2016 ACM SIGSAC Conference on Computer and Communications Security, pp. 1492-1504</refcontent>
          <seriesInfo name="DOI" value="10.1145/2976749.2978411"/>
        </reference>
        <reference anchor="CBCSCANNING" target="https://www.usenix.org/system/files/sec19-merget.pdf">
          <front>
            <title>Scalable Scanning and Automatic Classification of TLS Padding Oracle Vulnerabilities</title>
            <author initials="R." surname="Merget" fullname="Robert Merget">
              <organization/>
            </author>
            <author initials="J." surname="Somorovsky" fullname="Juraj Somorovsky">
              <organization/>
            </author>
            <author initials="N." surname="Aviram" fullname="Nimrod Aviram">
              <organization/>
            </author>
            <author initials="C." surname="Young" fullname="Craig Young">
              <organization/>
            </author>
            <author initials="J." surname="Fliegenschmidt" fullname="Janis Fliegenschmidt">
              <organization/>
            </author>
            <author initials="J." surname="Schwenk" fullname="Jorg Schwenk">
              <organization/>
            </author>
            <author initials="Y." surname="Shavitt" fullname="Yuval Shavitt">
              <organization/>
            </author>
            <date month="8" year="2019"/>
          </front>
          <refcontent>28th USENIX Security Symposium (USENIX Security 19)</refcontent>
        </reference>
        <reference anchor="BEAST" target="http://www.hpcc.ecs.soton.ac.uk/dan/talks/bullrun/Beast.pdf">
          <front>
            <title>Here Come the XOR Ninjas</title>
            <author initials="T." surname="Duong" fullname="Thai Duong">
              <organization/>
            </author>
            <author initials="J." surname="Rizzo" fullname="Juliano Rizzo">
              <organization/>
            </author>
            <date month="5" year="2011"/>
          </front>
        </reference>
        <reference anchor="WEAKDH" target="https://dl.acm.org/doi/pdf/10.1145/2810103.2813707">
          <front>
            <title>Imperfect Forward Secrecy: How Diffie-Hellman Fails in Practice</title>
            <author initials="D." surname="Adrian">
              <organization/>
            </author>
            <author initials="K." surname="Bhargavan">
              <organization/>
            </author>
            <author initials="Z." surname="Durumeric">
              <organization/>
            </author>
            <author initials="P." surname="Gaudry">
              <organization/>
            </author>
            <author initials="M." surname="Green">
              <organization/>
            </author>
            <author initials="J. A." surname="Halderman">
              <organization/>
            </author>
            <author initials="N." surname="Heninger">
              <organization/>
            </author>
            <author initials="D." surname="Springall">
              <organization/>
            </author>
            <author initials="E." surname="Thome">
              <organization/>
            </author>
            <author initials="L." surname="Valenta">
              <organization/>
            </author>
            <author initials="B." surname="VanderSloot">
              <organization/>
            </author>
            <author initials="E." surname="Wustrow">
              <organization/>
            </author>
            <author initials="S." surname="Zanella-Beguelin">
              <organization/>
            </author>
            <author initials="P." surname="Zimmerman">
              <organization/>
            </author>
            <date month="10" year="2015"/>
          </front>
          <refcontent>CCS '15: Proceedings of the 22nd ACM SIGSAC Conference on Computer and Communications Security, pp. 5-17</refcontent>
          <seriesInfo name="DOI" value="10.1145/2810103.2813707"/>
        </reference>
        <reference anchor="FREAK" target="https://inria.hal.science/hal-01114250/file/messy-state-of-the-union-oakland15.pdf">
          <front>
            <title>A Messy State of the Union: Taming the Composite State Machines of TLS</title>
            <author initials="B." surname="Beurdouche" fullname="Benjamin Beurdouche">
              <organization/>
            </author>
            <author initials="K." surname="Bhargavan" fullname="Karthikeyan Bhargavan">
              <organization/>
            </author>
            <author initials="A." surname="Delignat-Lavaud" fullname="Antoine Delignat-Lavaud">
              <organization/>
            </author>
            <author initials="C." surname="Fournet" fullname="Cedric Fournet">
              <organization/>
            </author>
            <author initials="M." surname="Kohlweiss" fullname="Markulf Kohlweiss">
              <organization/>
            </author>
            <author initials="A." surname="Pironti" fullname="Alfredo Pironti">
              <organization/>
            </author>
            <author initials="P.-Y." surname="Strub" fullname="Pierre-Yves Strub">
              <organization/>
            </author>
            <author initials="J. K." surname="Zinzindohoue" fullname="Jean Karim Zinzindohoue">
              <organization/>
            </author>
            <date month="5" year="2015"/>
          </front>
          <refcontent>IEEE Symposium on Security &amp; Privacy 2015</refcontent>
          <seriesInfo name="HAL ID:" value="hal-01114250"/>
        </reference>
        <reference anchor="SLOTH" target="https://inria.hal.science/hal-01244855/file/SLOTH_NDSS16.pdf">
          <front>
            <title>Transcript Collision Attacks: Breaking Authentication in TLS, IKE, and SSH</title>
            <author initials="K." surname="Bhargavan" fullname="Karthikeyan Bhargavan">
              <organization/>
            </author>
            <author initials="G." surname="Leurent" fullname="Gaetan Leurent">
              <organization/>
            </author>
            <date month="2" year="2016"/>
          </front>
          <refcontent>Network and Distributed System Security Symposium - NDSS 2016</refcontent>
          <seriesInfo name="DOI" value="10.14722/ndss.2016.23418"/>
          <seriesInfo name="HAL ID:" value="hal-01244855"/>
        </reference>
<!-- [I-D.ietf-pquip-pqc-engineers]
draft-ietf-pquip-pqc-engineers-14
IESG State: EDIT as of 1/5/2026

LONG WAY for author name
-->

<reference anchor="I-D.ietf-pquip-pqc-engineers" target="https://datatracker.ietf.org/doc/html/draft-ietf-pquip-pqc-engineers-14">
<front>
<title>Post-Quantum Cryptography for Engineers</title>
<author fullname="Aritra Banerjee" initials="A." surname="Banerjee">
<organization>Nokia</organization>
</author>
<author fullname="Tirumaleswar Reddy" initials="T." surname="Reddy">
<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="25" month="August" year="2025"/>
</front>
<seriesInfo name="Internet-Draft" value="draft-ietf-pquip-pqc-engineers-14"/>
</reference>

<!-- [I-D.ietf-tls-deprecate-obsolete-kex]
draft-ietf-tls-deprecate-obsolete-kex-06
IESG State: IESG Evaluation as of 1/5/2026
-->
        <xi:include href="https://bib.ietf.org/public/rfc/bibxml3/reference.I-D.ietf-tls-deprecate-obsolete-kex.xml"/>
        <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.7465.xml"/>
      </references>
    </references>
  </back>

</rfc>
