<?xml version="1.0" encoding="UTF-8"?>
  <?xml-stylesheet type="text/xsl" href="rfc2629.xslt" ?>
  <!-- generated by https://github.com/cabo/kramdown-rfc2629 version  -->

<!DOCTYPE rfc SYSTEM "rfc2629.dtd" [
]>

<?rfc toc="yes"?>
<?rfc sortrefs="yes"?>
<?rfc symrefs="yes"?>
<?rfc docmapping="yes"?>

<rfc ipr="trust200902" docName="draft-kampanakis-tls-scas-latest-01" category="std">

  <front>
    <title abbrev="Suppress CAs">Suppressing CA Certificates in TLS 1.3</title>

    <author initials="M." surname="Thomson" fullname="Martin Thomson">
      <organization>Mozilla</organization>
      <address>
        <email>mt@lowentropy.net</email>
      </address>
    </author>
    <author initials="P." surname="Kampanakis" fullname="Panos Kampanakis">
      <organization>AWS</organization>
      <address>
        <email>kpanos@amazon.com</email>
      </address>
    </author>
    <author initials="C." surname="Bytheway" fullname="Cameron Bytheway">
      <organization>AWS</organization>
      <address>
        <email>bythewc@amazon.com</email>
      </address>
    </author>
    <author initials="B.E." surname="Westerbaan" fullname="Bas Westerbaan">
      <organization>Cloudflare</organization>
      <address>
        <email>bas@cloudflare.com</email>
      </address>
    </author>

    <date year="2022" month="March" day="04"/>

    <area>Transport</area>
    <workgroup>TLS</workgroup>
    

    <abstract>


<t>A TLS client or server that has access to the complete set of published
intermediate certificates can inform its peer to avoid sending
certificate authority certificates, thus reducing the size of
the TLS handshake.</t>



    </abstract>


  </front>

  <middle>


<section anchor="introduction" title="Introduction">

<t>The most data heavy part of a TLS handshake is authentication. It usually
consists of a signature, an end-entity certificate and Certificate Authority
(CA) certificates used to authenticate the end-entity to a trusted root CA.
These chains can sometime add to a few kB of data which could be problematic
for some usecases. <xref target="EAPTLSCERT"/> and
<xref target="EAP-TLS13"/> discuss the issues big certificate
chains in EAP authentication. Additionally, it is known that IEEE 802.15.4
<xref target="IEEE802154"/> mesh networks and Wi-SUN <xref target="WISUN"/> Field Area Networks
often notice significant delays due to EAP-TLS authentication in
constrained bandwidth mediums.</t>

<t>To alleviate the data exchanged in TLS
<xref target="RFC8879"/> shrinks certificates by compressing them.
<xref target="CBOR-CERTS"/> uses different
certificate encodings for constrained environments. On the other hand,
<xref target="CTLS"/> proposes the use of certificate dictionaries
to omit sending CA certificates in a Compact TLS handshake.</t>

<t>In a post-quantum context
<xref target="I-D.hoffman-c2pq"/><xref target="NIST_PQ"/><xref target="I-D.ietf-tls-hybrid-design"/>, the TLS
authentication data issue is exacerbated. <xref target="CONEXT-PQTLS13SSH"/><xref target="NDSS-PQTLS13"/>
show that post-quantum certificate chains exceeding the initial TCP
congestion window (10MSS <xref target="RFC6928"/>) will slow down the handshake due
to the extra round-trips they introduce. <xref target="PQTLS"/> shows that big certificate
chains (even smaller than the initial TCP congestion window) will
slow down the handshake in lossy environments. <xref target="TLS-SUPPRESS"/>
quantifies the post-quantum authentication data in QUIC and TLS
and shows that even the leanest post-quantum signature algorithms
will impact QUIC and TLS. <xref target="CL-BLOG"/> also shows that 9-10 kilobyte
certificate chains (even with 30MSS initial TCP congestion window)
will lead to double digit TLS handshake slowdowns. What’s more, it
shows that some clients or middleboxes cannot handle chains larger
than 10kB.</t>

<t>Mechanisms like
<xref target="RFC8879"/><xref target="CBOR-CERTS"/>
would not alleviate the issue with post-quantum certificates
as the bulk of the certificate size is in the post-quantum
public key or signature which is incompressible.</t>

<t>Thus, this document introduces a backwards-compatible mechanism
to shrink the certificate data exchanged in TLS 1.3. In some uses
of public key infrastructure (PKI), intermediate CA certificates
sign end-entity certificates.  In the web PKI, clients require
that certificate authorities disclose all intermediate certificates
that they create. Although the set of intermediate certificates
is large, the size is bounded. Additionally, in some usecases the
set of communicating peers is limited.</t>

<t>For a client or server that has the necessary intermediates,
receiving them during the TLS handshake, increases the data
transmission unnecessarily. This
document defines a signal that a client or server can send to
inform its peer that it already has the intermediate CA
certificates. A peer that receives this signal can
limit the certificate chain it sends to just the
end-entity certificate, saving on handshake size.</t>

<t>This mechanism is intended to be complementary with
certificate compression <xref target="RFC8879"/> in that it
further reduces the size of the handshake especially
for post-quantum certificates.</t>

<t>It is worth noting that <xref target="RFC7924"/> attempted to address the
issue by omitting all certificates in the handshake if the client
or server had cached the peer certificate. This standard has not
seen wide adoption and could allow for TLS session correlation.
Additionally, the short lifetime certificates used today and the
large size of peers in some usecases make the peer certificate
cache update and maintenance mechanism challenging — not the
least because of privacy concerns.  The
mechanism proposed in this document is not susceptible to
these challenges.</t>

</section>
<section anchor="terms-and-definitions" title="Terms and Definitions">

<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.</t>

</section>
<section anchor="suppress-ca-certificates-flag" title="Suppress CA Certificates Flag">

<t>The goal is when a client or server has the intermediate CAs
to build the certificate chain for the peer it is establishing
a TLS connection with, to signal to the peer to not send
theese certificates. TLS <xref target="RFC5246"/>
<xref target="RFC8446"/> allow for the root CA certificate to be
omitted from the handshake under the assumption that
the remote peer already possesses it in order to validate
its peers. Thus, a client or server in possession of
the CA certificates would only need the peer end-entity
certificate to validate its identity which would alleviate
the data flowing in TLS.</t>

<t>It is beyond the scope of this document to define how CA certificates
are identified and stored. In some usecases <xref target="ICA-PRELOAD"/> the peer
may assume that all intermediates are available locally. In other
usecases where not all CA certificates can be stored, there may be
intermediate CA certificate caching and updating mechanisms.
Some options for such mechanisms are discussed in <xref target="TLS-SUPPRESS"/>.</t>

<t>[EDNOTE: One additional option could be to use a TLS extension like
the one defined in <xref target="RFC7924"/> to include the chain fingerprint so
the peer can confirm that he does not need to send the chain because
the peer asking for suppression has the correct chain to validate the
server. That could prevent inadvertent mistakes where the client thinks
it has the intermediates to validate the server, but what it has is wrong.
The shortcoming is that could be used as a cookie.
Alternatively we could HMAC the chain to make it indistinguisable.
Another option is for the server to provide a ticket so client returning
visits tell the server that the client has the ICAs and it does not
need to send them. These options require further evaluation only if
we think that they are worth the effort.]</t>

<t>The 0xTBD1 flag used below to signal ICA suppression can only be sent
in a ClientHello or CertificateRequest message as defined below.
Endpoints that receive a 0xTBD1 flag with a value of 1 in any other
handshake message MUST generate a fatal illegal_parameter alert.</t>

<section anchor="client" title="Client">

<t>A client that believes that it has a current, complete set of intermediate
certificates to authenticate the server sends the tls_flags extension
<xref target="TLS-FLAGS"/> with the 0xTBD1 flag set to 1 in
its ClientHello message.</t>

<t>To prevent a failed TLS connection, a client MAY choose not to send the
flag if its list of ICAs hasn’t been updated in TBD3 time or has any other
reason to believe it does not include the ICAs for its peer.</t>

<t>A server that receives a value of 1 in the 0xTBD1 flag of a ClientHello
message SHOULD omit all certificates other than the end-entity certificate
from its Certificate message that it sends in response. Otherwise if it
does not support CA certificate suppression, the server SHOULD ignore the
0xTBD1 flag.</t>

<t>To prevent a failed TLS connection, a server could choose to send its
intermediates regardless of the flag from the client, if it has a reason
to believe the issuing CAs do not exist in the client ICA list.</t>

<t>If the connection still fails because the client cannot build the
certificate chain to authenticate the server, the client MUST NOT
send the flag in a subsequent connection to the server.</t>

</section>
<section anchor="server-mutual-tls-authentication" title="Server (mutual TLS authentication)">

<t>In a mutual TLS authentication scenario, a server that believes that it
has a current, complete set of intermediate certificates to authenticate
the client, sends the tls_flags extension <xref target="TLS-FLAGS"/>
with the 0xTBD1 flag set to 1 in its CertificateRequest message.</t>

<t>To prevent a failed TLS connection, a server MAY choose not to send the
flag if its list of ICAs hasn’t been updated in TBD3 time or has any other
reason to believe it does not include the ICAs for its peer.</t>

<t>A client that receives a value of 1 in the 0xTBD1 flag in a CertificateRequest
message SHOULD omit all certificates other than the end-entity certificate
from the Certificate message that it sends in response. Otherwise if it
does not support CA certificate suppression, the client SHOULD ignore the
0xTBD flag.</t>

<t>To prevent a failed TLS connection, a client could choose to send its
intermediates regardless of the flag from the server, if it has a reason
to believe the issuing CAs do not exist in the server ICA list.</t>

<t>If the connection still fails because the server cannot build the
certificate chain to authenticate the client, the server MUST NOT
send the flag in a subsequent connection from the client.
[EDNOTE: There is a challenge with this in that the server needs to keep
track of failed client connections.]</t>

</section>
</section>
<section anchor="security-considerations" title="Security Considerations">

<t>This document creates an unencrypted signal in the ClientHello that
might be used to identify which clients believe that they have
intermediates to build the certificate chain for their peer.
Although it does not reveal any additional information about the
peers, it might allow clients to be more effectively fingerprinted
by peers or any passive observers in the network path. A
mitigation against this concern is to encrypt the ClientHello in
TLS 1.3 <xref target="ESNI"/> which would hide the CA certificate
suppression signal.</t>

<t>Even when the 0xTBD1 flag is encrypted in the handshake,
a passive observer could fingerprint the peers by analyzing the TLS
handshake data sizes flowing each direction. Widespread adoption of
the TLS suppression mechanism described in this document will deem
the use of the signal for fingerprinting impractical.
<!-- [EDNOTE: Commenting this out as the probabilistic TLS suppression for the same source-destination would reveal trying to hide TLS suppression. Maybe we can rethink it later] 
To alleviate this
concern the client or server could randomly choose to not request
suppression although it has the CA certificates to validate the peer.
That would prevent a passive attacker concluding if the CA certificate
suppression signal is supported by the client or server. The
probability distribution for chosing to request suppression or not
is a trade-off decision between the risk of fingerprinting and TLS
performance. --></t>

</section>
<section anchor="iana-considerations" title="IANA Considerations">

<t>This document registers the 0xTBD1 in the registry created by
<xref target="TLS-FLAGS"/>.</t>

</section>


  </middle>

  <back>

    <references title='Normative References'>





<reference  anchor="RFC2119" target='https://www.rfc-editor.org/info/rfc2119'>
<front>
<title>Key words for use in RFCs to Indicate Requirement Levels</title>
<author initials='S.' surname='Bradner' fullname='S. Bradner'><organization /></author>
<date year='1997' month='March' />
<abstract><t>In many standards track documents several words are used to signify the requirements in the specification.  These words are often capitalized. This document defines these words as they should be interpreted in IETF documents.  This document specifies an Internet Best Current Practices for the Internet Community, and requests discussion and suggestions for improvements.</t></abstract>
</front>
<seriesInfo name='BCP' value='14'/>
<seriesInfo name='RFC' value='2119'/>
<seriesInfo name='DOI' value='10.17487/RFC2119'/>
</reference>



<reference  anchor="RFC8174" target='https://www.rfc-editor.org/info/rfc8174'>
<front>
<title>Ambiguity of Uppercase vs Lowercase in RFC 2119 Key Words</title>
<author initials='B.' surname='Leiba' fullname='B. Leiba'><organization /></author>
<date year='2017' month='May' />
<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="TLS-FLAGS">
   <front>
      <title>A Flags Extension for TLS 1.3</title>
      <author fullname="Yoav Nir">
	 <organization>Dell Technologies</organization>
      </author>
      <date month="January" day="11" year="2022" />
      <abstract>
	 <t>   A number of extensions are proposed in the TLS working group that
   carry no interesting information except the 1-bit indication that a
   certain optional feature is supported.  Such extensions take 4 octets
   each.  This document defines a flags extension that can provide such
   indications at an average marginal cost of 1 bit each.  More
   precisely, it provides as many flag extensions as needed at 4 + the
   order of the last set bit divided by 8.

	 </t>
      </abstract>
   </front>
   <seriesInfo name="Internet-Draft" value="draft-ietf-tls-tlsflags-08" />
   <format type="TXT" target="https://www.ietf.org/archive/id/draft-ietf-tls-tlsflags-08.txt" />
</reference>




    </references>

    <references title='Informative References'>

<reference anchor="IEEE802154" >
  <front>
    <title>IEEE Standard for Low-Rate Wireless Networks</title>
    <author >
      <organization></organization>
    </author>
    <date year="2020" month="July"/>
  </front>
  <seriesInfo name="DOI" value="10.1109/IEEESTD.2020.9144691"/>
</reference>
<reference anchor="WISUN" target="https://wi-sun.org/">
  <front>
    <title>WI-SUN Alliance</title>
    <author >
      <organization></organization>
    </author>
    <date year="n.d."/>
  </front>
</reference>
<reference anchor="CL-BLOG" target="https://blog.cloudflare.com/sizing-up-post-quantum-signatures/">
  <front>
    <title>Sizing Up Post-Quantum Signatures</title>
    <author initials="B.E." surname="Westerbaan" fullname="Bas Westerbaan">
      <organization></organization>
    </author>
    <date year="2021" month="November"/>
  </front>
</reference>
<reference anchor="CONEXT-PQTLS13SSH" >
  <front>
    <title>Assessing the Overhead of Post-Quantum Cryptography in TLS 1.3 and SSH</title>
    <author initials="D." surname="Sikeridis" fullname="Dimitrios Sikeridis">
      <organization></organization>
    </author>
    <author initials="P." surname="Kampanakis" fullname="Panos Kampanakis">
      <organization></organization>
    </author>
    <author initials="M." surname="Devetsikiotis" fullname="Michael Devetsikiotis">
      <organization></organization>
    </author>
    <date year="2020" month="November"/>
  </front>
  <seriesInfo name="DOI" value="10.1145/3386367.3431305"/>
  <seriesInfo name="ISBN" value="9781450379489"/>
</reference>
<reference anchor="NDSS-PQTLS13" >
  <front>
    <title>Post-Quantum Authentication in TLS 1.3: A Performance Study</title>
    <author initials="D." surname="Sikeridis" fullname="Dimitrios Sikeridis">
      <organization></organization>
    </author>
    <author initials="P." surname="Kampanakis" fullname="Panos Kampanakis">
      <organization></organization>
    </author>
    <author initials="M." surname="Devetsikiotis" fullname="Michael Devetsikiotis">
      <organization></organization>
    </author>
    <date year="2020" month="February"/>
  </front>
  <seriesInfo name="DOI" value="10.14722/ndss.2020.24203"/>
</reference>
<reference anchor="PQTLS" target="https://ia.cr/2019/1447">
  <front>
    <title>Benchmarking Post-Quantum Cryptography in TLS</title>
    <author initials="C." surname="Paquin" fullname="Christian Paquin">
      <organization></organization>
    </author>
    <author initials="D." surname="Stebila" fullname="Douglas Stebila">
      <organization></organization>
    </author>
    <author initials="G." surname="Tamvada" fullname="Goutam Tamvada">
      <organization></organization>
    </author>
    <date year="2019"/>
  </front>
</reference>
<reference anchor="TLS-SUPPRESS" target="https://www.amazon.science/publications/speeding-up-post-quantum-tls-handshakes-by-suppressing-intermediate-ca-certificates">
  <front>
    <title>Speeding up post-quantum TLS handshakes by suppressing intermediate CA certificates</title>
    <author initials="P." surname="Kampanakis" fullname="Panos Kampanakis">
      <organization></organization>
    </author>
    <author initials="M." surname="Kallitsis" fullname="Michael Kallitsis">
      <organization></organization>
    </author>
    <date year="2021"/>
  </front>
</reference>
<reference anchor="ICA-PRELOAD" target="https://blog.mozilla.org/security/2020/11/13/preloading-intermediate-ca-certificates-into-firefox/">
  <front>
    <title>Preloading Intermediate CA Certificates into Firefox</title>
    <author initials="D." surname="Keeler" fullname="Dana Keeler">
      <organization></organization>
    </author>
    <date year="2020" month="November"/>
  </front>
</reference>
<reference anchor="NIST_PQ" target="https://csrc.nist.gov/projects/post-quantum-cryptography">
  <front>
    <title>Post-Quantum Cryptography</title>
    <author initials="." surname="NIST" fullname="National Institute of Standards and Technology">
      <organization></organization>
    </author>
    <date year="2021"/>
  </front>
</reference>



<reference anchor="EAPTLSCERT">
   <front>
      <title>Handling Large Certificates and Long Certificate Chains in TLS-Based EAP Methods</title>
      <author fullname="Mohit Sethi">
	 <organization>Ericsson</organization>
      </author>
      <author fullname="John Mattsson">
	 <organization>Ericsson</organization>
      </author>
      <author fullname="Sean Turner">
	 <organization>sn3rd</organization>
      </author>
      <date month="November" day="20" year="2020" />
      <abstract>
	 <t>The Extensible Authentication Protocol (EAP), defined in RFC 3748, provides a standard mechanism for support of multiple authentication methods.  EAP-TLS and other TLS-based EAP methods are widely deployed and used for network access authentication.  Large certificates and long certificate chains combined with authenticators that drop an EAP session after only 40 - 50 round trips is a major deployment problem.  This document looks at this problem in detail and describes the potential solutions available.
	 </t>
      </abstract>
   </front>
   <seriesInfo name="Internet-Draft" value="draft-ietf-emu-eaptlscert-08" />
   <format type="TXT" target="https://www.ietf.org/archive/id/draft-ietf-emu-eaptlscert-08.txt" />
</reference>



<reference anchor="EAP-TLS13">
<front>
<title>Using EAP-TLS with TLS 1.3 (EAP-TLS 1.3)</title>
<author initials='J' surname='Mattsson' fullname='John Mattsson'>
<organization />
</author>
<author initials='M' surname='Sethi' fullname='Mohit Sethi'>
<organization />
</author>
<date year='2021' month='October' day='20' />
<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-Transport Layer Security (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='Internet-Draft' value='draft-ietf-emu-eap-tls13-21'/>
<format type='TXT' target='https://www.ietf.org/internet-drafts/draft-ietf-emu-eap-tls13-21.txt'/>
</reference>



<reference  anchor="RFC8879" target='https://www.rfc-editor.org/info/rfc8879'>
<front>
<title>TLS Certificate Compression</title>
<author initials='A.' surname='Ghedini' fullname='A. Ghedini'><organization /></author>
<author initials='V.' surname='Vasiliev' fullname='V. Vasiliev'><organization /></author>
<date year='2020' month='December' />
<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="CBOR-CERTS">
   <front>
      <title>CBOR Encoded X.509 Certificates (C509 Certificates)</title>
      <author fullname="John Preuß Mattsson">
	 <organization>Ericsson AB</organization>
      </author>
      <author fullname="Göran Selander">
	 <organization>Ericsson AB</organization>
      </author>
      <author fullname="Shahid Raza">
	 <organization>RISE AB</organization>
      </author>
      <author fullname="Joel Höglund">
	 <organization>RISE AB</organization>
      </author>
      <author fullname="Martin Furuhed">
	 <organization>Nexus Group</organization>
      </author>
      <date month="January" day="10" year="2022" />
      <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%.  The CBOR encoded structure can alternatively be
   signed directly (&quot;natively signed&quot;), which does not require re-
   encoding for the signature to be verified.  The document also
   specifies 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-03" />
   <format type="TXT" target="https://www.ietf.org/archive/id/draft-ietf-cose-cbor-encoded-cert-03.txt" />
</reference>


<reference anchor="CTLS">
   <front>
      <title>Compact TLS 1.3</title>
      <author fullname="Eric Rescorla">
	 <organization>Mozilla</organization>
      </author>
      <author fullname="Richard Barnes">
	 <organization>Cisco</organization>
      </author>
      <author fullname="Hannes Tschofenig">
	 <organization>Arm Limited</organization>
      </author>
      <date month="October" day="25" year="2021" />
      <abstract>
	 <t>   This document specifies a &quot;compact&quot; version of TLS 1.3.  It is
   isomorphic to TLS 1.3 but saves space by trimming obsolete material,
   tighter encoding, a template-based specialization technique, and
   alternative cryptographic techniques. cTLS is not directly
   interoperable with TLS 1.3, but it should eventually be possible for
   a cTLS/TLS 1.3 server to exist and successfully interoperate.

	 </t>
      </abstract>
   </front>
   <seriesInfo name="Internet-Draft" value="draft-ietf-tls-ctls-04" />
   <format type="TXT" target="https://www.ietf.org/archive/id/draft-ietf-tls-ctls-04.txt" />
</reference>


<reference anchor="I-D.hoffman-c2pq">
   <front>
      <title>The Transition from Classical to Post-Quantum Cryptography</title>
      <author fullname="Paul Hoffman">
	 <organization>ICANN</organization>
      </author>
      <date month="May" day="26" year="2020" />
      <abstract>
	 <t>   Quantum computing is the study of computers that use quantum features
   in calculations.  For over 20 years, it has been known that if very
   large, specialized quantum computers could be built, they could have
   a devastating effect on asymmetric classical cryptographic algorithms
   such as RSA and elliptic curve signatures and key exchange, as well
   as (but in smaller scale) on symmetric cryptographic algorithms such
   as block ciphers, MACs, and hash functions.  There has already been a
   great deal of study on how to create algorithms that will resist
   large, specialized quantum computers, but so far, the properties of
   those algorithms make them onerous to adopt before they are needed.

   Small quantum computers are being built today, but it is still far
   from clear when large, specialized quantum computers will be built
   that can recover private or secret keys in classical algorithms at
   the key sizes commonly used today.  It is important to be able to
   predict when large, specialized quantum computers usable for
   cryptanalysis will be possible so that organization can change to
   post-quantum cryptographic algorithms well before they are needed.

   This document describes quantum computing, how it might be used to
   attack classical cryptographic algorithms, and possibly how to
   predict when large, specialized quantum computers will become
   feasible.

	 </t>
      </abstract>
   </front>
   <seriesInfo name="Internet-Draft" value="draft-hoffman-c2pq-07" />
   <format type="TXT" target="https://www.ietf.org/archive/id/draft-hoffman-c2pq-07.txt" />
</reference>


<reference anchor="I-D.ietf-tls-hybrid-design">
   <front>
      <title>Hybrid key exchange in TLS 1.3</title>
      <author fullname="Douglas Stebila">
	 <organization>University of Waterloo</organization>
      </author>
      <author fullname="Scott Fluhrer">
	 <organization>Cisco Systems</organization>
      </author>
      <author fullname="Shay Gueron">
	 <organization>University of Haifa and Amazon Web Services</organization>
      </author>
      <date month="January" day="11" year="2022" />
      <abstract>
	 <t>   Hybrid key exchange refers to using multiple key exchange algorithms
   simultaneously and combining the result with the goal of providing
   security even if all but one of the component algorithms is broken.
   It is motivated by transition to post-quantum cryptography.  This
   document provides a construction for hybrid key exchange in the
   Transport Layer Security (TLS) protocol version 1.3.

   Discussion of this work is encouraged to happen on the TLS IETF
   mailing list tls@ietf.org or on the GitHub repository which contains
   the draft: https://github.com/dstebila/draft-ietf-tls-hybrid-design.

	 </t>
      </abstract>
   </front>
   <seriesInfo name="Internet-Draft" value="draft-ietf-tls-hybrid-design-04" />
   <format type="TXT" target="https://www.ietf.org/archive/id/draft-ietf-tls-hybrid-design-04.txt" />
</reference>



<reference  anchor="RFC6928" target='https://www.rfc-editor.org/info/rfc6928'>
<front>
<title>Increasing TCP's Initial Window</title>
<author initials='J.' surname='Chu' fullname='J. Chu'><organization /></author>
<author initials='N.' surname='Dukkipati' fullname='N. Dukkipati'><organization /></author>
<author initials='Y.' surname='Cheng' fullname='Y. Cheng'><organization /></author>
<author initials='M.' surname='Mathis' fullname='M. Mathis'><organization /></author>
<date year='2013' month='April' />
<abstract><t>This document proposes an experiment to increase the permitted TCP initial window (IW) from between 2 and 4 segments, as specified in RFC 3390, to 10 segments with a fallback to the existing recommendation when performance issues are detected.  It discusses the motivation behind the increase, the advantages and disadvantages of the higher initial window, and presents results from several large-scale experiments showing that the higher initial window improves the overall performance of many web services without resulting in a congestion collapse.  The document closes with a discussion of usage and deployment for further experimental purposes recommended by the IETF TCP Maintenance and Minor Extensions (TCPM) working group.</t></abstract>
</front>
<seriesInfo name='RFC' value='6928'/>
<seriesInfo name='DOI' value='10.17487/RFC6928'/>
</reference>



<reference  anchor="RFC7924" target='https://www.rfc-editor.org/info/rfc7924'>
<front>
<title>Transport Layer Security (TLS) Cached Information Extension</title>
<author initials='S.' surname='Santesson' fullname='S. Santesson'><organization /></author>
<author initials='H.' surname='Tschofenig' fullname='H. Tschofenig'><organization /></author>
<date year='2016' month='July' />
<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="RFC5246" target='https://www.rfc-editor.org/info/rfc5246'>
<front>
<title>The Transport Layer Security (TLS) Protocol Version 1.2</title>
<author initials='T.' surname='Dierks' fullname='T. Dierks'><organization /></author>
<author initials='E.' surname='Rescorla' fullname='E. Rescorla'><organization /></author>
<date year='2008' month='August' />
<abstract><t>This document specifies Version 1.2 of the Transport Layer Security (TLS) protocol.  The TLS protocol provides communications security over the Internet.  The protocol allows client/server applications to communicate in a way that is designed to prevent eavesdropping, tampering, or message forgery.  [STANDARDS-TRACK]</t></abstract>
</front>
<seriesInfo name='RFC' value='5246'/>
<seriesInfo name='DOI' value='10.17487/RFC5246'/>
</reference>



<reference  anchor="RFC8446" target='https://www.rfc-editor.org/info/rfc8446'>
<front>
<title>The Transport Layer Security (TLS) Protocol Version 1.3</title>
<author initials='E.' surname='Rescorla' fullname='E. Rescorla'><organization /></author>
<date year='2018' month='August' />
<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="ESNI">
   <front>
      <title>TLS Encrypted Client Hello</title>
      <author fullname="Eric Rescorla">
	 <organization>RTFM, Inc.</organization>
      </author>
      <author fullname="Kazuho Oku">
	 <organization>Fastly</organization>
      </author>
      <author fullname="Nick Sullivan">
	 <organization>Cloudflare</organization>
      </author>
      <author fullname="Christopher A. Wood">
	 <organization>Cloudflare</organization>
      </author>
      <date month="February" day="13" year="2022" />
      <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-14" />
   <format type="TXT" target="https://www.ietf.org/archive/id/draft-ietf-tls-esni-14.txt" />
</reference>




    </references>




  </back>

<!-- ##markdown-source:
H4sIAJswImIAA+Vba3PbRpb93r+i43yYpEqgREmJLdXOTqiHY22sR0ylvFsz
qVQTaJI9witoQDTj8n/fc283wAZIOcpsaqu2NlU2aQLdfZ/nnnuBRFEkalOn
+lS+mDZlWWlrTb6Q5xN5rqvazE2sam2lyeX926kcj45eCDWbVfrxVLb342Yr
kiLOVYZtkkrN6+hBZaXK1YOxUZ3ayMbKRintVAvacFFU61Np60SYsjqVddXY
+vDg4OTgUKhKq1N5X6nclkVVi1VRPSyqoilPSQIhbK3y5BeVFjkOW2srSnMq
/14X8Z60uL/Sc4tv68x9gViZKkuo9LMQqqmXRXUqpIzwR0IpeyqvR/J+WWS2
yPk3p8S1gu5570JRLfB78ZtJU8U/6EyZ9FRm9XdpsdJ5XRXlepTrWvT3vxvJ
HzpjBEfcqbyww0t8yOT9NDzgoaQ7v1OZ+q3IR3GRDQ44H8mzdb3UK7UOtj/H
31WR9y/t2n7GN8RP7382uhzJ9/CcrmZKhVY6U3Z4gU84T4smmafwZO8gZb+L
uyvuoLyoMlWbR30qhDD5PPinlFeXl5evDg7H3xyf8j5tnNLvckphoKpEYo18
W6yidwgr+d5UOqWQvNE1BY59wSutroy2tL/bScqL26tTOT4YjccHJ/u04fT+
YnR4cHgwOhkfH397Mub7Eux5Kg+P5H806VrSZZLr/dX0p5ueSO+vIvwkJ2lq
VB47rWtVLXR9Kpd1XdrT/f2ViWyTj2Cgfdrk/G109vb2e7fNJjDpv8h/fsb+
n/WBF2pqfqNM/qmUd4Wtox8blddNhp8XuaobJG6g4it5UzzqbKYr0nK8U4FZ
WixGfQfuWz4jasqopDN+dWdEtjvD6Xp7c/mf99Hdj0jg8dF0+uYZWl+MIOkD
/Jb41NiofGEyU1cG2TO8Y7DHdur9Tvpt7QBwuNCPurbmwRT11ibXJl4qne64
p43VibUeUZFl8vZRV0utElnM+045r9ZlXSwqVS7XAdZKxLiEvV4ErgoddfC7
0X38zf7R0atvj759OTo6PhofHXzjb7mant2cypOXr3DLwdHLk+NXJ+Sqm4vp
tHXU/x8v9XwxgcKAcyp8BgC68QagU97pikEKWQ4IapJ16JrXelY1qlo/yzXH
Lw8P9/PEWgc7h8eHB0fkATb+M0wP2L9TvzZmCAjny8rYGjjUv7zDcbWeGV/L
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
yGIOJ0E2iYjxYsq/IQsblGIPlRwlYhMlS9SaWMVLOoXwkhwc7OSiT9r2iQQF
CgRGQnFdS6jjKUquYVQxXYMDacAHyAYU+NYbOi6qCsSd2wnRz1m2KVClRirO
XSO1q1NL1JpPIRswIHSO8Kk8TP2MNN+llmCVZVMmbdOYKQ4hHn5uIgufqFD5
gmxMPS/VLD4d6QsihWM8XS4r86hiov/YoKK6DMNpsdnJc+zEeaZXT9ii0jbo
6kpXQJCxddti8vkcNF/KeySna6AuCAXYgtZ13FQdEE/IrRfXP03vX+y5T3lz
y9/fXYLVvLu8oO/TN5O3b7svwt8xfXP709uLzbfNyvPb6+vLmwu3GL/K3k/i
xfXkv17ssVQvbu/ur25vJm9fbKupKu2Tk0EG+UeRrYBs2saVmTnTnIEXjY+R
B18gDw7HY05K+kQ+uB9fjV8ec6biEz+uQA73mAAWebp2/3S1RpWlVhX3I5Qd
qjQ1+BsEtUzhACtosGiY8WX4tLc/VHudqoWz76IAvlHO4oBdaPsEgnK/NGtM
mjwBiZQlXYS6thqcUPHoh4Y3bmKCsEJJ8FSxXu6RJVv4Lzbr8Z1DCVBIAcQR
1ENw2sthzDeHx9+SGekTlMyj4LH7kT6Z7rZ5TCf46UdPB3aoYBiC/+ZVkQ1g
h0q0W64AWplDCoI6nitVOitqL3tbipAlhBiEYcS1YOLEafaoUkPpKtoqRvow
P9vhDiz0G9GBfow1bFUdD+W4yXUIgJuSJAbatkJwKQX8ubrlCOSqBT9HaUU3
UZjDjG7AzS1FC/8zvS4cmkkbF6WvKGHOUBPA5V5SEzpkdpRRTgR0TgknoK3R
BiQ9CumQ8OPHYEoN17aqiowwlVyjPZEYMDnLiaselUkVQVNaxITZfATPF0R3
xooSqqX1W8YmOoLkdxJyiuJmOh0B9BkCy8WJSxzUY7ymf3S4ClyckqKuBrm5
iG3iZXAHK+DnXw5khv0nPPKPv19eANouT+VtzlM8X538xpvJHVxCkO/SEg24
zjnCuDfimQuWO5/5o4KCjrWgfmmTuKLkAQD6EBzCBvCZ2FQrRafmc1Nlnn9i
40K7YuHCtfD8rtvLF6TNJsryIylnlbLjPC1YcUlGx+tWh+HtSDOlEiUZtQBs
AOzw6HogleBaTd/BWmt+nOP8v2EZFMz5A+h7vRMd7fBAn7t7wMsamzmGSisJ
dis0yzx4dUQBDI4zyne6nXuYKdBoHT8VDwb4jlYDBZnfvKD6oP29b64n54Hl
IAqTBcachB4y5ovGWMVt4CR3kzQfC8Z2mNj2BwXV90emQ7I28YMmX7ZmQKVr
qpzA/NFYwo1ap2lvue+P2gWttZCyrtpDqtb1Yuj6jBxESN+mgO/cZEtcNWzc
uOEJQ52Zi5V2vpGbzoySxPFRnizNoWE9+sfPrvgdfLg/uxgDx9TCWXimqTJs
ihAk7QUYBS8fRhlPhNNNBVm9N9C+IKgOKu07yEyDmoy6ngUViy6J+KiRuMyT
sjDUmYbtBzYNZePRgaKgahhNx1z987VHqk1Zas9hirTQua6YB8o54Br4Bwhf
qPSXUlUqA02h4gRZmSt86bWgpztdmNNQTeMfrh/aBC6isKloiru39XQnzIRe
m7XziYQPFN884Yc6tb+QynaDQajhXxCuvX47+X4w58Ufvpn4kvEuDu1GMuFY
MhdX19BR3lRuXN7mP1nKpDoZkJOgFIMUIrUKGg4wad4ErOAj0Y/QSaA5bA4O
dZgs/wuZEhTLUXM3GDm7OJLcFBSOZ208Sm10kTsawvYPU6UHtnwApW3LHkbk
wTABu452GEBDa/HTqMBEoo0mT5x5PL7VkTkI6caqu7tewRSKXRCUwHb/NrRc
GEAypFuJlEeXdku7r4zVzrCiswFlJTVWg6oaJOteGGFeBWR14bBcBJo/Owba
CQQjrY+CNgKgnOiXgQrJViX8apvvqdnMHZt0EbXnNPN55RwvAse3A0T3TIJI
FOuvP1CEeS/62CS0osAjJubb4g2/BvTDdaSa7Rq8YK2fm3aUfnvq+5kE3gt3
atsz0RVxlxiElLaZWYJEOnAjmqf6vi4zGE2dpb/KmrqhsfLWc7Cv/UOXJ28A
99T0aKcIHLcT0cQfQDT5OUQToVM/C2nyOZAmfg/Shvk0KDZ/NKr/byBbWJue
jWyuSm9Z6k8HOG7G/pcBzhvkCYD7Y/jWYsGfg28tNvzP8c1H6L+Eb5up8b+C
b206Bzv9cXwbIP4o6MruubcwDEDtTKzlMu3THk+i/fHEkxl6HrQuab4e8/Mi
79POg+3hlskuzYL8i0/ynN4+SYgZtlO2sDV3TzIoY2WT65zfA8K+ng97f4Q8
iocemVks665PoX7Q9e/tCKF9+rJxesvPl+pRi6326RmTJVN5UOieuYRAQrEO
eQl3gqa3e1udxrqzonFDT5658LsfTg03HmpFdrM9egxJ3QMZlRuuoL3ViZit
/aiWnrPk9F4QMhR6FjPntW5w7d8WwQ31ciQnMFxtFl6gBT2rrJ3j/byVG8FC
ej9s2R60tn3rmF6Xmd5c9YuJtrnhWeJmjLM0Hl77uCLCLsc5G1l2yU95l3oH
olq5CY7hUH5PqC0LeFAJpwJtN8/vlyicuP4teLAUdDU8bKKRuO1GTlpBo8RU
LshH8j3UsiVN2jaD++Alr1C7zey6N6HtT6j4gXWidcZb+GG4e0TCiUBBGOjC
PXtW0utxMCdM929fRJHssvy8yGhXpx2OocjzvTC9MaVmhmDNxFuydv04+jV0
3k0Va3o1BDu5mHE+9cFeV2s+oXBOHuw1ktdqPdM8KVBUgVynjKin/8en+lkO
XxsyVrRRGNSZ4DmcOxteKjIkxKZcuPxzFTZURgWJ2o4ChtO04ejEpThPala9
Sc0mwlRdAwNZIGYP7Iv582Kc4tgXWmrJ1zs15UGE6BwFCKVBCgKnqVsfQXnr
be8177kRd9CIg2EeiJ3oqJjPEV6x4cszgIL2SVYZ6/C8H1ztGyHl5l32kYyi
f5eM7VeTm8nv4DqKtaH/48SGqewT112r2sfYZIhnNd3tG5P0soAQ/w2RnnxY
lzYAAA==

-->

</rfc>

