<?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.6.9 (Ruby 2.6.8) -->
<?rfc rfcedstyle="yes"?>
<?rfc tocindent="yes"?>
<?rfc strict="yes"?>
<?rfc comments="yes"?>
<?rfc inline="yes"?>
<?rfc text-list-symbols="o-*+"?>
<?rfc compact="yes"?>
<?rfc subcompact="no"?>
<rfc xmlns:xi="http://www.w3.org/2001/XInclude" ipr="trust200902" docName="draft-ietf-uta-rfc7525bis-10" category="bcp" consensus="true" submissionType="IETF" obsoletes="7525" updates="5288, 6066" tocInclude="true" sortRefs="true" symRefs="true" version="3">
  <!-- xml2rfc v2v3 conversion 3.9.1 -->
  <front>
    <title abbrev="TLS Recommendations">Recommendations for Secure Use of Transport Layer Security (TLS) and Datagram Transport Layer Security (DTLS)</title>
    <seriesInfo name="Internet-Draft" value="draft-ietf-uta-rfc7525bis-10"/>
    <author initials="Y." surname="Sheffer" fullname="Yaron Sheffer">
      <organization>Intuit</organization>
      <address>
        <email>yaronf.ietf@gmail.com</email>
      </address>
    </author>
    <author initials="P." surname="Saint-Andre" fullname="Peter Saint-Andre">
      <organization>independent</organization>
      <address>
        <email>stpeter@stpeter.im</email>
      </address>
    </author>
    <author initials="T." surname="Fossati" fullname="Thomas Fossati">
      <organization>arm</organization>
      <address>
        <email>thomas.fossati@arm.com</email>
      </address>
    </author>
    <date year="2022" month="July" day="24"/>
    <area>Applications</area>
    <workgroup>UTA Working Group</workgroup>
    <keyword>Internet-Draft</keyword>
    <abstract>
      <t>Transport Layer Security (TLS) and Datagram Transport Layer Security (DTLS) are used to protect data exchanged over a wide range of application protocols, and can also form the basis for secure transport protocols.  Over the years, the industry has witnessed several serious attacks on TLS and DTLS, including attacks on the most commonly used cipher suites and their modes of operation.  This document provides the latest recommendations for ensuring the security of deployed services that use TLS and DTLS. These recommendations are applicable to the majority of use cases.</t>
      <t>An earlier version of this document was published as RFC 7525 when the industry was in the midst of its transition to TLS 1.2. Years later this transition is largely complete and TLS 1.3 is widely available. This document updates the guidance given the new environment and obsoletes RFC 7525. In addition, the document updates RFC 5288 and RFC 6066 in view of recent attacks.</t>
    </abstract>
  </front>
  <middle>
    <section anchor="introduction">
      <name>Introduction</name>
      <t>Transport Layer Security (TLS) and Datagram Transport Layer Security (DTLS) are used to protect data exchanged over a wide variety of application protocols, including HTTP <xref target="HTTP1.1"/> <xref target="HTTP2"/>, IMAP <xref target="RFC9051"/>, POP <xref target="STD53"/>, SIP <xref target="RFC3261"/>, SMTP <xref target="RFC5321"/>, and XMPP <xref target="RFC6120"/>.  Such protocols use both the TLS or DTLS handshake protocol and the TLS or DTLS record layer.  Although the TLS handshake protocol can also be used with different record layers to define secure transport protocols - the most prominent example is QUIC <xref target="RFC9000"/> - such transport protocols are not directly in scope for this document; nevertheless, many of the recommendations here might apply insofar as such protocols use the TLS handshake protocol.</t>
      <t>Over the years leading to 2015, the industry had witnessed serious attacks on TLS and DTLS, including attacks on the most commonly used cipher suites and their modes of operation.  For instance, both the AES-CBC <xref target="RFC3602"/> and RC4 <xref target="RFC7465"/> encryption algorithms, which together were once the most widely deployed ciphers, were attacked in the context of TLS.  Detailed information about the attacks known prior to 2015 is provided in a companion document (<xref target="RFC7457"/>) to the previous version of this specification, which will help the reader understand the rationale behind the recommendations provided here. That document has not been updated in concert with this one; instead, newer attacks are described in this document, as are mitigations for those attacks.</t>
      <t>The TLS community reacted to the attacks described in <xref target="RFC7457"/> in several ways:</t>
      <ul spacing="normal">
        <li>Detailed guidance was published on the use of TLS 1.2 <xref target="RFC5246"/> and DTLS 1.2 <xref target="RFC6347"/>, along with earlier protocol versions. This guidance is included in the original <xref target="RFC7525"/> and mostly retained in this revised version; note that this guidance was mostly adopted by the industry since the publication of RFC 7525 in 2015.</li>
        <li>Versions of TLS earlier than 1.2 were deprecated <xref target="RFC8996"/>.</li>
        <li>Version 1.3 of TLS <xref target="RFC8446"/> was released, followed by version 1.3 of DTLS <xref target="RFC9147"/>; these versions largely mitigate or resolve the described attacks.</li>
      </ul>
      <t>Those who implement and deploy TLS and TLS-based protocols need guidance on how they can be used securely.  This document provides guidance for deployed services as well as for software implementations, assuming the implementer expects their code to be deployed in the environments defined in <xref target="applicability"/>. Concerning deployment, this document targets a wide audience -- namely, all deployers who wish to add authentication (be it one-way only or mutual), confidentiality, and data integrity protection to their communications.</t>
      <t>The recommendations herein take into consideration the security of various mechanisms, their technical maturity and interoperability, and their prevalence in implementations at the time of writing.  Unless it is explicitly called out that a recommendation applies to TLS alone or to DTLS alone, each recommendation applies to both TLS and DTLS.</t>
      <t>This document attempts to minimize new guidance to TLS 1.2 implementations, and the overall approach is to encourage systems to move to TLS 1.3. However, this is not always practical. Newly discovered attacks, as well as ecosystem changes, necessitated some new requirements that apply to TLS 1.2 environments. Those are summarized in <xref target="diff-rfc"/>.</t>
      <t>Naturally, future attacks are likely, and this document does not address them.  Those who implement and deploy TLS/DTLS and protocols based on TLS/DTLS are strongly advised to pay attention to future developments.  In particular, although it is known that the creation of quantum computers will have a significant impact on the security of cryptographic primitives and the technologies that use them, currently post-quantum cryptography is a work in progress and it is too early to make recommendations; once the relevant specifications are standardized in the IETF or elsewhere, this document should be updated to reflect best practices at that time.</t>
      <t>As noted, the TLS 1.3 specification resolves many of the vulnerabilities listed in this document. A system that deploys TLS 1.3 should have fewer vulnerabilities than TLS 1.2 or below. Therefore, this document replaces <xref target="RFC7525"/>, with an explicit goal to encourage migration of most uses of TLS 1.2 to TLS 1.3.</t>
      <t>These are minimum recommendations for the use of TLS in the vast majority of implementation and deployment scenarios, with the exception of unauthenticated TLS (see <xref target="applicability"/>). Other specifications that reference this document can have stricter requirements related to one or more aspects of the protocol, based on their particular circumstances (e.g., for use with a particular application protocol); when that is the case, implementers are advised to adhere to those stricter requirements. Furthermore, this document provides a floor, not a ceiling: where feasible, administrators of services are encouraged to go beyond the minimum support available in implementations to provide the strongest security possible. For example, based on knowledge about the deployed base for an existing application protocol and a cost-benefit analysis regarding security strength vs. interoperability, a given service provider might decide to disable TLS 1.2 entirely and offer only TLS 1.3.</t>
      <t>Community knowledge about the strength of various algorithms and feasible attacks can change quickly, and experience shows that a Best Current Practice (BCP) document about security is a point-in-time statement.  Readers are advised to seek out any errata or updates that apply to this document.</t>
      <t>This document updates <xref target="RFC5288"/> in view of the <xref target="Boeck2016"/> attack. See <xref target="nonce-reuse"/> for the details.</t>
      <t>This document updates <xref target="RFC6066"/> in view of the <xref target="ALPACA"/> attack.  See <xref target="sni"/> for the details.</t>
    </section>
    <section anchor="terminology">
      <name>Terminology</name>
      <t>A number of security-related terms in this document are used in the sense defined in <xref target="RFC4949"/>,
including "attack", "authentication", "certificate", "cipher", "compromise", "confidentiality", 
"credential", "data integrity", "encryption", "forward secrecy", "key", "key length", "self-signed certificate", 
"strength", and "strong".</t>
      <t>The key words "<bcp14>MUST</bcp14>", "<bcp14>MUST NOT</bcp14>", "<bcp14>REQUIRED</bcp14>", "<bcp14>SHALL</bcp14>", "<bcp14>SHALL
NOT</bcp14>", "<bcp14>SHOULD</bcp14>", "<bcp14>SHOULD NOT</bcp14>", "<bcp14>RECOMMENDED</bcp14>", "<bcp14>NOT RECOMMENDED</bcp14>",
"<bcp14>MAY</bcp14>", and "<bcp14>OPTIONAL</bcp14>" in this document are to be interpreted as
described in BCP&nbsp;14 <xref target="RFC2119"/> <xref target="RFC8174"/> when, and only when, they
appear in all capitals, as shown here.</t>
    </section>
    <section anchor="rec">
      <name>General Recommendations</name>
      <t>This section provides general recommendations on the secure use of TLS. Recommendations related to cipher suites are discussed in the following section.</t>
      <section anchor="protocol-versions">
        <name>Protocol Versions</name>
        <section anchor="rec-versions">
          <name>SSL/TLS Protocol Versions</name>
          <t>It is important both to stop using old, less secure versions of SSL/TLS and to start using modern, more secure versions; therefore, the following are the recommendations concerning TLS/SSL protocol versions:</t>
          <ul spacing="normal">
            <li>
              <t>Implementations <bcp14>MUST NOT</bcp14> negotiate SSL version 2.  </t>
              <t>
Rationale: Today, SSLv2 is considered insecure <xref target="RFC6176"/>.</t>
            </li>
            <li>
              <t>Implementations <bcp14>MUST NOT</bcp14> negotiate SSL version 3.  </t>
              <t>
Rationale: SSLv3 <xref target="RFC6101"/> was an improvement over SSLv2 and plugged some significant security holes but did not support strong cipher suites. SSLv3 does not support TLS extensions, some of which (e.g., renegotiation_info <xref target="RFC5746"/>) are security-critical.  In addition, with the emergence of the POODLE attack <xref target="POODLE"/>, SSLv3 is now widely recognized as fundamentally insecure.  See <xref target="DEP-SSLv3"/> for further details.</t>
            </li>
            <li>
              <t>Implementations <bcp14>MUST NOT</bcp14> negotiate TLS version 1.0 <xref target="RFC2246"/>.  </t>
              <t>
Rationale: TLS 1.0 (published in 1999) does not support many modern, strong cipher suites. In addition, TLS 1.0 lacks a per-record Initialization Vector (IV) for CBC-based cipher suites and does not warn against common padding errors. This and other recommendations in this section are in line with <xref target="RFC8996"/>.</t>
            </li>
            <li>
              <t>Implementations <bcp14>MUST NOT</bcp14> negotiate TLS version 1.1 <xref target="RFC4346"/>.  </t>
              <t>
Rationale: TLS 1.1 (published in 2006) is a security improvement over TLS 1.0 but still does not support certain stronger cipher suites that were introduced with the standardization of TLS 1.2 in 2008, including the cipher suites recommended for TLS 1.2 by this document (see <xref target="rec-cipher"/> below).</t>
            </li>
            <li>
              <t>Implementations <bcp14>MUST</bcp14> support TLS 1.2 <xref target="RFC5246"/>.  </t>
              <t>
Rationale: TLS 1.2 is implemented and deployed more widely than TLS 1.3 at this time and, when the recommendations in this document are followed to mitigate known attacks, the use of TLS 1.2 is as safe as the use of TLS 1.3.  In most application protocols that re-use TLS and DTLS, there is no immediate need to migrate solely to TLS 1.3 and proactively deprecate TLS 1.2, especially because the existence of large numbers of application clients dependent on TLS libraries or operating systems that do not yet support TLS 1.3 would introduce significant interoperability issues, thus harming security more than helping it.  Nevertheless, it is expected that a future version of this BCP will deprecate the use of TLS 1.2 when it is appropriate to do so.</t>
            </li>
            <li>
              <t>Implementations <bcp14>SHOULD</bcp14> support TLS 1.3 <xref target="RFC8446"/> and, if implemented, <bcp14>MUST</bcp14> prefer to negotiate TLS 1.3 over earlier versions of TLS.  </t>
              <t>
Rationale: TLS 1.3 is a major overhaul to the protocol and resolves many of the security issues with TLS 1.2. To the extent that an implementation supports TLS 1.2 (even if it defaults to TLS 1.3), it <bcp14>MUST</bcp14> follow the recommendations regarding TLS 1.2 specified in this document.</t>
            </li>
            <li>
              <t>New transport protocols that integrate the TLS/DTLS handshake protocol and/or record layer <bcp14>MUST</bcp14> use only TLS/DTLS 1.3 (for instance, QUIC <xref target="RFC9001"/> took this approach). New application protocols that employ TLS/DTLS for channel or session encryption <bcp14>MUST</bcp14> integrate with both TLS/DTLS versions 1.2 and 1.3; nevertheless, in rare cases where broad interoperability is not a concern, application protocol designers <bcp14>MAY</bcp14> choose to forego TLS 1.2.  </t>
              <t>
Rationale: Secure deployment of TLS 1.3 is significantly easier and less error-prone than secure deployment of TLS 1.2. When designing a new secure transport protocol such as QUIC, there is no reason to support TLS 1.2. By contrast, new application protocols that re-use TLS <bcp14>MAY</bcp14> support both TLS 1.3 and TLS 1.2 in order to take advantage of underlying library or operating system support for both versions.</t>
            </li>
          </ul>
          <t>This BCP applies to TLS 1.3, TLS 1.2, and earlier versions. It is not safe for readers to assume that the recommendations in this BCP apply to any future version of TLS.</t>
        </section>
        <section anchor="dtls-protocol-versions">
          <name>DTLS Protocol Versions</name>
          <t>DTLS, an adaptation of TLS for UDP datagrams, was introduced when TLS 1.1 was published.  The following are the recommendations with respect to DTLS:</t>
          <ul spacing="normal">
            <li>
              <t>Implementations <bcp14>MUST NOT</bcp14> negotiate DTLS version 1.0 <xref target="RFC4347"/>.  </t>
              <t>
Version 1.0 of DTLS correlates to version 1.1 of TLS (see above).</t>
            </li>
            <li>
              <t>Implementations <bcp14>MUST</bcp14> support DTLS 1.2 <xref target="RFC6347"/>.  </t>
              <t>
Version 1.2 of DTLS correlates to version 1.2 of TLS (see above).
(There is no version 1.1 of DTLS.)</t>
            </li>
            <li>
              <t>Implementations <bcp14>SHOULD</bcp14> support DTLS 1.3 <xref target="RFC9147"/> and, if implemented, <bcp14>MUST</bcp14> prefer to negotiate DTLS version 1.3 over earlier versions of DTLS.  </t>
              <t>
Version 1.3 of DTLS correlates to version 1.3 of TLS (see above).</t>
            </li>
          </ul>
        </section>
        <section anchor="rec-fallback">
          <name>Fallback to Lower Versions</name>
          <t>TLS/DTLS 1.2 clients <bcp14>MUST NOT</bcp14> fall back to earlier TLS versions, since those versions have been deprecated <xref target="RFC8996"/>. We note that as a result of that, the downgrade-protection SCSV (Signaling Cipher Suite Value) mechanism <xref target="RFC7507"/> is no longer needed for clients. In addition, TLS 1.3 implements a new version negotiation mechanism.</t>
        </section>
      </section>
      <section anchor="strict-tls">
        <name>Strict TLS</name>
        <t>The following recommendations are provided to help prevent SSL Stripping and STARTTLS Command Injection (attacks that are summarized in <xref target="RFC7457"/>):</t>
        <ul spacing="normal">
          <li>Many existing application protocols were designed before the use of TLS became common. These protocols typically support TLS in one of two ways: either via a separate port for TLS-only communication (e.g., port 443 for HTTPS) or via a method for dynamically upgrading a channel from unencrypted to TLS-protected (e.g., STARTTLS, which is used in protocols such as IMAP and XMPP). Regardless of the mechanism for protecting the communication channel (TLS-only port or dynamic upgrade), what matters is the end state of the channel. When a protocol defines both a dynamic upgrade method and a separate TLS-only method, then the separate TLS-only method <bcp14>MUST</bcp14> be supported by implementations and <bcp14>MUST</bcp14> be configured by administrators to be used in preference to the dynamic upgrade method.  When a protocol supports only a dynamic upgrade, implementations <bcp14>MUST</bcp14> provide a way for administrators to set a strict local policy that forbids use of plaintext in the absence of a negotiated TLS channel, and administrators <bcp14>MUST</bcp14> use this policy.</li>
          <li>HTTP client and server implementations intended for use in the World Wide Web (see 
<xref target="applicability"/>) <bcp14>MUST</bcp14> support the HTTP Strict Transport Security (HSTS) header 
field <xref target="RFC6797"/>, so that Web servers can advertise that they are willing to 
accept TLS-only clients. Web servers <bcp14>SHOULD</bcp14> use HSTS to indicate that they are 
willing to accept TLS-only clients, unless they are deployed in such a way that 
using HSTS would in fact weaken overall security (e.g., it can be problematic to 
use HSTS with self-signed certificates, as described in <xref section="11.3" sectionFormat="of" target="RFC6797"/>).
Similar technologies exist for non-HTTP application protocols, such as MTA-STS for 
mail transfer agents <xref target="RFC8461"/> and methods based on DNS-Based Authentication of 
Named Entities (DANE) <xref target="RFC6698"/> for SMTP <xref target="DANE-SMTP"/> and XMPP <xref target="RFC7712"/>.</li>
        </ul>
        <t>Rationale: Combining unprotected and TLS-protected communication opens the way to SSL Stripping and similar attacks, since an initial part of the communication is not integrity protected and therefore can be manipulated by an attacker whose goal is to keep the communication in the clear.</t>
      </section>
      <section anchor="compression">
        <name>Compression</name>
        <t anchor="rec-compress">In order to help prevent compression-related attacks (summarized in <xref section="2.6" sectionFormat="of" target="RFC7457"/>), when using TLS 1.2 implementations and deployments <bcp14>SHOULD NOT</bcp14> support
TLS-level compression (<xref section="6.2.2" sectionFormat="of" target="RFC5246"/>); the only exception is when
the application protocol in question has been proved not to be open to such attacks,
however even in this case extreme caution is warranted because of the potential for
future attacks related to TLS compression. More specifically, the HTTP protocol is known to be vulnerable to compression-related attacks. Note: this recommendation applies to TLS 1.2 only, because compression has been removed from TLS 1.3.</t>
        <t>Rationale: TLS compression has been subject to security attacks, such as the CRIME attack.</t>
        <t>Implementers should note that compression at higher protocol levels can allow an active attacker to extract cleartext information from the connection. The BREACH attack is one such case. These issues can only be mitigated outside of TLS and are thus outside the scope of this document. See <xref section="2.6" sectionFormat="of" target="RFC7457"/> for further details.</t>
        <section anchor="certificate-compression">
          <name>&nbsp;Certificate Compression</name>
          <t>Certificate chains often take up the majority of the bytes transmitted during
the handshake.  In order to manage their size, some or all of the following
methods can be employed (see also <xref section="4" sectionFormat="of" target="RFC9191"/> for further suggestions):</t>
          <ul spacing="normal">
            <li>Limit the number of names or extensions;</li>
            <li>Use keys with small public key representations, like ECDSA;</li>
            <li>Use certificate compression.</li>
          </ul>
          <t>To achieve the latter, TLS 1.3 defines the <tt>compress_certificate</tt> extension in
<xref target="RFC8879"/>.  See also <xref section="5" sectionFormat="of" target="RFC8879"/> for security and privacy
considerations associated with its use.  For the avoidance of doubt, CRIME-style attacks on TLS
compression do not apply to certificate compression.</t>
          <t>Due to the strong likelihood of middlebox interference,
RFC8879-style compression has not been made available in
TLS 1.2.  In theory, the <tt>cached_info</tt> extension defined in <xref target="RFC7924"/> could
be used, but it is not widely enough supported to be considered a practical
alternative.</t>
        </section>
      </section>
      <section anchor="rec-resume">
        <name>TLS Session Resumption</name>
        <t>Session resumption drastically reduces the number of full TLS handshakes and thus is an essential
performance feature for most deployments.</t>
        <t>Stateless session resumption with session tickets is a popular strategy. For TLS 1.2, it is specified in
<xref target="RFC5077"/>.  For TLS 1.3, a more secure PSK-based mechanism is described in
<xref section="4.6.1" sectionFormat="of" target="RFC8446"/>. See <xref target="Springall16"/> for a quantitative study of the risks induced by TLS cryptographic "shortcuts", including session resumption.</t>
        <t>When it is used, the resumption information <bcp14>MUST</bcp14>
be authenticated and encrypted to prevent modification or eavesdropping by an attacker.
Further recommendations apply to session tickets:</t>
        <ul spacing="normal">
          <li>A strong cipher <bcp14>MUST</bcp14> be used when encrypting the ticket (at least as strong as the main TLS cipher suite).</li>
          <li>Ticket-encryption keys <bcp14>MUST</bcp14> be changed regularly, e.g., once every week, so as not to negate the benefits of forward secrecy (see <xref target="sec-pfs"/> for details on forward secrecy). Old ticket-encryption keys <bcp14>MUST</bcp14> be destroyed at the end of the validity period.</li>
          <li>For similar reasons, session ticket validity <bcp14>MUST</bcp14> be limited to a reasonable duration (e.g., half as long as ticket-encryption key validity).</li>
          <li>TLS 1.2 does not roll the session key forward within a single session. Thus, to prevent an attack where the server's ticket-encryption key is stolen and used to decrypt the entire content of a session (negating the concept of forward secrecy), a TLS 1.2 server <bcp14>SHOULD NOT</bcp14> resume sessions that are too old, e.g. sessions that have been open longer than two ticket-encryption key rotation periods.</li>
        </ul>
        <t>Rationale: session resumption is another kind of TLS handshake, and therefore must be as secure as the initial handshake. This document (<xref target="detail"/>) recommends the use of cipher suites that provide forward secrecy, i.e. that prevent an attacker who gains momentary access to the TLS endpoint (either client or server) and its secrets from reading either past or future communication. The tickets must be managed so as not to negate this security property.</t>
        <t>TLS 1.3 provides the powerful option of forward secrecy even within a long-lived connection
that is periodically resumed. <xref section="2.2" sectionFormat="of" target="RFC8446"/> recommends that clients <bcp14>SHOULD</bcp14>
send a "key_share" when initiating session resumption.
In order to gain forward secrecy, this document recommends that server implementations <bcp14>SHOULD</bcp14>
select the "psk_dhe_ke" PSK key exchange mode and 
respond with a "key_share", to complete an ECDHE exchange on each session resumption.
As a more performant alternative, server implementations <bcp14>MAY</bcp14> refrain from responding with a 
"key_share" until a certain amount of time (e.g., measured in hours) has passed since the last 
ECDHE exchange; this implies that the "key_share" operation would not occur for the presumed
majority of session resumption requests occurring within a few hours, while still ensuring 
forward secrecy for longer-lived sessions.</t>
        <t>TLS session resumption introduces potential privacy issues where the server is able
to track the client, in some cases indefinitely. See <xref target="Sy2018"/> for more details.</t>
      </section>
      <section anchor="renegotiation-in-tls-12">
        <name>Renegotiation in TLS 1.2</name>
        <t>The recommendations in this section apply to TLS 1.2 only, because renegotiation has been removed from TLS 1.3.</t>
        <t>Renegotiation in TLS 1.2 is a handshake that establishes new cryptographic parameters for an existing session. The mechanism existed in TLS 1.2 and in earlier protocol versions, and was improved following several major attacks including a plaintext injection attack, CVE-2009-3555 <xref target="CVE"/>.</t>
        <t>TLS 1.2 clients and servers <bcp14>MUST</bcp14> implement the <tt>renegotiation_info</tt> extension, as defined in <xref target="RFC5746"/>.</t>
        <t>TLS 1.2 clients <bcp14>MUST</bcp14> send <tt>renegotiation_info</tt> in the Client Hello.  If the server does not acknowledge the extension, the client <bcp14>MUST</bcp14> generate a fatal <tt>handshake_failure</tt> alert prior to terminating the connection.</t>
        <t>Rationale: It is not safe for a client to connect to a TLS 1.2 server that does not support <tt>renegotiation_info</tt>, regardless of whether either endpoint actually implements renegotiation.  See also <xref section="4.1" sectionFormat="of" target="RFC5746"/>.</t>
        <t>A related attack resulting from TLS session parameters not being properly authenticated is Triple Handshake <xref target="triple-handshake"/>. To address this attack, TLS 1.2 implementations <bcp14>MUST</bcp14> support the <tt>extended_master_secret</tt> extension defined in <xref target="RFC7627"/>.</t>
      </section>
      <section anchor="post-handshake-authentication">
        <name>Post-Handshake Authentication</name>
        <t>Renegotiation in TLS 1.2 was (partially) replaced in TLS 1.3 by separate post-handshake authentication and key update mechanisms.  In the context of protocols that multiplex requests over a single connection (such as HTTP/2 <xref target="HTTP2"/>), post-handshake authentication has the same problems as TLS 1.2 renegotiation.  Multiplexed protocols <bcp14>SHOULD</bcp14> follow the advice provided for HTTP/2 in <xref section="9.3.2" sectionFormat="of" target="HTTP2"/>.</t>
      </section>
      <section anchor="sni">
        <name>Server Name Indication (SNI)</name>
        <t>TLS implementations <bcp14>MUST</bcp14> support the Server Name Indication (SNI) extension defined in <xref section="3" sectionFormat="of" target="RFC6066"/> for those higher-level protocols that would benefit from it, including HTTPS. However, the actual use of SNI in particular circumstances is a matter of local policy.  At the time of writing, a technology for encrypting the SNI (called Encrypted Client Hello) is being worked on in the TLS Working Group <xref target="I-D.ietf-tls-esni"/>.  Once that method has been standardized and widely implemented, it will likely be appropriate to recommend its usage in a future version of this BCP.</t>
        <t>Rationale: SNI supports deployment of multiple TLS-protected virtual servers on a single
      address, and therefore enables fine-grained security for these virtual servers,
      by allowing each one to have its own certificate. However, SNI also leaks the 
      target domain for a given connection; this information leak will be closed by 
      use of TLS Encrypted Client Hello once that method has been standardized.</t>
        <t>In order to prevent the attacks described in <xref target="ALPACA"/>, a server that does not
recognize the presented server name <bcp14>SHOULD NOT</bcp14> continue the handshake and
instead <bcp14>SHOULD</bcp14> fail with a fatal-level <tt>unrecognized_name(112)</tt> alert.  Note that this
recommendation updates <xref section="3" sectionFormat="of" target="RFC6066"/>: "If the server understood the
ClientHello extension but does not recognize the server name, the server <bcp14>SHOULD</bcp14>
take one of two actions: either abort the handshake by sending a fatal-level
<tt>unrecognized_name(112)</tt> alert or continue the handshake."
Clients <bcp14>SHOULD</bcp14> abort the handshake if the server acknowledges the SNI extension, but presents a certificate with a different hostname than the one sent by the client.</t>
      </section>
      <section anchor="rec-alpn">
        <name>Application-Layer Protocol Negotiation (ALPN)</name>
        <t>TLS implementations (both client- and server-side) <bcp14>MUST</bcp14> support the
Application-Layer Protocol Negotiation (ALPN) extension <xref target="RFC7301"/>.</t>
        <t>In order to prevent "cross-protocol" attacks resulting from failure to ensure
that a message intended for use in one protocol cannot be mistaken for a
message for use in another protocol, servers are advised to strictly enforce the
behavior prescribed in <xref section="3.2" sectionFormat="of" target="RFC7301"/>: "In the event that the
server supports no protocols that the client advertises, then the server <bcp14>SHALL</bcp14>
respond with a fatal <tt>no_application_protocol</tt> alert."  Clients <bcp14>SHOULD</bcp14>
abort the handshake if the server acknowledges the ALPN extension,
but does not select a protocol from the client list.  Failure to do so can
result in attacks such those described in <xref target="ALPACA"/>.</t>
        <t>Protocol developers are strongly encouraged to register an ALPN identifier 
for their protocols. This applies both to new protocols and to well-established 
protocols; however, because the latter might have a large deployed base,
strict enforcement of ALPN usage may not be feasible when an ALPN 
identifier is registered for a well-established protocol.</t>
      </section>
      <section anchor="multi-server-deployment">
        <name>Multi-Server Deployment</name>
        <t>Deployments that involve multiple servers or services can increase the size of the attack surface for TLS. Two scenarios are of interest:</t>
        <ol spacing="normal" type="1"><li>Deployments in which multiple services handle the same domain name via different 
protocols (e.g., HTTP and IMAP). In this case an attacker might be able to direct 
a connecting endpoint to the service offering a different protocol and mount a 
cross-protocol attack. In a cross-protocol attack, the client and server believe 
they are using different protocols, which the attacker might exploit if messages 
sent in one protocol are interpreted as messages in the other protocol with 
undesirable effects (see <xref target="ALPACA"/> for more detailed information about this class 
of attacks). To mitigate this threat, service providers <bcp14>SHOULD</bcp14> deploy ALPN (see
<xref target="rec-alpn"/> immediately above) and to the extent possible ensure that multiple 
services handling the same domain name provide equivalent levels of security 
(including both the TLS configuration and protections against compromise of
server credentials) that are consistent with the recommendations in this document.</li>
          <li>Deployments in which multiple servers providing the same service have different
TLS configurations. In this case, an attacker might be able to direct a connecting 
endpoint to a server with a TLS configuration that is more easily exploitable (see 
<xref target="DROWN"/> for more detailed information about this class of attacks). To mitigate 
this threat, service providers <bcp14>SHOULD</bcp14> ensure that all servers providing the same 
service provide equivalent levels of security that are consistent with the 
recommendations in this document.</li>
        </ol>
      </section>
      <section anchor="zero-round-trip-time-0-rtt-data-in-tls-13">
        <name>Zero Round Trip Time (0-RTT) Data in TLS 1.3</name>
        <t>The 0-RTT early data feature is new in TLS 1.3. It provides reduced latency
when TLS connections are resumed, at the potential cost of certain security properties.
As a result, it requires special attention from implementers on both
the server and the client side. Typically, this extends to both the
TLS library as well as protocol layers above it.</t>
        <t>For use in HTTP-over-TLS, readers are referred to <xref target="RFC8470"/> for guidance.</t>
        <t>For QUIC-on-TLS, refer to <xref section="9.2" sectionFormat="of" target="RFC9001"/>.</t>
        <t>For other protocols, generic guidance is given in Section <xref target="RFC8446" section="8" sectionFormat="bare"/> and Appendix <xref target="RFC8446" section="E.5" sectionFormat="bare"/> of <xref target="RFC8446"/>.
To paraphrase Appendix E.5, applications <bcp14>MUST</bcp14> avoid this feature unless
an explicit specification exists for the application protocol in question to clarify
when 0-RTT is appropriate and secure. This can take the form of an IETF RFC,
a non-IETF standard, or even documentation associated with a non-standard protocol.</t>
      </section>
    </section>
    <section anchor="detail">
      <name>Recommendations: Cipher Suites</name>
      <t>TLS 1.2 provided considerable flexibility in the selection of cipher suites. Unfortunately, the security of some of these cipher suites has degraded over time to the point where some are known to be insecure (this is one reason why TLS 1.3 restricted such flexibility). Incorrectly configuring a server leads to no or reduced security.  This section includes recommendations on the selection and negotiation of cipher suites.</t>
      <section anchor="rec-cipher-guidelines">
        <name>General Guidelines</name>
        <t>Cryptographic algorithms weaken over time as cryptanalysis improves: algorithms that were once considered strong become weak. Consequently, they need to be phased out over time and replaced with more secure cipher suites. This helps to ensure that the desired security properties still hold. SSL/TLS has been in existence for almost 20 years and many of the cipher suites that have been recommended in various versions of SSL/TLS are now considered weak or at least not as strong as desired. Therefore, this section modernizes the recommendations concerning cipher suite selection.</t>
        <ul spacing="normal">
          <li>
            <t>Implementations <bcp14>MUST NOT</bcp14> negotiate the cipher suites with NULL encryption.  </t>
            <t>
Rationale: The NULL cipher suites do not encrypt traffic and 
             so provide no confidentiality services. Any entity in the 
             network with access to the connection can view the plaintext 
             of contents being exchanged by the client and server.<br/>
             Nevertheless, this document does not discourage software from
             implementing NULL cipher suites, since they can be useful for 
             testing and debugging.</t>
          </li>
          <li>
            <t>Implementations <bcp14>MUST NOT</bcp14> negotiate RC4 cipher suites.  </t>
            <t>
Rationale: The RC4 stream cipher has a variety of cryptographic 
             weaknesses, as documented in <xref target="RFC7465"/>.
     Note that DTLS specifically forbids the use of RC4 already.</t>
          </li>
          <li>
            <t>Implementations <bcp14>MUST NOT</bcp14> negotiate cipher suites offering less 
             than 112 bits of security, including so-called "export-level" 
             encryption (which provide 40 or 56 bits of security).  </t>
            <t>
Rationale: Based on <xref target="RFC3766"/>, at least 112 bits 
             of security is needed.  40-bit and 56-bit security (found in 
             so-called "export ciphers") are considered 
             insecure today.</t>
          </li>
          <li>
            <t>Implementations <bcp14>SHOULD NOT</bcp14> negotiate cipher suites that use 
             algorithms offering less than 128 bits of security.  </t>
            <t>
Rationale: Cipher suites that offer 112 or more bits but less than 128 bits
             of security are not considered weak at this time; however, it is 
             expected that their useful lifespan is short enough to justify 
             supporting stronger cipher suites at this time.  128-bit ciphers 
             are expected to remain secure for at least several years, and 
             256-bit ciphers until the next fundamental technology 
             breakthrough.  Note that, because of so-called 
             "meet-in-the-middle" attacks <xref target="Multiple-Encryption"/>,
             some legacy cipher suites (e.g., 168-bit 3DES) have an effective 
             key length that is smaller than their nominal key length (112 
             bits in the case of 3DES).  Such cipher suites should be 
             evaluated according to their effective key length.</t>
          </li>
          <li>
            <t>Implementations <bcp14>SHOULD NOT</bcp14> negotiate cipher suites based on 
             RSA key transport, a.k.a. "static RSA".  </t>
            <t>
Rationale: These cipher suites, which have assigned values starting 
             with the string "TLS_RSA_WITH_*", have several drawbacks, especially
             the fact that they do not support forward secrecy.</t>
          </li>
          <li>
            <t>Implementations <bcp14>SHOULD NOT</bcp14> negotiate cipher suites based on
             non-ephemeral (static) finite-field Diffie-Hellman key agreement.  </t>
            <t>
Rationale: These cipher suites, which have assigned values prefixed by "TLS_DH_*", have several drawbacks, especially
             the fact that they do not support forward secrecy.</t>
          </li>
          <li>
            <t>Implementations <bcp14>MUST</bcp14> support and prefer to negotiate cipher suites 
             offering forward secrecy.  However, TLS 1.2 implementations <bcp14>SHOULD NOT</bcp14> negotiate
             cipher suites based on ephemeral finite-field Diffie-Hellman key
             agreement (i.e., "TLS_DHE_*" suites).  This is justified by the known fragility
             of the construction (see <xref target="RACCOON"/>) and the limitation around
             negotiation -- including using <xref target="RFC7919"/>, which has seen very
             limited uptake.  </t>
            <t>
Rationale: Forward secrecy (sometimes called "perfect forward 
             secrecy") prevents the recovery of information that was encrypted 
             with older session keys, thus limiting how far back in time data
             can be decrypted when an attack is successful.  See <xref target="sec-pfs"/>
             for a detailed discussion.</t>
          </li>
        </ul>
      </section>
      <section anchor="rec-cipher">
        <name>Cipher Suites for TLS 1.2</name>
        <t>Given the foregoing considerations, implementation and deployment of the following cipher suites is <bcp14>RECOMMENDED</bcp14>:</t>
        <ul spacing="normal">
          <li>TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256</li>
          <li>TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384</li>
          <li>TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256</li>
          <li>TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384</li>
        </ul>
        <t>As these are authenticated encryption (AEAD) algorithms <xref target="RFC5116"/>, these cipher suites are supported only in TLS 1.2 and not in earlier protocol versions.</t>
        <t>Typically, in order to prefer these suites, the order of suites needs to be explicitly configured in server software.  It would be ideal if server software implementations were to prefer these suites by default.</t>
        <t>Some devices have hardware support for AES-CCM but not AES-GCM, so they are unable to follow the foregoing recommendations regarding cipher suites.  There are even devices that do not support public key cryptography at all, but these are out of scope entirely.</t>
        <t>When using ECDSA signatures for authentication of TLS peers, it is <bcp14>RECOMMENDED</bcp14> that implementations use the NIST curve P-256. In addition, to avoid predictable or repeated nonces (that would allow revealing the long term signing key), it is <bcp14>RECOMMENDED</bcp14> that implementations implement "deterministic ECDSA" as specified in <xref target="RFC6979"/> and in line with the recommendations in <xref target="RFC8446"/>.</t>
        <t>Note that implementations of "deterministic ECDSA" may be vulnerable to certain
side-channel and fault injection attacks precisely because of their
determinism.  While most fault attacks described in the literature assume
physical access to the device (and therefore are more relevant in IoT
deployments with poor or non-existent physical security), some can be carried
out remotely <xref target="Poddebniak2017"/>, e.g., as Rowhammer <xref target="Kim2014"/> variants.  In
deployments where side-channel attacks and fault injection attacks are a
concern, implementation strategies combining both randomness and determinism
(for example, as described in <xref target="I-D.mattsson-cfrg-det-sigs-with-noise"/>) can
be used to avoid the risk of successful extraction of the signing key.</t>
        <section anchor="detail-neg">
          <name>Implementation Details</name>
          <t>Clients <bcp14>SHOULD</bcp14> include TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 as the first proposal to any server.  Servers <bcp14>MUST</bcp14> prefer this cipher suite over weaker cipher suites whenever it is proposed, even if it is not the first proposal.  Clients are of course free to offer stronger cipher suites, e.g., using AES-256; when they do, the server <bcp14>SHOULD</bcp14> prefer the stronger cipher suite unless there are compelling reasons (e.g., seriously degraded performance) to choose otherwise.</t>
          <t>The previous version of this document implicitly allowed the old RFC 5246 mandatory-to-implement cipher suite, TLS_RSA_WITH_AES_128_CBC_SHA. At the time of writing, this cipher suite does not provide additional interoperability, except with very old clients. As with other cipher suites that do not provide forward secrecy, implementations <bcp14>SHOULD NOT</bcp14> support this cipher suite. Other application protocols specify other cipher suites as mandatory to implement (MTI).</t>
          <t><xref target="RFC8422"/> allows clients and servers to negotiate ECDH parameters (curves).  Both clients and servers <bcp14>SHOULD</bcp14> include the "Supported Elliptic Curves" extension <xref target="RFC8422"/>.  Clients and servers <bcp14>SHOULD</bcp14> support the NIST P-256 (secp256r1) <xref target="RFC8422"/> and X25519 (x25519) <xref target="RFC7748"/> curves.  Note that <xref target="RFC8422"/> deprecates all but the uncompressed point format.  Therefore, if the client sends an ec_point_formats extension, the ECPointFormatList <bcp14>MUST</bcp14> contain a single element, "uncompressed".</t>
        </section>
      </section>
      <section anchor="cipher-suites-for-tls-13">
        <name>Cipher Suites for TLS 1.3</name>
        <t>This document does not specify any cipher suites for TLS 1.3. Readers
are referred to <xref section="9.1" sectionFormat="of" target="RFC8446"/> for cipher suite recommendations.</t>
      </section>
      <section anchor="limits-on-key-usage">
        <name>Limits on Key Usage</name>
        <t>All ciphers have an upper limit on the amount of traffic that can be securely
protected with any given key. In the case of AEAD cipher suites, two separate
limits are maintained for each key:</t>
        <ol spacing="normal" type="1"><li>Confidentiality limit (CL), i.e., the number of records that can be
encrypted.</li>
          <li>Integrity limit (IL), i.e., the number of records that are allowed to fail
authentication.</li>
        </ol>
        <t>The latter applies to DTLS (and also to QUIC) but not to TLS itself, since TLS connections are torn down on the
first decryption failure.</t>
        <t>When a sender is approaching CL, the implementation <bcp14>SHOULD</bcp14> initiate a new handshake (in TLS 1.3, this can be achieved by sending a KeyUpdate message on the established session) to rotate the session key. When a receiver has reached IL, the implementation <bcp14>SHOULD</bcp14> close the connection. Although these recommendations are a best practice, implementers need to be aware that it is not always easy to accomplish them in protocols that are built on top of TLS/DTLS without introducing coordination across layer boundaries.  See <xref section="6" sectionFormat="of" target="RFC9001"/> for an example of the cooperation that was necessary in QUIC between the crypto and transport layers to support key updates.  Note that in general, application protocols might not be able to emulate that method given their more constrained interaction with TLS/DTLS. As a result of these complexities, these recommendations are not mandatory.</t>
        <t>For all TLS 1.3 cipher suites, readers are referred to <xref section="5.5" sectionFormat="of" target="RFC8446"/> for the values of CL and IL. For all DTLS 1.3 cipher suites, readers are referred to <xref section="4.5.3" sectionFormat="of" target="RFC9147"/>.</t>
        <t>For all AES-GCM cipher suites recommended for TLS 1.2 and DTLS 1.2 in this
document, CL can be derived by plugging the corresponding parameters into the
inequalities in <xref section="6.1" sectionFormat="of" target="I-D.irtf-cfrg-aead-limits"/> that apply to
random, partially implicit nonces, i.e., the nonce construction used in TLS
1.2.  Although the obtained figures are slightly higher than those for TLS 1.3,
it is <bcp14>RECOMMENDED</bcp14> that the same limit of 2<sup>24.5</sup> records is used for
both versions.</t>
        <t>For all AES-GCM cipher suites recommended for DTLS 1.2, IL (obtained from the
same inequalities referenced above) is 2<sup>28</sup>.</t>
      </section>
      <section anchor="rec-keylength">
        <name>Public Key Length</name>
        <t>When using the cipher suites recommended in this document, two public keys are 
      normally used in the TLS handshake: one for the Diffie-Hellman key agreement
      and one for server authentication. Where a client certificate is used, a third 
      public key is added.</t>
        <t>With a key exchange based on modular exponential (MODP) Diffie-Hellman groups ("DHE" cipher suites), DH key lengths of at least 2048 bits are <bcp14>REQUIRED</bcp14>.</t>
        <t>Rationale: For various reasons, in practice, DH keys are typically generated in lengths
 that are powers of two (e.g., 2<sup>10</sup> = 1024 bits, 2<sup>11</sup> = 2048 bits, 2<sup>12</sup> = 4096 bits).
 Because a DH key of 1228 bits would be roughly equivalent to only an 80-bit symmetric key
<xref target="RFC3766"/>, it is better to use keys longer than that for the "DHE" family of cipher suites.
A DH key of 1926 bits would be roughly equivalent to a 100-bit symmetric key <xref target="RFC3766"/>.
A DH key of 2048 bits (equivalent to a 112-bit symmetric key) 
is the minimum allowed by the latest revision of <xref target="NIST.SP.800-56A"/>, as of this writing
(see in particular Appendix D).</t>
        <t>As noted in <xref target="RFC3766"/>, correcting for the emergence of a TWIRL machine <xref target="TWIRL"/> would imply that 1024-bit DH keys yield about 61 bits of equivalent strength and that a 2048-bit DH key would yield about 92 bits of equivalent strength.
The Logjam attack <xref target="Logjam"/> further demonstrates that 1024-bit Diffie-Hellman parameters
should be avoided.</t>
        <t>With regard to ECDH keys, implementers are referred to the IANA "Supported Groups Registry" (former "EC Named Curve
Registry"), within the
   "Transport Layer Security (TLS) Parameters" registry <xref target="IANA_TLS"/>, and in particular to the "recommended"
   groups.  Curves of less than 224 bits <bcp14>MUST NOT</bcp14> be used. This recommendation is in-line with the latest
revision of <xref target="NIST.SP.800-56A"/>.</t>
        <t>When using RSA, servers <bcp14>MUST</bcp14> authenticate using certificates with at least a 2048-bit modulus for the public key.  In addition, the use of the SHA-256 hash algorithm is <bcp14>RECOMMENDED</bcp14> and SHA-1 or MD5 <bcp14>MUST NOT</bcp14> be used (<xref target="RFC9155"/>, and see <xref target="CAB-Baseline"/> for more details). Clients <bcp14>MUST</bcp14> indicate to servers that they request SHA-256, by using the "Signature Algorithms" extension defined in TLS 1.2. For TLS 1.3, the same requirement is already specified by <xref target="RFC8446"/>.</t>
        <t><cref anchor="live-ref-question">Note to RFC Editor: we are looking for advice on how to best handle this constantly updated guidance from the CA/Browser Forum.  In particular: which URL to use, which (if any) version to reference</cref></t>
      </section>
      <section anchor="truncated-hmac">
        <name>Truncated HMAC</name>
        <t>Implementations <bcp14>MUST NOT</bcp14> use the Truncated HMAC extension, defined in <xref section="7" sectionFormat="of" target="RFC6066"/>.</t>
        <t>Rationale: the extension does not apply to the AEAD
      cipher suites recommended above. However, it does apply to most other TLS cipher suites. Its use
      has been shown to be insecure in <xref target="PatersonRS11"/>.</t>
      </section>
    </section>
    <section anchor="applicability">
      <name>Applicability Statement</name>
      <t>The recommendations of this document primarily apply to the implementation and deployment of application protocols that are most commonly used with TLS and DTLS on the Internet today.  Examples include, but are not limited to:</t>
      <ul spacing="normal">
        <li>Web software and services that wish to protect HTTP traffic with TLS.</li>
        <li>Email software and services that wish to protect IMAP, POP3, or SMTP traffic with TLS.</li>
        <li>Instant-messaging software and services that wish to protect Extensible Messaging and Presence Protocol (XMPP) or Internet Relay Chat (IRC) traffic with TLS.</li>
        <li>Realtime media software and services that wish to protect Secure Realtime Transport Protocol (SRTP) traffic with DTLS.</li>
      </ul>
      <t>This document does not modify the implementation and deployment recommendations (e.g., mandatory-to-implement cipher suites) prescribed by existing application protocols that employ TLS or DTLS. If the community that uses such an application protocol wishes to modernize its usage of TLS or DTLS to be consistent with the best practices recommended here, it needs to explicitly update the existing application protocol definition (one example is <xref target="RFC7590"/>, which updates <xref target="RFC6120"/>).</t>
      <t>Designers of new application protocols developed through the Internet
  Standards Process <xref target="RFC2026"/> are expected at minimum to conform to the best
  practices recommended here, unless they provide documentation of
  compelling reasons that would prevent such conformance (e.g.,
  widespread deployment on constrained devices that lack support for
  the necessary algorithms).</t>
      <t>Although many of the recommendations provided here might also apply to QUIC insofar 
it uses the TLS 1.3 handshake protocol, QUIC and other such secure transport protocols 
are out of scope of this document. For QUIC specifically, readers are 
referred to <xref section="9.2" sectionFormat="of" target="RFC9001"/>.</t>
      <t>This document does not address the use of TLS in constrained-node networks
<xref target="RFC7228"/>.  For recommendations regarding the profiling of TLS and DTLS for
small devices with severe constraints on power, memory, and processing
resources, the reader is referred to <xref target="RFC7925"/> and
<xref target="I-D.ietf-uta-tls13-iot-profile"/>.</t>
      <section anchor="security-services">
        <name>Security Services</name>
        <t>This document provides recommendations for an audience that wishes to secure their communication with TLS to achieve the following:</t>
        <ul spacing="normal">
          <li>Confidentiality: all application-layer communication is encrypted with the goal that no party should be able to decrypt it except the intended receiver.</li>
          <li>Data integrity: any changes made to the communication in transit are detectable by the receiver.</li>
          <li>Authentication: an endpoint of the TLS communication is authenticated as the intended entity to communicate with.</li>
        </ul>
        <t>With regard to authentication, TLS enables authentication of one or both endpoints in the communication.  In the context of opportunistic security <xref target="RFC7435"/>, TLS is sometimes used without authentication. As discussed in <xref target="oppsec"/>, considerations for opportunistic security are not in scope for this document.</t>
        <t>If deployers deviate from the recommendations given in this document, they need to be aware that they might lose access to one of the foregoing security services.</t>
        <t>This document applies only to environments where confidentiality is required. It requires algorithms and configuration options that enforce secrecy of the data in transit.</t>
        <t>This document also assumes that data integrity protection is always one of the goals of a deployment. In cases where integrity is not required, it does not make sense to employ TLS in the first place. There are attacks against confidentiality-only protection that utilize the lack of integrity to also break confidentiality (see, for instance, <xref target="DegabrieleP07"/> in the context of IPsec).</t>
        <t>This document addresses itself to application protocols that are most commonly used on the Internet with TLS and DTLS. Typically, all communication between TLS clients and TLS servers requires all three of the above security services. This is particularly true where TLS clients are user agents like Web browsers or email software.</t>
        <t>This document does not address the rarer deployment scenarios where one of the above three properties is not desired, such as the use case described in <xref target="oppsec"/> below.  As another scenario where confidentiality is not needed, consider a monitored network where the authorities in charge of the respective traffic domain require full access to unencrypted (plaintext) traffic, and where users collaborate and send their traffic in the clear.</t>
      </section>
      <section anchor="oppsec">
        <name>Opportunistic Security</name>
        <t>There are several important scenarios in which the use of TLS is optional, i.e., the client decides dynamically ("opportunistically") whether to use TLS with a particular server or to connect in the clear.  This practice, often called "opportunistic security", is described at length in <xref target="RFC7435"/> and is often motivated by a desire for backward compatibility with legacy deployments.</t>
        <t>In these scenarios, some of the recommendations in this document might be too strict, since adhering to them could cause fallback to cleartext, a worse outcome than using TLS with an outdated protocol version or cipher suite.</t>
      </section>
    </section>
    <section anchor="iana-considerations">
      <name>IANA Considerations</name>
      <t>This document has no IANA actions.</t>
    </section>
    <section anchor="sec">
      <name>Security Considerations</name>
      <t>This entire document discusses the security practices directly affecting applications
    using the TLS protocol. This section contains broader security considerations related
    to technologies used in conjunction with or by TLS.
    The reader is referred to the Security Considerations sections of TLS 1.3
    <xref target="RFC8446"/>, DTLS 1.3 <xref target="RFC9147"/>, TLS 1.2 <xref target="RFC5246"/> and DTLS 1.2 <xref target="RFC6347"/>
    for further context.</t>
      <section anchor="host-name-validation">
        <name>Host Name Validation</name>
        <t>Application authors should take note that some TLS implementations
  do not validate host names.  If the TLS implementation they are
  using does not validate host names, authors might need to write their
  own validation code or consider using a different TLS implementation.</t>
        <t>It is noted that the requirements regarding host name validation (and, in general, binding between the TLS layer and the protocol that runs above it) vary between different protocols. For HTTPS, these requirements are defined by Sections 4.3.3, 4.3.4 and 4.3.5 of <xref target="HTTP-SEMA"/>.</t>
        <t>Host name validation is security-critical for all common TLS use cases. Without it, TLS ensures that the certificate is valid and guarantees possession of the private key, but does not ensure that the connection terminates at the desired endpoint. Readers are referred to <xref target="RFC6125"/> for further details regarding generic host name validation in the TLS context. In addition, that RFC contains a long list of example protocols, some of which implement a policy very different from HTTPS.</t>
        <t>If the host name is discovered indirectly and insecurely (e.g., by a clear-text DNS query for an SRV or MX record), it <bcp14>SHOULD NOT</bcp14> be used as a reference identifier <xref target="RFC6125"/> even when it matches the presented certificate.  This proviso does not apply if the host name is discovered securely (for further discussion, see <xref target="DANE-SRV"/> and <xref target="DANE-SMTP"/>).</t>
        <t>Host name validation typically applies only to the leaf "end entity" certificate. Naturally, in order to ensure proper authentication in the context of the PKI, application clients need to verify the entire certification path in accordance with <xref target="RFC5280"/>.</t>
      </section>
      <section anchor="sec-aes">
        <name>AES-GCM</name>
        <t><xref target="rec-cipher"/> above recommends the use of the AES-GCM authenticated encryption algorithm. Please refer to <xref section="6" sectionFormat="of" target="RFC5288"/> for security considerations that apply specifically to AES-GCM when used with TLS.</t>
        <section anchor="nonce-reuse">
          <name>&nbsp;Nonce Reuse in TLS 1.2</name>
          <t>The existence of deployed TLS stacks that mistakenly reuse the AES-GCM nonce is
documented in <xref target="Boeck2016"/>, showing there is an actual risk of AES-GCM getting
implemented insecurely and thus making TLS sessions that use an
AES-GCM cipher suite vulnerable to attacks such as <xref target="Joux2006"/>.  (See <xref target="CVE"/>
records: CVE-2016-0270, CVE-2016-10213, CVE-2016-10212, CVE-2017-5933.)</t>
          <t>While this problem has been fixed in TLS 1.3, which enforces a deterministic
method to generate nonces from record sequence numbers and shared secrets for
all of its AEAD cipher suites (including AES-GCM), TLS 1.2 implementations
could still choose their own (potentially insecure) nonce generation methods.</t>
          <t>It is therefore <bcp14>RECOMMENDED</bcp14> that TLS 1.2 implementations use the 64-bit
sequence number to populate the <tt>nonce_explicit</tt> part of the GCM nonce, as
described in the first two paragraphs of <xref section="5.3" sectionFormat="of" target="RFC8446"/>. This stronger recommendation updates <xref section="3" sectionFormat="of" target="RFC5288"/>, which specified that the use of 64-bit sequence numbers to populate the <tt>nonce_explicit</tt> field was optional.</t>
          <t>We note that at the time of writing there are no cipher suites defined for nonce
reuse resistant algorithms such as AES-GCM-SIV <xref target="RFC8452"/>.</t>
        </section>
      </section>
      <section anchor="sec-pfs">
        <name>Forward Secrecy</name>
        <t>Forward secrecy (also called "perfect forward secrecy" or "PFS" and defined in <xref target="RFC4949"/>) is a defense against an attacker who records encrypted conversations where the session keys are only encrypted with the communicating parties' long-term keys.</t>
        <t>Should the attacker be able to obtain these long-term keys at some point later in time, the session keys and thus the entire conversation could be decrypted.</t>
        <t>In the context of TLS and DTLS, such compromise of long-term keys is not entirely implausible. It can happen, for example, due to:</t>
        <ul spacing="normal">
          <li>A client or server being attacked by some other attack vector, and the private key retrieved.</li>
          <li>A long-term key retrieved from a device that has been sold or otherwise decommissioned without prior wiping.</li>
          <li>A long-term key used on a device as a default key <xref target="Heninger2012"/>.</li>
          <li>A key generated by a trusted third party like a CA, and later retrieved from it either by extortion or compromise <xref target="Soghoian2011"/>.</li>
          <li>A cryptographic break-through, or the use of asymmetric keys with insufficient length <xref target="Kleinjung2010"/>.</li>
          <li>Social engineering attacks against system administrators.</li>
          <li>Collection of private keys from inadequately protected backups.</li>
        </ul>
        <t>Forward secrecy ensures in such cases that it is not feasible for an attacker to determine the session keys even if the attacker has obtained the long-term keys some time after the conversation. It also protects against an attacker who is in possession of the long-term keys but remains passive during the conversation.</t>
        <t>Forward secrecy is generally achieved by using the Diffie-Hellman scheme to derive session keys. The Diffie-Hellman scheme has both parties maintain private secrets and send parameters over the network as modular powers over certain cyclic groups. The properties of the so-called Discrete Logarithm Problem (DLP) allow the parties to derive the session keys without an eavesdropper being able to do so. There is currently no known attack against DLP if sufficiently large parameters are chosen. A variant of the Diffie-Hellman scheme uses elliptic curves instead of the originally proposed modular arithmetic. Given the current state of the art, elliptic-curve Diffie-Hellman appears to be more efficient, permits shorter key lengths, and allows less freedom for implementation errors than finite-field Diffie-Hellman.</t>
        <t>Unfortunately, many TLS/DTLS cipher suites were defined that do not feature forward secrecy, e.g., TLS_RSA_WITH_AES_256_CBC_SHA256.  This document therefore advocates strict use of forward-secrecy-only ciphers.</t>
      </section>
      <section anchor="diffie-hellman-exponent-reuse">
        <name>Diffie-Hellman Exponent Reuse</name>
        <t>For performance reasons, it is not uncommon for TLS implementations to reuse Diffie-Hellman and Elliptic Curve Diffie-Hellman exponents across multiple connections. Such reuse can result in major security issues:</t>
        <ul spacing="normal">
          <li>If exponents are reused for too long (in some cases, even as little as a few hours), an attacker who gains access to the host can decrypt previous connections. In other words, exponent reuse negates the effects of forward secrecy.</li>
          <li>TLS implementations that reuse exponents should test the DH public key they receive for group membership, in order to avoid some known attacks. These tests are not standardized in TLS at the time of writing, although general guidance in this area is provided by <xref target="NIST.SP.800-56A"/> and available in many protocol implementations.</li>
          <li>Under certain conditions, the use of static finite-field DH keys, or of ephemeral finite-field DH keys that are reused across multiple connections, can lead to timing attacks (such as those described in <xref target="RACCOON"/>) on the shared secrets used in Diffie-Hellman key exchange.</li>
          <li>An "invalid curve" attack can be mounted against elliptic-curve DH if the victim does not verify that the received point lies on the correct curve.  If the victim is reusing the DH secrets, the attacker can repeat the probe varying the points to recover the full secret (see <xref target="Antipa2003"/> and <xref target="Jager2015"/>).</li>
        </ul>
        <t>To address these concerns:</t>
        <ul spacing="normal">
          <li>TLS implementations <bcp14>SHOULD NOT</bcp14> use static finite-field DH keys and <bcp14>SHOULD NOT</bcp14> reuse ephemeral finite-field DH keys across multiple connections.</li>
          <li>Server implementations that want to reuse elliptic-curve DH keys <bcp14>SHOULD</bcp14> either use a "safe curve" <xref target="SAFECURVES"/> (e.g., X25519), or perform the checks described in <xref target="NIST.SP.800-56A"/> on the received points.</li>
        </ul>
      </section>
      <section anchor="certificate-revocation">
        <name>Certificate Revocation</name>
        <t>The following considerations and recommendations represent the current state of the art regarding certificate revocation, even though no complete and efficient solution exists for the problem of checking the revocation status of common public key certificates <xref target="RFC5280"/>:</t>
        <ul spacing="normal">
          <li>Certificate revocation is an important tool when recovering from attacks on the TLS implementation, as well as cases of misissued certificates. TLS implementations <bcp14>MUST</bcp14> implement a strategy to distrust revoked certificates.</li>
          <li>Although Certificate Revocation Lists (CRLs) are the most widely supported mechanism for distributing revocation information, they have known scaling challenges that limit their usefulness, despite workarounds such as partitioned CRLs and delta CRLs. The more modern <xref target="CRLite"/> and the follow-on Let's Revoke <xref target="LetsRevoke"/> build on the availability of Certificate Transparency <xref target="RFC9162"/> logs and aggressive compression to allow practical use of the CRL infrastructure, but at the time of writing, neither solution is deployed for client-side revocation processing at scale.</li>
          <li>Proprietary mechanisms that embed revocation lists in the Web browser's configuration database cannot scale beyond the few, most heavily used Web servers.</li>
          <li>The On-Line Certification Status Protocol (OCSP) <xref target="RFC6960"/> in its basic form presents both scaling and privacy issues. In addition, clients typically "soft-fail", meaning that they do not abort the TLS connection if the OCSP server does not respond. (However, this might be a workaround to avoid denial-of-service attacks if an OCSP responder is taken offline.). For an up-to-date survey of the status of OCSP deployment in the Web PKI see <xref target="Chung18"/>.</li>
          <li>The TLS Certificate Status Request extension (<xref section="8" sectionFormat="of" target="RFC6066"/>), commonly called "OCSP stapling", resolves the operational issues with OCSP. However, it is still ineffective in the presence of a MITM attacker because the attacker can simply ignore the client's request for a stapled OCSP response.</li>
          <li>
            <xref target="RFC7633"/> defines a certificate extension that indicates that clients must expect stapled OCSP responses for the certificate and must abort the handshake ("hard-fail") if such a response is not available.</li>
          <li>OCSP stapling as used in TLS 1.2 does not extend to intermediate certificates within a certificate chain. The Multiple Certificate Status extension <xref target="RFC6961"/> addresses this shortcoming, but it has seen little deployment and had been deprecated by <xref target="RFC8446"/>. As a result, we no longer recommend this extension for TLS 1.2.</li>
          <li>TLS 1.3 (<xref section="4.4.2.1" sectionFormat="of" target="RFC8446"/>) allows the association of OCSP information with intermediate certificates by using an extension to the CertificateEntry structure. However, using this facility remains impractical because many CAs either do not publish OCSP for CA certificates or publish OCSP reports with a lifetime that is too long to be useful.</li>
          <li>Both CRLs and OCSP depend on relatively reliable connectivity to the Internet, which might not be available to certain kinds of nodes. A common example is newly provisioned devices that need to establish a secure connection in order to boot up for the first time.</li>
        </ul>
        <t>For the common use cases of public key certificates in TLS, servers <bcp14>SHOULD</bcp14> support the following as a best practice given the current state of the art and as a foundation for a possible future solution: OCSP <xref target="RFC6960"/> and OCSP stapling using the <tt>status_request</tt> extension defined in <xref target="RFC6066"/>. Note that the exact mechanism for embedding the <tt>status_request</tt> extension differs between TLS 1.2 and 1.3. As a matter of local policy, server operators <bcp14>MAY</bcp14> request that CAs issue must-staple <xref target="RFC7633"/> certificates for the server and/or for client authentication, but we recommend to review the operational conditions before deciding on this approach.</t>
        <t>The considerations in this section do not apply to scenarios where the DANE-TLSA resource record <xref target="RFC6698"/> is used to signal to a client which certificate a server considers valid and good to use for TLS connections.</t>
      </section>
    </section>
    <section anchor="d1e1127">
      <name>Acknowledgments</name>
      <t>Thanks to
Alexey Melnikov,
Andrei Popov,
Ben Kaduk,
Christian Huitema,
Daniel Kahn Gillmor,
David Benjamin,
Eric Rescorla,
Francesca Palombini,
Hannes Tschofenig,
Hubert Kario,
Ilari Liusvaara,
John Mattsson,
John R Levine,
Julien <contact fullname="Élie" asciiFullname="Elie"/>,
Leif Johansson,
Martin Thomson,
Mohit Sahni,
Nick Sullivan,
Nimrod Aviram,
Paul Wouters,
Rich Salz,
Ryan Sleevi,
Sean Turner,
Stephen Farrell,
Tim Evans,
Valery Smyslov,
Viktor Dukhovni
for helpful comments and discussions that have shaped this document.</t>
      <t>The authors gratefully acknowledge the contribution of Ralph Holz, who was a coauthor of RFC 7525, the previous version of this document.</t>
      <t>See RFC 7525 for additional acknowledgments for the previous revision of this document.</t>
    </section>
  </middle>
  <back>
    <references>
      <name>References</name>
      <references>
        <name>Normative References</name>
        <reference anchor="RFC7465" target="https://www.rfc-editor.org/info/rfc7465">
          <front>
            <title>Prohibiting RC4 Cipher Suites</title>
            <author fullname="A. Popov" initials="A." surname="Popov">
              <organization/>
            </author>
            <date month="February" year="2015"/>
            <abstract>
              <t>This document requires that Transport Layer Security (TLS) clients and servers never negotiate the use of RC4 cipher suites when they establish connections.  This applies to all TLS versions.  This document updates RFCs 5246, 4346, and 2246.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="7465"/>
          <seriesInfo name="DOI" value="10.17487/RFC7465"/>
        </reference>
        <reference anchor="RFC5246" target="https://www.rfc-editor.org/info/rfc5246">
          <front>
            <title>The Transport Layer Security (TLS) Protocol Version 1.2</title>
            <author fullname="T. Dierks" initials="T." surname="Dierks">
              <organization/>
            </author>
            <author fullname="E. Rescorla" initials="E." surname="Rescorla">
              <organization/>
            </author>
            <date month="August" year="2008"/>
            <abstract>
              <t>This document specifies Version 1.2 of the Transport Layer Security (TLS) protocol.  The TLS protocol provides communications security over the Internet.  The protocol allows client/server applications to communicate in a way that is designed to prevent eavesdropping, tampering, or message forgery.  [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="5246"/>
          <seriesInfo name="DOI" value="10.17487/RFC5246"/>
        </reference>
        <reference anchor="RFC6347" target="https://www.rfc-editor.org/info/rfc6347">
          <front>
            <title>Datagram Transport Layer Security Version 1.2</title>
            <author fullname="E. Rescorla" initials="E." surname="Rescorla">
              <organization/>
            </author>
            <author fullname="N. Modadugu" initials="N." surname="Modadugu">
              <organization/>
            </author>
            <date month="January" year="2012"/>
            <abstract>
              <t>This document specifies version 1.2 of the Datagram Transport Layer Security (DTLS) protocol.  The DTLS protocol provides communications privacy for datagram protocols.  The protocol allows client/server applications to communicate in a way that is designed to prevent eavesdropping, tampering, or message forgery.  The DTLS protocol is based on the Transport Layer Security (TLS) protocol and provides equivalent security guarantees.  Datagram semantics of the underlying transport are preserved by the DTLS protocol.  This document updates DTLS 1.0 to work with TLS version 1.2.  [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="6347"/>
          <seriesInfo name="DOI" value="10.17487/RFC6347"/>
        </reference>
        <reference anchor="RFC8996" target="https://www.rfc-editor.org/info/rfc8996">
          <front>
            <title>Deprecating TLS 1.0 and TLS 1.1</title>
            <author fullname="K. Moriarty" initials="K." surname="Moriarty">
              <organization/>
            </author>
            <author fullname="S. Farrell" initials="S." surname="Farrell">
              <organization/>
            </author>
            <date month="March" year="2021"/>
            <abstract>
              <t>This document formally deprecates Transport Layer Security (TLS) versions 1.0 (RFC 2246) and 1.1 (RFC 4346). Accordingly, those documents have been moved to Historic status. These versions lack support for current and recommended cryptographic algorithms and mechanisms, and various government and industry profiles of applications using TLS now mandate avoiding these old TLS versions. TLS version 1.2 became the recommended version for IETF protocols in 2008 (subsequently being obsoleted by TLS version 1.3 in 2018), providing sufficient time to transition away from older versions. Removing support for older versions from implementations reduces the attack surface, reduces opportunity for misconfiguration, and streamlines library and product maintenance. </t>
              <t>This document also deprecates Datagram TLS (DTLS) version 1.0 (RFC 4347) but not DTLS version 1.2, and there is no DTLS version 1.1.</t>
              <t>This document updates many RFCs that normatively refer to TLS version 1.0 or TLS version 1.1, as described herein. This document also updates the best practices for TLS usage in RFC 7525; hence, it is part of BCP 195.</t>
            </abstract>
          </front>
          <seriesInfo name="BCP" value="195"/>
          <seriesInfo name="RFC" value="8996"/>
          <seriesInfo name="DOI" value="10.17487/RFC8996"/>
        </reference>
        <reference anchor="RFC8446" target="https://www.rfc-editor.org/info/rfc8446">
          <front>
            <title>The Transport Layer Security (TLS) Protocol Version 1.3</title>
            <author fullname="E. Rescorla" initials="E." surname="Rescorla">
              <organization/>
            </author>
            <date month="August" year="2018"/>
            <abstract>
              <t>This document specifies version 1.3 of the Transport Layer Security (TLS) protocol.  TLS allows client/server applications to communicate over the Internet in a way that is designed to prevent eavesdropping, tampering, and message forgery.</t>
              <t>This document updates RFCs 5705 and 6066, and obsoletes RFCs 5077, 5246, and 6961.  This document also specifies new requirements for TLS 1.2 implementations.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8446"/>
          <seriesInfo name="DOI" value="10.17487/RFC8446"/>
        </reference>
        <reference anchor="RFC9147" target="https://www.rfc-editor.org/info/rfc9147">
          <front>
            <title>The Datagram Transport Layer Security (DTLS) Protocol Version 1.3</title>
            <author fullname="E. Rescorla" initials="E." surname="Rescorla">
              <organization/>
            </author>
            <author fullname="H. Tschofenig" initials="H." surname="Tschofenig">
              <organization/>
            </author>
            <author fullname="N. Modadugu" initials="N." surname="Modadugu">
              <organization/>
            </author>
            <date month="April" year="2022"/>
            <abstract>
              <t>This document specifies version 1.3 of the Datagram Transport Layer Security (DTLS) protocol. DTLS 1.3 allows client/server applications to communicate over the Internet in a way that is designed to prevent eavesdropping, tampering, and message forgery.</t>
              <t>The DTLS 1.3 protocol is based on the Transport Layer Security (TLS) 1.3 protocol and provides equivalent security guarantees with the exception of order protection / non-replayability.  Datagram semantics of the underlying transport are preserved by the DTLS protocol.</t>
              <t>This document obsoletes RFC 6347.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="9147"/>
          <seriesInfo name="DOI" value="10.17487/RFC9147"/>
        </reference>
        <reference anchor="RFC2119" target="https://www.rfc-editor.org/info/rfc2119">
          <front>
            <title>Key words for use in RFCs to Indicate Requirement Levels</title>
            <author fullname="S. Bradner" initials="S." surname="Bradner">
              <organization/>
            </author>
            <date month="March" year="1997"/>
            <abstract>
              <t>In many standards track documents several words are used to signify the requirements in the specification.  These words are often capitalized. This document defines these words as they should be interpreted in IETF documents.  This document specifies an Internet Best Current Practices for the Internet Community, and requests discussion and suggestions for improvements.</t>
            </abstract>
          </front>
          <seriesInfo name="BCP" value="14"/>
          <seriesInfo name="RFC" value="2119"/>
          <seriesInfo name="DOI" value="10.17487/RFC2119"/>
        </reference>
        <reference anchor="RFC8174" target="https://www.rfc-editor.org/info/rfc8174">
          <front>
            <title>Ambiguity of Uppercase vs Lowercase in RFC 2119 Key Words</title>
            <author fullname="B. Leiba" initials="B." surname="Leiba">
              <organization/>
            </author>
            <date month="May" year="2017"/>
            <abstract>
              <t>RFC 2119 specifies common key words that may be used in protocol  specifications.  This document aims to reduce the ambiguity by clarifying that only UPPERCASE usage of the key words have the  defined special meanings.</t>
            </abstract>
          </front>
          <seriesInfo name="BCP" value="14"/>
          <seriesInfo name="RFC" value="8174"/>
          <seriesInfo name="DOI" value="10.17487/RFC8174"/>
        </reference>
        <reference anchor="RFC6176" target="https://www.rfc-editor.org/info/rfc6176">
          <front>
            <title>Prohibiting Secure Sockets Layer (SSL) Version 2.0</title>
            <author fullname="S. Turner" initials="S." surname="Turner">
              <organization/>
            </author>
            <author fullname="T. Polk" initials="T." surname="Polk">
              <organization/>
            </author>
            <date month="March" year="2011"/>
            <abstract>
              <t>This document requires that when Transport Layer Security (TLS) clients and servers establish connections, they never negotiate the use of  Secure Sockets Layer (SSL) version 2.0.  This document updates the  backward compatibility sections found in the Transport Layer Security (TLS). [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="6176"/>
          <seriesInfo name="DOI" value="10.17487/RFC6176"/>
        </reference>
        <reference anchor="RFC5746" target="https://www.rfc-editor.org/info/rfc5746">
          <front>
            <title>Transport Layer Security (TLS) Renegotiation Indication Extension</title>
            <author fullname="E. Rescorla" initials="E." surname="Rescorla">
              <organization/>
            </author>
            <author fullname="M. Ray" initials="M." surname="Ray">
              <organization/>
            </author>
            <author fullname="S. Dispensa" initials="S." surname="Dispensa">
              <organization/>
            </author>
            <author fullname="N. Oskov" initials="N." surname="Oskov">
              <organization/>
            </author>
            <date month="February" year="2010"/>
            <abstract>
              <t>Secure Socket Layer (SSL) and Transport Layer Security (TLS) renegotiation are vulnerable to an attack in which the attacker forms a TLS connection with the target server, injects content of his choice, and then splices in a new TLS connection from a client.  The server treats the client's initial TLS handshake as a renegotiation and thus believes that the initial data transmitted by the attacker is from the same entity as the subsequent client data.  This specification defines a TLS extension to cryptographically tie renegotiations to the TLS connections they are being performed over, thus preventing this attack.  [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="5746"/>
          <seriesInfo name="DOI" value="10.17487/RFC5746"/>
        </reference>
        <reference anchor="RFC7627" target="https://www.rfc-editor.org/info/rfc7627">
          <front>
            <title>Transport Layer Security (TLS) Session Hash and Extended Master Secret Extension</title>
            <author fullname="K. Bhargavan" initials="K." role="editor" surname="Bhargavan">
              <organization/>
            </author>
            <author fullname="A. Delignat-Lavaud" initials="A." surname="Delignat-Lavaud">
              <organization/>
            </author>
            <author fullname="A. Pironti" initials="A." surname="Pironti">
              <organization/>
            </author>
            <author fullname="A. Langley" initials="A." surname="Langley">
              <organization/>
            </author>
            <author fullname="M. Ray" initials="M." surname="Ray">
              <organization/>
            </author>
            <date month="September" year="2015"/>
            <abstract>
              <t>The Transport Layer Security (TLS) master secret is not cryptographically bound to important session parameters such as the server certificate.  Consequently, it is possible for an active attacker to set up two sessions, one with a client and another with a server, such that the master secrets on the two sessions are the same.  Thereafter, any mechanism that relies on the master secret for authentication, including session resumption, becomes vulnerable to a man-in-the-middle attack, where the attacker can simply forward messages back and forth between the client and server.  This specification defines a TLS extension that contextually binds the master secret to a log of the full handshake that computes it, thus preventing such attacks.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="7627"/>
          <seriesInfo name="DOI" value="10.17487/RFC7627"/>
        </reference>
        <reference anchor="RFC7301" target="https://www.rfc-editor.org/info/rfc7301">
          <front>
            <title>Transport Layer Security (TLS) Application-Layer Protocol Negotiation Extension</title>
            <author fullname="S. Friedl" initials="S." surname="Friedl">
              <organization/>
            </author>
            <author fullname="A. Popov" initials="A." surname="Popov">
              <organization/>
            </author>
            <author fullname="A. Langley" initials="A." surname="Langley">
              <organization/>
            </author>
            <author fullname="E. Stephan" initials="E." surname="Stephan">
              <organization/>
            </author>
            <date month="July" year="2014"/>
            <abstract>
              <t>This document describes a Transport Layer Security (TLS) extension for application-layer protocol negotiation within the TLS handshake. For instances in which multiple application protocols are supported on the same TCP or UDP port, this extension allows the application layer to negotiate which protocol will be used within the TLS connection.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="7301"/>
          <seriesInfo name="DOI" value="10.17487/RFC7301"/>
        </reference>
        <reference anchor="RFC3766" target="https://www.rfc-editor.org/info/rfc3766">
          <front>
            <title>Determining Strengths For Public Keys Used For Exchanging Symmetric Keys</title>
            <author fullname="H. Orman" initials="H." surname="Orman">
              <organization/>
            </author>
            <author fullname="P. Hoffman" initials="P." surname="Hoffman">
              <organization/>
            </author>
            <date month="April" year="2004"/>
            <abstract>
              <t>Implementors of systems that use public key cryptography to exchange symmetric keys need to make the public keys resistant to some predetermined level of attack.  That level of attack resistance is the strength of the system, and the symmetric keys that are exchanged must be at least as strong as the system strength requirements.  The three quantities, system strength, symmetric key strength, and public key strength, must be consistently matched for any network protocol usage.  While it is fairly easy to express the system strength requirements in terms of a symmetric key length and to choose a cipher that has a key length equal to or exceeding that requirement, it is harder to choose a public key that has a cryptographic strength meeting a symmetric key strength requirement.  This document explains how to determine the length of an asymmetric key as a function of a symmetric key strength requirement.  Some rules of thumb for estimating equivalent resistance to large-scale attacks on various algorithms are given.  The document also addresses how changing the sizes of the underlying large integers (moduli, group sizes, exponents, and so on) changes the time to use the algorithms for key exchange.  This document specifies an Internet Best Current Practices for the Internet Community, and requests discussion and suggestions for improvements.</t>
            </abstract>
          </front>
          <seriesInfo name="BCP" value="86"/>
          <seriesInfo name="RFC" value="3766"/>
          <seriesInfo name="DOI" value="10.17487/RFC3766"/>
        </reference>
        <reference anchor="RFC6979" target="https://www.rfc-editor.org/info/rfc6979">
          <front>
            <title>Deterministic Usage of the Digital Signature Algorithm (DSA) and Elliptic Curve Digital Signature Algorithm (ECDSA)</title>
            <author fullname="T. Pornin" initials="T." surname="Pornin">
              <organization/>
            </author>
            <date month="August" year="2013"/>
            <abstract>
              <t>This document defines a deterministic digital signature generation procedure.  Such signatures are compatible with standard Digital Signature Algorithm (DSA) and Elliptic Curve Digital Signature Algorithm (ECDSA) digital signatures and can be processed with unmodified verifiers, which need not be aware of the procedure described therein.  Deterministic signatures retain the cryptographic security features associated with digital signatures but can be more easily implemented in various environments, since they do not need access to a source of high-quality randomness.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="6979"/>
          <seriesInfo name="DOI" value="10.17487/RFC6979"/>
        </reference>
        <reference anchor="RFC8422" target="https://www.rfc-editor.org/info/rfc8422">
          <front>
            <title>Elliptic Curve Cryptography (ECC) Cipher Suites for Transport Layer Security (TLS) Versions 1.2 and Earlier</title>
            <author fullname="Y. Nir" initials="Y." surname="Nir">
              <organization/>
            </author>
            <author fullname="S. Josefsson" initials="S." surname="Josefsson">
              <organization/>
            </author>
            <author fullname="M. Pegourie-Gonnard" initials="M." surname="Pegourie-Gonnard">
              <organization/>
            </author>
            <date month="August" year="2018"/>
            <abstract>
              <t>This document describes key exchange algorithms based on Elliptic Curve Cryptography (ECC) for the Transport Layer Security (TLS) protocol.  In particular, it specifies the use of Ephemeral Elliptic Curve Diffie-Hellman (ECDHE) key agreement in a TLS handshake and the use of the Elliptic Curve Digital Signature Algorithm (ECDSA) and Edwards-curve Digital Signature Algorithm (EdDSA) as authentication mechanisms.</t>
              <t>This document obsoletes RFC 4492.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8422"/>
          <seriesInfo name="DOI" value="10.17487/RFC8422"/>
        </reference>
        <reference anchor="RFC7748" target="https://www.rfc-editor.org/info/rfc7748">
          <front>
            <title>Elliptic Curves for Security</title>
            <author fullname="A. Langley" initials="A." surname="Langley">
              <organization/>
            </author>
            <author fullname="M. Hamburg" initials="M." surname="Hamburg">
              <organization/>
            </author>
            <author fullname="S. Turner" initials="S." surname="Turner">
              <organization/>
            </author>
            <date month="January" year="2016"/>
            <abstract>
              <t>This memo specifies two elliptic curves over prime fields that offer a high level of practical security in cryptographic applications, including Transport Layer Security (TLS).  These curves are intended to operate at the ~128-bit and ~224-bit security level, respectively, and are generated deterministically based on a list of required properties.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="7748"/>
          <seriesInfo name="DOI" value="10.17487/RFC7748"/>
        </reference>
        <reference anchor="RFC9155" target="https://www.rfc-editor.org/info/rfc9155">
          <front>
            <title>Deprecating MD5 and SHA-1 Signature Hashes in TLS 1.2 and DTLS 1.2</title>
            <author fullname="L. Velvindron" initials="L." surname="Velvindron">
              <organization/>
            </author>
            <author fullname="K. Moriarty" initials="K." surname="Moriarty">
              <organization/>
            </author>
            <author fullname="A. Ghedini" initials="A." surname="Ghedini">
              <organization/>
            </author>
            <date month="December" year="2021"/>
            <abstract>
              <t>The MD5 and SHA-1 hashing algorithms are increasingly vulnerable to attack, and this document deprecates their use in TLS 1.2 and DTLS 1.2 digital signatures. However, this document does not deprecate SHA-1 with Hashed Message Authentication Code (HMAC), as used in record protection. This document updates RFC 5246.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="9155"/>
          <seriesInfo name="DOI" value="10.17487/RFC9155"/>
        </reference>
        <reference anchor="RFC6125" target="https://www.rfc-editor.org/info/rfc6125">
          <front>
            <title>Representation and Verification of Domain-Based Application Service Identity within Internet Public Key Infrastructure Using X.509 (PKIX) Certificates in the Context of Transport Layer Security (TLS)</title>
            <author fullname="P. Saint-Andre" initials="P." surname="Saint-Andre">
              <organization/>
            </author>
            <author fullname="J. Hodges" initials="J." surname="Hodges">
              <organization/>
            </author>
            <date month="March" year="2011"/>
            <abstract>
              <t>Many application technologies enable secure communication between two entities by means of Internet Public Key Infrastructure Using X.509 (PKIX) certificates in the context of Transport Layer Security (TLS). This document specifies procedures for representing and verifying the identity of application services in such interactions.   [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="6125"/>
          <seriesInfo name="DOI" value="10.17487/RFC6125"/>
        </reference>
        <reference anchor="RFC5288" target="https://www.rfc-editor.org/info/rfc5288">
          <front>
            <title>AES Galois Counter Mode (GCM) Cipher Suites for TLS</title>
            <author fullname="J. Salowey" initials="J." surname="Salowey">
              <organization/>
            </author>
            <author fullname="A. Choudhury" initials="A." surname="Choudhury">
              <organization/>
            </author>
            <author fullname="D. McGrew" initials="D." surname="McGrew">
              <organization/>
            </author>
            <date month="August" year="2008"/>
            <abstract>
              <t>This memo describes the use of the Advanced Encryption Standard (AES) in Galois/Counter Mode (GCM) as a Transport Layer Security (TLS) authenticated encryption operation.  GCM provides both confidentiality and data origin authentication, can be efficiently implemented in hardware for speeds of 10 gigabits per second and above, and is also well-suited to software implementations.  This memo defines TLS cipher suites that use AES-GCM with RSA, DSA, and Diffie-Hellman-based key exchange mechanisms.  [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="5288"/>
          <seriesInfo name="DOI" value="10.17487/RFC5288"/>
        </reference>
        <reference anchor="RFC6066" target="https://www.rfc-editor.org/info/rfc6066">
          <front>
            <title>Transport Layer Security (TLS) Extensions: Extension Definitions</title>
            <author fullname="D. Eastlake 3rd" initials="D." surname="Eastlake 3rd">
              <organization/>
            </author>
            <date month="January" year="2011"/>
            <abstract>
              <t>This document provides specifications for existing TLS extensions.  It is a companion document for RFC 5246, "The Transport Layer Security (TLS) Protocol Version 1.2".  The extensions specified are server_name, max_fragment_length, client_certificate_url, trusted_ca_keys, truncated_hmac, and status_request.  [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="6066"/>
          <seriesInfo name="DOI" value="10.17487/RFC6066"/>
        </reference>
      </references>
      <references>
        <name>Informative References</name>
        <reference anchor="TWIRL" target="http://cs.tau.ac.il/~tromer/papers/twirl.pdf">
          <front>
            <title>Factoring Large Numbers with the TWIRL Device</title>
            <author initials="A." surname="Shamir" fullname="Adi Shamir">
              <organization/>
            </author>
            <author initials="E." surname="Tromer" fullname="Eran Tromer">
              <organization/>
            </author>
            <date year="2003"/>
          </front>
          <seriesInfo name="proc. Crypto 2003, LNCS 2729, 1-26, Springer-Verlag" value=""/>
        </reference>
        <reference anchor="Chung18">
          <front>
            <title>Is the Web Ready for OCSP Must-Staple?</title>
            <author fullname="Taejoong Chung" initials="T." surname="Chung">
              <organization/>
            </author>
            <author fullname="Jay Lok" initials="J." surname="Lok">
              <organization/>
            </author>
            <author fullname="Balakrishnan Chandrasekaran" initials="B." surname="Chandrasekaran">
              <organization/>
            </author>
            <author fullname="David Choffnes" initials="D." surname="Choffnes">
              <organization/>
            </author>
            <author fullname="Dave Levin" initials="D." surname="Levin">
              <organization/>
            </author>
            <author fullname="Bruce M. Maggs" initials="B." surname="Maggs">
              <organization/>
            </author>
            <author fullname="Alan Mislove" initials="A." surname="Mislove">
              <organization/>
            </author>
            <author fullname="John Rula" initials="J." surname="Rula">
              <organization/>
            </author>
            <author fullname="Nick Sullivan" initials="N." surname="Sullivan">
              <organization/>
            </author>
            <author fullname="Christo Wilson" initials="C." surname="Wilson">
              <organization/>
            </author>
            <date month="October" year="2018"/>
          </front>
          <seriesInfo name="Proceedings of the Internet Measurement Conference" value="2018"/>
          <seriesInfo name="DOI" value="10.1145/3278532.3278543"/>
        </reference>
        <reference anchor="CRLite">
          <front>
            <title>CRLite: A Scalable System for Pushing All TLS Revocations to All Browsers</title>
            <author fullname="James Larisch" initials="J." surname="Larisch">
              <organization/>
            </author>
            <author fullname="David Choffnes" initials="D." surname="Choffnes">
              <organization/>
            </author>
            <author fullname="Dave Levin" initials="D." surname="Levin">
              <organization/>
            </author>
            <author fullname="Bruce M. Maggs" initials="B." surname="Maggs">
              <organization/>
            </author>
            <author fullname="Alan Mislove" initials="A." surname="Mislove">
              <organization/>
            </author>
            <author fullname="Christo Wilson" initials="C." surname="Wilson">
              <organization/>
            </author>
            <date month="May" year="2017"/>
          </front>
          <seriesInfo name="2017 IEEE Symposium on Security and Privacy" value="(SP)"/>
          <seriesInfo name="DOI" value="10.1109/sp.2017.17"/>
        </reference>
        <reference anchor="LetsRevoke">
          <front>
            <title>Let's Revoke: Scalable Global Certificate Revocation</title>
            <author fullname="Trevor Smith" initials="T." surname="Smith">
              <organization/>
            </author>
            <author fullname="Luke Dickinson" initials="L." surname="Dickinson">
              <organization/>
            </author>
            <author fullname="Kent Seamons" initials="K." surname="Seamons">
              <organization/>
            </author>
            <date year="2020"/>
          </front>
          <seriesInfo name="Proceedings 2020 Network and Distributed System Security" value="Symposium"/>
          <seriesInfo name="DOI" value="10.14722/ndss.2020.24084"/>
        </reference>
        <reference anchor="DegabrieleP07">
          <front>
            <title>Attacking the IPsec Standards in Encryption-only Configurations</title>
            <author fullname="Jean Paul Degabriele" initials="J." surname="Degabriele">
              <organization/>
            </author>
            <author fullname="Kenneth G. Paterson" initials="K." surname="Paterson">
              <organization/>
            </author>
            <date month="May" year="2007"/>
          </front>
          <seriesInfo name="2007 IEEE Symposium on Security and Privacy (SP" value="'07)"/>
          <seriesInfo name="DOI" value="10.1109/sp.2007.8"/>
        </reference>
        <reference anchor="triple-handshake">
          <front>
            <title>Triple Handshakes and Cookie Cutters: Breaking and Fixing Authentication over TLS</title>
            <author fullname="Karthikeyan Bhargavan" initials="K." surname="Bhargavan">
              <organization/>
            </author>
            <author fullname="Antoine Delignat Lavaud" initials="A." surname="Lavaud">
              <organization/>
            </author>
            <author fullname="Cedric Fournet" initials="C." surname="Fournet">
              <organization/>
            </author>
            <author fullname="Alfredo Pironti" initials="A." surname="Pironti">
              <organization/>
            </author>
            <author fullname="Pierre Yves Strub" initials="P." surname="Strub">
              <organization/>
            </author>
            <date month="May" year="2014"/>
          </front>
          <seriesInfo name="2014 IEEE Symposium on Security and" value="Privacy"/>
          <seriesInfo name="DOI" value="10.1109/sp.2014.14"/>
        </reference>
        <reference anchor="Soghoian2011">
          <front>
            <title>Certified Lies: Detecting and Defeating Government Interception Attacks Against SSL</title>
            <author fullname="Christopher Soghoian" initials="C." surname="Soghoian">
              <organization/>
            </author>
            <author fullname="Sid Stamm" initials="S." surname="Stamm">
              <organization/>
            </author>
            <date year="2010"/>
          </front>
          <seriesInfo name="SSRN Electronic" value="Journal"/>
          <seriesInfo name="DOI" value="10.2139/ssrn.1591033"/>
        </reference>
        <reference anchor="Logjam">
          <front>
            <title>Imperfect Forward Secrecy: How Diffie-Hellman Fails in Practice</title>
            <author fullname="David Adrian" initials="D." surname="Adrian">
              <organization/>
            </author>
            <author fullname="Karthikeyan Bhargavan" initials="K." surname="Bhargavan">
              <organization/>
            </author>
            <author fullname="Zakir Durumeric" initials="Z." surname="Durumeric">
              <organization/>
            </author>
            <author fullname="Pierrick Gaudry" initials="P." surname="Gaudry">
              <organization/>
            </author>
            <author fullname="Matthew Green" initials="M." surname="Green">
              <organization/>
            </author>
            <author fullname="J. Alex Halderman" initials="J." surname="Halderman">
              <organization/>
            </author>
            <author fullname="Nadia Heninger" initials="N." surname="Heninger">
              <organization/>
            </author>
            <author fullname="Drew Springall" initials="D." surname="Springall">
              <organization/>
            </author>
            <author fullname="Emmanuel Thomé" initials="E." surname="Thomé">
              <organization/>
            </author>
            <author fullname="Luke Valenta" initials="L." surname="Valenta">
              <organization/>
            </author>
            <author fullname="Benjamin VanderSloot" initials="B." surname="VanderSloot">
              <organization/>
            </author>
            <author fullname="Eric Wustrow" initials="E." surname="Wustrow">
              <organization/>
            </author>
            <author fullname="Santiago Zanella-Béguelin" initials="S." surname="Zanella-Béguelin">
              <organization/>
            </author>
            <author fullname="Paul Zimmermann" initials="P." surname="Zimmermann">
              <organization/>
            </author>
            <date month="October" year="2015"/>
          </front>
          <seriesInfo name="Proceedings of the 22nd ACM SIGSAC Conference on Computer and Communications" value="Security"/>
          <seriesInfo name="DOI" value="10.1145/2810103.2813707"/>
        </reference>
        <reference anchor="POODLE" target="https://www.us-cert.gov/ncas/alerts/TA14-290A">
          <front>
            <title>SSL 3.0 Protocol Vulnerability and POODLE Attack</title>
            <author>
              <organization>US-CERT</organization>
            </author>
            <date year="2014" month="October"/>
          </front>
        </reference>
        <reference anchor="CAB-Baseline" target="https://cabforum.org/documents/">
          <front>
            <title>Baseline Requirements for the Issuance and Management of Publicly-Trusted Certificates Version 1.1.6</title>
            <author>
              <organization>CA/Browser Forum</organization>
            </author>
            <date year="2013"/>
          </front>
        </reference>
        <reference anchor="Heninger2012">
          <front>
            <title>Mining Your Ps and Qs: Detection of Widespread Weak Keys in Network Devices</title>
            <author initials="N." surname="Heninger" fullname="Nadia Heninger">
              <organization/>
            </author>
            <author initials="Z." surname="Durumeric" fullname="Zakir Durumeric">
              <organization/>
            </author>
            <author initials="E." surname="Wustrow" fullname="Eric Wustrow">
              <organization/>
            </author>
            <author initials="J. A." surname="Halderman" fullname="J. Alex Halderman">
              <organization/>
            </author>
            <date year="2012"/>
          </front>
          <seriesInfo name="Usenix Security Symposium" value="2012"/>
        </reference>
        <reference anchor="Sy2018">
          <front>
            <title>Tracking Users across the Web via TLS Session Resumption</title>
            <author fullname="Erik Sy" initials="E." surname="Sy">
              <organization/>
            </author>
            <author fullname="Christian Burkert" initials="C." surname="Burkert">
              <organization/>
            </author>
            <author fullname="Hannes Federrath" initials="H." surname="Federrath">
              <organization/>
            </author>
            <author fullname="Mathias Fischer" initials="M." surname="Fischer">
              <organization/>
            </author>
            <date month="December" year="2018"/>
          </front>
          <seriesInfo name="Proceedings of the 34th Annual Computer Security Applications" value="Conference"/>
          <seriesInfo name="DOI" value="10.1145/3274694.3274708"/>
        </reference>
        <reference anchor="DANE-SMTP" target="https://www.rfc-editor.org/info/rfc7672">
          <front>
            <title>SMTP Security via Opportunistic DNS-Based Authentication of Named Entities (DANE) Transport Layer Security (TLS)</title>
            <author fullname="V. Dukhovni" initials="V." surname="Dukhovni">
              <organization/>
            </author>
            <author fullname="W. Hardaker" initials="W." surname="Hardaker">
              <organization/>
            </author>
            <date month="October" year="2015"/>
            <abstract>
              <t>This memo describes a downgrade-resistant protocol for SMTP transport security between Message Transfer Agents (MTAs), based on the DNS-Based Authentication of Named Entities (DANE) TLSA DNS record. Adoption of this protocol enables an incremental transition of the Internet email backbone to one using encrypted and authenticated Transport Layer Security (TLS).</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="7672"/>
          <seriesInfo name="DOI" value="10.17487/RFC7672"/>
        </reference>
        <reference anchor="PatersonRS11">
          <front>
            <title>Tag Size Does Matter: Attacks and Proofs for the TLS Record Protocol</title>
            <author fullname="Kenneth G. Paterson" initials="K." surname="Paterson">
              <organization/>
            </author>
            <author fullname="Thomas Ristenpart" initials="T." surname="Ristenpart">
              <organization/>
            </author>
            <author fullname="Thomas Shrimpton" initials="T." surname="Shrimpton">
              <organization/>
            </author>
            <date year="2011"/>
          </front>
          <seriesInfo name="Lecture Notes in Computer Science" value="pp. 372-389"/>
          <seriesInfo name="DOI" value="10.1007/978-3-642-25385-0_20"/>
        </reference>
        <reference anchor="DANE-SRV" target="https://www.rfc-editor.org/info/rfc7673">
          <front>
            <title>Using DNS-Based Authentication of Named Entities (DANE) TLSA Records with SRV Records</title>
            <author fullname="T. Finch" initials="T." surname="Finch">
              <organization/>
            </author>
            <author fullname="M. Miller" initials="M." surname="Miller">
              <organization/>
            </author>
            <author fullname="P. Saint-Andre" initials="P." surname="Saint-Andre">
              <organization/>
            </author>
            <date month="October" year="2015"/>
            <abstract>
              <t>The DNS-Based Authentication of Named Entities (DANE) specification (RFC 6698) describes how to use TLSA resource records secured by DNSSEC (RFC 4033) to associate a server's connection endpoint with its Transport Layer Security (TLS) certificate (thus enabling administrators of domain names to specify the keys used in that domain's TLS servers).  However, application protocols that use SRV records (RFC 2782) to indirectly name the target server connection endpoints for a service domain name cannot apply the rules from RFC 6698.  Therefore, this document provides guidelines that enable such protocols to locate and use TLSA records.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="7673"/>
          <seriesInfo name="DOI" value="10.17487/RFC7673"/>
        </reference>
        <reference anchor="HTTP-SEMA" target="https://www.rfc-editor.org/info/rfc9110">
          <front>
            <title>HTTP Semantics</title>
            <author fullname="R. Fielding" initials="R." role="editor" surname="Fielding">
              <organization/>
            </author>
            <author fullname="M. Nottingham" initials="M." role="editor" surname="Nottingham">
              <organization/>
            </author>
            <author fullname="J. Reschke" initials="J." role="editor" surname="Reschke">
              <organization/>
            </author>
            <date month="June" year="2022"/>
            <abstract>
              <t>The Hypertext Transfer Protocol (HTTP) is a stateless application-level protocol for distributed, collaborative, hypertext information systems. This document describes the overall architecture of HTTP, establishes common terminology, and defines aspects of the protocol that are shared by all versions. In this definition are core protocol elements, extensibility mechanisms, and the "http" and "https" Uniform Resource Identifier (URI) schemes. </t>
              <t>This document updates RFC 3864 and obsoletes RFCs 2818, 7231, 7232, 7233, 7235, 7538, 7615, 7694, and portions of 7230.</t>
            </abstract>
          </front>
          <seriesInfo name="STD" value="97"/>
          <seriesInfo name="RFC" value="9110"/>
          <seriesInfo name="DOI" value="10.17487/RFC9110"/>
        </reference>
        <reference anchor="HTTP1.1" target="https://www.rfc-editor.org/info/rfc9112">
          <front>
            <title>HTTP/1.1</title>
            <author fullname="R. Fielding" initials="R." role="editor" surname="Fielding">
              <organization/>
            </author>
            <author fullname="M. Nottingham" initials="M." role="editor" surname="Nottingham">
              <organization/>
            </author>
            <author fullname="J. Reschke" initials="J." role="editor" surname="Reschke">
              <organization/>
            </author>
            <date month="June" year="2022"/>
            <abstract>
              <t>The Hypertext Transfer Protocol (HTTP) is a stateless application-level protocol for distributed, collaborative, hypertext information systems. This document specifies the HTTP/1.1 message syntax, message parsing, connection management, and related security concerns. </t>
              <t>This document obsoletes portions of RFC 7230.</t>
            </abstract>
          </front>
          <seriesInfo name="STD" value="99"/>
          <seriesInfo name="RFC" value="9112"/>
          <seriesInfo name="DOI" value="10.17487/RFC9112"/>
        </reference>
        <reference anchor="HTTP2" target="https://www.rfc-editor.org/info/rfc9113">
          <front>
            <title>HTTP/2</title>
            <author fullname="M. Thomson" initials="M." role="editor" surname="Thomson">
              <organization/>
            </author>
            <author fullname="C. Benfield" initials="C." role="editor" surname="Benfield">
              <organization/>
            </author>
            <date month="June" year="2022"/>
            <abstract>
              <t>This specification describes an optimized expression of the semantics of the Hypertext Transfer Protocol (HTTP), referred to as HTTP version 2 (HTTP/2). HTTP/2 enables a more efficient use of network resources and a reduced latency by introducing field compression and allowing multiple concurrent exchanges on the same connection.</t>
              <t>This document obsoletes RFCs 7540 and 8740.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="9113"/>
          <seriesInfo name="DOI" value="10.17487/RFC9113"/>
        </reference>
        <reference anchor="Kleinjung2010">
          <front>
            <title>Factorization of a 768-Bit RSA Modulus</title>
            <author fullname="Thorsten Kleinjung" initials="T." surname="Kleinjung">
              <organization/>
            </author>
            <author fullname="Kazumaro Aoki" initials="K." surname="Aoki">
              <organization/>
            </author>
            <author fullname="Jens Franke" initials="J." surname="Franke">
              <organization/>
            </author>
            <author fullname="Arjen K. Lenstra" initials="A." surname="Lenstra">
              <organization/>
            </author>
            <author fullname="Emmanuel Thomé" initials="E." surname="Thomé">
              <organization/>
            </author>
            <author fullname="Joppe W. Bos" initials="J." surname="Bos">
              <organization/>
            </author>
            <author fullname="Pierrick Gaudry" initials="P." surname="Gaudry">
              <organization/>
            </author>
            <author fullname="Alexander Kruppa" initials="A." surname="Kruppa">
              <organization/>
            </author>
            <author fullname="Peter L. Montgomery" initials="P." surname="Montgomery">
              <organization/>
            </author>
            <author fullname="Dag Arne Osvik" initials="D." surname="Osvik">
              <organization/>
            </author>
            <author fullname="Herman te Riele" initials="H." surname="te Riele">
              <organization/>
            </author>
            <author fullname="Andrey Timofeev" initials="A." surname="Timofeev">
              <organization/>
            </author>
            <author fullname="Paul Zimmermann" initials="P." surname="Zimmermann">
              <organization/>
            </author>
            <date year="2010"/>
          </front>
          <seriesInfo name="Advances in Cryptology - CRYPTO 2010" value="pp. 333-350"/>
          <seriesInfo name="DOI" value="10.1007/978-3-642-14623-7_18"/>
        </reference>
        <reference anchor="IANA_TLS" target="https://www.iana.org/assignments/tls-parameters">
          <front>
            <title>Transport Layer Security (TLS) Parameters</title>
            <author>
              <organization>IANA</organization>
            </author>
            <date/>
          </front>
        </reference>
        <reference anchor="Multiple-Encryption">
          <front>
            <title>On the security of multiple encryption</title>
            <author fullname="Ralph C. Merkle" initials="R." surname="Merkle">
              <organization/>
            </author>
            <author fullname="Martin E. Hellman" initials="M." surname="Hellman">
              <organization/>
            </author>
            <date month="July" year="1981"/>
          </front>
          <seriesInfo name="Communications of the ACM" value="Vol. 24, pp. 465-467"/>
          <seriesInfo name="DOI" value="10.1145/358699.358718"/>
        </reference>
        <reference anchor="NIST.SP.800-56A">
          <front>
            <title>Recommendation for pair-wise key-establishment schemes using discrete logarithm cryptography</title>
            <author fullname="Elaine Barker" initials="E." surname="Barker">
              <organization/>
            </author>
            <author fullname="Lily Chen" initials="L." surname="Chen">
              <organization/>
            </author>
            <author fullname="Allen Roginsky" initials="A." surname="Roginsky">
              <organization/>
            </author>
            <author fullname="Apostol Vassilev" initials="A." surname="Vassilev">
              <organization/>
            </author>
            <author fullname="Richard Davis" initials="R." surname="Davis">
              <organization/>
            </author>
            <date month="April" year="2018"/>
          </front>
          <seriesInfo name="National Institute of Standards and Technology" value="report"/>
          <seriesInfo name="DOI" value="10.6028/nist.sp.800-56ar3"/>
        </reference>
        <reference anchor="Springall16">
          <front>
            <title>Measuring the Security Harm of TLS Crypto Shortcuts</title>
            <author fullname="Drew Springall" initials="D." surname="Springall">
              <organization/>
            </author>
            <author fullname="Zakir Durumeric" initials="Z." surname="Durumeric">
              <organization/>
            </author>
            <author fullname="J. Alex Halderman" initials="J." surname="Halderman">
              <organization/>
            </author>
            <date month="November" year="2016"/>
          </front>
          <seriesInfo name="Proceedings of the 2016 Internet Measurement" value="Conference"/>
          <seriesInfo name="DOI" value="10.1145/2987443.2987480"/>
        </reference>
        <reference anchor="DEP-SSLv3" target="https://www.rfc-editor.org/info/rfc7568">
          <front>
            <title>Deprecating Secure Sockets Layer Version 3.0</title>
            <author fullname="R. Barnes" initials="R." surname="Barnes">
              <organization/>
            </author>
            <author fullname="M. Thomson" initials="M." surname="Thomson">
              <organization/>
            </author>
            <author fullname="A. Pironti" initials="A." surname="Pironti">
              <organization/>
            </author>
            <author fullname="A. Langley" initials="A." surname="Langley">
              <organization/>
            </author>
            <date month="June" year="2015"/>
            <abstract>
              <t>The Secure Sockets Layer version 3.0 (SSLv3), as specified in RFC 6101, is not sufficiently secure.  This document requires that SSLv3 not be used.  The replacement versions, in particular, Transport Layer Security (TLS) 1.2 (RFC 5246), are considerably more secure and capable protocols.</t>
              <t>This document updates the backward compatibility section of RFC 5246 and its predecessors to prohibit fallback to SSLv3.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="7568"/>
          <seriesInfo name="DOI" value="10.17487/RFC7568"/>
        </reference>
        <reference anchor="Boeck2016" target="https://eprint.iacr.org/2016/475.pdf">
          <front>
            <title>Nonce-Disrespecting Adversaries: Practical Forgery Attacks on GCM in TLS</title>
            <author initials="H." surname="Böck" fullname="Hanno Böck">
              <organization/>
            </author>
            <author initials="A." surname="Zauner" fullname="Aaron Zauner">
              <organization/>
            </author>
            <author initials="S." surname="Devlin" fullname="Sean Devlin">
              <organization/>
            </author>
            <author initials="J." surname="Somorovsky" fullname="Juraj Somorovsky">
              <organization/>
            </author>
            <author initials="P." surname="Jovanovic" fullname="Philipp Jovanovic">
              <organization/>
            </author>
            <date year="2016" month="May"/>
          </front>
        </reference>
        <reference anchor="Joux2006" target="https://csrc.nist.gov/csrc/media/projects/block-cipher-techniques/documents/bcm/comments/800-38-series-drafts/gcm/joux_comments.pdf">
          <front>
            <title>Authentication Failures in NIST version of GCM</title>
            <author initials="A." surname="Joux" fullname="Antoine Joux">
              <organization/>
            </author>
            <date year="2006"/>
          </front>
        </reference>
        <reference anchor="CVE" target="https://cve.mitre.org">
          <front>
            <title>Common Vulnerabilities and Exposures</title>
            <author>
              <organization>MITRE</organization>
            </author>
            <date/>
          </front>
        </reference>
        <reference anchor="ALPACA" target="https://www.usenix.org/conference/usenixsecurity21/presentation/brinkmann">
          <front>
            <title>ALPACA: Application Layer Protocol Confusion - Analyzing and Mitigating Cracks in TLS Authentication</title>
            <author initials="M." surname="Brinkmann" fullname="Marcus Brinkmann">
              <organization/>
            </author>
            <author initials="C." surname="Dresen" fullname="Christian Dresen">
              <organization/>
            </author>
            <author initials="R." surname="Merget" fullname="Robert Merget">
              <organization/>
            </author>
            <author initials="D." surname="Poddebniak" fullname="Damian Poddebniak">
              <organization/>
            </author>
            <author initials="J." surname="Müller" fullname="Jens Müller">
              <organization/>
            </author>
            <author initials="J." surname="Somorovsky" fullname="Juraj Somorovsky">
              <organization/>
            </author>
            <author initials="J." surname="Schwenk" fullname="Jörg Schwenk">
              <organization/>
            </author>
            <author initials="S." surname="Schinzel" fullname="Sebastian Schinzel">
              <organization/>
            </author>
            <date year="2021"/>
          </front>
          <seriesInfo name="30th USENIX Security Symposium (USENIX Security 21)" value=""/>
        </reference>
        <reference anchor="DROWN" target="https://www.usenix.org/conference/usenixsecurity16/technical-sessions/presentation/aviram">
          <front>
            <title>DROWN: Breaking TLS using SSLv2</title>
            <author initials="N." surname="Aviram" fullname="Nimrod Aviram">
              <organization/>
            </author>
            <author initials="S." surname="Schinzel" fullname="Sebastian Schinzel">
              <organization/>
            </author>
            <author initials="J." surname="Somorovsky" fullname="Juraj Somorovsky">
              <organization/>
            </author>
            <author initials="N." surname="Heninger" fullname="Nadia Heninger">
              <organization/>
            </author>
            <author initials="M." surname="Dankel" fullname="Maik Dankel">
              <organization/>
            </author>
            <author initials="J." surname="Steube" fullname="Jens Steube">
              <organization/>
            </author>
            <author initials="L." surname="Valenta" fullname="Luke Valenta">
              <organization/>
            </author>
            <author initials="D." surname="Adrian" fullname="David Adrian">
              <organization/>
            </author>
            <author initials="J." surname="Halderman" fullname="J. Alex Halderman">
              <organization/>
            </author>
            <author initials="V." surname="Dukhovni" fullname="Viktor Dukhovni">
              <organization/>
            </author>
            <author initials="E." surname="Käsper" fullname="Emilia Käsper">
              <organization/>
            </author>
            <author initials="S." surname="Cohney" fullname="Shaanan Cohney">
              <organization/>
            </author>
            <author initials="S." surname="Engels" fullname="Susanne Engels">
              <organization/>
            </author>
            <author initials="C." surname="Paar" fullname="Christof Paar">
              <organization/>
            </author>
            <author initials="Y." surname="Shavitt" fullname="Yuval Shavitt">
              <organization/>
            </author>
            <date year="2016"/>
          </front>
          <seriesInfo name="25th USENIX Security Symposium (USENIX Security 16)" value=""/>
        </reference>
        <reference anchor="RACCOON" target="https://www.usenix.org/conference/usenixsecurity21/presentation/merget">
          <front>
            <title>Raccoon Attack: Finding and Exploiting Most-Significant-Bit-Oracles in TLS-DH(E)</title>
            <author initials="R." surname="Merget" fullname="Robert Merget">
              <organization/>
            </author>
            <author initials="M." surname="Brinkmann" fullname="Marcus Brinkmann">
              <organization/>
            </author>
            <author initials="N." surname="Aviram" fullname="Nimrod Aviram">
              <organization/>
            </author>
            <author initials="J." surname="Somorovsky" fullname="Juraj Somorovsky">
              <organization/>
            </author>
            <author initials="J." surname="Mittmann" fullname="Johannes Mittmann">
              <organization/>
            </author>
            <author initials="J." surname="Schwenk" fullname="Jörg Schwenk">
              <organization/>
            </author>
            <date year="2021"/>
          </front>
          <seriesInfo name="30th USENIX Security Symposium (USENIX Security 21)" value=""/>
        </reference>
        <reference anchor="Antipa2003">
          <front>
            <title>Validation of Elliptic Curve Public Keys</title>
            <author initials="A." surname="Antipa" fullname="Adrian Antipa">
              <organization/>
            </author>
            <author initials="D. R. L." surname="Brown" fullname="Daniel R. L. Brown">
              <organization/>
            </author>
            <author initials="A." surname="Menezes" fullname="Alfred Menezes">
              <organization/>
            </author>
            <author initials="R." surname="Struik" fullname="Rene Struik">
              <organization/>
            </author>
            <author initials="S. A." surname="Vanstone" fullname="Scott A. Vanstone">
              <organization/>
            </author>
            <date year="2003"/>
          </front>
          <seriesInfo name="Public Key Cryptography - PKC 2003" value=""/>
        </reference>
        <reference anchor="Jager2015">
          <front>
            <title>Practical Invalid Curve Attacks on TLS-ECDH</title>
            <author initials="T." surname="Jager" fullname="Tibor Jager">
              <organization/>
            </author>
            <author initials="J." surname="Schwenk" fullname="Jörg Schwenk">
              <organization/>
            </author>
            <author initials="J." surname="Somorovsky" fullname="Juraj Somorovsky">
              <organization/>
            </author>
            <date year="2015"/>
          </front>
          <seriesInfo name="European Symposium on Research in Computer Security (ESORICS) 2015" value=""/>
        </reference>
        <reference anchor="SAFECURVES" target="https://safecurves.cr.yp.to">
          <front>
            <title>SafeCurves: Choosing Safe Curves for Elliptic-Curve Cryptography</title>
            <author initials="D. J." surname="Bernstein" fullname="Daniel J. Bernstein">
              <organization/>
            </author>
            <author initials="T." surname="Lange" fullname="Tanja Lange">
              <organization/>
            </author>
            <date year="2014" month="December"/>
          </front>
        </reference>
        <reference anchor="Poddebniak2017" target="https://eprint.iacr.org/2017/1014.pdf">
          <front>
            <title>Attacking Deterministic Signature Schemes using Fault Attacks</title>
            <author initials="D." surname="Poddebniak" fullname="Damian Poddebniak">
              <organization/>
            </author>
            <author initials="J." surname="Somorovsky" fullname="Juraj Somorovsky">
              <organization/>
            </author>
            <author initials="S." surname="Schinzel" fullname="Sebastian Schinzel">
              <organization/>
            </author>
            <author initials="M." surname="Lochter" fullname="Manfred Lochter">
              <organization/>
            </author>
            <author initials="P." surname="Rösler" fullname="Paul Rösler">
              <organization/>
            </author>
            <date year="2017"/>
          </front>
        </reference>
        <reference anchor="Kim2014" target="https://users.ece.cmu.edu/~yoonguk/papers/kim-isca14.pdf">
          <front>
            <title>Flipping Bits in Memory Without Accessing Them: An Experimental Study of DRAM Disturbance Errors</title>
            <author initials="Y." surname="Kim" fullname="Yoongu Kim">
              <organization/>
            </author>
            <author initials="R." surname="Daly" fullname="Ross Daly">
              <organization/>
            </author>
            <author initials="J." surname="Kim" fullname="Jeremie Kim">
              <organization/>
            </author>
            <author initials="C." surname="Fallin" fullname="Chris Fallin">
              <organization/>
            </author>
            <author initials="J. H." surname="Lee" fullname="Ji Jye Lee">
              <organization/>
            </author>
            <author initials="D." surname="Lee" fullname="Donghyuk Lee">
              <organization/>
            </author>
            <author initials="C." surname="Wilkerson" fullname="Chris Wilkerson">
              <organization/>
            </author>
            <author initials="K." surname="Lai" fullname="Konrad Lai">
              <organization/>
            </author>
            <author initials="O." surname="Mutlu" fullname="Onur Mutlu">
              <organization/>
            </author>
            <date year="2014"/>
          </front>
        </reference>
        <reference anchor="RFC9051" target="https://www.rfc-editor.org/info/rfc9051">
          <front>
            <title>Internet Message Access Protocol (IMAP) - Version 4rev2</title>
            <author fullname="A. Melnikov" initials="A." role="editor" surname="Melnikov">
              <organization/>
            </author>
            <author fullname="B. Leiba" initials="B." role="editor" surname="Leiba">
              <organization/>
            </author>
            <date month="August" year="2021"/>
            <abstract>
              <t>The Internet Message Access Protocol Version 4rev2 (IMAP4rev2) allows a client to access and manipulate electronic mail messages on a server.  IMAP4rev2 permits manipulation of mailboxes (remote message folders) in a way that is functionally equivalent to local folders.  IMAP4rev2 also provides the capability for an offline client to resynchronize with the server. </t>
              <t>IMAP4rev2 includes operations for creating, deleting, and renaming mailboxes; checking for new messages; removing messages permanently; setting and clearing flags; parsing per RFCs 5322, 2045, and 2231; searching; and selective fetching of message attributes, texts, and portions thereof.  Messages in IMAP4rev2 are accessed by the use of numbers. These numbers are either message sequence numbers or unique identifiers. </t>
              <t>IMAP4rev2 does not specify a means of posting mail; this function is handled by a mail submission protocol such as the one specified in RFC 6409.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="9051"/>
          <seriesInfo name="DOI" value="10.17487/RFC9051"/>
        </reference>
        <referencegroup anchor="STD53" target="https://www.rfc-editor.org/info/std53">
          <!-- reference.RFC.1939.xml -->
<reference anchor="RFC1939" target="https://www.rfc-editor.org/info/rfc1939">
            <front>
              <title>Post Office Protocol - Version 3</title>
              <author fullname="J. Myers" initials="J." surname="Myers">
                <organization/>
              </author>
              <author fullname="M. Rose" initials="M." surname="Rose">
                <organization/>
              </author>
              <date month="May" year="1996"/>
              <abstract>
                <t>The Post Office Protocol - Version 3 (POP3) is intended to permit a workstation to dynamically access a maildrop on a server host in a useful fashion.  [STANDARDS-TRACK]</t>
              </abstract>
            </front>
            <seriesInfo name="STD" value="53"/>
            <seriesInfo name="RFC" value="1939"/>
            <seriesInfo name="DOI" value="10.17487/RFC1939"/>
          </reference>
        </referencegroup>
        <reference anchor="RFC3261" target="https://www.rfc-editor.org/info/rfc3261">
          <front>
            <title>SIP: Session Initiation Protocol</title>
            <author fullname="J. Rosenberg" initials="J." surname="Rosenberg">
              <organization/>
            </author>
            <author fullname="H. Schulzrinne" initials="H." surname="Schulzrinne">
              <organization/>
            </author>
            <author fullname="G. Camarillo" initials="G." surname="Camarillo">
              <organization/>
            </author>
            <author fullname="A. Johnston" initials="A." surname="Johnston">
              <organization/>
            </author>
            <author fullname="J. Peterson" initials="J." surname="Peterson">
              <organization/>
            </author>
            <author fullname="R. Sparks" initials="R." surname="Sparks">
              <organization/>
            </author>
            <author fullname="M. Handley" initials="M." surname="Handley">
              <organization/>
            </author>
            <author fullname="E. Schooler" initials="E." surname="Schooler">
              <organization/>
            </author>
            <date month="June" year="2002"/>
            <abstract>
              <t>This document describes Session Initiation Protocol (SIP), an application-layer control (signaling) protocol for creating, modifying, and terminating sessions with one or more participants.  These sessions include Internet telephone calls, multimedia distribution, and multimedia conferences.  [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="3261"/>
          <seriesInfo name="DOI" value="10.17487/RFC3261"/>
        </reference>
        <reference anchor="RFC5321" target="https://www.rfc-editor.org/info/rfc5321">
          <front>
            <title>Simple Mail Transfer Protocol</title>
            <author fullname="J. Klensin" initials="J." surname="Klensin">
              <organization/>
            </author>
            <date month="October" year="2008"/>
            <abstract>
              <t>This document is a specification of the basic protocol for Internet electronic mail transport.  It consolidates, updates, and clarifies several previous documents, making all or parts of most of them obsolete.  It covers the SMTP extension mechanisms and best practices for the contemporary Internet, but does not provide details about particular extensions.  Although SMTP was designed as a mail transport and delivery protocol, this specification also contains information that is important to its use as a "mail submission" protocol for "split-UA" (User Agent) mail reading systems and mobile environments.  [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="5321"/>
          <seriesInfo name="DOI" value="10.17487/RFC5321"/>
        </reference>
        <reference anchor="RFC6120" target="https://www.rfc-editor.org/info/rfc6120">
          <front>
            <title>Extensible Messaging and Presence Protocol (XMPP): Core</title>
            <author fullname="P. Saint-Andre" initials="P." surname="Saint-Andre">
              <organization/>
            </author>
            <date month="March" year="2011"/>
            <abstract>
              <t>The Extensible Messaging and Presence Protocol (XMPP) is an application profile of the Extensible Markup Language (XML) that enables the near-real-time exchange of structured yet extensible data between any two or more network entities.  This document defines XMPP's core protocol methods: setup and teardown of XML streams, channel encryption, authentication, error handling, and communication primitives for messaging, network availability ("presence"), and request-response interactions.  This document obsoletes RFC 3920.  [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="6120"/>
          <seriesInfo name="DOI" value="10.17487/RFC6120"/>
        </reference>
        <reference anchor="RFC9000" target="https://www.rfc-editor.org/info/rfc9000">
          <front>
            <title>QUIC: A UDP-Based Multiplexed and Secure Transport</title>
            <author fullname="J. Iyengar" initials="J." role="editor" surname="Iyengar">
              <organization/>
            </author>
            <author fullname="M. Thomson" initials="M." role="editor" surname="Thomson">
              <organization/>
            </author>
            <date month="May" year="2021"/>
            <abstract>
              <t>This document defines the core of the QUIC transport protocol.  QUIC provides applications with flow-controlled streams for structured communication, low-latency connection establishment, and network path migration. QUIC includes security measures that ensure confidentiality, integrity, and availability in a range of deployment circumstances.  Accompanying documents describe the integration of TLS for key negotiation, loss detection, and an exemplary congestion control algorithm.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="9000"/>
          <seriesInfo name="DOI" value="10.17487/RFC9000"/>
        </reference>
        <reference anchor="RFC3602" target="https://www.rfc-editor.org/info/rfc3602">
          <front>
            <title>The AES-CBC Cipher Algorithm and Its Use with IPsec</title>
            <author fullname="S. Frankel" initials="S." surname="Frankel">
              <organization/>
            </author>
            <author fullname="R. Glenn" initials="R." surname="Glenn">
              <organization/>
            </author>
            <author fullname="S. Kelly" initials="S." surname="Kelly">
              <organization/>
            </author>
            <date month="September" year="2003"/>
            <abstract>
              <t>This document describes the use of the Advanced Encryption Standard (AES) Cipher Algorithm in Cipher Block Chaining (CBC) Mode, with an explicit Initialization Vector (IV), as a confidentiality mechanism within the context of the IPsec Encapsulating Security Payload (ESP).</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="3602"/>
          <seriesInfo name="DOI" value="10.17487/RFC3602"/>
        </reference>
        <reference anchor="RFC7457" target="https://www.rfc-editor.org/info/rfc7457">
          <front>
            <title>Summarizing Known Attacks on Transport Layer Security (TLS) and Datagram TLS (DTLS)</title>
            <author fullname="Y. Sheffer" initials="Y." surname="Sheffer">
              <organization/>
            </author>
            <author fullname="R. Holz" initials="R." surname="Holz">
              <organization/>
            </author>
            <author fullname="P. Saint-Andre" initials="P." surname="Saint-Andre">
              <organization/>
            </author>
            <date month="February" year="2015"/>
            <abstract>
              <t>Over the last few years, there have been several serious attacks on Transport Layer Security (TLS), including attacks on its most commonly used ciphers and modes of operation.  This document summarizes these attacks, with the goal of motivating generic and protocol-specific recommendations on the usage of TLS and Datagram TLS (DTLS).</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="7457"/>
          <seriesInfo name="DOI" value="10.17487/RFC7457"/>
        </reference>
        <reference anchor="RFC7525" target="https://www.rfc-editor.org/info/rfc7525">
          <front>
            <title>Recommendations for Secure Use of Transport Layer Security (TLS) and Datagram Transport Layer Security (DTLS)</title>
            <author fullname="Y. Sheffer" initials="Y." surname="Sheffer">
              <organization/>
            </author>
            <author fullname="R. Holz" initials="R." surname="Holz">
              <organization/>
            </author>
            <author fullname="P. Saint-Andre" initials="P." surname="Saint-Andre">
              <organization/>
            </author>
            <date month="May" year="2015"/>
            <abstract>
              <t>Transport Layer Security (TLS) and Datagram Transport Layer Security (DTLS) are widely used to protect data exchanged over application protocols such as HTTP, SMTP, IMAP, POP, SIP, and XMPP.  Over the last few years, several serious attacks on TLS have emerged, including attacks on its most commonly used cipher suites and their modes of operation.  This document provides recommendations for improving the security of deployed services that use TLS and DTLS. The recommendations are applicable to the majority of use cases.</t>
            </abstract>
          </front>
          <seriesInfo name="BCP" value="195"/>
          <seriesInfo name="RFC" value="7525"/>
          <seriesInfo name="DOI" value="10.17487/RFC7525"/>
        </reference>
        <reference anchor="RFC4949" target="https://www.rfc-editor.org/info/rfc4949">
          <front>
            <title>Internet Security Glossary, Version 2</title>
            <author fullname="R. Shirey" initials="R." surname="Shirey">
              <organization/>
            </author>
            <date month="August" year="2007"/>
            <abstract>
              <t>This Glossary provides definitions, abbreviations, and explanations of terminology for information system security. The 334 pages of entries offer recommendations to improve the comprehensibility of written material that is generated in the Internet Standards Process (RFC 2026). The recommendations follow the principles that such writing should (a) use the same term or definition whenever the same concept is mentioned; (b) use terms in their plainest, dictionary sense; (c) use terms that are already well-established in open publications; and (d) avoid terms that either favor a particular vendor or favor a particular technology or mechanism over other, competing techniques that already exist or could be developed.  This memo provides information for the Internet community.</t>
            </abstract>
          </front>
          <seriesInfo name="FYI" value="36"/>
          <seriesInfo name="RFC" value="4949"/>
          <seriesInfo name="DOI" value="10.17487/RFC4949"/>
        </reference>
        <reference anchor="RFC6101" target="https://www.rfc-editor.org/info/rfc6101">
          <front>
            <title>The Secure Sockets Layer (SSL) Protocol Version 3.0</title>
            <author fullname="A. Freier" initials="A." surname="Freier">
              <organization/>
            </author>
            <author fullname="P. Karlton" initials="P." surname="Karlton">
              <organization/>
            </author>
            <author fullname="P. Kocher" initials="P." surname="Kocher">
              <organization/>
            </author>
            <date month="August" year="2011"/>
            <abstract>
              <t>This document is published as a historical record of the SSL 3.0 protocol.  The original Abstract follows.</t>
              <t>This document specifies version 3.0 of the Secure Sockets Layer (SSL 3.0) protocol, a security protocol that provides communications privacy over the Internet.  The protocol allows client/server applications to communicate in a way that is designed to prevent eavesdropping, tampering, or message forgery.  This document defines a  Historic Document for the Internet community.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="6101"/>
          <seriesInfo name="DOI" value="10.17487/RFC6101"/>
        </reference>
        <reference anchor="RFC2246" target="https://www.rfc-editor.org/info/rfc2246">
          <front>
            <title>The TLS Protocol Version 1.0</title>
            <author fullname="T. Dierks" initials="T." surname="Dierks">
              <organization/>
            </author>
            <author fullname="C. Allen" initials="C." surname="Allen">
              <organization/>
            </author>
            <date month="January" year="1999"/>
            <abstract>
              <t>This document specifies Version 1.0 of the Transport Layer Security (TLS) protocol. The TLS protocol provides communications privacy over the Internet. The protocol allows client/server applications to communicate in a way that is designed to prevent eavesdropping, tampering, or message forgery.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="2246"/>
          <seriesInfo name="DOI" value="10.17487/RFC2246"/>
        </reference>
        <reference anchor="RFC4346" target="https://www.rfc-editor.org/info/rfc4346">
          <front>
            <title>The Transport Layer Security (TLS) Protocol Version 1.1</title>
            <author fullname="T. Dierks" initials="T." surname="Dierks">
              <organization/>
            </author>
            <author fullname="E. Rescorla" initials="E." surname="Rescorla">
              <organization/>
            </author>
            <date month="April" year="2006"/>
            <abstract>
              <t>This document specifies Version 1.1 of the Transport Layer Security (TLS) protocol.  The TLS protocol provides communications security over the Internet.  The protocol allows client/server applications to communicate in a way that is designed to prevent eavesdropping, tampering, or message forgery.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="4346"/>
          <seriesInfo name="DOI" value="10.17487/RFC4346"/>
        </reference>
        <reference anchor="RFC4347" target="https://www.rfc-editor.org/info/rfc4347">
          <front>
            <title>Datagram Transport Layer Security</title>
            <author fullname="E. Rescorla" initials="E." surname="Rescorla">
              <organization/>
            </author>
            <author fullname="N. Modadugu" initials="N." surname="Modadugu">
              <organization/>
            </author>
            <date month="April" year="2006"/>
            <abstract>
              <t>This document specifies Version 1.0 of the Datagram Transport Layer Security (DTLS) protocol.  The DTLS protocol provides communications privacy for datagram protocols.  The protocol allows client/server applications to communicate in a way that is designed to prevent eavesdropping, tampering, or message forgery.  The DTLS protocol is based on the Transport Layer Security (TLS) protocol and provides equivalent security guarantees.  Datagram semantics of the underlying transport are preserved by the DTLS protocol.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="4347"/>
          <seriesInfo name="DOI" value="10.17487/RFC4347"/>
        </reference>
        <reference anchor="RFC7507" target="https://www.rfc-editor.org/info/rfc7507">
          <front>
            <title>TLS Fallback Signaling Cipher Suite Value (SCSV) for Preventing Protocol Downgrade Attacks</title>
            <author fullname="B. Moeller" initials="B." surname="Moeller">
              <organization/>
            </author>
            <author fullname="A. Langley" initials="A." surname="Langley">
              <organization/>
            </author>
            <date month="April" year="2015"/>
            <abstract>
              <t>This document defines a Signaling Cipher Suite Value (SCSV) that prevents protocol downgrade attacks on the Transport Layer Security (TLS) and Datagram Transport Layer Security (DTLS) protocols.  It updates RFCs 2246, 4346, 4347, 5246, and 6347.  Server update considerations are included.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="7507"/>
          <seriesInfo name="DOI" value="10.17487/RFC7507"/>
        </reference>
        <reference anchor="RFC6797" target="https://www.rfc-editor.org/info/rfc6797">
          <front>
            <title>HTTP Strict Transport Security (HSTS)</title>
            <author fullname="J. Hodges" initials="J." surname="Hodges">
              <organization/>
            </author>
            <author fullname="C. Jackson" initials="C." surname="Jackson">
              <organization/>
            </author>
            <author fullname="A. Barth" initials="A." surname="Barth">
              <organization/>
            </author>
            <date month="November" year="2012"/>
            <abstract>
              <t>This specification defines a mechanism enabling web sites to declare themselves accessible only via secure connections and/or for users to be able to direct their user agent(s) to interact with given sites only over secure connections.  This overall policy is referred to as HTTP Strict Transport Security (HSTS).  The policy is declared by web sites via the Strict-Transport-Security HTTP response header field and/or by other means, such as user agent configuration, for example. [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="6797"/>
          <seriesInfo name="DOI" value="10.17487/RFC6797"/>
        </reference>
        <reference anchor="RFC8461" target="https://www.rfc-editor.org/info/rfc8461">
          <front>
            <title>SMTP MTA Strict Transport Security (MTA-STS)</title>
            <author fullname="D. Margolis" initials="D." surname="Margolis">
              <organization/>
            </author>
            <author fullname="M. Risher" initials="M." surname="Risher">
              <organization/>
            </author>
            <author fullname="B. Ramakrishnan" initials="B." surname="Ramakrishnan">
              <organization/>
            </author>
            <author fullname="A. Brotman" initials="A." surname="Brotman">
              <organization/>
            </author>
            <author fullname="J. Jones" initials="J." surname="Jones">
              <organization/>
            </author>
            <date month="September" year="2018"/>
            <abstract>
              <t>SMTP MTA Strict Transport Security (MTA-STS) is a mechanism enabling mail service providers (SPs) to declare their ability to receive Transport Layer Security (TLS) secure SMTP connections and to specify whether sending SMTP servers should refuse to deliver to MX hosts that do not offer TLS with a trusted server certificate.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8461"/>
          <seriesInfo name="DOI" value="10.17487/RFC8461"/>
        </reference>
        <reference anchor="RFC6698" target="https://www.rfc-editor.org/info/rfc6698">
          <front>
            <title>The DNS-Based Authentication of Named Entities (DANE) Transport Layer Security (TLS) Protocol: TLSA</title>
            <author fullname="P. Hoffman" initials="P." surname="Hoffman">
              <organization/>
            </author>
            <author fullname="J. Schlyter" initials="J." surname="Schlyter">
              <organization/>
            </author>
            <date month="August" year="2012"/>
            <abstract>
              <t>Encrypted communication on the Internet often uses Transport Layer Security (TLS), which depends on third parties to certify the keys used.  This document improves on that situation by enabling the administrators of domain names to specify the keys used in that domain's TLS servers.  This requires matching improvements in TLS client software, but no change in TLS server software.  [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="6698"/>
          <seriesInfo name="DOI" value="10.17487/RFC6698"/>
        </reference>
        <reference anchor="RFC7712" target="https://www.rfc-editor.org/info/rfc7712">
          <front>
            <title>Domain Name Associations (DNA) in the Extensible Messaging and Presence Protocol (XMPP)</title>
            <author fullname="P. Saint-Andre" initials="P." surname="Saint-Andre">
              <organization/>
            </author>
            <author fullname="M. Miller" initials="M." surname="Miller">
              <organization/>
            </author>
            <author fullname="P. Hancke" initials="P." surname="Hancke">
              <organization/>
            </author>
            <date month="November" year="2015"/>
            <abstract>
              <t>This document improves the security of the Extensible Messaging and Presence Protocol (XMPP) in two ways.  First, it specifies how to establish a strong association between a domain name and an XML stream, using the concept of "prooftypes".  Second, it describes how to securely delegate a service domain name (e.g., example.com) to a target server hostname (e.g., hosting.example.net); this is especially important in multi-tenanted environments where the same target server hosts a large number of domains.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="7712"/>
          <seriesInfo name="DOI" value="10.17487/RFC7712"/>
        </reference>
        <reference anchor="RFC9191" target="https://www.rfc-editor.org/info/rfc9191">
          <front>
            <title>Handling Large Certificates and Long Certificate Chains in TLS-Based EAP Methods</title>
            <author fullname="M. Sethi" initials="M." surname="Sethi">
              <organization/>
            </author>
            <author fullname="J. Preuß Mattsson" initials="J." surname="Preuß Mattsson">
              <organization/>
            </author>
            <author fullname="S. Turner" initials="S." surname="Turner">
              <organization/>
            </author>
            <date month="February" year="2022"/>
            <abstract>
              <t>The Extensible Authentication Protocol (EAP), defined in RFC 3748, provides a standard mechanism for support of multiple authentication methods. EAP-TLS and other TLS-based EAP methods are widely deployed and used for network access authentication. Large certificates and long certificate chains combined with authenticators that drop an EAP session after only 40 - 50 round trips is a major deployment problem. This document looks at this problem in detail and describes the potential solutions available.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="9191"/>
          <seriesInfo name="DOI" value="10.17487/RFC9191"/>
        </reference>
        <reference anchor="RFC8879" target="https://www.rfc-editor.org/info/rfc8879">
          <front>
            <title>TLS Certificate Compression</title>
            <author fullname="A. Ghedini" initials="A." surname="Ghedini">
              <organization/>
            </author>
            <author fullname="V. Vasiliev" initials="V." surname="Vasiliev">
              <organization/>
            </author>
            <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="RFC7924" target="https://www.rfc-editor.org/info/rfc7924">
          <front>
            <title>Transport Layer Security (TLS) Cached Information Extension</title>
            <author fullname="S. Santesson" initials="S." surname="Santesson">
              <organization/>
            </author>
            <author fullname="H. Tschofenig" initials="H." surname="Tschofenig">
              <organization/>
            </author>
            <date month="July" year="2016"/>
            <abstract>
              <t>Transport Layer Security (TLS) handshakes often include fairly static information, such as the server certificate and a list of trusted certification authorities (CAs).  This information can be of considerable size, particularly if the server certificate is bundled with a complete certificate chain (i.e., the certificates of intermediate CAs up to the root CA).</t>
              <t>This document defines an extension that allows a TLS client to inform a server of cached information, thereby enabling the server to omit already available information.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="7924"/>
          <seriesInfo name="DOI" value="10.17487/RFC7924"/>
        </reference>
        <reference anchor="RFC5077" target="https://www.rfc-editor.org/info/rfc5077">
          <front>
            <title>Transport Layer Security (TLS) Session Resumption without Server-Side State</title>
            <author fullname="J. Salowey" initials="J." surname="Salowey">
              <organization/>
            </author>
            <author fullname="H. Zhou" initials="H." surname="Zhou">
              <organization/>
            </author>
            <author fullname="P. Eronen" initials="P." surname="Eronen">
              <organization/>
            </author>
            <author fullname="H. Tschofenig" initials="H." surname="Tschofenig">
              <organization/>
            </author>
            <date month="January" year="2008"/>
            <abstract>
              <t>This document describes a mechanism that enables the Transport Layer Security (TLS) server to resume sessions and avoid keeping per-client session state.  The TLS server encapsulates the session state into a ticket and forwards it to the client.  The client can subsequently resume a session using the obtained ticket.  This document obsoletes RFC 4507.  [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="5077"/>
          <seriesInfo name="DOI" value="10.17487/RFC5077"/>
        </reference>
        <reference anchor="I-D.ietf-tls-esni" target="https://www.ietf.org/archive/id/draft-ietf-tls-esni-14.txt">
          <front>
            <title>TLS Encrypted Client Hello</title>
            <author fullname="Eric Rescorla">
              <organization>RTFM, Inc.</organization>
            </author>
            <author fullname="Kazuho Oku">
              <organization>Fastly</organization>
            </author>
            <author fullname="Nick Sullivan">
              <organization>Cloudflare</organization>
            </author>
            <author fullname="Christopher A. Wood">
              <organization>Cloudflare</organization>
            </author>
            <date day="13" month="February" year="2022"/>
            <abstract>
              <t>   This document describes a mechanism in Transport Layer Security (TLS)
   for encrypting a ClientHello message under a server public key.

Discussion Venues

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

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

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-ietf-tls-esni-14"/>
        </reference>
        <reference anchor="RFC8470" target="https://www.rfc-editor.org/info/rfc8470">
          <front>
            <title>Using Early Data in HTTP</title>
            <author fullname="M. Thomson" initials="M." surname="Thomson">
              <organization/>
            </author>
            <author fullname="M. Nottingham" initials="M." surname="Nottingham">
              <organization/>
            </author>
            <author fullname="W. Tarreau" initials="W." surname="Tarreau">
              <organization/>
            </author>
            <date month="September" year="2018"/>
            <abstract>
              <t>Using TLS early data creates an exposure to the possibility of a replay attack.  This document defines mechanisms that allow clients to communicate with servers about HTTP requests that are sent in early data.  Techniques are described that use these mechanisms to mitigate the risk of replay.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8470"/>
          <seriesInfo name="DOI" value="10.17487/RFC8470"/>
        </reference>
        <reference anchor="RFC9001" target="https://www.rfc-editor.org/info/rfc9001">
          <front>
            <title>Using TLS to Secure QUIC</title>
            <author fullname="M. Thomson" initials="M." role="editor" surname="Thomson">
              <organization/>
            </author>
            <author fullname="S. Turner" initials="S." role="editor" surname="Turner">
              <organization/>
            </author>
            <date month="May" year="2021"/>
            <abstract>
              <t>This document describes how Transport Layer Security (TLS) is used to secure QUIC.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="9001"/>
          <seriesInfo name="DOI" value="10.17487/RFC9001"/>
        </reference>
        <reference anchor="RFC7919" target="https://www.rfc-editor.org/info/rfc7919">
          <front>
            <title>Negotiated Finite Field Diffie-Hellman Ephemeral Parameters for Transport Layer Security (TLS)</title>
            <author fullname="D. Gillmor" initials="D." surname="Gillmor">
              <organization/>
            </author>
            <date month="August" year="2016"/>
            <abstract>
              <t>Traditional finite-field-based Diffie-Hellman (DH) key exchange during the Transport Layer Security (TLS) handshake suffers from a number of security, interoperability, and efficiency shortcomings. These shortcomings arise from lack of clarity about which DH group parameters TLS servers should offer and clients should accept.  This document offers a solution to these shortcomings for compatible peers by using a section of the TLS "Supported Groups Registry" (renamed from "EC Named Curve Registry" by this document) to establish common finite field DH parameters with known structure and a mechanism for peers to negotiate support for these groups.</t>
              <t>This document updates TLS versions 1.0 (RFC 2246), 1.1 (RFC 4346), and 1.2 (RFC 5246), as well as the TLS Elliptic Curve Cryptography (ECC) extensions (RFC 4492).</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="7919"/>
          <seriesInfo name="DOI" value="10.17487/RFC7919"/>
        </reference>
        <reference anchor="RFC5116" target="https://www.rfc-editor.org/info/rfc5116">
          <front>
            <title>An Interface and Algorithms for Authenticated Encryption</title>
            <author fullname="D. McGrew" initials="D." surname="McGrew">
              <organization/>
            </author>
            <date month="January" year="2008"/>
            <abstract>
              <t>This document defines algorithms for Authenticated Encryption with Associated Data (AEAD), and defines a uniform interface and a registry for such algorithms.  The interface and registry can be used as an application-independent set of cryptoalgorithm suites.  This approach provides advantages in efficiency and security, and promotes the reuse of crypto implementations.  [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="5116"/>
          <seriesInfo name="DOI" value="10.17487/RFC5116"/>
        </reference>
        <reference anchor="I-D.mattsson-cfrg-det-sigs-with-noise" target="https://www.ietf.org/archive/id/draft-mattsson-cfrg-det-sigs-with-noise-04.txt">
          <front>
            <title>Deterministic ECDSA and EdDSA Signatures with Additional Randomness</title>
            <author fullname="John Preuß Mattsson">
              <organization>Ericsson</organization>
            </author>
            <author fullname="Erik Thormarker">
              <organization>Ericsson</organization>
            </author>
            <author fullname="Sini Ruohomaa">
              <organization>Ericsson</organization>
            </author>
            <date day="15" month="February" year="2022"/>
            <abstract>
              <t>   Deterministic elliptic-curve signatures such as deterministic ECDSA
   and EdDSA have gained popularity over randomized ECDSA as their
   security do not depend on a source of high-quality randomness.
   Recent research has however found that implementations of these
   signature algorithms may be vulnerable to certain side-channel and
   fault injection attacks due to their determinism.  One countermeasure
   to such attacks is to re-add randomness to the otherwise
   deterministic calculation of the per-message secret number.  This
   document updates RFC 6979 and RFC 8032 to recommend constructions
   with additional randomness for deployments where side-channel attacks
   and fault injection attacks are a concern.  The updates are invisible
   to the validator of the signature and compatible with existing ECDSA
   and EdDSA validators.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-mattsson-cfrg-det-sigs-with-noise-04"/>
        </reference>
        <reference anchor="I-D.irtf-cfrg-aead-limits" target="https://www.ietf.org/archive/id/draft-irtf-cfrg-aead-limits-05.txt">
          <front>
            <title>Usage Limits on AEAD Algorithms</title>
            <author fullname="Felix Günther">
              <organization>ETH Zurich</organization>
            </author>
            <author fullname="Martin Thomson">
              <organization>Mozilla</organization>
            </author>
            <author fullname="Christopher A. Wood">
              <organization>Cloudflare</organization>
            </author>
            <date day="11" month="July" year="2022"/>
            <abstract>
              <t>   An Authenticated Encryption with Associated Data (AEAD) algorithm
   provides confidentiality and integrity.  Excessive use of the same
   key can give an attacker advantages in breaking these properties.
   This document provides simple guidance for users of common AEAD
   functions about how to limit the use of keys in order to bound the
   advantage given to an attacker.  It considers limits in both single-
   and multi-key settings.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-irtf-cfrg-aead-limits-05"/>
        </reference>
        <reference anchor="RFC7590" target="https://www.rfc-editor.org/info/rfc7590">
          <front>
            <title>Use of Transport Layer Security (TLS) in the Extensible Messaging and Presence Protocol (XMPP)</title>
            <author fullname="P. Saint-Andre" initials="P." surname="Saint-Andre">
              <organization/>
            </author>
            <author fullname="T. Alkemade" initials="T." surname="Alkemade">
              <organization/>
            </author>
            <date month="June" year="2015"/>
            <abstract>
              <t>This document provides recommendations for the use of Transport Layer Security (TLS) in the Extensible Messaging and Presence Protocol (XMPP).  This document updates RFC 6120.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="7590"/>
          <seriesInfo name="DOI" value="10.17487/RFC7590"/>
        </reference>
        <reference anchor="RFC2026" target="https://www.rfc-editor.org/info/rfc2026">
          <front>
            <title>The Internet Standards Process -- Revision 3</title>
            <author fullname="S. Bradner" initials="S." surname="Bradner">
              <organization/>
            </author>
            <date month="October" year="1996"/>
            <abstract>
              <t>This memo documents the process used by the Internet community for the standardization of protocols and procedures.  It defines the stages in the standardization process, the requirements for moving a document between stages and the types of documents used during this process. This document specifies an Internet Best Current Practices for the Internet Community, and requests discussion and suggestions for improvements.</t>
            </abstract>
          </front>
          <seriesInfo name="BCP" value="9"/>
          <seriesInfo name="RFC" value="2026"/>
          <seriesInfo name="DOI" value="10.17487/RFC2026"/>
        </reference>
        <reference anchor="RFC7228" target="https://www.rfc-editor.org/info/rfc7228">
          <front>
            <title>Terminology for Constrained-Node Networks</title>
            <author fullname="C. Bormann" initials="C." surname="Bormann">
              <organization/>
            </author>
            <author fullname="M. Ersue" initials="M." surname="Ersue">
              <organization/>
            </author>
            <author fullname="A. Keranen" initials="A." surname="Keranen">
              <organization/>
            </author>
            <date month="May" year="2014"/>
            <abstract>
              <t>The Internet Protocol Suite is increasingly used on small devices with severe constraints on power, memory, and processing resources, creating constrained-node networks.  This document provides a number of basic terms that have been useful in the standardization work for constrained-node networks.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="7228"/>
          <seriesInfo name="DOI" value="10.17487/RFC7228"/>
        </reference>
        <reference anchor="RFC7925" target="https://www.rfc-editor.org/info/rfc7925">
          <front>
            <title>Transport Layer Security (TLS) / Datagram Transport Layer Security (DTLS) Profiles for the Internet of Things</title>
            <author fullname="H. Tschofenig" initials="H." role="editor" surname="Tschofenig">
              <organization/>
            </author>
            <author fullname="T. Fossati" initials="T." surname="Fossati">
              <organization/>
            </author>
            <date month="July" year="2016"/>
            <abstract>
              <t>A common design pattern in Internet of Things (IoT) deployments is the use of a constrained device that collects data via sensors or controls actuators for use in home automation, industrial control systems, smart cities, and other IoT deployments.</t>
              <t>This document defines a Transport Layer Security (TLS) and Datagram Transport Layer Security (DTLS) 1.2 profile that offers communications security for this data exchange thereby preventing eavesdropping, tampering, and message forgery.  The lack of communication security is a common vulnerability in IoT products that can easily be solved by using these well-researched and widely deployed Internet security protocols.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="7925"/>
          <seriesInfo name="DOI" value="10.17487/RFC7925"/>
        </reference>
        <reference anchor="I-D.ietf-uta-tls13-iot-profile" target="https://www.ietf.org/archive/id/draft-ietf-uta-tls13-iot-profile-05.txt">
          <front>
            <title>TLS/DTLS 1.3 Profiles for the Internet of Things</title>
            <author fullname="Hannes Tschofenig">
              <organization>Arm Limited</organization>
            </author>
            <author fullname="Thomas Fossati">
              <organization>Arm Limited</organization>
            </author>
            <date day="6" month="July" year="2022"/>
            <abstract>
              <t>   This document is a companion to RFC 7925 and defines TLS/DTLS 1.3
   profiles for Internet of Things devices.  It also updates RFC 7925
   with regards to the X.509 certificate profile.

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/thomas-fossati/draft-tls13-iot.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-ietf-uta-tls13-iot-profile-05"/>
        </reference>
        <reference anchor="RFC7435" target="https://www.rfc-editor.org/info/rfc7435">
          <front>
            <title>Opportunistic Security: Some Protection Most of the Time</title>
            <author fullname="V. Dukhovni" initials="V." surname="Dukhovni">
              <organization/>
            </author>
            <date month="December" year="2014"/>
            <abstract>
              <t>This document defines the concept "Opportunistic Security" in the context of communications protocols.  Protocol designs based on Opportunistic Security use encryption even when authentication is not available, and use authentication when possible, thereby removing barriers to the widespread use of encryption on the Internet.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="7435"/>
          <seriesInfo name="DOI" value="10.17487/RFC7435"/>
        </reference>
        <reference anchor="RFC5280" target="https://www.rfc-editor.org/info/rfc5280">
          <front>
            <title>Internet X.509 Public Key Infrastructure Certificate and Certificate Revocation List (CRL) Profile</title>
            <author fullname="D. Cooper" initials="D." surname="Cooper">
              <organization/>
            </author>
            <author fullname="S. Santesson" initials="S." surname="Santesson">
              <organization/>
            </author>
            <author fullname="S. Farrell" initials="S." surname="Farrell">
              <organization/>
            </author>
            <author fullname="S. Boeyen" initials="S." surname="Boeyen">
              <organization/>
            </author>
            <author fullname="R. Housley" initials="R." surname="Housley">
              <organization/>
            </author>
            <author fullname="W. Polk" initials="W." surname="Polk">
              <organization/>
            </author>
            <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="RFC8452" target="https://www.rfc-editor.org/info/rfc8452">
          <front>
            <title>AES-GCM-SIV: Nonce Misuse-Resistant Authenticated Encryption</title>
            <author fullname="S. Gueron" initials="S." surname="Gueron">
              <organization/>
            </author>
            <author fullname="A. Langley" initials="A." surname="Langley">
              <organization/>
            </author>
            <author fullname="Y. Lindell" initials="Y." surname="Lindell">
              <organization/>
            </author>
            <date month="April" year="2019"/>
            <abstract>
              <t>This memo specifies two authenticated encryption algorithms that are nonce misuse resistant -- that is, they do not fail catastrophically if a nonce is repeated.</t>
              <t>This document is the product of the Crypto Forum Research Group.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8452"/>
          <seriesInfo name="DOI" value="10.17487/RFC8452"/>
        </reference>
        <reference anchor="RFC9162" target="https://www.rfc-editor.org/info/rfc9162">
          <front>
            <title>Certificate Transparency Version 2.0</title>
            <author fullname="B. Laurie" initials="B." surname="Laurie">
              <organization/>
            </author>
            <author fullname="E. Messeri" initials="E." surname="Messeri">
              <organization/>
            </author>
            <author fullname="R. Stradling" initials="R." surname="Stradling">
              <organization/>
            </author>
            <date month="December" year="2021"/>
            <abstract>
              <t>This document describes version 2.0 of the Certificate Transparency (CT) protocol for publicly logging the existence of Transport Layer Security (TLS) server certificates as they are issued or observed, in a manner that allows anyone to audit certification authority (CA) activity and notice the issuance of suspect certificates as well as to audit the certificate logs themselves. The intent is that eventually clients would refuse to honor certificates that do not appear in a log, effectively forcing CAs to add all issued certificates to the logs.</t>
              <t>This document obsoletes RFC 6962.  It also specifies a new TLS extension that is used to send various CT log artifacts.</t>
              <t>Logs are network services that implement the protocol operations for submissions and queries that are defined in this document.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="9162"/>
          <seriesInfo name="DOI" value="10.17487/RFC9162"/>
        </reference>
        <reference anchor="RFC6960" target="https://www.rfc-editor.org/info/rfc6960">
          <front>
            <title>X.509 Internet Public Key Infrastructure Online Certificate Status Protocol - OCSP</title>
            <author fullname="S. Santesson" initials="S." surname="Santesson">
              <organization/>
            </author>
            <author fullname="M. Myers" initials="M." surname="Myers">
              <organization/>
            </author>
            <author fullname="R. Ankney" initials="R." surname="Ankney">
              <organization/>
            </author>
            <author fullname="A. Malpani" initials="A." surname="Malpani">
              <organization/>
            </author>
            <author fullname="S. Galperin" initials="S." surname="Galperin">
              <organization/>
            </author>
            <author fullname="C. Adams" initials="C." surname="Adams">
              <organization/>
            </author>
            <date month="June" year="2013"/>
            <abstract>
              <t>This document specifies a protocol useful in determining the current status of a digital certificate without requiring Certificate Revocation Lists (CRLs). Additional mechanisms addressing PKIX operational requirements are specified in separate documents.  This document obsoletes RFCs 2560 and 6277.  It also updates RFC 5912.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="6960"/>
          <seriesInfo name="DOI" value="10.17487/RFC6960"/>
        </reference>
        <reference anchor="RFC7633" target="https://www.rfc-editor.org/info/rfc7633">
          <front>
            <title>X.509v3 Transport Layer Security (TLS) Feature Extension</title>
            <author fullname="P. Hallam-Baker" initials="P." surname="Hallam-Baker">
              <organization/>
            </author>
            <date month="October" year="2015"/>
            <abstract>
              <t>The purpose of the TLS feature extension is to prevent downgrade attacks that are not otherwise prevented by the TLS protocol.  In particular, the TLS feature extension may be used to mandate support for revocation checking features in the TLS protocol such as Online Certificate Status Protocol (OCSP) stapling.  Informing clients that an OCSP status response will always be stapled permits an immediate failure in the case that the response is not stapled.  This in turn prevents a denial-of-service attack that might otherwise be possible.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="7633"/>
          <seriesInfo name="DOI" value="10.17487/RFC7633"/>
        </reference>
        <reference anchor="RFC6961" target="https://www.rfc-editor.org/info/rfc6961">
          <front>
            <title>The Transport Layer Security (TLS) Multiple Certificate Status Request Extension</title>
            <author fullname="Y. Pettersen" initials="Y." surname="Pettersen">
              <organization/>
            </author>
            <date month="June" year="2013"/>
            <abstract>
              <t>This document defines the Transport Layer Security (TLS) Certificate Status Version 2 Extension to allow clients to specify and support several certificate status methods.  (The use of the Certificate Status extension is commonly referred to as "OCSP stapling".)  Also defined is a new method based on the Online Certificate Status Protocol (OCSP) that servers can use to provide status information about not only the server's own certificate but also the status of intermediate certificates in the chain.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="6961"/>
          <seriesInfo name="DOI" value="10.17487/RFC6961"/>
        </reference>
      </references>
    </references>
    <section anchor="diff-rfc">
      <name>Differences from RFC 7525</name>
      <t>This revision of the Best Current Practices contains numerous changes, and this section is focused
on the normative changes.</t>
      <ul spacing="normal">
        <li>
          <t>High level differences:
          </t>
          <ul spacing="normal">
            <li>Described the expectations from new TLS-incorporating transport protocols and from new application protocols layered on TLS.</li>
            <li>Clarified items (e.g. renegotiation) that only apply to TLS 1.2.</li>
            <li>Changed status of TLS 1.0 and 1.1 from <bcp14>SHOULD NOT</bcp14> to <bcp14>MUST NOT</bcp14>.</li>
            <li>Added TLS 1.3 at a <bcp14>SHOULD</bcp14> level.</li>
            <li>Similar changes to DTLS.</li>
            <li>Specific guidance for multiplexed protocols.</li>
            <li>
              <bcp14>MUST</bcp14>-level implementation requirement for ALPN, and more specific <bcp14>SHOULD</bcp14>-level guidance for ALPN and SNI.</li>
            <li>Clarified discussion of strict TLS policies, including <bcp14>MUST</bcp14>-level recommendations.</li>
            <li>Limits on key usage.</li>
            <li>New attacks since <xref target="RFC7457"/>: ALPACA, Raccoon, Logjam, "Nonce-Disrespecting Adversaries".</li>
            <li>RFC 6961 (OCSP status_request_v2) has been deprecated.</li>
            <li>
              <bcp14>MUST</bcp14>-level requirement for server-side RSA certificates to have 2048-bit modulus at a minimum, replacing a <bcp14>SHOULD</bcp14>.</li>
          </ul>
        </li>
        <li>
          <t>Differences specific to TLS 1.2:
          </t>
          <ul spacing="normal">
            <li>
              <bcp14>SHOULD</bcp14>-level guidance on AES-GCM nonce generation.</li>
            <li>
              <bcp14>SHOULD NOT</bcp14> use (static or ephemeral) finite-field DH key agreement.</li>
            <li>
              <bcp14>SHOULD NOT</bcp14> reuse ephemeral finite-field DH keys across multiple connections.</li>
            <li>2048-bit DH now a <bcp14>MUST</bcp14>, ECDH minimal curve size is 224, vs. 192 previously.</li>
            <li>Support for <tt>extended_master_secret</tt> is now a <bcp14>MUST</bcp14> (previously it was a soft recommendation, as the RFC had not been published at the time). Also removed other, more complicated, related mitigations.</li>
            <li>
              <bcp14>MUST</bcp14>-level restriction on session ticket validity, replacing a <bcp14>SHOULD</bcp14>.</li>
            <li>
              <bcp14>SHOULD</bcp14>-level restriction on the TLS session duration, depending on the rotation period of an <xref target="RFC5077"/> ticket key.</li>
            <li>Drop TLS_DHE_RSA_WITH_AES from the recommended ciphers</li>
            <li>Add TLS_ECDHE_ECDSA_WITH_AES to the recommended ciphers</li>
            <li>
              <bcp14>SHOULD NOT</bcp14> use the old MTI cipher suite, TLS_RSA_WITH_AES_128_CBC_SHA.</li>
            <li>Recommend curve X25519 alongside NIST P-256</li>
          </ul>
        </li>
        <li>
          <t>Differences specific to TLS 1.3:
          </t>
          <ul spacing="normal">
            <li>New TLS 1.3 capabilities: 0-RTT.</li>
            <li>Removed capabilities: renegotiation, compression.</li>
            <li>Added mention of TLS Encrypted Client Hello, but no recommendation to use until it is finalized.</li>
            <li>
              <bcp14>SHOULD</bcp14>-level requirement for forward secrecy in TLS 1.3 session resumption.</li>
            <li>Generic <bcp14>SHOULD</bcp14>-level guidance to avoid 0-RTT unless it is documented for the particular protocol.</li>
          </ul>
        </li>
      </ul>
    </section>
    <section anchor="document-history">
      <name>Document History</name>
      <t><cref>Note to RFC Editor: please remove before publication.</cref></t>
      <section anchor="draft-ietf-uta-rfc7525bis-10">
        <name>draft-ietf-uta-rfc7525bis-10</name>
        <ul spacing="normal">
          <li>Addressed IESG feedback, ARTART review by Cullen Jennings, and TSVART review by Magnus Westerlund.</li>
          <li>Improved the rationale for still recommending TLS 1.2.</li>
          <li>Specified TLS 1.3 as a <bcp14>MUST</bcp14> for new transport protocols and a <bcp14>SHOULD</bcp14> for new application protocols.</li>
          <li>Clarified TLS-only vs. dynamic upgrade for non-HTTP protocols.</li>
          <li>Clarified distinction between implementation and deployment.</li>
          <li>Clarified applicability to QUIC.</li>
          <li>Further specified what to do on reaching the confidentiality limit or integrity limit.</li>
          <li>Added a note about post-quantum cryptography.</li>
          <li>Improved the text about Encrypted Client Hello.</li>
        </ul>
      </section>
      <section anchor="draft-ietf-uta-rfc7525bis-09">
        <name>draft-ietf-uta-rfc7525bis-09</name>
        <ul spacing="normal">
          <li>More background on strict TLS for non-HTTP protocols.</li>
        </ul>
      </section>
      <section anchor="draft-ietf-uta-rfc7525bis-08">
        <name>draft-ietf-uta-rfc7525bis-08</name>
        <ul spacing="normal">
          <li>Addressed SecDir review by Ben Kaduk.</li>
          <li>Addressed reviews by Stephen Farrell, Martin Thomson, Tim Evans and John Mattsson.</li>
        </ul>
      </section>
      <section anchor="draft-ietf-uta-rfc7525bis-07">
        <name>draft-ietf-uta-rfc7525bis-07</name>
        <ul spacing="normal">
          <li>Addressed AD reviews by Francesca and Paul.</li>
        </ul>
      </section>
      <section anchor="draft-ietf-uta-rfc7525bis-06">
        <name>draft-ietf-uta-rfc7525bis-06</name>
        <ul spacing="normal">
          <li>Addressed several I-D nits raised by the document shepherd.</li>
        </ul>
      </section>
      <section anchor="draft-ietf-uta-rfc7525bis-05">
        <name>draft-ietf-uta-rfc7525bis-05</name>
        <ul spacing="normal">
          <li>
            <t>Addressed WG Last Call comments, specifically:
            </t>
            <ul spacing="normal">
              <li>More clarity and guidance on session resumption.</li>
              <li>Clarity on TLS 1.2 renegotiation.</li>
              <li>Wording on the 0-RTT feature aligned with RFC 8446.</li>
              <li>
                <bcp14>SHOULD NOT</bcp14> guidance on static and ephemeral finite field DH cipher suites.</li>
              <li>Revamped the recommended TLS 1.2 cipher suites, removing DHE and adding ECDSA. The latter due to the wide adoption of ECDSA certificates and in line with RFC 8446.</li>
              <li>Recommendation to use deterministic ECDSA.</li>
              <li>Finally deprecated the old TLS 1.2 MTI cipher suite.</li>
              <li>Deeper discussion of ECDH public key reuse issues, and as a result, recommended support of X25519.</li>
              <li>Reworded the section on certificate revocation and OCSP following a long mailing list thread.</li>
            </ul>
          </li>
        </ul>
      </section>
      <section anchor="draft-ietf-uta-rfc7525bis-04">
        <name>draft-ietf-uta-rfc7525bis-04</name>
        <ul spacing="normal">
          <li>No version fallback from TLS 1.2 to earlier versions, therefore no SCSV.</li>
        </ul>
      </section>
      <section anchor="draft-ietf-uta-rfc7525bis-03">
        <name>draft-ietf-uta-rfc7525bis-03</name>
        <ul spacing="normal">
          <li>Cipher integrity and confidentiality limits.</li>
          <li>Require <tt>extended_master_secret</tt>.</li>
        </ul>
      </section>
      <section anchor="draft-ietf-uta-rfc7525bis-02">
        <name>draft-ietf-uta-rfc7525bis-02</name>
        <ul spacing="normal">
          <li>Adjusted text about ALPN support in application protocols</li>
          <li>Incorporated text from draft-ietf-tls-md5-sha1-deprecate</li>
        </ul>
      </section>
      <section anchor="draft-ietf-uta-rfc7525bis-01">
        <name>draft-ietf-uta-rfc7525bis-01</name>
        <ul spacing="normal">
          <li>
            <t>Many more changes, including:
            </t>
            <ul spacing="normal">
              <li>
                <bcp14>SHOULD</bcp14>-level requirement for forward secrecy in TLS 1.3 session resumption.</li>
              <li>Removed TLS 1.2 capabilities: renegotiation, compression.</li>
              <li>Specific guidance for multiplexed protocols.</li>
              <li>
                <bcp14>MUST</bcp14>-level implementation requirement for ALPN, and more specific <bcp14>SHOULD</bcp14>-level guidance for ALPN and SNI.</li>
              <li>Generic <bcp14>SHOULD</bcp14>-level guidance to avoid 0-RTT unless it is documented for the particular protocol.</li>
              <li>
                <bcp14>SHOULD</bcp14>-level guidance on AES-GCM nonce generation in TLS 1.2.</li>
              <li>
                <bcp14>SHOULD NOT</bcp14> use static DH keys or reuse ephemeral DH keys across multiple connections.</li>
              <li>2048-bit DH now a <bcp14>MUST</bcp14>, ECDH minimal curve size is 224, up from 192.</li>
            </ul>
          </li>
        </ul>
      </section>
      <section anchor="draft-ietf-uta-rfc7525bis-00">
        <name>draft-ietf-uta-rfc7525bis-00</name>
        <ul spacing="normal">
          <li>Renamed: WG document.</li>
          <li>Started populating list of changes from RFC 7525.</li>
          <li>General rewording of abstract and intro for revised version.</li>
          <li>Protocol versions, fallback.</li>
          <li>Reference to ECHO.</li>
        </ul>
      </section>
      <section anchor="draft-sheffer-uta-rfc7525bis-00">
        <name>draft-sheffer-uta-rfc7525bis-00</name>
        <ul spacing="normal">
          <li>Renamed, since the BCP number does not change.</li>
          <li>Added an empty "Differences from RFC 7525" section.</li>
        </ul>
      </section>
      <section anchor="draft-sheffer-uta-bcp195bis-00">
        <name>draft-sheffer-uta-bcp195bis-00</name>
        <ul spacing="normal">
          <li>Initial release, the RFC 7525 text as-is, with some minor editorial
changes to the references.</li>
        </ul>
      </section>
    </section>
  </back>
  <!-- ##markdown-source:
H4sIAEPF3WIAA8W9zXbjWJImuOdToJSLkLJJukj9uTyya0ouycMVIbmrREVE
ZfXp8QBJUEQIBJgAKDkzTvSZ7az7BWrRz1CrWVW+yTzJ2Gdm9w8E3T2iaqrr
5KlwEcDFxb127d8+6/V6nU6d1lnyKrpLJsVikeTTuE6LvIpmRRmNksmqTKLv
qyQqZtF9GefVsijr6DpeJ3o1rdfR7v31aC+K82l0EdfxQxkvPnHvBW7uxONx
mTy9iuiP5ps702KSxwua0rSMZ3UvTepZb1XHvXI2OTkaHo3TqjfY70ziOnko
yvWraDxZdopxVWRJnVSvItzTWS1pNPx1NHz5shsd7x8fdzrpsnwV1eWqqof7
+6f7w05cJvGr6Gy5zNKJvvy5KB8fymK1fBV9f38W/Uh/pvlD9A1+6nSqmp5Y
vIquLu/fdB6TNd09pb/yOinzpO5dYMKdCY2T5NWq4pcleIrW5kOcFTl91Dqp
Osv0VSeK6HuSaVWvM/01iupi4v0zzadJXpsfKlrMMplV9u/1IvizLtOJvVkW
tLZX0zxLc/ea5GPdy9Kq7tEg4yKj24reH/+LPLeM3TDVamx/yYtOJ17V86Kk
uffoIkalJ//cj0bzZDZLSv5Ndu7PcVnkwe9F+RDn6V95lXnFVmnNF5JFnGb0
Qjwx62Oz/+EBP/XpzcGLbulFcZrXvbN8Wibey25p38uNa+ELsZbLhBfUf2tV
L/HwP+h/+2n4yvt+9KaoKhrDe939vFjEVXAhfFdcLvx31Hx/fyb3/wNd5U/r
5EW5oB+ekldEmfnM/RVF9z9e3V2/4kHsktP/9WRWZ1jxeJHKwpppnU1T/2e9
97JPR7FYJOG9l3Q6/d9xVl5FX9GpOPiKf6jj8iGpX+lD87pevnrxYlL163jV
jyf9NHvxP2p+/MUyXiZl9aJ+Tsusv5zO5HFmKfr0V2+IfooSp+gaw0bvVosx
PRM9p/WcVieRz40ukqd0ksj7q6RMkwqrQtNalsWkH52X62VdRJhjN7p+dz6K
hifD02406A2Pu9FoiRckZe+HpMzih686NMz5fJU/DF6+ii7eX/UH+/3B4PDo
xcHw5OXRwbDP/z084PvurlN8v71t//TF6LY/3B+c9AcnuOM6qau75Kl49O46
PBkOX+TTqqIbh/v94eH+y0Pce5E8xGOafZbc7p+0DLp/0n+J++i8LrOkNyfW
UM3jx9b3H9JrcO+oeJgXaZzTTwN733BwcPqiqsq8Pzg6Hewf8LdcFw8/g0H5
nzx8Odin633678HJPn/Q7fv3F9eXbRRGpEycb9Q7v7y792jjPW0hbVqESfkU
wrRREXE8Pz/3V1VvkpR1/6F4epFP4upFnNGf1Yv7s8Fhb3i6f+YRRzQaXUcH
/f3otiyI1xVZ9MMqy5MyHqcZ5ASkicwyOqvrePLIO3X2uvc6rhJmZtsmf372
4nVZPBMJ0RktV4uQwgchhdv5T+LxDHf3aYwXJIFWzD9f+DM2byaB9ZdVWiZ8
B8tJEPFVVa3ifJLwzG/iPH7gGyA4b1djEjDZuncP2ZNMo3NalnQGmZNUEVFs
RXwjGvQH/WN85dskZ1qmyQ63MoF3fXtfcLTfxdM0Di/pE//cjy5W9IV0tCbB
I/8cP6Zl45pjHz/SlGk5G/wjnQQX9PZv+8Sb3sbZNCFmlgePfNuPzrLkY+Oq
25bhV/5Sf3WT4gOiPxerMrqteE3/kV5wQVx6Ai6LZf0xnSbVkgTyNPoxiR+j
75J1RfOI3iU1pLgylGqDo+i8SKvJ049OMxmtF8uiSlcLOyGcvDX9c5OFHB6f
HoKFHJ7s82G+OHt32Rvd3N+SHvXm/OT4ZMinjL6urIr8buQd2wFxgBenJy97
B73jw2FveHTw8qi3/2G478a5+8EMw2f67f39bW90eXPGv54SfzC/EsmY34bm
t6H5hZ/9LkvS/Gfig/QZ+9vmMDg8Hh70Tj4M+Fuuzt6dfSC97BX/q19nVW8Z
k04HAVnhhptVVjPvuswnYMos9IIFOnp5fHrap/+cDF5GeOTd1ei+Tzzt5f5+
7+j4zN5+vD98+aJxseSJC0OPs2xw3OBmpy9PDg+Jm+G/L2XVLml9RtdPB7Js
R8f8Ha+LZPJIn3289Qy97Uev//avxFp8Qn0b53nh/e6E7j/Hq7xx2s5Yz/Eu
6N2jPqiPmEVw9yghsev9bk8NMfhFURZP1eM6PDSrMv65ebFn1aFvi6c4L54a
x/l2Thx0uWxc1ZN2E6/Bw4/bmWCCRa/7aTwpmQ/izheHJ0cNwR599a4gTte7
SKuSTiBOJJ3Vs+kTEUiMY0aTKEnoE4PLwIOJEa2Vi1cRrdc35zc4p0RjfMa+
LVYfSS5u36ezPt8TrnxeF+DF9oLTYbZ83KQqJ/2ctF6WT/jrxSIhZvmC9Iuf
6RuqF+OsmDz2JulyTooEMZp5nv5llVSeOBhPFi+Mbv0C9HrwsiecpcfGSvXi
ge74meb0wdzWXLsz+j76XQ2O6A3piGRjCeOigxA9qTggBkfrxFLvh+2S+ubq
/u7S+/5ZnFVJ++c/Jf1FSiYEdtaf0DlNlN7ni1/6Hma5lx+JI2J2mMbZ9e3Z
+dnWTbqhw0TU80isPaT6m7icrKrGRX3onM4JDZ+ET5zPS9qmFIfFXdQn7vrR
TYIvC564g3JS+1f09ot+dFtMp8k4T+PwnF+QqkxvaFx1R/Lmb/9PljWO+7dk
1gUX/l0nGE9N5s9JHk7s27/9a/kQXHFMhX5N878mWYOtjGNZruCyPRDDwTal
3iluEIV85Ml4JZMtoeP9Qn6tVD4OB3RQsBs1E+6LcbCfocavpOJb1uoHsNre
Ob1nxYTeo7McZ+u/goew7kT09xCDpehw5yUzDuEYjfPTYi4c7JNZ8f3o8t3V
P7UI92i3eWk42GM2dHH3/sd3n9K3zp5SEoOhtpUuymLqX/l9e/XvoqPfrgrS
Wb2I88fG3G7i9NH/3ZtUnazGyeZR8H7Xm6/70Q+k9RORBHdfrx6T4II7nmfT
Mm3oihfxUzrVC1FjKr9Fu9SnfoDi+zgvnvI0eOiH9JHs0vCa03u/+9v/ItHW
sJsXxB3j4JLb7/NinifhrpE9ToZA7l9y91/SrmRVeP+qogOV+Jcco7yN43A2
wiZhX5grPc8lQ2tYh0zyz6snksf+Fad+H/9HsAhSFkRqktwnsVjheFch14jd
SQlZhpw+khKkyYMT4KgTf6B/QbMbtpzz4dFvO+eDYznnd2fn5+/fbz/pv1HC
/C659xu5ye+WL8RL642JfVvMQWVVePW3CqX/n8XLwi10SCh38WRSkNgQffJV
9CbNp0Z0kL6SFSlrozdFVfdG6UPOdnZe916nde89SZIsMaKkd/F293LvP1CC
kE6aLmN4qD6lyspdoTIrrM674vgjkeM1SKx4bjLJPE2yjcvuPTdJnvw1CRnM
WTYrk2lwyVH9qC5Xabjtd3Sj/7vjXmdg9DmxnzyUC6NJUdcbVzcdjKJ7kkhI
xe0PffcyI8OFJHt0viqfEnWbsFm/uUfuonoGH8p4OV/TDG+/O4/kRbAtYnGk
HG3dkfu+3BR8xX06Jsngfv+dGttvPLeOHR8Fq+SMqav8CSumC+SZVCDny/OL
t5sLdbkqiyUMT0fAdP8dHTXiT3McBTIAlqs6CNJcjt7fXZ2P9iKZC406Ontz
ef793Q+Xo60rScRKH/w6KWnjk7SVWjeuu024jknohZsQ5z/H3u+yPAOyoCfJ
4pPOyCqe4VOekqpPlux62a8Lfz2/GtF1XkJI1nlRiJyhH2VhxalnqLEni+1T
Ga+IsxzgKf7UqvxOC+R3sPzfp3aSCLsuJvO6cQhu4py5hX/NOR/u/vavVdM+
uo1XWXBBtgzr07pPLf6GkxcD+L2bDgchdWwTXIDlIoUhT+cfHD6uEaSkD0sW
tHWiNLyhmdTmgPB2fZcuQC9b94mUpu/SUB7/meTMw8r+7DjlBdkrDe2gqtyv
bgubI35Lsm+RJs0hSbt7E2dNdxHrd/4FTwumHUsaCnkafbtO7M+O+po3XtBH
zderx+atNIkf0+yRPZYt8wiv6TPf4dyGWvV3RV7GU/uz3vie5NGqzlbBre/z
Ven9bIml/VCTvlBWfTr7/cli1U+mqxf/Y80b9GiCUI/popdWk7iFft7AJQbC
IDWA5f9NQudnTV9FhLAiSplMoK9C8SQygnsJygTxUfhwoDXXq+kaMuri7uwm
uiDiW5VjdvdflmVRgsR6vV4Uj6sazLrzHxgrj2Kibvr4aVQX0ZLs52RSY63i
KPk4mYM7TqPiiZ6Lo+d0mkQlfsJUY8/6XqrdXXX53aQRRXFWFWB0Cw5fEH9I
he9VEvSv7azss/0oeo8X4f41iQ8aDP8kBQyhgHU0jzmoR6olZlsldC8tHaRR
QYpwHEgrWQL6R5een2Qr0eHcLRh4QToch7KLPFvLEohzLqpWaa0+KroxLenW
Kf1NH02yruRPpsnez+mTjPMOn/GEiAEPnSH0UkdlS9IDQvccrcR9Rj3F0NOE
tMs1f1nJkQW6I64xr+CD+iAh+q05NrZRt2ScJdhM/sb458K8ACNNYjKc+p0O
ESCtcJbSx3oewTr4omda7yX0oGpOs6I/7t6cc/pD9DxP8nBvcG+qy5pOK45L
4SjwNqdMIzQjfMegP+xHf8b28iqV8lLvvhQX6GzSniA7AGkX/PHy8AGugxDp
cvwUpxm+tt/YC03P4Ok8rEgFxEl6SJ901nnyTNtAZlCR8+0Y3WZ42K/skzoU
xdMpz0pIceMFuBcpIDwE/kAmCBbiKaV30BrQLvEbhPL6coxphaZZ0un8AYkK
ZJKtOObU+d95qp/gWBcy2XKu3TFCGCj65ReNEP36q/57+Ouv3ejq5gzX/g/E
iPaPBvjp9j3/Mrq/ODrA36Mrc8fB8JjvQGRLfzo6GPJP+NZ/urk1Px8Phvu/
/kpnbrQipdLOikl6XJg4PxEIHC74r41725vNaQ5uwyEqp0RvtIQ0+lkGdv3g
hmsZxvK2sS4w5xlM0xkbnnUwZIXVnyYzRBK28z0SYpYd0Y+kfGCc5GMM4ge5
/+P3V+d2UfdpIeiJCgvRNhg2Pi9os1OaSU2nhKixmhDf0lCyd06+ppNANEAv
J6uVtpiM9bWwgU32QmwRR/thXjOBYNiqmMUl+EK1uSnbF5DOQMjloyyJma44
/WJwtMH1pwHX/9/F7d/Q6tE31+AlXUd0Z5ej3vlrsz0Hx/t0DIQbnB/Sj3+H
iOHh8RH9mNhwJtHPA7jyfEGL/jxPsZMFKSOYzDPWGeEvN2nldlY+yLTxKO6V
z6Sflf1OihwJWJxRB2kBjZbYJN+gWUCYwRhqCe43y/SYk41Pu5SCSmQnQHsq
1nj4WBK4cgxgWeGufPnJ4dHJr7/uGbmzLJMn3qimdEE8T3ITmKvK1z+nWUYU
li2V9OIprcQqp//PuW3yKz8R04kYJ2RjTFup1M4W5AqpQALUzhT6A07GOCE5
IBycP2uC5S5rkzCUgmSSr3mzaSZdiAswSl0nnC8ij0mZjs2ie0eqi/MQ81GR
MIMR+8RYqsSTA/d6QDD/VQ7GTZ89qYVh+/sSvMtfaz7YqgQ9x+vqFQkXt9lW
7IVSXA/DSlMuRR4rnR4ND4+VeC/CK8cHhyfMlTNSiGWdjPZg+aJudKWy2L4/
rfRMOhIl2n9IaSvN55Cw1feC3jMsBX1F7i0vqAknVl/yNfYxEf2oDt6Gr9VB
4mmxxHqO1yFDITVcTxcvy8T6h6x6Q28F+fdpPTV7pjKrZT6bXp3zAvEZpKNJ
lMj0JAv28vSUltIbgDUXHUNvOeTVxoRL4r+klxGpzYosK55l0k/hkxfu0dMB
tuNrfAPto1l4qzUp6WGdaWhSa57kcx0l+WQIsnyeF1EKaWPVIWE2lrfC/zPG
FD02nyc+mdFE58Uz3rNmEWmko4i9bL1dX7ZD4JhsKsFQ+hNiD7GaD8WsfsYB
s/OVQ4aDV60WRrG2V2mvko/IIaiUuU+IueOMjRP3MqVLTyesVGzrqTOKNSeP
QRE5Z57BSUQyihz+UIEWE7MyOlZMcgmu6YhUQFio2RonKjPTQMoi7cMzHVTM
jzRP9iN4wfxdmnNagzv16MBHLMhoSRarehVne10wslmKHNQ0xjxFi2KlL6WF
eGD1UHVBVcjNkjAP0hxlZU5tCgDWCbKchivwtoreJnx5w5qBQgn+v0igbqbV
Qqw5epuN4ZC+Ucv9mCemWLLAlVXuegIZ0gTRPbCTvLnzUSyCrCZjGm9+LtlF
TwT3fQ69BktGu0JUQFuYgjPQu8EiRQLS03HjY0UFTipjsnBqdSRy8cL+0CVm
QLJr+6OsIwSmG1bWJxA6h8liWfPd8Dkt0r+KdWLPhDOaWghehWDBMiDDq8sC
U0p5QFquYlXGZKxXa5JkC3lL8eQNetCP3hK7oeeVdFORkHEGgULLro7hfvQu
eYYKkpImSXc7FtL1zyethLwqEhOjguxkx0fNvLEqFvJ5pZ/hKFvAOqX3tf5Z
hEhh6UnHns74gkjrr+ZkQvFG6j64becdCIqWgohntmK3nS+1s/RRzhyvm78P
0yLRD59OS5AMLeuCOdbnuOOLC7PBjjEKoxTNVK9j4mTp5Q8sl0SWwTCjUwwa
yM151FlPaUuyYqkfDzt0GZe0Eyti8eAZaqUIYYviprKQ9D/SI4xE+8sqzuvV
gtU2uOAr1bRiIoKYBKENX+H7aK+jloM8cY7pdAL9EOLlyenLcp6LrHhIfZcF
VpA40qqEUURfvUTAzM7HD6mkzCCRUZmywfnAO8AsoRZSLljsMnkswH4arOlr
py9Dkj7hewI1s9INoDHjcmpoh7NqL+/f4GAnWZU8g8M1WXhFK51NWZqpwkiT
KJNZBnt6nLDFxockUT6E/0eMCC4WJilIdWMMQZIHEzPiuQpMr6dGqhRKKVpU
zX50pidbXitEWbk3ydR5s2eswjYHZiXGHDhahTER3TP7l+gLi83FKOkNMb7U
19u6og/SSIbDRg8FMfeAA5HhWFqqZKOGaKTyVVCPJ7H80ePOXJEops2T1lBk
dUufYhrdd3uFfNM7v7LBkySHqKq6rmAg+ThJlma2q9yTwom4oXarJNnUCvb6
0Xu24RrEx7tDKyqB6caaQlfiLZIKm6QMmSMRtKE6lUGLAmytEpVGKcbwnq7j
PSo4Ldsgq7GkV4r9WkW7Sf+h3+VlxBLKFvq3t3mB9r42nr9YTuZcHIpdX91S
T6RjcvGUfQesbYCdtn5oP3qzgiOiXLTQnVUV42iWFQWxQObV0SShlc8fXkV8
dInI4yodZ/R4PJUIDtFcUfIqOXWyTBxd8vweoAuuC+VmhuCq1ZIdK9bH2KZ5
iG8NcxO2ySweTMEyUGJ7PKc++w/Up+NtE5g36SJ0RJxFbtVS3MVbxIcLESm4
NVo2hoka1jnx2HGSk+YKORVn64ptpwdwPXrUzgp1ZvkDbfkTLXyL4qW+Ul00
842l+n+mRN2iQ5M+wEvjhHadluyZhUcVHjFRUt3JPrfmbtuX23l5CqTzlfCo
ZpOtZMcBEnWDxF06eTQSPuH4Cp844oTPRs+IXmN/zkUumdB3Eu2+Pr/d8xQz
npJdLxZRywIVYGneY0WzgkojbDi6Y4fFBuETk3hkJRO8PSlLKOI4b9Y57es9
IWvn4FKn3an9yy9sq798KS4A42nG+v3yi81Kh0HNK9SPRsyscs6pLhM67nTN
8M8p+wuqDc00eBmc2m0vkzxM7036qipPW1/xh+ieY6tQFtYkIKOcS7XkfMpS
9yzDozurDZnn3Nqp0VTyKgltNYimw9PDUxJNHecN3JE57nTpX4FVhV8mrmCG
/2QHG/+LFCd4ZCv5PbSv6KfODqlb+gvuCI0t/OK8fviL1oSMV7aKSaLxDY+J
+U+UMfHjryrJZj3oZ3D3BZPr7JhDsiN0viNcZ0fNNoyDstEq2rn5fnSPwfDf
6N17/vfd5T9+f3V3eYF/j96eXV/bf3T0jtHb999fX7h/uSfP39/cXL67kIfp
1yj4qbNzc/ZnM6f3t/dX79+dXe+076CY38x4yLSrObrUCRxddBz/7V8GxoM6
HAxOOc7AjpPBySEcJ7SH8jZmMfIn3A8dOlOkL7LDMoO/fknmRyaWCjhBLs7B
TueP/w0r899fRX8aT5aDw7/XH/DBwY9mzYIfec02f9l4WBax5aeW19jVDH5v
rHQ437M/B3+bdfd+xLH7JsnZTdgshf7lVfQHosNf9fRX6hhwrhl9rql9+WaC
r4P1N8q8Pf2l4W2HmUPm5KryTrO4v1RUsd+dZv8Hr4ZPXV349Q/I3HwBybJ5
Wb+rZ1xj9IFXrLGQACehDgNBHPjEpOtiqUkdRUa6OnsM9MOePOefeRlbPXiM
VCV9DuGCkoiPNbPGo+ykc9q0/4l8EFocLRPnWoIBiULGDSfrK9rWP0ZXDXXE
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
b+bW7/x/0rZPfiYhAQA=

-->

</rfc>
