<?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.11 (Ruby 3.2.4) -->
<rfc xmlns:xi="http://www.w3.org/2001/XInclude" ipr="trust200902" docName="draft-ietf-tls-key-share-prediction-00" category="std" consensus="true" submissionType="IETF" updates="8446" tocInclude="true" sortRefs="true" symRefs="true" version="3">
  <!-- xml2rfc v2v3 conversion 3.21.0 -->
  <front>
    <title>TLS Key Share Prediction</title>
    <seriesInfo name="Internet-Draft" value="draft-ietf-tls-key-share-prediction-00"/>
    <author initials="D." surname="Benjamin" fullname="David Benjamin">
      <organization>Google LLC</organization>
      <address>
        <email>davidben@google.com</email>
      </address>
    </author>
    <date year="2024" month="June" day="03"/>
    <area>Security</area>
    <workgroup>Transport Layer Security</workgroup>
    <abstract>
      <?line 34?>

<t>This document defines a mechanism for servers to communicate key share preferences in DNS. Clients may use this information to reduce TLS handshake round-trips.</t>
    </abstract>
    <note removeInRFC="true">
      <name>About This Document</name>
      <t>
        The latest revision of this draft can be found at <eref target="https://tlswg.github.io/tls-key-share-prediction/draft-ietf-tls-key-share-prediction.html"/>.
        Status information for this document may be found at <eref target="https://datatracker.ietf.org/doc/draft-ietf-tls-key-share-prediction/"/>.
      </t>
      <t>
        Discussion of this document takes place on the
        Transport Layer Security Working Group mailing list (<eref target="mailto:tls@ietf.org"/>),
        which is archived at <eref target="https://mailarchive.ietf.org/arch/browse/tls/"/>.
        Subscribe at <eref target="https://www.ietf.org/mailman/listinfo/tls/"/>.
      </t>
      <t>Source for this draft and an issue tracker can be found at
        <eref target="https://github.com/tlswg/tls-key-share-prediction"/>.</t>
    </note>
  </front>
  <middle>
    <?line 38?>

<section anchor="introduction">
      <name>Introduction</name>
      <t>Named groups in TLS 1.3 <xref target="RFC8446"/> are negotiated with two lists in the ClientHello: The client sends its full preferences in the <tt>supported_groups</tt> extension, but also generates key shares for a subset in the <tt>key_share</tt> extension. Named groups in this subset may be used in one, while named groups outside the subset requires a HelloRetryRequest and two round trips. The additional round trip is undesirable for performance, but unused key shares consume network and computational resources, so clients often do not generate key shares for all groups.</t>
      <t>Post-quantum key encapsulation methods (KEMs) have large keys and ciphertexts, so network costs are particularly pronounced. As a TLS ecosystem transitions from one post-quantum KEM to another, it is challenging to pick key shares without prior knowledge of the server's policies:</t>
      <ol spacing="normal" type="1"><li>
          <t>Predicting both post-quantum KEMs consumes excessive bandwidth on the unused option.</t>
        </li>
        <li>
          <t>Predicting the old post-quantum KEM adds a round-trip cost to newer servers. Servers will be unlikely to transition as a result.</t>
        </li>
        <li>
          <t>Predicting the new post-quantum KEM adds a round-trip cost to older servers. Particularly early in the transition, when most servers do not implement the new KEM, this may significantly regress performance.</t>
        </li>
      </ol>
      <t>This document defines a method for servers to declare their named group preferences in DNS, using SVCB or HTTPS resource records <xref target="RFC9460"/>. This allows the client to predict key shares more accurately.</t>
    </section>
    <section anchor="conventions-and-definitions">
      <name>Conventions and Definitions</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.</t>
    </section>
    <section anchor="dns-service-parameter">
      <name>DNS Service Parameter</name>
      <t>This document defines the <tt>tls-supported-groups</tt> SvcParamKey <xref target="RFC9460"/>, which specifies the endpoint's TLS supported group preferences, as a sequence of TLS NamedGroup codepoints in order of decreasing preference. This allows clients connecting to the endpoint to reduce the likelihood of needing a HelloRetryRequest.</t>
      <section anchor="format">
        <name>Format</name>
        <t>The presentation <tt>value</tt> of the SvcParamValue is a comma-separated list (<xref section="A.1" sectionFormat="of" target="RFC9460"/>) of decimal integers between 0 and 65535 (inclusive) in ASCII. Any other <tt>value</tt> is a syntax error. To enable simpler parsing, this SvcParam MUST NOT contain escape sequences.</t>
        <t>The wire format of the SvcParamValue is a sequence of 2-octet numeric values in network byte order. An empty list of values is invalid.</t>
      </section>
      <section anchor="configuring-services">
        <name>Configuring Services</name>
        <t>Services SHOULD include supported TLS named groups, in order of decreasing preference in the <tt>tls-supported-groups</tt> parameter of their HTTPS or SVCB endpoints. As TLS preferences are updated, services SHOULD update the DNS record to match. Services MAY include GREASE values <xref target="RFC8701"/> in this list.</t>
      </section>
      <section anchor="client-behavior">
        <name>Client Behavior</name>
        <t>When connecting to a service endpoint whose HTTPS or SVCB record contains the <tt>tls-supported-groups</tt> parameter, the client evaluates the server preferences against its own to predict which named group will be chosen. When evaluating the server preferences, the client MUST ignore any codepoints that it does not support or recognize. If there is a named group in common, the client MAY send a <tt>key_share</tt> extension containing just that named group in the initial ClientHello. To avoid downgrade attacks, the client MUST continue to send its full preferences in the <tt>supported_groups</tt> extension. See <xref target="security-considerations"/> for additional discussion on downgrades.</t>
      </section>
      <section anchor="misprediction">
        <name>Misprediction</name>
        <t>Although this service parameter is intended to reduce key share mispredictions, mispredictions may still occur in some scenarios. For example:</t>
        <ul spacing="normal">
          <li>
            <t>The client has fetched a stale HTTPS or SVCB record that no longer reflects the server preferences</t>
          </li>
          <li>
            <t>The server is in the process of deploying a change to named group preferences, and different server instances temporary evaluate different preferences</t>
          </li>
          <li>
            <t>The client was unable to fetch the HTTPS or SVCB record</t>
          </li>
          <li>
            <t>The client and server implement incompatible selection algorithms, such that client's evaluation of the service parameter did not match the server's final selection</t>
          </li>
        </ul>
        <t>Clients and servers MUST correctly handle mispredictions by responding to and sending HelloRetryRequest, respectively.</t>
      </section>
    </section>
    <section anchor="security-considerations">
      <name>Security Considerations</name>
      <t>This document introduces a mechanism for clients to vary the <tt>key_share</tt> extension based on DNS. DNS responses are unauthenticated in many deployments, so this can permit attacker influence over the client's predicted named groups. That, in turn, can influence the named group selected by the TLS server, as TLS's downgrade protections only extend to the ClientHello itself. However, the client continues to send its full preferences in <tt>supported_groups</tt>, so this influence is limited by the server's named group selection policy:</t>
      <t>Servers which select purely based on preference orders will first select a named group on <tt>supported_groups</tt>, and then consider <tt>key_share</tt> only to send HelloRetryRequest or ServerHello. When connecting to such servers, attackers cannot influence the selection with this mechanism.</t>
      <t>However, some servers prioritize round-trip times over preference orders. That is, when choosing between a named group in <tt>key_share</tt> and a more preferable (e.g. more secure) named group not in <tt>key_share</tt>, these servers will select the less preferable one in <tt>key_share</tt>. In this case, an attacker may be able to influence the selection by forging an HTTPS or SVCB record. Per <xref section="4.2.8" sectionFormat="of" target="RFC8446"/>, the client's <tt>key_share</tt> extension does not reflect its full preference list in <tt>supported_groups</tt>. Thus, this server behavior is only appropriate when the two options are of comparable preference, such that round trip concerns dominate. In particular, it is NOT RECOMMENDED when choosing between post-quantum and classical named groups.</t>
      <t>As these semantics were already prescribed in <xref target="RFC8446"/>, it is safe for clients to admit attacker control over the set of named groups preferred in <tt>key_share</tt>, provided <tt>supported_groups</tt> always reflects the true client preference. Servers are expected to evaluate the combination of <tt>key_share</tt> and <tt>supported_groups</tt> according to the defined semantics and their selection goals.</t>
      <t>To reduce the risk of downgrade attacks with incorrectly deployed servers, clients MAY choose to ignore <tt>tls-supported-groups</tt> when the result would be to a predict a less preferred group. For example, a client that implements a combination of post-quantum groups and ECDH groups MAY limit its influence to predicting post-quantum groups. This optimizes transitions between post-quantum groups, where the bandwidth concerns are more pronounced, but means ECDH-only servers cannot take advantage of the mechanism.</t>
    </section>
    <section anchor="iana-considerations">
      <name>IANA Considerations</name>
      <t>This document updates the Service Parameter Keys registry <xref target="RFC9460"/> with the following entry:</t>
      <table>
        <thead>
          <tr>
            <th align="left">Number</th>
            <th align="left">Name</th>
            <th align="left">Meaning</th>
            <th align="left">Format Reference</th>
            <th align="left">Change Controller</th>
          </tr>
        </thead>
        <tbody>
          <tr>
            <td align="left">TBD</td>
            <td align="left">tls-supported-groups</td>
            <td align="left">Supported groups in TLS</td>
            <td align="left">(this document) <xref target="format"/></td>
            <td align="left">IETF</td>
          </tr>
        </tbody>
      </table>
    </section>
  </middle>
  <back>
    <references anchor="sec-normative-references">
      <name>Normative References</name>
      <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="RFC9460">
        <front>
          <title>Service Binding and Parameter Specification via the DNS (SVCB and HTTPS Resource Records)</title>
          <author fullname="B. Schwartz" initials="B." surname="Schwartz"/>
          <author fullname="M. Bishop" initials="M." surname="Bishop"/>
          <author fullname="E. Nygren" initials="E." surname="Nygren"/>
          <date month="November" year="2023"/>
          <abstract>
            <t>This document specifies the "SVCB" ("Service Binding") and "HTTPS" DNS resource record (RR) types to facilitate the lookup of information needed to make connections to network services, such as for HTTP origins. SVCB records allow a service to be provided from multiple alternative endpoints, each with associated parameters (such as transport protocol configuration), and are extensible to support future uses (such as keys for encrypting the TLS ClientHello). They also enable aliasing of apex domains, which is not possible with CNAME. The HTTPS RR is a variation of SVCB for use with HTTP (see RFC 9110, "HTTP Semantics"). By providing more information to the client before it attempts to establish a connection, these records offer potential benefits to both performance and privacy.</t>
          </abstract>
        </front>
        <seriesInfo name="RFC" value="9460"/>
        <seriesInfo name="DOI" value="10.17487/RFC9460"/>
      </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="RFC8701">
        <front>
          <title>Applying Generate Random Extensions And Sustain Extensibility (GREASE) to TLS Extensibility</title>
          <author fullname="D. Benjamin" initials="D." surname="Benjamin"/>
          <date month="January" year="2020"/>
          <abstract>
            <t>This document describes GREASE (Generate Random Extensions And Sustain Extensibility), a mechanism to prevent extensibility failures in the TLS ecosystem. It reserves a set of TLS protocol values that may be advertised to ensure peers correctly handle unknown values.</t>
          </abstract>
        </front>
        <seriesInfo name="RFC" value="8701"/>
        <seriesInfo name="DOI" value="10.17487/RFC8701"/>
      </reference>
    </references>
    <?line 114?>

<section numbered="false" anchor="acknowledgments">
      <name>Acknowledgments</name>
      <t>The author would like to thank David Adrian, Bob Beck, Sophie Schmieg, Martin Thomson, and Bas Westerbaan for discussions and review of this document.</t>
    </section>
  </back>
  <!-- ##markdown-source:
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

-->

</rfc>
