<?xml version='1.0' encoding='utf-8'?>
<!DOCTYPE rfc [
  <!ENTITY nbsp    "&#160;">
  <!ENTITY zwsp   "&#8203;">
  <!ENTITY nbhy   "&#8209;">
  <!ENTITY wj     "&#8288;">
]>
<?xml-stylesheet type="text/xsl" href="rfc2629.xslt" ?>
<!-- generated by https://github.com/cabo/kramdown-rfc version 1.7.21 (Ruby 3.3.6) -->
<rfc xmlns:xi="http://www.w3.org/2001/XInclude" ipr="trust200902" docName="draft-jackson-tls-trust-is-nonnegotiable-00" category="info" consensus="true" submissionType="IETF" tocInclude="true" sortRefs="true" symRefs="true" version="3">
  <!-- xml2rfc v2v3 conversion 3.25.0 -->
  <front>
    <title>Trust is non-negotiable</title>
    <seriesInfo name="Internet-Draft" value="draft-jackson-tls-trust-is-nonnegotiable-00"/>
    <author fullname="Dennis Jackson">
      <organization>Mozilla</organization>
      <address>
        <email>ietf@dennis-jackson.uk</email>
      </address>
    </author>
    <date year="2024" month="December" day="21"/>
    <area>Security</area>
    <workgroup>Transport Layer Security</workgroup>
    <abstract>
      <?line 334?>

<t>This document considers proposals to enable the negotiation of trust anchors in TLS.  It makes three basic arguments: that trust negotiation is not helpful in addressing the problems it claims to address, that trust negotiation instead comes with material harms to the critical trust infrastructure of the Internet, and that the proposed mechanisms for deploying trust negotiation are unworkable. This draft goes on to discuss simpler and more effective solutions to these problems.</t>
    </abstract>
    <note removeInRFC="true">
      <name>About This Document</name>
      <t>
        The latest revision of this draft can be found at <eref target="https://dennisjackson.github.io/draft-jackson-tls-trust-is-nonnegotiable/draft-jackson-tls-trust-is-nonnegotiable.html"/>.
        Status information for this document may be found at <eref target="https://datatracker.ietf.org/doc/draft-jackson-tls-trust-is-nonnegotiable/"/>.
      </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/dennisjackson/draft-jackson-tls-trust-is-nonnegotiable"/>.</t>
    </note>
  </front>
  <middle>
    <?line 338?>

<section anchor="introduction">
      <name>Introduction</name>
      <t>For as long as TLS has been used on the web, web servers have been restricted to belonging to one PKI which must satisfy the requirements of every client, or at least as many clients as possible. This constraint has defined the architecture of the web for the past two decades, leading to the consolidation of community, architecture, standards and process in the singular 'WebPKI' as we know it.</t>
      <t>Trust Anchor Identifiers <xref target="TAI"/> is a recently proposed draft which enables websites to participate in multiple PKIs through the introduction of trust anchor negotiation. The stated motivation for this proposal is two-fold. For website operators, trust negotiation is proposed to make it easier to maintain compatibility with a diverse range of clients, particularly older legacy clients without up to date root stores. For root program operators, trust negotiation is proposed to enable improvements to the security of their clients.</t>
      <t>This draft considers TAIs proposed use cases for trust negotiation (<xref target="TNImpact"/>). It finds that none of the proposed use cases for improving security stand up to scrutiny. Further, that trust negotiation substantially alters the power dynamics of the WebPKI in way that will most likely lead to negative outcomes for users and website operators. It also identifies trust negotiation as enabling a number of meaningful abuse scenarios.</t>
      <t>The conclusion of this section is that trust negotiation is not a desirable feature to realize in TLS, regardless of the underlying design or implementation.</t>
      <t>The draft goes on to consider the high level design described in <xref target="TAI"/> and its suitability for deployment (<xref target="Deployability"/>). It concludes that the necessary investments and integrations to deploy it are unworkable for the vast majority of clients and servers. This makes the use of trust negotiation for the post-quantum transition deeply unattractive, as well as further undermining the claimed use cases for security and compatibility.</t>
      <t>This draft concludes in <xref target="PathForwards"/> by considering simpler, easier to deploy and more targeted solutions that can enable the post-quantum transition and reduce compatibility challenges for large website operators, without causing unacceptable harms or systemic risk.</t>
    </section>
    <section anchor="the-problem-statement">
      <name>The Problem Statement</name>
      <t>At the TLS interim on October 1st, a problem statement was posed to the meeting:</t>
      <ul empty="true">
        <li>
          <t>Avoid client trust conflicts by enabling servers to reliably and efficiently support clients with diverse trust anchor lists, particularly in larger PKIs where the existing certificate_authorities extension is not viable. <xref target="TLSInterim"/></t>
        </li>
      </ul>
      <t>This problem statement is supported by two different motivations.</t>
      <t>Website operators are interested in compatibility with as broader set of clients as possible. Meanwhile, clients, or really their root program operators, benefit from differentiation and deploying new technology.</t>
      <t>Although these two perspectives are unified by the abstract framing of the problem statement, it does not follow that a proposed solution will be equally effective for both goals.</t>
      <t>In fact these two perspectives have often been opposed, with the differentiation and evolutions driven by root program operators in turn necessitating investments and ongoing compliance obligations for website operators. Consequently, its critical to evaluate both perspectives independently, which is the approach taken throughout this document.</t>
    </section>
    <section anchor="TNImpact">
      <name>What can Trust Negotiation do for the WebPKI?</name>
      <t>This section examines the use cases for the negotiation of trust anchors ('trust negotiation') which have been proposed in <xref target="TAI"/>. The use cases are grouped into three distinct themes: improving root program operations, transitioning to post-quantum cryptography and handling conflicting client requirements.</t>
      <t>The analysis in this section is design-agnostic and assumes that clients and servers have some abstract mechanism to enable clients to signal which trust anchors they support and servers provide the appropriate certificate chains.</t>
      <section anchor="trust-negotiation-and-root-program-security">
        <name>Trust Negotiation and Root Program Security</name>
        <t>Trust Anchor Identifiers <xref target="TAI"/> draft claims that trust negotiation can improve the operation of root programs and in doing so, improve the security of clients. Unfortunately, these claims are based on statements that ignore already widely deployed solutions and ultimately give a misleading picture of how root programs work today.</t>
        <section anchor="AddingCAs">
          <name>Adding CAs</name>
          <t>In Section 7.1 of TAI, the draft claims:</t>
          <ul empty="true">
            <li>
              <t>Without [trust] negotiation, the authenticating party is limited to its relying parties' intersection and must wait for every supported relying party to be updated [with the new root CA] before the transition even begins</t>
            </li>
          </ul>
          <t>This is a false statement. For many years, the WebPKI has used cross-signed certificates to enable new roots to be used by websites before older relying parties were updated. A cross-signed certificate when one root key is used to sign another root or intermediate key. In this case, when an older CA uses its ubiquitously trusted root CA to sign a newer CA's root key. This enables older relying parties and newer relying parties to trust the same certificate chain, even when the older party is unaware of the new root.</t>
          <t>This system is ubiquitously supported and in widespread usage by CAs today. Cross-signing is essential part of root program operations and foundational to the existence of many CAs:</t>
          <ul spacing="normal">
            <li>
              <t>Scott Helme has a blog post explaining cross-signing and its essential role in the creation of Let's Encrypt <xref target="LECrossSign"/>.</t>
            </li>
            <li>
              <t>Certainly, the CA owned by Fastly, currently operates on the basis of a cross-sign from GoDaddy which is used to serve Fastly's website. Without this cross-sign, Fastly's website would be inaccessible on Windows machines, as Microsoft's Root Store does not currently include Certainly's Root CA certificates <xref target="FastlyCRT"/>.</t>
            </li>
            <li>
              <t>Google Trust Services, one of the largest CAs in the world, also uses a cross-sign to maximize backwards compatibility <xref target="GTSCrossSign"/>.</t>
            </li>
          </ul>
          <t>Cross Signing is also detailed extensively in in this academic survery <xref target="CrossSignStudy"/> and in online discussions of root program operations <xref target="SleeviCrossSign"/>.</t>
          <t>The primary challenge in the use of cross-signing is that the new CA must arrive at a contractual agreement with an existing CA to grant the cross-sign. As the existing CA is vouching trust in the new CA and considered responsible for them, this typically involves extensive disclosure, vetting and a business agreement. Whilst painful for the new CA, this level of enhanced vetting, in return for being retroactively trusted by existing clients, is critical to the security of the overall ecosystem.</t>
          <t>As with any commercial relationship between competing businesses, there is the possibility of anti-competitive behavior or otherwise exploitative agreements to the benefit of the incumbent. Root Programs work to mitigate this by maintaining a healthy pool of older ubiquitous CAs to ensure an efficient marketplace.</t>
          <t>Trust Negotiation does not meaningfully change this situation. If a website wants to be able to serve older clients with an out of date root store, the website operator has no choice but to obtain a certificate chain which is ultimately signed by some CA that those clients trust, whether through a cross-sign or through a certificate chain directly signed by the older CA. Both cases require a commercial agreement with the same parties.</t>
        </section>
        <section anchor="RemovingCAs">
          <name>Removing a CA</name>
          <t>The TAI draft goes on to propose that trust negotiation can make it easier to remove CAs:</t>
          <ul empty="true">
            <li>
              <t>When CAs are determined to be untrustworthy, relying parties must remove them to mitigate the risk to user security. Over time, this shrinks their intersection with older relying parties. Without [trust] negotiation, the result is authenticating parties have fewer and fewer CA choices available. (Section 7.2 of <xref target="TAI"/>)</t>
            </li>
          </ul>
          <t>This observation is also false and the overall picture given is misleading. Firstly, this use case leaves out critically important context, which is that this intersection is so large as to not be a factor in CA removals.</t>
          <t>As an example, we consider Android's Root Store, as until 2023, Android was the only major OS to not receive automatic root store updates <xref target="Android14RootStore"/> and so has become notorious for the number of stale clients. However, even for Android, the number of Root CA certificates in the overlap between the newest and oldest devices is more than large enough <xref target="AndroidRoots"/>.</t>
          <table anchor="_table-old-vs-new">
            <thead>
              <tr>
                <th align="left">Android Version</th>
                <th align="left">Codename</th>
                <th align="left">Release Date</th>
                <th align="left">Shared Roots with latest Android</th>
              </tr>
            </thead>
            <tbody>
              <tr>
                <td align="left">4</td>
                <td align="left">Ice Cream Sandwich</td>
                <td align="left">2011</td>
                <td align="left">37</td>
              </tr>
              <tr>
                <td align="left">5</td>
                <td align="left">Lollipop</td>
                <td align="left">2014</td>
                <td align="left">60</td>
              </tr>
              <tr>
                <td align="left">7</td>
                <td align="left">Nougat</td>
                <td align="left">2016</td>
                <td align="left">74</td>
              </tr>
              <tr>
                <td align="left">11</td>
                <td align="left">Red Velvet Cake</td>
                <td align="left">2020</td>
                <td align="left">100</td>
              </tr>
            </tbody>
          </table>
          <t>Further, these figures are a substantial under-count because they only consider matching roots directly included in both root stores and don't consider root certificates which are trusted because of a cross-sign. For example, modern CAs like Google Trust Services, Amazon Trust Services, and Certainly, all of which were established long after the release of Ice Cream Sandwich in 2011, are still trusted on these old devices through a cross-sign but are not counted in these figures.</t>
          <t>Secondly, because of the cross-signing system, the intersection between new and old clients does not strictly shrink. The older clients have fixed root stores. When any of these older roots produce a cross-sign with a newer key, the intersection between new and old clients grows, rather than shrinks. Even when newer clients remove the older root, they are still happy to trust certificate signed by the newer root, regardless of the presence of the older root's cross sign.</t>
          <t>More generally, the idea that trust negotiation can make it easier for root programs to remove a CA is flawed because its not technical problems that impede CA removal, but non-technical challenges.</t>
          <t>Firstly, as a root store distrust is a life or death decision for a CA, a CA at risk of being distrusted will try all available means to apply pressure to a root program operator (including legal, commercial and regulatory avenues). This challenge cannot be solved by technical changes to the TLS handshake.</t>
          <t>The second barrier is that root program operators must engage in a game of chicken {<xref target="ChickenGameTheory"/>} with the website operators that rely on a to-be-distrusted CA. If root program operators distrust a CA and website operators don't switch to another CA, then those websites will become unavailable for clients of that root program. This can lead to delays when website operators are slow to transition away, which was a serious problem in the distrust of Symantec <xref target="SymantecDistrust"/>.</t>
          <t>However, the Symantec distrust took place in a WebPKI that looked much different. During the Symantec distrust, automated certificate issuance was practically unknown, TLS certificates typically lasted 5 years and were expensive to boot - all powerful factors in slowing the transition. Since the arrival of ACME, free certificates and shorter lifetimes, the friction for website operators to switch has dropped substantially.</t>
          <t>Root Programs have also introduced the ability to gracefully sunset trust in a CA, through mechanisms like Distrust-After <xref target="DistrustAfter"/>, which bypasses the game of chicken with website operators. This process has recently been enhanced with SCT-Distrust-After, as pioneered by Google Chrome <xref target="EntrustSCTDistrust"/>, which provides greater security during the distrust period.</t>
          <t>As a concrete example, root programs like Mozilla and Google Chrome recently distrusted Entrust which was previously one of the top 10 largest CAs <xref target="CAMarketShare"/>. This transition has been smooth and unremarkable for both website operators and users.</t>
        </section>
        <section anchor="key-rotation">
          <name>Key Rotation</name>
          <t>The final root program operation that the TAI draft claims to improve is a key rotation process for root certificates:</t>
          <ul empty="true">
            <li>
              <t>Without trust anchor negotiation, authenticating parties cannot switch to the new root as long as any supported older relying party requires the old root. That, in turn, means relying parties cannot distrust the old root, leaving them vulnerable. (Section 7.3)</t>
            </li>
          </ul>
          <t>This statement is also false. In fact, roots are already rotated periodically using the cross-signing process described in <xref target="AddingCAs"/>. Here, the cross-signing process is even smoother, because the same CA controls both the new and old root key. This practice has been widely used for many years to carry out root key rotations and is the standard practice of CAs today.</t>
          <t>Root Program operators are also able to unilaterally reduce trust in long-lived root keys if they so desire. Rather than trust the long-lived root keys, they can instead pin their trust to the shorter-lived intermediate CA keys which rotate much more frequently. These intermediate CA keys are publicly listed in the Common CA Database <xref target="CCADB"/> and required to be published there before being used to sign certificate chains. Clients can be programmed to fallback to trusting the longer lived root certificates if their list of intermediates becomes stale (similar to how CT logs are handled today).</t>
          <t>As consequence, trust negotiation also has nothing to offer for this use case.</t>
        </section>
      </section>
      <section anchor="trust-negotiation-for-post-quantum-certificates">
        <name>Trust Negotiation for Post-Quantum Certificates</name>
        <t><xref target="TAI"/> puts forward several ways in which trust negotiation could benefit the transition to post-quantum.</t>
        <section anchor="root-ubiquity-and-compatibility">
          <name>Root Ubiquity and Compatibility</name>
          <t>In Section 7.1, the TAI draft claims:</t>
          <ul empty="true">
            <li>
              <t>Post-quantum-capable relying parties may be detected with the signature_algorithms and signature_algorithms_cert extensions. However, this relies on all post-quantum CAs being added at roughly the same time and that they are sufficiently interchangeable to be negotiated with these extensions. Trust anchor negotiation directly addresses this problem and allows for both gradual and possibly heterogeneous deployment of post-quantum CAs across relying parties.</t>
            </li>
          </ul>
          <t>This claim is also false. Cross-signing (described in <xref target="AddingCAs"/>) works just as well when the two root keys are of different types as when they are of the same type. Signing a new PQ with an older classical signature is technically no different from signing a new ECDSA root with an older RSA root, as many CAs have done.</t>
          <t>Using cross-signing enables each CA to mint new PQ Roots as and when they wish. As modern clients already have nearly identical lists of trusted classical CAs, these cross-signs allow all clients with PQ support to consume the new PQ chains without compatibility problems. It is reasonable to ask whether signing a post-quantum root with a classical cross-sign in some way damages or weakens the security of the certificate chain. Happily, it does not.</t>
          <t>If the certificate chain is consumed by a client which trusts the new PQ root, then the client will not even bother to check the classical cross-sign and instead consider the chain to be fully post-quantum. If the same chain is consumed by a client which supports PQ signatures, but is unaware of the new PQ root, then it will consume the classical cross-sign and receive only classical authentication, which is the best outcome possible when the client does not have the new PQ root.</t>
          <t>This process has been further discussed on the TLS mailing list <xref target="PQCrossSign"/></t>
        </section>
        <section anchor="intermediate-suppression">
          <name>Intermediate Suppression</name>
          <t>Section 7.5 of <xref target="TAI"/> goes on to propose that trust negotiation could be used to avoid the need to deliver intermediates certificates to clients, which would be valuable for the PQ transition given the size of post-quantum cryptographic primitives.</t>
          <t>This is a use case that trust negotiation can actually address and so the proposed design <xref target="TAI"/> is evaluated for deployability in <xref target="Deployability"/> and then compared to the existing alternatives in <xref target="Suppression"/>.</t>
        </section>
        <section anchor="future-pq-experiments">
          <name>Future PQ Experiments</name>
          <t>Merkle Tree Certificates <xref target="MTC"/> is a draft proposing a new post-quantum authentication method for TLS which shsares a number of authors with <xref target="TAI"/>. Although the TAI draft does not reference the Merkle Tree Certificates draft, the MTC draft has been updated to depend on TAI and so it is briefly discussed here.</t>
          <t>As a premise, MTC is an interesting proposal. However, it has seen little discussion and has many open questions. In particular, the transparency properties it currently provides are much weaker than those of the existing Certificate Transparency ecosystem. Its reliance on a centralized provider for both security and availability is also problematic.</t>
          <t>A further issue is that several new post-quantum signature schemes with much smaller sizes are still finishing the standardization process <xref target="NistPQUpdate"/> (e.g. FN-DSA / Falcon, and the NIST Additional Signatures competitors) and their deployment would make the return on investment of schemes like MTC marginal if not negative.</t>
          <t>Finally, MTC as a design has no actual need for a dependency on trust negotiation or TAI, and so the question of whether to enable trust negotiation or adopt TAI, is largely independent of the future of MTC.</t>
        </section>
      </section>
      <section anchor="trust-negotiation-and-root-program-divergence">
        <name>Trust Negotiation and Root Program Divergence</name>
        <t>The final set of use cases for trust negotiation proposed in <xref target="TAI"/> concern allowing root programs to diverge and clients to enforce conflicting policies. Enabling divergence between the major root programs was stated as a 'motivating example' in the Chrome presentation at the interim <xref target="TLSInterim"/> and in more guarded language in the draft itself:</t>
        <ul empty="true">
          <li>
            <t>An authenticating party may need to support relying parties with different, potentially conflicting requirements. (Section 7.6)</t>
          </li>
        </ul>
        <section anchor="SecurityGains">
          <name>Can divergence improve security?</name>
          <t>The <xref target="TAI"/> draft suggests that if root program requirements can diverge, this will allow some clients to enforce stronger security requirements, because tension between different use cases is blocking security improvements. This is not the case and in fact there are no proposed security improvements that are being by root program disagreements or would be unlocked by enabling root program divergence.</t>
          <t>For example, the TAI draft states:</t>
          <ul empty="true">
            <li>
              <t>In contexts where online revocation checks are expensive, unreliable, or privacy-sensitive, user security is best served by short-lived certificates. In other contexts, long-lived certificates may be more appropriate for, e.g., systems that are offline for long periods of time or have unreliable clocks. (Section 7.6)</t>
            </li>
          </ul>
          <t>In fact there is already a standardized TLS extension which enables some clients to negotiate shorter lived certificates whilst allowing others to use longer lived certificates <xref target="DelegatedCredentials"/> which has been supported in Mozilla Firefox for several years.</t>
          <t>In general, security requirements are ultimately additive rather than conflicting, so it is unclear why divergence would ever be necessary in order to improve security. The other security improvements shipped to the WebPKI over the previous decade have not required divergence, indeed, they have typically benefited from convergence and unified support to encourage adoption.</t>
          <t>For example, security requirements might require more information for authentication to be placed in a certificate (like SCTs used in Certificate Transparency), reduce the number of parties which can issue certificates, or require shorter certificate lifetimes are all additive security requirements.</t>
          <t>Each root program is able to adopt these stricter requirements individually, indeed as many have done so. Over time, as the ecosystem shifts, these security requirements are transferred into the CabForum baseline requirements, through a formal voting procedure <xref target="CABForumPrimer"/>, which standardizes the consensus between the WebPKI Root programs and other stakeholders. This is an effective one-way ratchet for improving the security of web users.</t>
          <t>In reality, the largest constraint on shipping new security improvements in the WebPKI is not the expectations of other TLS clients or other root program requirements, but the level of investment that website operators are willing to make in terms of security. As it stands, the reluctance of website operators and enterprise vendors to invest in automated certificate lifecycle management solutions like ACME <xref target="EnterpriseACME"/> is what currently prevents root programs enforcing shorter certificate lifetimes.</t>
        </section>
        <section anchor="empowering-root-programs">
          <name>Empowering Root Programs</name>
          <t>Although trust negotiation is ineffective for improving security, it is effective at changing the power dynamics of the WebPKI. The current inability of websites to service users from different PKIs, means that the root programs of popular clients are incentivized to align their requirements.</t>
          <t>If a root program were to diverge in its requirements, websites would be forced to choose between supporting the consensus requirements or the diverging root program's requirements. As websites naturally want to be as accessible by a wider pool of users as possible, they will follow the consensus requirements, which in turn motivates root programs to avoid issuing conflicting or diverging requirements.</t>
          <t>Trust negotiation, in enabling clients and websites to negotiate different certificates, reverses these incentives and so shifts the balance of power in this system. If Trust negotiation were widely supported, then root programs could issue conflicting requirements and instead expect website operators to obtain multiple certificate chains in order to satisfy all of their clients.</t>
          <t>Enabling conflicting requirements, rather than simply additive ones, would ultimately enabling the WebPKI to shift from a well-functioning commons with multi-stakeholder governance to a fragmented patchwork of private fiefdoms, each dominated by a root program operator.</t>
        </section>
        <section anchor="burdening-website-operators">
          <name>Burdening Website Operators</name>
          <t>This shift in power towards root program operators would be deeply counterproductive to the goals of website operators, who largely wish to minimize the disruption and complexity of compliance with root program and client requirements - which implies a preference for consistency and uniformity amongst clients.</t>
          <t>Today, website operators only need to establish a relationship with a single certificate authority, which is easily done on the basis of popularity and service offered. Even the largest websites looking for maximum compatibility today are still able serve a single certificate chain from a single partner CA to all of their clients.</t>
          <t>Trust Negotiation reverses this situation. As each root program can diverge and evolve fully independently, the website operator needs to constantly track these changes and transitions to make sure they are partnered with sufficiently many CAs to retain widespread support. This is a strict increase in complexity and the number of transitions that the website operator has to manage.</t>
          <t>Ultimately, this pushes the pain and complexity of avoiding conflicts from the small number of root program operators and CAs, who are well positioned to bear it and moves it down to to individual website operators. This means asking orders of magnitude more people, who are less expert, to carry out more complex tasks in order to maintain the same compatibility and support they already have today. The website operators have little leverage in this situation, they either find a suitable certificate chain for each conflict, or they lose those clients of that root program.</t>
        </section>
        <section anchor="to-what-end">
          <name>To what end?</name>
          <t>No one can claim infallible foresight about how this change in power dynamics would impact as complex a system as the WebPKI. For the existing root program operators, we would of course hope that they would continue to prioritize user security over other incentives.</t>
          <t>However, enabling root programs to diverge also incentivizes the establishment of new root programs and this has been noted as a possibility by one of the authors of <xref target="TAI"/>:</t>
          <ul empty="true">
            <li>
              <t>One of the (unstated, and perhaps we should state it clearer) goals of trust expressions is to allow for new root programs to be created. <xref target="NewRootsMotivation"/></t>
            </li>
          </ul>
          <t>As discussed in <xref target="SecurityGains"/>, there are no substantive proposals for how divergence or a new root store would improve security. Unfortunately, the most obvious motivations for establishing a new root store would be deeply negative for users.</t>
          <section anchor="money">
            <name>Money</name>
            <t>The majority of product and device manufacturers take the easiest path with respect to security, that is, they ship the defaults of whatever technology is readily available. Today, the default is the WebPKI and complying with the WebPKI's requirements is typically seen as much easier than establishing your own root program. However, if alternative root programs that put less weight on security were readily available, they would present as compelling options for those less security conscious device or software manufacturers. These alternative root programs struggle to exist today, because websites are forced to choose which PKI to participate in, but of course trust negotiation lets them participate in multiple without issue.</t>
            <t>In the WebPKI, security improvements have been driven forwards by the high concentration of browsers who are motivated to improve security in order to widen usage of the web. However, alternative root programs are likely to follow different dynamics depending on who governs them and consumes. Absent concerned force of motivated and responsible entities to drive improvements, these alternative root programs are most likely to stagnate rather than evolve, especially if their membership is self-selects for those less willing to invest in security.</t>
            <t>After all, security remains a low priority for many commercial entities and its unlikely that most commercial operators of a new root program would put the same emphasis on security that browsers do. Unfortunately, users are relatively insensitive to the security of their devices, especially opaque intangibles like root program policy and so the economic incentives towards cost-cutting are likely to dominate.</t>
            <t>It also goes without saying that whilst this would not directly impact the security of browsers, it would impact the websites forced to participate in these less secure ecosystems (through client's choice of which to adopt) and it would most definitely impact users, whose digital security is defined by the weakest device or software product they depend on.</t>
          </section>
          <section anchor="control">
            <name>Control</name>
            <t>The other primary motivation for establishing a root program is control over the network communication between clients and servers using it.</t>
            <t>To this end, some governments have previously established their root certificates under their control and proposed to have them distributed to browsers and other clients within their territory, for example <xref target="RussiaCA"/>, <xref target="KazakhstanCA"/> and <xref target="MauritiusCA"/>. These root certificates can then be used to intercept, survey and censor network traffic within their borders.</t>
            <t>Recently, some governments have engaged in efforts which would achieve a similar outcome by less direct means <xref target="eIDAS"/>. Rather than mandate trust in a particular root certificate or a government-operated CA, a government establishes their own root program which selects trustworthy domestic CAs. The domestic CAs have an obvious commercial incentive to encourage these efforts. The government then pushes for client and server adoption of its domestic root program which ultimately enables interception and surveillance but can be dressed up as a legitimate initiative, with a ostensibly valid political objective, e.g. to achieve digital sovereignty, divest from big tech, build a local trust economy, and so on.</t>
            <t>One of the most powerful arguments against this approach is that in the current system it can serve no legitimate purpose because it is impossible for websites to adopt these certificates without becoming unavailable to users who do not have the roots installed. As it is extremely unlikely that any non-domestic user would ever adopt these roots, consequently websites are forced to choose between using a WebPKI CA and the ubiquitous trust it enjoys, or a domestic CA which means blocking the vast majority of non-local users or non-compatible devices. This means that a domestic PKI within the WebPKI's current architecture is largely a vanity project which offers few benefits.</t>
            <t>Deploying trust negotiation resolves these issues. Just as it enables the existing root program operators to diverge, or new commercial root programs to become established, it also resolves the issues that governments face running domestic root programs. Rather than having to try to force websites to solely use a domestic CA with limited deployment, governments could now ask (or require) websites to deploy certificates from a domestic CA in addition to their existing WebPKI CA. This in turn enables a gradual transition of client devices towards the domestic PKI.</t>
            <t>An option, after sufficient incubation of a domestic PKI and only available to the largest countries or federations, would then be to supplant the WebPKI entirely. As well as requiring a set of designated root certificates to be distributed, the government would also actively discourage the distribution of other non-approved root certificates to domestic clients. If carried out, this would create a PKI-based splinternet <xref target="Splinternet"/> which would be useful not only for intercepting, surveilling and censoring the individual connections of users, but would enable pro-active control of connections, where websites would need to apply for suitable certificates to become available to those stuck in the splinternet (e.g. meeting the necessary regulatory standards for identification and 'wholesomeness').</t>
            <t>Without trust negotiation, this kind of divergence would mean cutting oneself off from the Internet entirely. An idea which has been proposed and partially experimented with in some countries like Russia, China and Iran, but even these countries have shied away from the economic costs of such taking such a drastic step. Here too, trust negotiation offers a technical solution, enabling this divergence without the economic harm of total isolation.</t>
            <t>More succinctly, whilst trust negotiation might be envisioned to enable either Chrome and Firefox or browsers and IoT devices to negotiate different certificates. Trust negotiations works just as well to enable residents of different countries to negotiate different certificates, there is no technical difference between these scenarios and it is inarguable that trust negotiation solves some of the most substantial technological barriers that prevent these scenarios.</t>
            <t>Whether or not these observations meaningfully changes your beliefs about the likelihood of these outcomes is a much more subjective and nuanced question. If you believe that these outcomes are unfortunately inevitable or thankfully impossible, then even substantial changes in the technical landscape matter little. However, there is good evidence that in fact the political situation is quite unsettled and even small efforts <xref target="eIDAS"/> can lead to substantial differences in outcomes <xref target="eIDASOutcome"/>.</t>
          </section>
          <section anchor="alternative-paths-to-abuse">
            <name>Alternative paths to Abuse</name>
            <t>It shouldn't need to be said, but nobody involved in this discussion believes the outcomes described in the previous section would be positive or acceptable. However, it has been argued that widespread deployment of Trust Negotiation would not change the probability of these negative outcomes.</t>
            <t>The argument runs broadly as follows:</t>
            <ul spacing="normal">
              <li>
                <t>The security of clients reduces to which roots they have in their root store.</t>
              </li>
              <li>
                <t>Governments can already pass laws to force clients to use certain roots.</t>
              </li>
              <li>
                <t>Trust Negotiation does not affect the probability that such a law is passed.</t>
              </li>
            </ul>
            <t>This argument fails in the last step. Whether or not a law is passed is a function of what it achieves and how it can be justified. Trust Negotiation creates the technical architecture for the creation and operation of divergent root programs, resolving key technical barriers and enabling persuasive justifications.</t>
            <t>A second line of argument is instead that governments could deploy trust negotiation themselves either directly or through alternative means such as:</t>
            <ul spacing="normal">
              <li>
                <t>Using national signature algorithms, advertised in the TLS client hello, as a proxy for negotiating trust.</t>
              </li>
              <li>
                <t>Using the certificate_authorities extension to enable a 'small' domestic root store.</t>
              </li>
            </ul>
            <t>As theoretical technical designs, the first two approaches could be used to achieve a limited form of Trust Negotiation. However, both are practically blocked today because clients and servers would need to have new code shipped to either support the national signature algorithm or to support the certificate_authorities extension in the Client Hello. The sheer diversity of clients and servers in the world today and the difficulty of updating their TLS libraries is a formidable barrier to this outcome.</t>
            <t>At the end of the day, it is running code that matters, not theoretical designs and that is why we have to weigh the risks of deploying new technology, because as a community we have the power to change that code in a way that is extremely difficult, if not impossible, for governments.</t>
          </section>
        </section>
      </section>
    </section>
    <section anchor="Deployability">
      <name>The design and deployability of Trust Anchor Identifiers</name>
      <t>This section considers the design and deployability of the Trust Anchor Identifier design proposed in draft-beck-tls-trust-anchor-ids-03 <xref target="TAI"/>. As with any draft at the pre-adoption phase, the draft need not present a complete solution, however, it is critical to understand how the external dependencies and high level design of the draft impact its deployability and fitness for purpose.</t>
      <section anchor="overview">
        <name>Overview</name>
        <t>Unfortunately, TAI is not an easy design to deploy. For both clients and servers, it requires deep and invasive changes to both TLS libraries and the client and server applications that depend on them. For clients, this includes necessary integrations with DNS resolvers (whether mediated by the application or the TLS library), new stateful retry mechanisms and error handling code and a deprecation of existing APIs which allow for post-validation pinning. For servers, TAI requires existing application mechanisms for providing TLS certificates to be deprecated and complex and ongoing automated DNS changes which need to be integrated with automated certificate management solutions.</t>
        <t>These changes cross many existing software boundaries and touch many parts of the ecosystem and ultimately limit the deployability of this design to only the most capable clients and servers who are willing to make the necessary investments and already integrate the necessary dependencies, essentially browsers and CDNs.</t>
        <t>The limited deployability of TAI further undermines many of the proposed benefits. From the perspective of website operators, browsers are already highly homogenized in their behavior and so trust negotiation with them alone offers little room for improvement but could lead to divergence between browsers, driving up their operational burden. For root program operators, the situation is even worse, since any tightening of security policy reliant on TAI requires near universal deployment by website operators, who have historically been the blocking factor in most new TLS technologies.</t>
        <t>The limitation of TAI to highly capable and integrated parties like browsers and CDNs is especially problematic for future root program transitions. For example, predicating the PQ transition upon a design like TAI would leave behind the vast majority of clients and servers who are unable to adopt it. This harms not only users of clients which couldn't make the transition, but also users TAI-capable browsers who cannot negotiate PQ cryptography with websites not using a major CDN.</t>
      </section>
      <section anchor="the-design-of-tai">
        <name>The Design of TAI</name>
        <t>Draft-beck-tls-trust-anchor-ids-02 has a simple design. Every root certificate is assigned a short OID as an identifier. Servers can obtain one or more certificate chains, each of which terminates in a single root certificate and they advertise the corresponding identifiers for their certificate chains in a DNS record. The draft requires servers to keep this information up to date, which means in practice updating these DNS records whenever their certificate chains change - e.g. because new certificates have been acquired, or because existing certificates have been revoked or have expired.</t>
        <t>Clients can fetch these DNS records, inspect the advertised identifiers against their own root store and then use an extension in the ClientHello to ask the server to send a particular certificate chain. This mechanism relies upon either the client application being aware of this draft and providing the necessary information from DNS to the underlying TLS library, or the TLS library having its own mechanism for fetching information from DNS.</t>
        <t>Servers also provide a full list of their identifiers to clients in their EncryptedExtensions message. This allows for a more expensive recovery path (a full additional handshake) for clients that do not have the necessary DNS information, or where the DNS configuration is incorrect. Clients can retry the connection based upon the list of identifiers from the EncryptedExtensions message. This requires changes at the application level (to handle the retry), as well incurring a substantial performance and latency hit (especially when using PQ cryptographic primitives).</t>
        <t>It is important to understand that the DNS aspect of this flow is essential and not optional. Trust anchors are expected to have roughly 6-byte identifiers and client root stores include between 150+ anchors (just roots) and 2000 (including intermediates for intermediate suppression). This means that clients cannot advertise their full root store with this extension, as it would inflate their client hello by between 900 and 12,000 bytes.</t>
      </section>
      <section anchor="server-side-deployment-challenges">
        <name>Server-Side Deployment Challenges</name>
        <t>The dependency on DNS and the requirement for the server's TLS certificates and DNS records to be managed automatically and by the same component is challenging for real world deployment.</t>
        <t>Firstly, DNS configuration and APIs are non-standardized and vary widely between locally managed DNS servers, cloud providers &amp; DNS registrars - if they are even available at all.</t>
        <t>Secondly, sever's existing DNS configurations are similarly diverse and so it is challenging, if not impossible, for an automated tool to offer a correct configuration out of the box for anything but the simplest single-server deployments, especially considering common uses cases where multiple TLS servers share the same domain name and DNS records (e.g. round-robin DNS, multi-CDN deployments). As a result, TAI will likely require expert configuration and continued attention whenever changes are made to a webserver's configuration.</t>
        <t>Thirdly, the secrets used to authenticate DNS configuration changes are often more valuable than TLS certificate private keys to attackers and so are discouraged from being stored on webservers at all <xref target="LetsEncryptGuidance"/><xref target="CertbotGuidance"/>.</t>
        <t>TAI also requires changes between server-side applications and their underlying TLS libraries. Existing libraries typically provide APIs to allow the application to select which certificate is used for a given connection (e.g. based on SNI). TAI will require either the applications to become aware of TAI and use it to guide their selection, or the existing APIs to be deprecated so that the library can handle the choice of certificate.</t>
        <t>These kinds of investments are easier to make for large CDNs who have the necessary technical expertise and likely already have in-house management systems for their TLS certificates and DNS records, but even then are substantial undertakings requiring invasive surgery to critical components. For the vast majority of website operators, these kinds of investments are completely unrealistic and would require a substantial increase in complexity in existing TLS libraries and ACME clients.</t>
        <t>As a practical example, consider the fate of OCSP-Must Staple <xref target="OCSPMustStaple"/>, which was a revocation mechanism championed by all major browsers as a substantial security, privacy and performance boost over traditional revocation mechanisms. However, it relied on TLS servers periodically making a HTTP request to a CA, caching the result and offering it in the TLS handshake to clients. Unfortunately, even this design, which is much more simple and requires much less complex integrations than TAI, proved too complex and expensive for website operators to adopt and has since been abandoned <xref target="OCSPStapleFail"/>.</t>
      </section>
      <section anchor="client-side-deployment-challenges">
        <name>Client-Side Deployment Challenges</name>
        <t>TAI depends on the TLS library being provisioned with the necessary information from DNS. This requires either the application being aware of TAI, making these requests itself, and so passing them on to the TLS library, or the TLS library being integrated with a DNS client. The former requires applications to opt-in to TAI and invest in performantly fetching the necessary records. The latter requires the TLS library to integrate with a DNS client.</t>
        <t>Changes are also required to the existing APIs between TLS libraries and clients to ensure the Trust Anchor Identifiers in the Client Hello have the correct semantics. A typical flow for applications today is to rely on the TLS library to validate a certificate, then afterwards to inspect the certificate chain via the libraries API to perform some additional verification (like certificate pinning as described in the TAI draft). However, existing APIs do not allow the TLS library to know whether the application is going to do this at the time it sends its client hello, making the Trust Anchor Information contained within it unreliable unless the application opted in.</t>
        <t>The retry flow also requires changes to the applications using TLS libraries, so that they understand the resulting error code from the initial TAI failure and know to restart the connection with the provided retry information.</t>
        <t>Ultimately, TAI requires a deep integration between the client application, the TLS library, the DNS resolver and the root store in use (whether operating system or application provided). Browsers are well positioned for this integration, as most already include all of these components, but the picture for non-browsers is bleak.</t>
      </section>
      <section anchor="interaction-with-encrypted-client-hello">
        <name>Interaction with Encrypted Client Hello</name>
        <t>TAI and ECH <xref target="ECH"/> share similar aspects of their design, both relying on a HTTPS resourced record to discover information about a server and using a retry mechanism which requires a fresh connection to the server. Unfortunately, the proposed TAI extension and ECH compose together poorly. If the ECH Config and Trust Anchor Identifiers for the public name and inner name are stale, clients are required to make 4 consecutive handshakes before they can successfully connect:</t>
        <ol spacing="normal" type="1"><li>
            <t>An initial connection with a stale ECH config and stale Trust Anchor Identifiers. ECH is rejected and there's a certificate error. The client learns the correct Trust Anchor Identifiers for the public name but must throw away the unauthenticated ECH Retry information.</t>
          </li>
          <li>
            <t>On the second connection, the client has the right TAIs and learns a correct ECH Config through the retry extension.</t>
          </li>
          <li>
            <t>On the third connection, the client has the right ECH config, but still has stale Trust Anchor Identifiers for the inner name and so the connection fails.</t>
          </li>
          <li>
            <t>On the fourth connection, the client can now connect successfully.</t>
          </li>
        </ol>
      </section>
      <section anchor="consequences-of-a-limited-deployment">
        <name>Consequences of a limited deployment</name>
        <t>For TAI to be effective, it necessarily needs to be deployed by both the client and server. The limited deployability of TAI is a substantial issue, as it makes many of the proposed use cases unworkable in practice (in addition to the other issues discussed in <xref target="TNImpact"/>).</t>
        <t>For example, consider the proposed use case of easier CA removals for root program operators which was evaluated in <xref target="RemovingCAs"/>. Obviously, the root program operator needs widespread TAI support deployed in their clients and so is likely a web browser provider. However, the root program operator is also dependent on the web servers which use the distrusted CA supporting TAI in order to make use of it. Given the unpredictability of which websites are impacted by a distrust event and the stated goal to speed up the process, this assumes that either TAI support is ubiquitous or the affected websites can deploy it quickly, but this is deeply unrealistic given the deployment challenges identified.</t>
        <t>Another example would be the use of TAI for intermediate suppression in order to support post-quantum authentication between clients and servers. We want the transition to post-quantum primitives to be practical for as many clients and servers as possible and the deployment challenges of TAI would be a serious obstacle.</t>
        <t>Whilst it's typical for technologies to arrive unevenly, with browsers and CDNs often going first, it is critically important that the rest of the ecosystem be able to follow. If enough websites couldn't follow, then even users of up to date browsers would suffer as the transition to PQ stalls. If enough non-browser clients couldn't follow, then not only would users and websites suffer from the stalled PQ transition, but the outcome could well be the bifurcation of the entire ecosystem, leading to prolonged stagnation and insecurity for non-browsers and harm for users.</t>
        <t>Website operators capable of deploying TAI (e.g. large CDNs) and wanting to use it for compatibility are reliant on their clients introducing support for it as well. As identified earlier, deployment would be largely limited to browsers. This substantially limits the benefit of TAI to website operators, because browser's root stores and TLS behavior is highly homogenized. Meanwhile, the long tail of non-browser clients with less well understood root stores and policies, who cause the most compatibility issues, would be the least likely to go out of their way to invest in TAI support in their applications and libraries. Put another way, any client willing to make the necessary investments and integrations for TAI, has likely already invested in automatic root store updates and modern TLS compatibility, minimizing the benefit to website operators.</t>
        <t>The net effect for website operators is that TAI would enable divergence in the currently homogenous population of browsers, but do nothing to mitigate compatibility problems with the long tail of non-browser clients.</t>
      </section>
    </section>
    <section anchor="PathForwards">
      <name>The Path Forwards</name>
      <t><xref target="TNImpact"/> evaluated the proposed use cases for Trust Negotiation and concluded that none of the proposed use cases for improving security stood up to scrutiny. It also identified the ecosystem impacts of trust negotiation as deeply negative for the Internet due to the transfer of complexity and responsibility from root program operators to website operators and the risk of fragmentation and abuse.</t>
      <t>The conclusion of this section is that Trust Negotiation at scale is not a desirable feature to enable in TLS, regardless of the underlying design or implementation.</t>
      <t>{#Deployability} considered the design of TAI specifically and evaluated its suitability for deployment at scale. TAI requires substantial investments to deploy and deep integrations between applications, TLS libraries, DNS and certificate management tooling, along with complex configuration and operational requirements that effectively prohibits deployment outside of highly integrated environments like browsers and major CDNs. These challenges make TAI effectively unworkable for the lone use case that is identified as valuable - enabling a transition to post-quantum authentication through intermediate suppression.</t>
      <t>Ultimately, attempts to enable trust negotiation are attempts to radically alter the WebPKI and change its underlying architecture. It represents a loosening of constraints on root programs without any clear benefits and several clear risks. Most critically, that it transfers complexity and responsibility from root programs and onto website operators, and that it empowers bad actors to establish their own root programs for their own end.</t>
      <t>As TAI could only be deployed by browsers and a small number of the largest websites, it would in any case be difficult to justify any increase in complexity for the majority of website operators or risks to the security of web users, in return for unclear benefit to the few individuals to whom the burden of root program management and certificate compatibility currently falls to.</t>
      <t>The proposed use cases for trust negotiation for intermediate suppression to help enable the transition to post-quantum is the single compelling use case. However, there are several alternative mechanisms that have already been proposed, including one which has already been adopted by the TLS WG, and all of which are much simpler and easier to implement, will not bifurcate the TLS ecosystem between browsers and non-browsers and do not entail the risks of the abuse of trust negotiation. The next section of this draft explores those alternatives and compares them to TAI.</t>
      <t>The final section of this draft explores more modest solutions to the challenges of website operators trying maximize their compatibility with old clients. These solutions focus on simple efforts to address the underlying issues of visibility, ageing clients and negligent device manufacturers.</t>
      <section anchor="Suppression">
        <name>Delivering Intermediate Suppression</name>
        <t>Intermediate Suppression is the goal of removing the size overhead of the CA certificates from the TLS handshake, which is especially important with larger PQ signatures. In fact, a reasonable proportion of websites already omit these intermediate certificates which was historically caused connection errors, and so already motivated clients to find solutions.</t>
        <t>For example, as the major root programs require all CAs to publish their intermediate certificates in the CCADB ahead of use, and Mozilla distributes a bundle of these intermediate certificates to every Mozilla Firefox client <xref target="IntermediatePreloading"/>. Other clients use different strategies, for example, Google Chrome, Edge, Safari all use a technique known as 'AIA chasing' which allows them to fetch and cache any intermediate certificates missing from the server's certificate chain <xref target="LECrossSign"/>.</t>
        <t>Trust Anchor Identifiers proposes that clients take a similar pre-distribution strategy to Mozilla Firefox and store a copy of the available intermediate certificates, have servers advertise which intermediate trust anchors they use in TLS and then use TAI to have clients request a shortened chain from the server. As discussed earlier, this requires extensive and costly changes to clients, servers and introduces a number of dependencies.</t>
        <section anchor="abridged-certificate-compression">
          <name>Abridged Certificate Compression</name>
          <t>Abridged Certificates <xref target="AbridgedCerts"/> is a draft already adopted by the TLS Working Group. It is a type of TLS Certificate Compression <xref target="CertCompression"/>, similar to existing methods like Brotli or Zstd, but which enables pre-distributed CA certificates to be compressed out of the TLS handshake by mapping each certificate to a 3 byte identifier.</t>
          <t>Unlike TAI, Abridged Certificate Compression can be deployed by default in the TLS library without application changes, can't break connections or cause retries, is entirely transparent to the application using the library and doesn't impact trust decisions. Further, it doesn't require any DNS integration on the client or server, or other external dependencies.</t>
          <t>Abridged Certificate Compression has a simple implementation and an extremely small code footprint, needing only to ship a list of certificate hashes (for each intermediate and root in the dictionary) and their corresponding identifiers. On servers, this is sufficient to provide compression. On clients, this is sufficient to detect whether the client's root store includes the necessary intermediates to perform Abridged Compression.</t>
          <t>Currently, the Abridged Certificate draft currently describes a static versioning scheme, where each listing of compressible certificates is given a specific TLS certificate compression codepoint, new versions of which would be published yearly in line with existing WebPKI practices for root store updates. The dictionary format is designed so that clients and servers can simultaneously support multiple versions of the mapping without redundancy by reusing the same list structure.</t>
          <t>The draft focuses on WebPKI certificates but is easy to extend to private schemes for enterprise settings or other custom mappings of compressible certificates. Clients and servers can support multiple schemes as needed as this does not impact trust decisions, require external configuration or connection retries. An appendix to the draft also describes an alternative approach which would allow for dynamically versioned dictionaries without the need to use new codepoints.</t>
        </section>
        <section anchor="aia-chasing-with-storage">
          <name>AIA Chasing with Storage</name>
          <t>RFC 5280 describes the Authority Information Access Extension <xref target="AIA"/> for X.509 certificates which describes a URL where the signing certificate can be located. For example, a leaf certificate will contain a URL pointing to the intermediate certificate, which in turn will contain a URL pointing to the root certificate.</t>
          <t>Many existing clients, including browsers (Chrome, Safari, Edge <xref target="AIAOverview"/>), OS Implementations (Windows s_channel, MacOS Secure Transport <xref target="AIAOverview"/>) and middleboxes (<xref target="CiscoAIA"/>, <xref target="BroadcomAIA"/>) already support AIA Chasing. If a certificate chain is presented to these clients with an unrecognized signature, the client will look for the AIA extension, download the signing certificate and if valid, use it to complete the certificate chain <xref target="AIAExample"/>.</t>
          <t>This can be used to achieve intermediate suppression by having the client signal the server that it does not need to be provided with intermediates (as described in <xref target="ICA"/>). The client will then either validate the certificate chain locally or fetch any necessary intermediates via AIA as required. This fetch is privacy preserving (it does not identify the leaf certificate or the user) and the result can be stored for the lifetime of the intermediate certificate (several years).</t>
          <t>The adoption of this technique in Chrome on Android in 2016, proposed by Emily Stark and supported by Ryan Sleevi <xref target="AIAChrome"/>, was justified as "an important aspect of PKI mobility" and "to highlight that it allows for PKI transitions to happen independently, without centralized coordination and management", noting that "some of us believe that AIA fetching represents an important aspect of ecosystem health, and that all PKI clients should implement this for robustness."</t>
        </section>
        <section anchor="deployment-considerations">
          <name>Deployment Considerations</name>
          <t>Both Abridged Certificates and AIA Chasing are much simpler and easier to implement than TAI.</t>
          <t>Abridged Certificates is small enough and simple enough to be shipped by default in TLS libraries and have no external dependencies or integration requirements. It is entirely transparent to both clients and servers. It does not require any configuration, interaction with DNS or other operational burdens. It can also seamlessly interact with clients with different root stores, with very different supported versions because it does not impact trust decisions.</t>
          <t>AIA Chasing is more complicated to implement than Abridged Certificates and making a network call or persisting state to short or long term storage may not be viable for all clients. However, it is already widely supported and has ancillary benefits as it can be used to effectively update a client's root store even if the client is no longer receiving software updates. This is because AIA can fetch cross-signed certificates and store them for future use. This does not have any security implications because an attacker can always provide the cross-signed certificate themselves.</t>
          <t>Both designs have the side-benefit of making offering cross-signed certificates effectively free in the TLS handshake, allowing greater flexibility for servers looking to maximize their compatibility. In this fashion, AIA is slightly easier for server operators since they need only provision a leaf certificate and leave the AIA configuration to the CA. Abridged Certificates is more flexible for server operators but requires them to configure the full chain they want to send.</t>
        </section>
      </section>
      <section anchor="reducing-the-operational-burdens-for-website-operators">
        <name>Reducing the operational burdens for website operators</name>
        <t>This section proposes approaches for reducing the burden on website operators for maintaining websites compatible with older clients. Recognizing that this is not a problem that impacts the vast majority of website operators, who enjoy a set it and forget it mentality to TLS, these approaches target improvements for the operators of major websites and CDNs.</t>
        <section anchor="automatic-client-root-store-updates">
          <name>Automatic Client Root Store Updates</name>
          <t>Most major browsers, platforms and operating systems, including MacOS, iOS, Chrome, Safari, Firefox, Edge, Windows and most linux distributions provide automatic root store updates for their users and have done so for over a decade. Legislative efforts are also ongoing in the UK and EU to ensure all new devices to come with automatic security updates as a basic condition of sale <xref target="EUCyberResiliencyAct"/> <xref target="UKSecureByDesign"/>.</t>
          <t>A notable outlier has been Android. Until Android 7 released in 2016, Android had no uniform root store, instead relying on each individual device manufacturer to provision their own certificates <xref target="Android7RootStore"/>. Until Android 14 released in October 2023, the system's root store could not be updated without a manufacturer provided firmware update, which was functionally impossible <xref target="Android14RootStore"/>. Since Android 14 released a year ago, root store updates are now available on Android through standard app store updates (e.g. via the Play Store).</t>
          <t>Consequently, Android has been the primary source of root store compatibility pain for the majority of websites over the past decade, as reflected in blog posts by Cloudflare and Let's Encrypt when they evaluate certificate chain compatibility and transitions <xref target="CloudflareCertificateChanges"/> <xref target="LetsEncryptCertificateChanges"/>. As Android 14 propagates through the ecosystem, currently at around 30% of devices, we can largely put this challenge behind us.</t>
        </section>
        <section anchor="when-automatic-updates-fail">
          <name>When Automatic Updates Fail</name>
          <t>Even with the best of intentions and legislative backing, clients will eventually go out of support. As mentioned earlier, AIA chasing offers an effective mechanism for providing ongoing compatibility updates to such clients and would improve the robustness of the WebPKI if it were universally supported.</t>
          <t>TLS Clients are also aware of when they last received a root store update and some already use it to guide their security profile (example: disabling CT once their list of logs becomes stale). This approach can be naturally extended to provide graceful obsolescence.</t>
          <t>After a fixed period of time, be it 5 years or 10 years, without security updates, it is deeply misleading to claim to the user or application be able to provide a secure connection. The default behavior of TLS clients in such circumstances should be to always report a certificate validation error and let the application or the user figure out what to do. At the very least, that means that the user will correctly understand that their client is no longer secure (due to all the TLS error pages they will see).</t>
          <t>A similar effect is likely to happen naturally as the WebPKI shifts to shorter term root certificates (currently 15 year terms). This limit effectively caps the maximum lifetime of a TLS client without updates to at most 15 years, reducing the pressure on website operators to serve these older clients.</t>
          <t>In extremis, website operators are able to fingerprint TLS clients and decide which certificates to use for a given software version <xref target="CloudflareTLSFingerprint"/> <xref target="CurlTLSFingerprint"/>. These granular fingerprints are highly stable and typically identify TLS libraries and their software version uniquely, but even very simple heuristics (like the offered TLS versions) allow for the easy dating of an implementation and it's root store to within a few years. This enables website operators to send suitable certificate chains to extremely old clients, even if no cross-sign to a modern chain exists.</t>
        </section>
        <section anchor="tools-for-website-operators">
          <name>Tools for Website Operators</name>
          <t>The vast majority of website operators are well served by the WebPKI and understand little of it beyond the need to select a CA and (hopefully) to configure a certificate management solution.</t>
          <t>However, for the small number of individuals working at larger tech companies with longer term backwards compatibility goals, choosing a certificate authority is more complicated and requires an understanding of historical and contemporary root stores, plus the available cross-signs.</t>
          <t>This information is available via the CCADB <xref target="CCADB"/> for some root stores but not others and often each root store has a custom format for recording its contents. Providing better machine readable information about root store contents and changes, and how that impacts the compatibility of modern CAs, would be a valuable tool for expert users.</t>
          <t>Similarly, providing a signalling mechanism for HTTP or TLS clients to convey their root store contents to websites would help major operators evaluate compatibility. Browsers already support Network Error Logging, a mechanism for websites to opt-in to receiving reports about failed connections, which could be easily extended in this direction and would pose a privacy problem provided it did not disclose any user-specific changes.</t>
          <t>Even major websites are often in the dark about best practices for changing certificate chains and monitoring compatibility through techniques like A/B testing. Tooling and better community support would provide operators with greater confidence in making transitions.</t>
          <t>Similarly, many lessons were learned by root program operators during misadventures with certificate pinning or shipping client applications without root store update mechanisms in the 2010s. A useful technique to workaround these situations is to separate traffic by domain (e.g. directing particular clients onto per-client and per-version subdomains) which aliased to the primary domain allowing for custom certificate selection if necessary.</t>
        </section>
      </section>
    </section>
    <section anchor="security-considerations">
      <name>Security Considerations</name>
      <t>This document is almost entirely security considerations.</t>
    </section>
    <section anchor="iana-considerations">
      <name>IANA Considerations</name>
      <t>This document has no IANA actions.</t>
    </section>
  </middle>
  <back>
    <references anchor="sec-informative-references">
      <name>Informative References</name>
      <reference anchor="TAI">
        <front>
          <title>TLS Trust Anchor Identifiers</title>
          <author fullname="Bob Beck" initials="B." surname="Beck">
            <organization>Google LLC</organization>
          </author>
          <author fullname="David Benjamin" initials="D." surname="Benjamin">
            <organization>Google LLC</organization>
          </author>
          <author fullname="Devon O'Brien" initials="D." surname="O'Brien">
            <organization>Google LLC</organization>
          </author>
          <author fullname="Kyle Nekritz" initials="K." surname="Nekritz">
            <organization>Meta</organization>
          </author>
          <date day="18" month="December" year="2024"/>
          <abstract>
            <t>   This document defines the TLS Trust Anchors extension, a mechanism
   for relying parties to convey trusted certification authorities.  It
   describes individual certification authorities more succinctly than
   the TLS Certificate Authorities extension.

   Additionally, to support TLS clients with many trusted certification
   authorities, it supports a mode where servers describe their
   available certification paths and the client selects from them.
   Servers may describe this during connection setup, or in DNS for
   lower latency.

            </t>
          </abstract>
        </front>
        <seriesInfo name="Internet-Draft" value="draft-beck-tls-trust-anchor-ids-03"/>
      </reference>
      <reference anchor="MTC">
        <front>
          <title>Merkle Tree Certificates for TLS</title>
          <author fullname="David Benjamin" initials="D." surname="Benjamin">
            <organization>Google LLC</organization>
          </author>
          <author fullname="Devon O'Brien" initials="D." surname="O'Brien">
            <organization>Google LLC</organization>
          </author>
          <author fullname="Bas Westerbaan" initials="B." surname="Westerbaan">
            <organization>Cloudflare</organization>
          </author>
          <date day="5" month="September" year="2024"/>
          <abstract>
            <t>   This document describes Merkle Tree certificates, a new certificate
   type for use with TLS.  A relying party that regularly fetches
   information from a transparency service can use this certificate type
   as a size optimization over more conventional mechanisms with post-
   quantum signatures.  Merkle Tree certificates integrate the roles of
   X.509 and Certificate Transparency, achieving comparable security
   properties with a smaller message size, at the cost of more limited
   applicability.

            </t>
          </abstract>
        </front>
        <seriesInfo name="Internet-Draft" value="draft-davidben-tls-merkle-tree-certs-03"/>
      </reference>
      <reference anchor="AbridgedCerts">
        <front>
          <title>Abridged Compression for WebPKI Certificates</title>
          <author fullname="Dennis Jackson" initials="D." surname="Jackson">
            <organization>Mozilla</organization>
          </author>
          <date day="16" month="September" year="2024"/>
          <abstract>
            <t>   This draft defines a new TLS Certificate Compression scheme which
   uses a shared dictionary of root and intermediate WebPKI
   certificates.  The scheme smooths the transition to post-quantum
   certificates by eliminating the root and intermediate certificates
   from the TLS certificate chain without impacting trust negotiation.
   It also delivers better compression than alternative proposals whilst
   ensuring fair treatment for both CAs and website operators.  It may
   also be useful in other applications which store certificate chains,
   e.g.  Certificate Transparency logs.

            </t>
          </abstract>
        </front>
        <seriesInfo name="Internet-Draft" value="draft-ietf-tls-cert-abridge-02"/>
      </reference>
      <reference anchor="ECH">
        <front>
          <title>TLS Encrypted Client Hello</title>
          <author fullname="Eric Rescorla" initials="E." surname="Rescorla">
            <organization>Independent</organization>
          </author>
          <author fullname="Kazuho Oku" initials="K." surname="Oku">
            <organization>Fastly</organization>
          </author>
          <author fullname="Nick Sullivan" initials="N." surname="Sullivan">
            <organization>Cryptography Consulting LLC</organization>
          </author>
          <author fullname="Christopher A. Wood" initials="C. A." surname="Wood">
            <organization>Cloudflare</organization>
          </author>
          <date day="15" month="September" year="2024"/>
          <abstract>
            <t>   This document describes a mechanism in Transport Layer Security (TLS)
   for encrypting a ClientHello message under a server public key.

Discussion Venues

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

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

            </t>
          </abstract>
        </front>
        <seriesInfo name="Internet-Draft" value="draft-ietf-tls-esni-22"/>
      </reference>
      <reference anchor="CertCompression">
        <front>
          <title>TLS Certificate Compression</title>
          <author fullname="A. Ghedini" initials="A." surname="Ghedini"/>
          <author fullname="V. Vasiliev" initials="V." surname="Vasiliev"/>
          <date month="December" year="2020"/>
          <abstract>
            <t>In TLS handshakes, certificate chains often take up the majority of the bytes transmitted.</t>
            <t>This document describes how certificate chains can be compressed to reduce the amount of data transmitted and avoid some round trips.</t>
          </abstract>
        </front>
        <seriesInfo name="RFC" value="8879"/>
        <seriesInfo name="DOI" value="10.17487/RFC8879"/>
      </reference>
      <reference anchor="AIA">
        <front>
          <title>Internet X.509 Public Key Infrastructure Certificate and Certificate Revocation List (CRL) Profile</title>
          <author fullname="D. Cooper" initials="D." surname="Cooper"/>
          <author fullname="S. Santesson" initials="S." surname="Santesson"/>
          <author fullname="S. Farrell" initials="S." surname="Farrell"/>
          <author fullname="S. Boeyen" initials="S." surname="Boeyen"/>
          <author fullname="R. Housley" initials="R." surname="Housley"/>
          <author fullname="W. Polk" initials="W." surname="Polk"/>
          <date month="May" year="2008"/>
          <abstract>
            <t>This memo profiles the X.509 v3 certificate and X.509 v2 certificate revocation list (CRL) for use in the Internet. An overview of this approach and model is provided as an introduction. The X.509 v3 certificate format is described in detail, with additional information regarding the format and semantics of Internet name forms. Standard certificate extensions are described and two Internet-specific extensions are defined. A set of required certificate extensions is specified. The X.509 v2 CRL format is described in detail along with standard and Internet-specific extensions. An algorithm for X.509 certification path validation is described. An ASN.1 module and examples are provided in the appendices. [STANDARDS-TRACK]</t>
          </abstract>
        </front>
        <seriesInfo name="RFC" value="5280"/>
        <seriesInfo name="DOI" value="10.17487/RFC5280"/>
      </reference>
      <reference anchor="ICA">
        <front>
          <title>Suppressing CA Certificates in TLS 1.3</title>
          <author fullname="Martin Thomson" initials="M." surname="Thomson">
            <organization>Mozilla</organization>
          </author>
          <author fullname="Panos Kampanakis" initials="P." surname="Kampanakis">
            <organization>AWS</organization>
          </author>
          <author fullname="Cameron Bytheway" initials="C." surname="Bytheway">
            <organization>AWS</organization>
          </author>
          <author fullname="Bas Westerbaan" initials="B." surname="Westerbaan">
            <organization>Cloudflare</organization>
          </author>
          <date day="8" month="July" year="2022"/>
          <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>
        <seriesInfo name="Internet-Draft" value="draft-kampanakis-tls-scas-latest-02"/>
      </reference>
      <reference anchor="DelegatedCredentials">
        <front>
          <title>Delegated Credentials for TLS and DTLS</title>
          <author fullname="R. Barnes" initials="R." surname="Barnes"/>
          <author fullname="S. Iyengar" initials="S." surname="Iyengar"/>
          <author fullname="N. Sullivan" initials="N." surname="Sullivan"/>
          <author fullname="E. Rescorla" initials="E." surname="Rescorla"/>
          <date month="July" year="2023"/>
          <abstract>
            <t>The organizational separation between operators of TLS and DTLS endpoints and the certification authority can create limitations. For example, the lifetime of certificates, how they may be used, and the algorithms they support are ultimately determined by the Certification Authority (CA). This document describes a mechanism to overcome some of these limitations by enabling operators to delegate their own credentials for use in TLS and DTLS without breaking compatibility with peers that do not support this specification.</t>
          </abstract>
        </front>
        <seriesInfo name="RFC" value="9345"/>
        <seriesInfo name="DOI" value="10.17487/RFC9345"/>
      </reference>
      <reference anchor="TLSInterim" target="https://datatracker.ietf.org/meeting/interim-2024-tls-01/session/tls">
        <front>
          <title>TLS Interim Materials</title>
          <author>
            <organization/>
          </author>
          <date year="2024" month="October" day="01"/>
        </front>
      </reference>
      <reference anchor="LECrossSign" target="https://scotthelme.co.uk/cross-signing-alternate-trust-paths-how-they-work/">
        <front>
          <title>Cross-Signing and Alternate Trust Paths; How They Work</title>
          <author initials="S." surname="Helme" fullname="Scott Helme">
            <organization/>
          </author>
          <date year="2020" month="June" day="22"/>
        </front>
      </reference>
      <reference anchor="GTSCrossSign" target="https://security.googleblog.com/2021/03/google-https-and-device-compatibility.html">
        <front>
          <title>Google, HTTPS, and device compatibility</title>
          <author initials="R." surname="Hurst" fullname="Ryan Hurst">
            <organization/>
          </author>
          <date year="2021" month="March" day="15"/>
        </front>
      </reference>
      <reference anchor="FastlyCRT" target="https://crt.sh/?graph=15746089670&amp;opt=nometadata">
        <front>
          <title>Certificate Trust Graph for Certainly</title>
          <author>
            <organization>Sectigo</organization>
          </author>
          <date year="2024" month="December" day="20"/>
        </front>
      </reference>
      <reference anchor="AndroidRoots" target="https://android.googlesource.com/platform/system/ca-certificates/+log/refs/heads/main/files">
        <front>
          <title>Android Root Store</title>
          <author>
            <organization>Google</organization>
          </author>
          <date year="2024" month="December" day="20"/>
        </front>
      </reference>
      <reference anchor="ChickenGameTheory" target="https://en.wikipedia.org/wiki/Chicken_(game)">
        <front>
          <title>Chicken (Game Theory)</title>
          <author>
            <organization>Wikipedia</organization>
          </author>
          <date year="2024" month="December" day="20"/>
        </front>
      </reference>
      <reference anchor="EntrustSCTDistrust" target="https://censys.com/google-entrust-internet/">
        <front>
          <title>Removing Entrust from Chrome's Root Store</title>
          <author>
            <organization>Censys</organization>
          </author>
          <date year="2024" month="July" day="11"/>
        </front>
      </reference>
      <reference anchor="CAMarketShare" target="https://x.com/rmhrisk/status/1739775001920950730">
        <front>
          <title>WebPKI Marketshare Update</title>
          <author initials="R." surname="Hurst" fullname="Ryan Hurst">
            <organization/>
          </author>
          <date year="2022" month="December" day="26"/>
        </front>
      </reference>
      <reference anchor="SymantecDistrust" target="https://wiki.mozilla.org/CA/Symantec_Issues">
        <front>
          <title>Symantec Issues and Timeline</title>
          <author>
            <organization>Mozilla</organization>
          </author>
          <date year="2018" month="October" day="10"/>
        </front>
      </reference>
      <reference anchor="DistrustAfter" target="https://wiki.mozilla.org/CA/Additional_Trust_Changes#Distrust_After">
        <front>
          <title>Additional CA Trust Changes - Distrust After</title>
          <author>
            <organization>Mozilla</organization>
          </author>
          <date year="2023" month="July" day="31"/>
        </front>
      </reference>
      <reference anchor="PQCrossSign" target="https://mailarchive.ietf.org/arch/msg/tls/b_S23Rk0yvleoT3D0BGUTYFut80/">
        <front>
          <title>Transitioning to PQC Certificates</title>
          <author>
            <organization>IETF</organization>
          </author>
          <date year="2024" month="May" day="27"/>
        </front>
      </reference>
      <reference anchor="NistPQUpdate" target="https://www.nist.gov/news-events/news/2024/08/nist-releases-first-3-finalized-post-quantum-encryption-standards">
        <front>
          <title>NIST Releases First 3 Finalized Post-Quantum Encryption Standards</title>
          <author>
            <organization>NIST</organization>
          </author>
          <date year="2024" month="August" day="13"/>
        </front>
      </reference>
      <reference anchor="NewRootsMotivation" target="https://mailarchive.ietf.org/arch/msg/tls/kBUBdLGEo-b5ywGoYFoJhoyW7KY/">
        <front>
          <title>Mail on New Roots</title>
          <author initials="B." surname="Beck" fullname="Bob Beck">
            <organization/>
          </author>
          <date year="2024" month="June" day="14"/>
        </front>
      </reference>
      <reference anchor="CABForumPrimer" target="https://www.digicert.com/blog/digicerts-introduction-to-the-cab-forum">
        <front>
          <title>Introduction to the CA/B Forum</title>
          <author>
            <organization>Digicert</organization>
          </author>
          <date year="2021" month="January" day="21"/>
        </front>
      </reference>
      <reference anchor="EnterpriseACME" target="https://smallstep.com/blog/the-embarrassing-state-of-enterprise-acme/">
        <front>
          <title>The Embarrassing State of Enterprise ACME Support</title>
          <author>
            <organization>smallstep</organization>
          </author>
          <date year="2024" month="May" day="20"/>
        </front>
      </reference>
      <reference anchor="OCSPMustStaple" target="https://blog.cloudflare.com/high-reliability-ocsp-stapling/">
        <front>
          <title>High-reliability OCSP stapling and why it matters</title>
          <author initials="N." surname="Sullivan" fullname="Nick Sullivan">
            <organization/>
          </author>
          <date year="2017" month="July" day="10"/>
        </front>
      </reference>
      <reference anchor="OCSPStapleFail" target="https://blog.hboeck.de/archives/886-The-Problem-with-OCSP-Stapling-and-Must-Staple-and-why-Certificate-Revocation-is-still-broken.html">
        <front>
          <title>The Problem with OCSP Stapling and Must Staple and why Certificate Revocation is still broken</title>
          <author initials="H." surname="Böck" fullname="Hanno Böck">
            <organization/>
          </author>
          <date year="2017" month="May" day="19"/>
        </front>
      </reference>
      <reference anchor="LetsEncryptGuidance" target="https://letsencrypt.org/docs/challenge-types/">
        <front>
          <title>Let's Encrypt Challenge Types Guidance</title>
          <author>
            <organization>Let's Encrypt</organization>
          </author>
          <date year="2024" month="December" day="20"/>
        </front>
      </reference>
      <reference anchor="CertbotGuidance" target="https://certbot-dns-ovh.readthedocs.io/en/stable/">
        <front>
          <title>Certbot DNS Challenge Guidance</title>
          <author>
            <organization>Certbot</organization>
          </author>
          <date year="2024" month="December" day="20"/>
        </front>
      </reference>
      <reference anchor="IntermediatePreloading" 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>
            <organization>Mozilla</organization>
          </author>
          <date year="2020" month="November" day="13"/>
        </front>
      </reference>
      <reference anchor="CiscoAIA" target="https://www.cisco.com/c/en/us/support/docs/security/secure-web-appliance/220375-use-secure-web-appliance-best-practices.html">
        <front>
          <title>Secure Web Appliance Best Practices</title>
          <author>
            <organization>Cisco</organization>
          </author>
          <date year="2024" month="December" day="20"/>
        </front>
      </reference>
      <reference anchor="BroadcomAIA" target="https://knowledge.broadcom.com/external/article/235295/support-for-aia-fetching-technology.html">
        <front>
          <title>Support for AIA Fetching technology</title>
          <author>
            <organization>Broadcom</organization>
          </author>
          <date year="2024" month="December" day="20"/>
        </front>
      </reference>
      <reference anchor="AIAOverview" target="https://github.com/python/cpython/issues/62817#issuecomment-1093623029">
        <front>
          <title>AIA chasing for missing intermediate certificates</title>
          <author initials="A." surname="King" fullname="April King">
            <organization/>
          </author>
          <date year="2017" month="May" day="17"/>
        </front>
      </reference>
      <reference anchor="AIAChrome" target="https://groups.google.com/a/chromium.org/g/net-dev/c/H-ysp5UM_rk/m/TcKRw3pbDAAJ">
        <front>
          <title>AIA Fetching in Chrome for Android</title>
          <author initials="E." surname="Stark" fullname="Emily Stark">
            <organization/>
          </author>
          <author initials="R." surname="Sleevi" fullname="Ryan Sleevi">
            <organization/>
          </author>
          <date year="2016" month="September" day="23"/>
        </front>
      </reference>
      <reference anchor="AIAExample" target="https://incomplete-chain.badssl.com/">
        <front>
          <title>Example site with missing intermediates</title>
          <author>
            <organization>BadSSL</organization>
          </author>
          <date year="2024" month="December" day="20"/>
        </front>
      </reference>
      <reference anchor="EUCyberResiliencyAct" target="https://www.rpclegal.com/thinking/data-and-privacy/the-eu-cyber-resilience-act/">
        <front>
          <title>The EU's Cyber Resilience Act</title>
          <author>
            <organization>RPC</organization>
          </author>
          <date year="2024" month="December" day="10"/>
        </front>
      </reference>
      <reference anchor="UKSecureByDesign" target="https://www.gov.uk/government/collections/secure-by-design#consumer-connectable-product-security-guidance">
        <front>
          <title>Secure by design</title>
          <author>
            <organization>Department for Science and Technology, UK Gov</organization>
          </author>
          <date year="2024" month="December" day="05"/>
        </front>
      </reference>
      <reference anchor="Android7RootStore" target="https://android-developers.googleblog.com/2016/07/changes-to-trusted-certificate.html">
        <front>
          <title>Changes to Trusted Certificate Authorities in Android Nougat</title>
          <author>
            <organization>Google</organization>
          </author>
          <date year="2016" month="July" day="07"/>
        </front>
      </reference>
      <reference anchor="Android14RootStore" target="https://source.android.com/docs/core/ota/modular-system/conscrypt">
        <front>
          <title>Changes in Android 14</title>
          <author>
            <organization>Google</organization>
          </author>
          <date year="2023" month="October" day="04"/>
        </front>
      </reference>
      <reference anchor="CloudflareCertificateChanges" target="https://blog.cloudflare.com/shortening-lets-encrypt-change-of-trust-no-impact-to-cloudflare-customers/">
        <front>
          <title>How we ensure Cloudflare customers aren't affected by Let's Encrypt's certificate chain change</title>
          <author>
            <organization>Cloudflare</organization>
          </author>
          <date year="2024" month="April" day="12"/>
        </front>
      </reference>
      <reference anchor="LetsEncryptCertificateChanges" target="https://letsencrypt.org/2023/07/10/cross-sign-expiration/">
        <front>
          <title>Shortening the Let's Encrypt Chain of Trust</title>
          <author>
            <organization>Let's Encrypt</organization>
          </author>
          <date year="2023" month="July" day="10"/>
        </front>
      </reference>
      <reference anchor="SleeviCrossSign" target="https://groups.google.com/g/mozilla.dev.security.policy/c/-4B6g8T-kis/m/CKMS2LR7EgAJ">
        <front>
          <title>Discussion on cross-signing and key rollover.</title>
          <author initials="R." surname="Sleevi" fullname="Ryan Sleevi">
            <organization/>
          </author>
          <date year="2019" month="August" day="02"/>
        </front>
      </reference>
      <reference anchor="CrossSignStudy" target="https://arxiv.org/pdf/2009.08772">
        <front>
          <title>The Boon and Bane of Cross-Signing Shedding Light on a Common Practice in Public Key Infrastructures</title>
          <author initials="J." surname="Hiller" fullname="Jens Hiller">
            <organization/>
          </author>
          <author initials="J." surname="Amann" fullname="Johanna Amann">
            <organization/>
          </author>
          <author initials="O." surname="Hohlfeld" fullname="Oliver Hohlfeld">
            <organization/>
          </author>
          <date year="2020" month="November" day="09"/>
        </front>
      </reference>
      <reference anchor="CloudflareTLSFingerprint" target="https://developers.cloudflare.com/bots/concepts/ja3-ja4-fingerprint/">
        <front>
          <title>JA3/JA4 Fingerprint</title>
          <author>
            <organization>Cloudflare</organization>
          </author>
          <date year="2024" month="December" day="20"/>
        </front>
      </reference>
      <reference anchor="CurlTLSFingerprint" target="https://daniel.haxx.se/blog/2022/09/02/curls-tls-fingerprint/">
        <front>
          <title>Curl’s TLS fingerprint</title>
          <author initials="D." surname="Stenberg" fullname="Daniel Stenberg">
            <organization/>
          </author>
          <date year="2022" month="September" day="02"/>
        </front>
      </reference>
      <reference anchor="CCADB" target="https://www.ccadb.org/">
        <front>
          <title>The Common CA Database</title>
          <author>
            <organization/>
          </author>
          <date year="2024" month="December" day="20"/>
        </front>
      </reference>
      <reference anchor="RussiaCA" target="https://www.eff.org/deeplinks/2022/03/you-should-not-trust-russias-new-trusted-root-ca">
        <front>
          <title>You Should Not Trust Russia’s New “Trusted Root CA”</title>
          <author>
            <organization>EFF</organization>
          </author>
          <date year="2022" month="March" day="15"/>
        </front>
      </reference>
      <reference anchor="KazakhstanCA" target="https://ooni.org/post/2024-kazakhstan-report/">
        <front>
          <title>Kazakhstan TLS MITM attacks and blocking of news media, human rights, and circumvention tool sites</title>
          <author>
            <organization>OONI</organization>
          </author>
          <date year="2024" month="September" day="19"/>
        </front>
      </reference>
      <reference anchor="MauritiusCA" target="https://www.internetsociety.org/blog/2021/05/mauritius-must-not-fall-into-the-mass-surveillance-trap/">
        <front>
          <title>Mauritius Must Not Fall into the ‘Mass Surveillance’ Trap</title>
          <author>
            <organization>Internet Society</organization>
          </author>
          <date year="2021" month="May" day="28"/>
        </front>
      </reference>
      <reference anchor="eIDAS" target="https://last-chance-for-eidas.org">
        <front>
          <title>Secret EU law threatens Internet security</title>
          <author>
            <organization>Mozilla</organization>
          </author>
          <date year="2023" month="November" day="02"/>
        </front>
      </reference>
      <reference anchor="eIDASOutcome" target="https://securityriskahead.eu/wp-content/uploads/2024/02/Mozilla_-press-release_eIDAS-EP-Plenary-adoption.pdf">
        <front>
          <title>European Parliament votes on eIDAS, averting threat to web security</title>
          <author>
            <organization>Mozilla</organization>
          </author>
          <date year="2024" month="February" day="29"/>
        </front>
      </reference>
      <reference anchor="Splinternet" target="https://www.internetsociety.org/blog/2022/03/what-is-the-splinternet-and-why-you-should-be-paying-attention/">
        <front>
          <title>MWhat Is a Splinternet? And Why You Should Be Paying Attention</title>
          <author>
            <organization>Internet Society</organization>
          </author>
          <date year="2022" month="March" day="23"/>
        </front>
      </reference>
    </references>
    <?line 759?>

<section numbered="false" anchor="acknowledgments">
      <name>Acknowledgments</name>
      <t>TODO acknowledge.</t>
    </section>
  </back>
  <!-- ##markdown-source:
H4sIAAAAAAAAA529/ZIbR5In+H89RZpkuyR3gaoiKYqSzuZmi0VSYrcocVjU
6eZm1mQJIFDIJpCJyUxUEaqmWT/Gndnua9wL3Jv0k5z//CPCI5Gg2Ds21mIB
yMj48PDPn7tPp9OTk77q1+G74ot37a7ri6or6qae1uG66atytg5fnMzLnv5q
998VVb1sTk4WzbwuN/TIoi2X/fQv5fx9R4/0627aY4xp1U1pjDTE9Pz8pNvN
NlXXVU3d77f07KsX714WxZdFue4aenlVL8I20P/U/ReT4ouwqPqmrco1/nh1
8Yz+07T0r7fvXn5xUu82s9B+d7KgeX13Mm/qLtTdrvuuoLeHk5vviscnZRtK
GvUqzHdt1e+/OLlt2vfXbbPb8kLLuts2bV/8WO5DW6RfvQ97+uHiu5ObUO9o
7KL442eKQhb0xa/0iqq+Lr7HI/h8U1Zr+pz25b9VoV+eNu01Pi7b+Yo+XvX9
tvvu7Ay/wkfVTTi1n53hg7NZ29x24YyeP8Nz11W/2s3oSdqkuup0288+9xAw
xJp2rOvdy7OhTuUNp1Xz2YN+9g9PV/1m/cXJSbnrVw2dXTGl6RTFcrdeCy09
55kUf5KR+EvaiLKufi97IprvitfN79V6XfI3QbYW2/XfZAk2hdPd+5OTumk3
9NQNneAJSDb+Vby7eEWkN31+KvOehfl7N+myntPkptWim54/Pilev7v0P16U
N9ViFmSVm9C+J8Lu2xCm89D28sTFrK0W12FxiU/8s5gpP4ffTkv52fT80Unx
4vKH0R+Grq6mj+gHGOuy2WzbwLfnu+Lty8tvvnn6Lb3t1QX/9eTRN+cnxavL
Cz/Q+3KzLevyPW0NhuvmZTeV4+fXPg/rcE1/Li7bgEtHV63jwb59/NWTE9qo
H69e1X1oqw1uQaE8gj4t9OPidYn/0mP8fdleByKsSFdlX/YtHUloE1FvQujp
gpxVMsL00fmjr3hy5w/POlkdiB3j8dUu+AcPz+l7mtGPLy7bpuuuquvaT4k/
nOJT3L2yXhQXaxq+pgEK4Whvyn7V/W/FD81t8W4V9gXu6dicu3nT96uw3oTT
eUN0dDbnoTsZelrasEosWww7XTW3U3poPwWDOcumTvP+mk+QrrxRPf3ftBCC
v8Lrih/wPlrd9++uRpf3fdNcr8Ok+OHduzdXE17fItxU81DMiSaIrGfVmtjQ
6HqURZ1e8xizdXNNC9uc0dQenp0/PpOPp/xzIv3FVAaeZgPzvc2W9ZAoffrw
ybFlvd2XdfHDru16WtXLsuvX+8u37/AbOzCi52pZzdMBfd+W21VB15S/K6t6
jfUMlzNv+9NudfbP1/j1Pz188vSrr8+/+fbrp+f/udn2/1Q3m9CXILuTnHoe
EZmdDKdK1PgdWHhfXZM8Ky7qRdtUi7dNQ7c2zVQ/LvB5cUXyKIxMq5Qf6SZ3
za6dB97mLd02sJ6zbt/1YXM2L/ny69K7s/9K53HWhmV3tgrlooMcqM+WFY3x
2SsQ4qAFXK4qumr193QCROIQ1W6/5bviPr4t5OsHIwsJ9elt9b7akugt+bri
rzN9+rf71/T0g8+e2a82Ek3uRc0X5ury3fOq43+62b0Nm+YGN1d/VSzbZkNz
pv8N97pPb/2cxP6+481WWg61Sh9wmDr0Z/mEz59OHz4cn/Alj4WtvHhdtu9D
f7UiHcJN9Ncwe/PnV4V82eHL4pctxh6Z2AeeU7tZtVX3/qwjVrjrzh4+ffzt
06dPzs8ffvvo/Nsn508fn/vZPeLt/PpgdiO36mq/KWmB85HttK+KV123Cx3z
i3fVJqyremyiOOLTjQhWPvPLizMb4jcZws3x4Tdgxg+PHLnJZ5ItOq+LZR9a
f58WpNURky/XtMt69y9XZX1NE53Gpwp+7DMnm4b8jcf7Tcf70kb7zUaLG/0Y
ZPD4CBmkRbz5l4wfmwCEGshvBM32DX7mOVo3Mu/jCt6mu2btbvbb1aPHb9+f
72/WoXn3+Pn5s+9/efevL3f9N+dDCn4yffR0fOpQqGneP9HC3/yLkKab+E+v
rt7RZVuHkiRt8bIiSioe039p56rfw6J409C1+ZcdnfxuQ3dx3u63WCXdPSKh
sl2MLez29vaUVK+eeN/NWR1uSWkhvbnv+N8QM1+dnX9zhl9MW33zdIk3Tx/T
f/XN0y3e/B/yZrrA9uZp597sd4CI8PH4DmCN2IFwy5z8NameN6I8pn14TYdR
0LroR8xc/tcO7P2zX54tfvz+RTOdPdnfft/868vmT6tm/+vTP//r8MC+nj78
6silftbMimekgTLXefayaXebN6QXZXeGtK22WezmfBhEb6Rr0I/PnhX88yOH
sqiuK8gaZkOQ+2f2SQfWGAec9g2Ul+m8nE2XOp6X8w+nj47ck+c6nrD30G6J
04WLy9cv/F2hqb7YzMq2LUm3o+tCtEQyv1m6Rwo8U1zttjCtRlbTbcr1msTn
Ni0FEw5uWBAKKWXNEtxfh52W800YuToD1qWLiS+h1fx8efXmNaRVX27X/gL9
UF2vQMZkzbBixL8sOvzMFM/b1b6oejL7eprHGGGJCrZudoslEZioCavBuNNm
3m2nNq5fw8OnLMAO2a9Q008kqGkn12si+lpXIqt4CWMpP5c3bUNG2aa4JYtP
VnLlV4IdkE9CXJnX296Gm2bOVwv+gq4nnlmQtUqKwrFVr2YNUfrpIpzpzerO
vvnm6ynNZapzmWIuU8xlanNhrRRzkU8C/01zmbq5TNNcYHTyXKYyF9Nd/QY+
mT78dkgEsn8/lHXdFM/+v/+XL+SPJOSVDX6/qxZkGQbZbt1E+p7UE/0FpNh6
HUjwFO/2W+Kv9og8MdiPNQ2tfI45y4JO/GxuI0zhTejYkhjTtfKzNwrOZnMi
NuOsGZ+5flc8/+nKzfuTM57LI9NF3U2bm9VpSworXUNMHM6CUEPHgTfgH5u1
zoTmyzblBvpiH97QZWjKBR2/o9n0YfZb6BFe+hbE3RpIt7BsPhwjRa9CmI0E
aXV+9vDh2cPHZ9v4LtEj9V3TgQKPLxvIM7wr4zWkIz08KqSShnFZkcUJG96p
b5hOgK5ZXGzpCuBESETAiCVjuieWe0wOzzEYM5Q5zoP0zU6YqpBXXCf/I0xv
w2xa2hvOHj06f/z0yXRHjHPs++kMXoOtzWB4rT5tCfAqabXPWtpTml++YGP9
bP3RV8XL0BN7gG4V5qu6ofMaswXf183tOiyuw+lMh+Wlhw9soq+Jx9BMiR4f
PX7y6NsnthWQcdOyKqdLfck0veQfW5Qt5oSdMD/fhPamCrde1aWl0JVmsYel
seuT/u0Jqph/Wm9UbxzbknuaQn021/9WrJmfff3om4dPv+Q/6EcbEn8kHb59
/PWjx+ePvj3ke4d6ozC+CxKZ6+LPND1Zjhhfg8XEc6lqtc7kyMT6HZs9vKCd
msW8iJKYHD1Y7TZ89a5JTezhcyCK/WG677ZPfnn9W/v+bHP2bv7nt7ePt7Pn
Fxd/8sv4enr+7fTR4F7ZKl5sqvUeMkucO5nhdLUO4aaS1b34UG5yya6fFKTX
BxGIY6c1dkJVDV8J8XNiDisy309nZMh3a17tH9KSkVK5uLr6EXrUL5f7WWjf
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

-->

</rfc>
