<?xml version='1.0' encoding='utf-8'?>
<!DOCTYPE rfc [
  <!ENTITY nbsp    "&#160;">
  <!ENTITY zwsp   "&#8203;">
  <!ENTITY nbhy   "&#8209;">
  <!ENTITY wj     "&#8288;">
]>
<?xml-stylesheet type="text/xsl" href="rfc2629.xslt" ?>
<!-- generated by https://github.com/cabo/kramdown-rfc version 1.7.1 (Ruby 3.2.2) -->
<rfc xmlns:xi="http://www.w3.org/2001/XInclude" ipr="trust200902" docName="draft-egorbaty-httpbis-secondary-server-certs-01" category="std" consensus="true" submissionType="IETF" tocInclude="true" sortRefs="true" symRefs="true" version="3">
  <!-- xml2rfc v2v3 conversion 3.18.1 -->
  <front>
    <title abbrev="HTTP Server Secondary Cert Auth">Secondary Certificate Authentication of HTTP Servers</title>
    <seriesInfo name="Internet-Draft" value="draft-egorbaty-httpbis-secondary-server-certs-01"/>
    <author initials="E." surname="Gorbaty" fullname="Eric Gorbaty">
      <organization>Apple</organization>
      <address>
        <email>e_gorbaty@apple.com</email>
      </address>
    </author>
    <author initials="M." surname="Bishop" fullname="Mike Bishop">
      <organization>Akamai</organization>
      <address>
        <email>mbishop@evequefou.be</email>
      </address>
    </author>
    <date year="2023" month="October" day="12"/>
    <area>Applications and Real-Time</area>
    <workgroup>HTTP</workgroup>
    <abstract>
      <?line 34?>

<t>This document defines a way for HTTP/2 and HTTP/3 servers to send additional
certificate-based credentials after a TLS connection is established, based
on TLS Exported Authenticators.</t>
    </abstract>
    <note removeInRFC="true">
      <name>About This Document</name>
      <t>
        The latest revision of this draft can be found at <eref target="https://egorbaty.github.io/draft-httpbis-secondary-server-certs/draft-egorbaty-httpbis-secondary-server-certs.html"/>.
        Status information for this document may be found at <eref target="https://datatracker.ietf.org/doc/draft-egorbaty-httpbis-secondary-server-certs/"/>.
      </t>
      <t>
        Discussion of this document takes place on the
        HTTP Working Group mailing list (<eref target="mailto:ietf-http-wg@w3.org"/>),
        which is archived at <eref target="https://lists.w3.org/Archives/Public/ietf-http-wg/"/>.
      </t>
      <t>Source for this draft and an issue tracker can be found at
        <eref target="https://github.com/egorbaty/draft-httpbis-secondary-server-certs"/>.</t>
    </note>
  </front>
  <middle>
    <?line 40?>

<section anchor="introduction">
      <name>Introduction</name>
      <t>HTTP <xref target="HTTP"/> clients need to know that the content they receive on a
connection comes from the origin from which they intended to retrieve it. The
traditional form of server authentication in HTTP has been in the form of a
single X.509 certificate provided during the TLS <xref target="TLS13"/> handshake.</t>
      <t>TLS supports one server and one client certificate on a connection. These
certificates may contain multiple identities, but only one certificate may be
provided.</t>
      <t>Many HTTP servers host content from several origins. HTTP/2 <xref target="H2"/> and
HTTP/3 <xref target="H3"/> permit clients to reuse an existing HTTP connection to a
server provided that the secondary origin is also in the certificate provided
during the TLS handshake. In many cases, servers choose to maintain separate
certificates for different origins but still desire the benefits of a shared
HTTP connection. This document defines a capability for servers to use and
to authenticate with those seperate certificates over a shared connection.</t>
      <t>The ability to maintain seperate certificates for different origins can also
allow proxies that cache content from secondary origins to communicate to
clients that they can service some of those origins directly, allowing the
proxy to behave as a TLS-terminating reverse proxy for those origins instead of
establishing a TLS encrypted tunnel through the proxy.</t>
      <section anchor="server-certificate-authentication">
        <name>Server Certificate Authentication</name>
        <t><xref section="9.1.1" sectionFormat="of" target="H2"/> and <xref section="3.3" sectionFormat="of" target="H3"/> describe how connections may
be used to make requests from multiple origins as long as the server is
authoritative for both. A server is considered authoritative for an origin if
DNS resolves the origin to the IP address of the server and (for TLS) if the
certificate presented by the server contains the origin in the Subject
Alternative Names field.</t>
        <t><xref target="ALTSVC"/> enables a step of abstraction from the DNS resolution. If
both hosts have provided an Alternative Service at hostnames which resolve to
the IP address of the server, they are considered authoritative just as if DNS
resolved the origin itself to that address. However, the server's one TLS
certificate is still required to contain the name of each origin in question.</t>
        <t><xref target="ORIGIN"/> relaxes the requirement to perform the DNS lookup if already
connected to a server with an appropriate certificate which claims support for
a particular origin.</t>
        <t>Servers which host many origins often would prefer to have separate certificates
for some sets of origins. This may be for ease of certificate management
(the ability to separately revoke or renew them), due to different sources of
certificates (a CDN acting on behalf of multiple origins), or other factors
which might drive this administrative decision. Clients connecting to such
origins cannot currently reuse connections, even if both client and server
would prefer to do so.</t>
        <t>Because the TLS SNI extension is exchanged in the clear, clients might also
prefer to retrieve certificates inside the encrypted context. When this
information is sensitive, it might be advantageous to request a general-purpose
certificate or anonymous ciphersuite at the TLS layer, while acquiring the
"real" certificate in HTTP after the connection is established.</t>
      </section>
      <section anchor="tls-exported-authenticators">
        <name>TLS Exported Authenticators</name>
        <t>TLS Exported Authenticators <xref target="EXPORTED-AUTH"/> are structured messages
that can be exported by either party of a TLS connection and validated by the
other party. Given an established TLS connection, an authenticator message can
be constructed proving possession of a certificate and a corresponding private
key. The mechanisms that this draft defines are primarily focused on the
server's ability to generate TLS Exported Authenticators.</t>
        <t>Each Authenticator is computed using a Handshake Context and Finished MAC Key
derived from the TLS session. The Handshake Context is identical for both
parties of the TLS connection, while the Finished MAC Key is dependent on
whether the Authenticator is created by the client or the server.</t>
        <t>Successfully verified Authenticators result in certificate chains, with verified
possession of the corresponding private key, which can be supplied into a
collection of available certificates. Likewise, descriptions of desired
certificates can also be supplied into these collections.</t>
      </section>
      <section anchor="http-layer-certificate-authentication">
        <name>HTTP-Layer Certificate Authentication</name>
        <t>This draft defines HTTP/2 and HTTP/3 <tt>CERTIFICATE</tt> frames (<xref target="certs-http"/>) to
carry the relevant certificate messages, enabling certificate-based
authentication of servers independent of TLS version. This mechanism can be
implemented at the HTTP layer without breaking the existing interface between
HTTP and applications above it.</t>
        <t>TLS Exported Authenticators <xref target="EXPORTED-AUTH"/> allow the opportunity for an
HTTP/2 and HTTP/3 servers to send certificate frames which can be used to prove
the servers authenticity for multiple origins.</t>
        <t>This draft additionally defines SETTINGS parameters for HTTP/2 and HTTP/3
(<xref target="settings"/>) that allow the client and server to indicate support for
HTTP-Layer certificate authentication.</t>
      </section>
    </section>
    <section anchor="conventions-and-definitions">
      <name>Conventions and Definitions</name>
      <t>The key words "<bcp14>MUST</bcp14>", "<bcp14>MUST NOT</bcp14>", "<bcp14>REQUIRED</bcp14>", "<bcp14>SHALL</bcp14>", "<bcp14>SHALL
NOT</bcp14>", "<bcp14>SHOULD</bcp14>", "<bcp14>SHOULD NOT</bcp14>", "<bcp14>RECOMMENDED</bcp14>", "<bcp14>NOT RECOMMENDED</bcp14>",
"<bcp14>MAY</bcp14>", and "<bcp14>OPTIONAL</bcp14>" in this document are to be interpreted as
described in BCP 14 <xref target="RFC2119"/> <xref target="RFC8174"/> when, and only when, they
appear in all capitals, as shown here.</t>
      <?line -18?>

</section>
    <section anchor="discovery">
      <name>Discovering Additional Certificates at the HTTP Layer</name>
      <t>A certificate chain with proof of possession of the private key corresponding to
the end-entity certificate is sent as a sequence of <tt>CERTIFICATE</tt> frames (see
<xref target="http2-cert"/>, <xref target="http3-cert"/>) to the client. Once the holder of a certificate
has sent the chain and proof, this certificate chain is cached by the recipient
and available for future use.</t>
      <section anchor="settings-usage">
        <name>Indicating Support for HTTP-Layer Certificate Authentication</name>
        <t>The <tt>SETTINGS_HTTP_SERVER_CERT_AUTH</tt> parameters for HTTP/2 and HTTP/3 are
defined in <xref target="settings"/> so that clients and servers can indicate support for
secondary certificate authentication of servers.</t>
        <t>HTTP/2 and HTTP/3 endpoints who wish to indicate support for HTTP-Layer
certificate authentication <bcp14>MUST</bcp14> send a <tt>SETTINGS_HTTP_SERVER_CERT_AUTH</tt>
parameter set to "1" in their SETTINGS frame. Endpoints <bcp14>MUST NOT</bcp14> use any of the
authentication functionality described in this draft unless the parameter has
been negotiated by both sides.</t>
        <t>Endpoints <bcp14>MUST NOT</bcp14> send a <tt>SETTINGS_HTTP_SERVER_CERT_AUTH</tt> parameter with a
value of 0 after previously sending a value of 1.</t>
        <t><tt>SETTINGS_HTTP_SERVER_CERT_AUTH</tt> indicates that servers are able to offer
additional certificates to demonstrate control over other origin hostnames, and
that clients are able to make requests for hostnames received in a TLS Exported
Authenticator that the server sends.</t>
      </section>
      <section anchor="cert-available">
        <name>Making Certificates Available</name>
        <t>When both peers have advertised support for HTTP-layer certificates in a given
direction as in <xref target="settings-usage"/>, the indicated endpoint can supply
additional certificates into the connection at any time. That is, if both
endpoints have sent <tt>SETTINGS_HTTP_SERVER_CERT_AUTH</tt> and validated the value
received from the peer, the server may send certificates spontaneously, at any
time, as described by the <tt>Spontaneous Server Authentication</tt> message sequence
in <xref section="3" sectionFormat="of" target="EXPORTED-AUTH"/>.</t>
        <t>This does mean that if a server knows it supports secondary certificate
authentication, and it receives <tt>SETTINGS_HTTP_SERVER_CERT_AUTH</tt> from the
client, that it can enqueue certificates immediately following the received
SETTINGS frame.</t>
        <t>Certificates supplied by servers can be considered by clients without further
action by the server. A server <bcp14>SHOULD NOT</bcp14> send certificates which do not cover
origins which it is prepared to service on the current connection, and <bcp14>SHOULD
NOT</bcp14> send them if the client has not indicated support with
<tt>SETTINGS_HTTP_SERVER_CERT_AUTH</tt>.</t>
        <t>A client <bcp14>MUST NOT</bcp14> send certificates to the server. The server <bcp14>SHOULD</bcp14> close the
connection upon receipt of a CERTIFICATE frame from a client.</t>
        <figure anchor="ex-http-server-unprompted-basic">
          <name>Simple unprompted server authentication</name>
          <sourcecode type="drawing"><![CDATA[
Client                                        Server
   <-- (stream 0 / control stream) CERTIFICATE --
   ...
   -- (stream N) GET /from-new-origin ---------->
   <----------------------- (stream N) 200 OK ---
]]></sourcecode>
        </figure>
        <t>A server <bcp14>MAY</bcp14> send a <tt>CERTIFICATE</tt> immediately after sending its <tt>SETTINGS</tt>.
However, it <bcp14>MAY</bcp14> also send certificates at any time later. For example, a proxy
might discover that a client is interested in an origin that it can reverse
proxy at the time that a client sends a <tt>CONNECT</tt> request. It can then send
certificates for those origins to allow for TLS-terminated reverse proxying to
those origins for the remainder of the connection lifetime.
<xref target="ex-http-server-unprompted-reverse"/> illustrates this behavior.</t>
        <figure anchor="ex-http-server-unprompted-reverse">
          <name>Reverse proxy server authentication</name>
          <sourcecode type="drawing"><![CDATA[
Client                                        Server
   -- (stream N) CONNECT /to-new-origin -------->
   <-- (stream 0 / control stream) CERTIFICATE --
   <-- (stream 0 / control stream) 200 OK -------
   ...
   -- (stream M) GET /to-new-origin ------------>
   <--- (stream M, direct from server) 200 OK ---
]]></sourcecode>
        </figure>
      </section>
    </section>
    <section anchor="settings">
      <name>SETTINGS_HTTP_SERVER_CERT_AUTH</name>
      <t>SETTINGS parameters for HTTP/2 and HTTP/3 seperately are defined below.</t>
      <section anchor="the-settingshttpservercertauth-http2-settings-parameterhttp2-setting">
        <name>The SETTINGS_HTTP_SERVER_CERT_AUTH HTTP/2 SETTINGS Parameter{#http2-setting}</name>
        <t>This document adds a new HTTP/2 SETTINGS(0xTBD) parameter to those defined by
<xref section="6.5.2" sectionFormat="of" target="H2"/>.</t>
        <t>The new parameter name is <tt>SETTINGS_HTTP_SERVER_CERT_AUTH</tt>. The value of the
parameter <bcp14>MUST</bcp14> be 0 or 1.</t>
        <t>The usage of this parameter is described in <xref target="settings-usage"/>.</t>
      </section>
      <section anchor="the-settingshttpservercertauth-http3-settings-parameterhttp3-setting">
        <name>The SETTINGS_HTTP_SERVER_CERT_AUTH HTTP/3 SETTINGS Parameter{#http3-setting}</name>
        <t>This document adds a new HTTP/3 SETTINGS(0xTBD) parameter to those defined by
<xref section="7.2.4.1" sectionFormat="of" target="H3"/>.</t>
        <t>The new parameter name is <tt>SETTINGS_HTTP_SERVER_CERT_AUTH</tt>. The value of the
parameter <bcp14>MUST</bcp14> be 0 or 1.</t>
        <t>The usage of this parameter is described in <xref target="settings-usage"/>.</t>
      </section>
    </section>
    <section anchor="certs-http">
      <name>CERTIFICATE frame</name>
      <t>The CERTIFICATE frame contains an exported authenticator message from the TLS
layer that provides a chain of certificates and associated extensions, proving
possession of the private key corresponding to the end-entity certificate.</t>
      <t>A server sends a CERTIFICATE frame on stream 0 for HTTP/2 and on the control
stream for HTTP/3. The client is permitted to make subsequent requests for
resources upon receipt of a CERTIFICATE frame without further action from the
server.</t>
      <t>Upon receiving a complete series of CERTIFICATE frames, the receiver may
validate the Exported Authenticator value by using the exported authenticator
API. This returns either an error indicating that the message was invalid or
the certificate chain and extensions used to create the message.</t>
      <section anchor="http2-cert">
        <name>HTTP/2 CERTIFICATE frame</name>
        <t>A CERTIFICATE frame in HTTP/2 (type=0xTBD) carrries a TLS Exported authenticator
that clients can use to authenticate secondary origins from a sending server.</t>
        <t>The CERTIFICATE frame <bcp14>MUST</bcp14> be sent on stream 0. A CERTIFICATE frame received on
any other stream <bcp14>MUST</bcp14> not be used for server authentication.</t>
        <figure>
          <name>HTTP/2 CERTIFICATE Frame</name>
          <artwork type="ascii-art"><![CDATA[
CERTIFICATE Frame {
  Length (24),
  Type (8) = 0xTBD,

  Unused Flags (8),

  Reserved (1),
  Stream Identifier (31) = 0,

  Authenticator (..),
}
]]></artwork>
        </figure>
        <t>The Length, Type, Unused Flag(s), Reserved, and Stream Identifier fields are
described in <xref section="4" sectionFormat="of" target="H2"/>.</t>
        <t>The CERTIFICATE frame does not define any flags.</t>
        <t>The authenticator field is a portion of the opaque data returned from the TLS
connection exported authenticator authenticate API. See <xref target="exp-auth"/> for more
details on the input to this API.</t>
        <t>The CERTIFICATE frame applies to the connection, not a specific stream. An
endpoint <bcp14>MUST</bcp14> treat a CERTIFICATE frame with a stream identifier other than
0x00 as a connection error.</t>
      </section>
      <section anchor="http3-cert">
        <name>HTTP/3 CERTIFICATE frame</name>
        <t>A CERTIFICATE frame in HTTP/3 (type=0xTBD) carrries a TLS Exported authenticator
that clients can use to authenticate secondary origins from a sending server.</t>
        <t>The CERTIFICATE frame <bcp14>MUST</bcp14> be sent on the control stream. A CERTIFICATE frame
received on any other stream <bcp14>MUST</bcp14> not be used for server authentication.</t>
        <figure>
          <name>HTTP/3 CERTIFICATE Frame</name>
          <artwork type="ascii-art"><![CDATA[
CERTIFICATE Frame {
  Type (i) = 0xTBD,
  Length (i),
  Authenticator (...),
}
]]></artwork>
        </figure>
        <t>The Type and Length fields are described in <xref section="7.1" sectionFormat="of" target="H3"/>.</t>
        <t>The authenticator field is a portion of the opaque data returned from the TLS
connection exported authenticator authenticate API. See <xref target="exp-auth"/> for more
details on the input to this API.</t>
        <t>The CERTIFICATE frame applies to the connection, not a specific stream. An
endpoint <bcp14>MUST</bcp14> treat a CERTIFICATE frame received on any stream other than the
control stream as a connection error.</t>
      </section>
      <section anchor="exp-auth">
        <name>Exported Authenticator Characteristics</name>
        <t>The Exported Authenticator API defined in <xref target="EXPORTED-AUTH"/> takes as input a
request, a set of certificates, and supporting information about the
certificate (OCSP, SCT, etc.). The result is an opaque token which is used
when generating the <tt>CERTIFICATE</tt> frame.</t>
        <t>Upon receipt of a <tt>CERTIFICATE</tt> frame, an endpoint which has negotiated support
for secondary certfiicates <bcp14>MUST</bcp14> perform the following steps to validate the
token it contains:</t>
        <ul spacing="normal">
          <li>
            <t>Using the <tt>get context</tt> API, retrieve the <tt>certificate_request_context</tt> used
to generate the authenticator, if any. Because the <tt>certificate_request_context</tt>
for spontaneous server certificates is chosen by the server, the usage of
the <tt>certificate_request_context</tt> is implementation-dependent. For details,
see <xref section="5" sectionFormat="of" target="EXPORTED-AUTH"/>.</t>
          </li>
          <li>
            <t>Use the <tt>validate</tt> API to confirm the validity of the authenticator with
regard to the generated request, if any.</t>
          </li>
        </ul>
        <t>If the authenticator cannot be validated, this <bcp14>SHOULD</bcp14> be treated as a connection
error.</t>
        <t>Once the authenticator is accepted, the endpoint can perform any other checks
for the acceptability of the certificate itself.</t>
      </section>
    </section>
    <section anchor="errors">
      <name>Indicating Failures During HTTP-Layer Certificate Authentication</name>
      <t>Because this draft permits certificates to be exchanged at the HTTP framing
layer instead of the TLS layer, several certificate-related errors which are
defined at the TLS layer might now occur at the HTTP framing layer.</t>
      <t>There are two classes of errors which might be encountered, and they are handled
differently.</t>
      <section anchor="misbehavior">
        <name>Misbehavior</name>
        <t>This category of errors could indicate a peer failing to follow requirements in
this document or might indicate that the connection is not fully secure. These
errors are fatal to stream or connection, as appropriate.</t>
        <dl>
          <dt>CERTIFICATE_UNREADABLE (0xERROR-TBD):</dt>
          <dd>
            <t>An exported authenticator could not be validated.</t>
          </dd>
        </dl>
      </section>
      <section anchor="invalid-certificates">
        <name>Invalid Certificates</name>
        <t>Unacceptable certificates (expired, revoked, or insufficient to satisfy the
request) are not treated as stream or connection errors. This is typically not
an indication of a protocol failure. Clients <bcp14>SHOULD</bcp14> establish a new connection
in an attempt to reach an authoritative server if they deem a
certificate from the server unacceptable.</t>
      </section>
    </section>
    <section anchor="security">
      <name>Security Considerations</name>
      <t>This mechanism defines an alternate way to obtain server and client certificates
other than in the initial TLS handshake. While the signature of exported
authenticator values is expected to be equally secure, it is important to
recognize that a vulnerability in this code path is at least equal to a
vulnerability in the TLS handshake.</t>
      <section anchor="impersonation">
        <name>Impersonation</name>
        <t>This mechanism could increase the impact of a key compromise. Rather than
needing to subvert DNS or IP routing in order to use a compromised certificate,
a malicious server now only needs a client to connect to <em>some</em> HTTPS site
under its control in order to present the compromised certificate. Clients
<bcp14>SHOULD</bcp14> consult DNS for hostnames presented in secondary certificates if they
would have done so for the same hostname if it were present in the primary
certificate.</t>
        <t>As recommended in <xref target="ORIGIN"/>, clients opting not to consult DNS ought to employ
some alternative means to increase confidence that the certificate is
legitimate, such as an <tt>ORIGIN</tt> frame.</t>
        <t>As noted in the Security Considerations of <xref target="EXPORTED-AUTH"/>, it is difficult to
formally prove that an endpoint is jointly authoritative over multiple
certificates, rather than individually authoritative on each certificate. As a
result, clients <bcp14>MUST NOT</bcp14> assume that because one origin was previously
colocated with another, those origins will be reachable via the same endpoints
in the future. Clients <bcp14>MUST NOT</bcp14> consider previous secondary certificates to be
validated after TLS session resumption. Servers <bcp14>MAY</bcp14> re-present certificates
if a TLS Session is resumed.</t>
      </section>
      <section anchor="fingerprinting">
        <name>Fingerprinting</name>
        <t>This draft defines a mechanism which could be used to probe servers for origins
they support, but it opens no new attack that was not already possible by
making repeat TLS connections with different SNI values.</t>
      </section>
      <section anchor="persistence-of-service">
        <name>Persistence of Service</name>
        <t>CNAME records in the DNS are frequently used to delegate authority for an origin
to a third-party provider. This delegation can be changed without notice, even
to the third-party provider, simply by modifying the CNAME record in question.</t>
        <t>After the owner of the domain has redirected traffic elsewhere by changing the
CNAME, new connections will not arrive for that origin, but connections which
are properly directed to this provider for other origins would continue to
claim control of this origin (via Secondary Certificates). This is proper
behavior based on the third-party provider's configuration, but would likely
not be what is intended by the owner of the origin.</t>
        <t>This is not an issue which can be mitigated by the protocol, but something about
which third-party providers <bcp14>SHOULD</bcp14> educate their customers before using the
features described in this document.</t>
      </section>
      <section anchor="confusion-about-state">
        <name>Confusion About State</name>
        <t>Implementations need to be aware of the potential for confusion about the state
of a connection. The presence or absence of a validated certificate can change
during the processing of a request, potentially multiple times, as
<tt>CERTIFICATE</tt> frames are received. A client that uses certificate
authentication needs to be prepared to reevaluate the authorization state of a
request as the set of certificates changes.</t>
        <t>Behavior for TLS-Terminated reverse proxies is also worth considering. If a
server which situationally reverse-proxies wishes for the client to view a
request made prior to receipt of certificates as TLS-Terminated, or wishes for
the client to start a new tunnel alternatively, this draft does not currently
define formal mechanisms to facilitate that intention.</t>
      </section>
    </section>
    <section anchor="iana-considerations">
      <name>IANA Considerations</name>
      <t>This document registers the <tt>CERTIFICATE</tt> frame type and
<tt>SETTINGS_HTTP_SERVER_CERT_AUTH</tt> setting for both <xref target="H2"/> and <xref target="H3"/>.</t>
      <section anchor="frame-types">
        <name>Frame Types</name>
        <t>This specification registers the following entry in the "HTTP/2 Frame Type"
registry defined in <xref target="H2"/>:</t>
        <t>Code: : TBD</t>
        <t>Frame Type: : CERTIFICATE</t>
        <t>Reference: : This document</t>
        <t>This specification registers the following entry in the "HTTP/3 Frame Types"
registry established by <xref target="H3"/>:</t>
        <t>Value: : TBD</t>
        <t>Frame Type: : CERTIFICATE</t>
        <t>Status: : permanent</t>
        <t>Reference: : This document</t>
        <t>Change Controller: : IETF</t>
        <t>Contact: : ietf-http-wg@w3.org</t>
      </section>
      <section anchor="settings-parameters">
        <name>Settings Parameters</name>
        <t>This specification registers the following entry in the "HTTP/2 Settings"
registry defined in <xref target="H2"/>:</t>
        <t>Code: : TBD</t>
        <t>Name: : SETTINGS_HTTP_SERVER_CERT_AUTH</t>
        <t>Initial Value: : 0</t>
        <t>Reference: : This document</t>
        <t>This specification registers the following entry in the "HTTP/3 Settings"
registry defined in <xref target="H3"/>:</t>
        <t>Code: : TBD</t>
        <t>Name: : SETTINGS_HTTP_SERVER_CERT_AUTH</t>
        <t>Default: : 0</t>
        <t>Reference: : This document</t>
        <t>Change Controller: : IETF</t>
        <t>Contact: : ietf-http-wg@w3.org</t>
      </section>
    </section>
  </middle>
  <back>
    <references>
      <name>References</name>
      <references anchor="sec-normative-references">
        <name>Normative References</name>
        <reference anchor="HTTP">
          <front>
            <title>HTTP Semantics</title>
            <author fullname="R. Fielding" initials="R." role="editor" surname="Fielding"/>
            <author fullname="M. Nottingham" initials="M." role="editor" surname="Nottingham"/>
            <author fullname="J. Reschke" initials="J." role="editor" surname="Reschke"/>
            <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="TLS13">
          <front>
            <title>The Transport Layer Security (TLS) Protocol Version 1.3</title>
            <author fullname="E. Rescorla" initials="E." surname="Rescorla"/>
            <date month="August" year="2018"/>
            <abstract>
              <t>This document specifies version 1.3 of the Transport Layer Security (TLS) protocol. TLS allows client/server applications to communicate over the Internet in a way that is designed to prevent eavesdropping, tampering, and message forgery.</t>
              <t>This document updates RFCs 5705 and 6066, and obsoletes RFCs 5077, 5246, and 6961. This document also specifies new requirements for TLS 1.2 implementations.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8446"/>
          <seriesInfo name="DOI" value="10.17487/RFC8446"/>
        </reference>
        <reference anchor="H2">
          <front>
            <title>HTTP/2</title>
            <author fullname="M. Thomson" initials="M." role="editor" surname="Thomson"/>
            <author fullname="C. Benfield" initials="C." role="editor" surname="Benfield"/>
            <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="H3">
          <front>
            <title>HTTP/3</title>
            <author fullname="M. Bishop" initials="M." role="editor" surname="Bishop"/>
            <date month="June" year="2022"/>
            <abstract>
              <t>The QUIC transport protocol has several features that are desirable in a transport for HTTP, such as stream multiplexing, per-stream flow control, and low-latency connection establishment. This document describes a mapping of HTTP semantics over QUIC. This document also identifies HTTP/2 features that are subsumed by QUIC and describes how HTTP/2 extensions can be ported to HTTP/3.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="9114"/>
          <seriesInfo name="DOI" value="10.17487/RFC9114"/>
        </reference>
        <reference anchor="EXPORTED-AUTH">
          <front>
            <title>Exported Authenticators in TLS</title>
            <author fullname="N. Sullivan" initials="N." surname="Sullivan"/>
            <date month="July" year="2022"/>
            <abstract>
              <t>This document describes a mechanism that builds on Transport Layer Security (TLS) or Datagram Transport Layer Security (DTLS) and enables peers to provide proof of ownership of an identity, such as an X.509 certificate. This proof can be exported by one peer, transmitted out of band to the other peer, and verified by the receiving peer.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="9261"/>
          <seriesInfo name="DOI" value="10.17487/RFC9261"/>
        </reference>
        <reference anchor="RFC2119">
          <front>
            <title>Key words for use in RFCs to Indicate Requirement Levels</title>
            <author fullname="S. Bradner" initials="S." surname="Bradner"/>
            <date month="March" year="1997"/>
            <abstract>
              <t>In many standards track documents several words are used to signify the requirements in the specification. These words are often capitalized. This document defines these words as they should be interpreted in IETF documents. This document specifies an Internet Best Current Practices for the Internet Community, and requests discussion and suggestions for improvements.</t>
            </abstract>
          </front>
          <seriesInfo name="BCP" value="14"/>
          <seriesInfo name="RFC" value="2119"/>
          <seriesInfo name="DOI" value="10.17487/RFC2119"/>
        </reference>
        <reference anchor="RFC8174">
          <front>
            <title>Ambiguity of Uppercase vs Lowercase in RFC 2119 Key Words</title>
            <author fullname="B. Leiba" initials="B." surname="Leiba"/>
            <date month="May" year="2017"/>
            <abstract>
              <t>RFC 2119 specifies common key words that may be used in protocol specifications. This document aims to reduce the ambiguity by clarifying that only UPPERCASE usage of the key words have the defined special meanings.</t>
            </abstract>
          </front>
          <seriesInfo name="BCP" value="14"/>
          <seriesInfo name="RFC" value="8174"/>
          <seriesInfo name="DOI" value="10.17487/RFC8174"/>
        </reference>
      </references>
      <references anchor="sec-informative-references">
        <name>Informative References</name>
        <reference anchor="ALTSVC">
          <front>
            <title>HTTP Alternative Services</title>
            <author fullname="M. Nottingham" initials="M." surname="Nottingham"/>
            <author fullname="P. McManus" initials="P." surname="McManus"/>
            <author fullname="J. Reschke" initials="J." surname="Reschke"/>
            <date month="April" year="2016"/>
            <abstract>
              <t>This document specifies "Alternative Services" for HTTP, which allow an origin's resources to be authoritatively available at a separate network location, possibly accessed with a different protocol configuration.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="7838"/>
          <seriesInfo name="DOI" value="10.17487/RFC7838"/>
        </reference>
        <reference anchor="ORIGIN">
          <front>
            <title>The ORIGIN HTTP/2 Frame</title>
            <author fullname="M. Nottingham" initials="M." surname="Nottingham"/>
            <author fullname="E. Nygren" initials="E." surname="Nygren"/>
            <date month="March" year="2018"/>
            <abstract>
              <t>This document specifies the ORIGIN frame for HTTP/2, to indicate what origins are available on a given connection.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8336"/>
          <seriesInfo name="DOI" value="10.17487/RFC8336"/>
        </reference>
      </references>
    </references>
    <?line 514?>

<section numbered="false" anchor="acknowledgments">
      <name>Acknowledgments</name>
      <t>Thanks to Mike Bishop, Nick Sullivan, Martin Thomson and other
contributors for their work on the draft that this is based on.</t>
      <t>And thanks to Eric Kinnear and Tommy Pauly for their guidance and
editorial contributions to this draft.</t>
      <t>TODO: Other acknowledgements</t>
    </section>
  </back>
  <!-- ##markdown-source:
H4sIAAAAAAAAA+1c63LbyJX+30/RK/+IlCJpy/JMZlSZSWhJnlHFkrwinUtt
bdkg0CR7BAIMGpDEuDTPss+yT7bn1o0GSFmeJLtVqVpXMpJw6cu5fOfS52A4
HKra1rk51nsTk5ZFllQbfWKq2s5tmtRGj5t6aYoa/7Blocu5/nE6facnpro1
ldtTyWxWmVt4Pbqsu0PRGHsKh1uU1eZYuzpTKivTIlnBxFmVzOsh3pol9Wa4
rOv1zLqh82PAbzjoMIWh3PDFoXLNbGWdg+XUmzUMcH42faP1M53kroSF2CIz
awP/Keq9gd47H7+GH2UFv11P3+ypolnNTHWsMljOsYI5nClc4451XTVGwU6O
VFKZBAYar9e57NvppMj0tUny4dSuzJ66K6ubRVU2a9n5nro1RQMDat29rDUv
cu9P8IYtFvoHvI3XV4nNcbmmntOmh3eL398djcpqgXeTKl3CXbzhjp8/z62r
3YhvPx/DPXtr3PN3zQxW+Dwe4jm+vLD1spnB656qz5nIn6ctvpkDVVwdTexH
GPGYI1t+0VjPfxFXR8t6le8plYCglMAbPYSlaG0LYMvZSP/Ag9C1eZPnLDdn
lU07t4A0SWH/Rgw71sg9Q9eNUNp8kNX8PsF7o7Rc7XWmuhjp19YtyzVd4lku
7I2Jr8IkMPZNAmPGg69m9Mjvza35a2PmZTOaGaWGw6FOZq6ukrRWarq0ToPY
NysQTZ2ZuS0MCJa+SzZ6DgKKAvP8JUka/XqkmUZO1yX8CpeTLLO4uyRXaauj
w1niTKbTyqDMW1ADDbQHNUz09O1EA8ELk5L2wvzA3QSExi1NNtD0ooIb+NzZ
/bqsahgoUvmyciPexspmGdBTPdPnRV2VWUMjKkVq/+nTv+HP767fnHx7ePji
4UGnuYUhnC4MDAjLvynKO10vkxr+Y3BJNdIAft/oyqQGpFnDMhIVLRbYA+SZ
V+WK3ikru7AF/323tOmS37Y4UsaTVKauLHBA23qkp0ujgPCeYEjhFcIX01Qn
XVyDkWkny8TpmTF0AWf1byXKgfLmRv959NWLb3VEfb2uyluLK8iaChUcX0N6
AlHgx+ERUuWbV6++BqosgbdumdwYICo+4po10tzB3k1YGPAZ/2QKdmZCCkXs
pD06E4uCA1TZEHkT2MCqyWsLkq4tCUZtjQOeNzUMlG94kmh0fBOE1m8HlniR
FBsmixfEZenqwD1ihQN6V0BeZo8beSlGkXgpAnEEW4dtKZFqvHUkt17BrbWp
VrYOIkOMbJyBV7S5B9xDotIqIuGAh4AlTLHAgCBfAWW81IDgo3XwXN3FPtVj
X8srkHggDpAiBXUBCnpipMuyhGXCUgADmOLOrJMKRu3yBJU7s/O5qZBsQili
BGwuzwEKnK0MzTwzBeACSgTInIb5QalVb/PI991IkibrZGZzWzOgRPDB9MwU
0q2VfKPvANVhYtwHrN3g2nVn7SXJpKwkXgTiGYwp0/WIsGOg3URIgcnIGZXk
OSAEMOMepJQ5mSZphBUibV3G0t4AKFZNwfupSxXkSKRhQ5MgLWwKuwRUQeLy
nv0oGdA/rfPNQNM6RA5QF+5pbzOzTABXEseYOqxRZIuERLNCDXAkSPdM9+7Y
8P/aJKDUcxXAF99jdDZFWm3WCLt1A7TN4WVwEBaEbjwkUPrZM+9ZPe6aKfXp
00S049vR4eiQfLWXrHq6vXc0OqI7qJQgeGllZwb0+i7iLaGIgsuNY2BdgRrA
PsGygRfCnAjY4rcJtMlL3JYTFaT1WidG3dawylsCVD0r6+VIj9tncG4HSogi
tv04cM+r8VydXk5gJa7Mb42L7QKsEv86f4dGEh5wzOQOrO7jaED0AxiI+NvF
AcDSAhkx28QvCph2JhMYmTSzn4BiapyDPBS84MuErJY1OSLop0+/G7+dTv54
gnD3m2+OvgGimwJkgNQV5GJNii4uArIn2Luw0YZ1/nyukG4EwQDEKI4B+IBC
8RomIusg//h0QUtimymkQz35HLkGrDig84+z5qcGbAFwG2gJa1UyctahU+1M
PmfewGJkKrAR5Z3xs8iMv2IjCNzpcAVkgzESpc9WLI7evuHbuDlcuwGwiNhD
osowBTy4uj7/4fySDPHRERriyuTJvQiQjExQCoMDdpHR9zzIy/KmWeMukxzi
gmzjfRReS+LlhJAU0WwNbFlXtgeAQv80T+zKecOP4q0SDTYDtLjJk0p2AKuW
AEteI7tLNsirWwkeXqHvyibPUHQBVnE1JBbeCHXwV5FBQPBzhs1LsNhkTdj6
k76ZxBFJu85BkSyIRmq/7uK+ny5HV+62vEHuw2+FQYfPrA4G4BiRlWzR35VN
laJxmXcN5X6iT04vNaoCIAloA+IuCBAspo83BxTTgULAxufwAniqimm1sosl
GMUKZbTGrSUZYLVFFSO5zUxqHanUiVgKj3yI+rCfJl2qyD4VJZiipsKF0xbR
lEZYOdAgyghNBGvebUO4YcFQfR5lMEUJHH5t0gTH8g7H5PIc/B3gqvOu+n0K
TsgC5My7LblJQGm8geONkvVsRw8+cIewlnSYBmkNDlnWe3CV/wRmhEilbIGy
n/hgAUNji0QbgCrLfCAkSXabgAYuTNmIu0bqBrqwALaDNzhcN9W67LqmmpC8
LDYrfCu1a+Cca2xNMOVpkCcbhAVgJHA6SVExvS3eA+XL9zpC6Z12jnYksNgd
67AR/UyYww75IzfRZT3787ur6+nZ6XD8fvojea8vvz5E6woYCbIF8VCD8ARQ
64AyTokLgzIMnJRhwbQYSzKLOr9hL68XpKHo3Ca5xQSFN0aqbF+CeNiixKF7
3G6wN8qAoCjehF8ZrgltO+I6LdtkbEiAzsAz8HCdJHqSDrFxWRh9gCK4NThh
9DwoGXq7N2ZDwQjMgSJr3Sq4X+ioYiqg9VIrNFx2lVQ2R3cpJSejJAlXwRZE
+MIyVZsngtQzNACdq+xYrNYNPt849rl+9G69PmHxp429QYBAKl6MT/QfzEaB
wbNozII5pnCNacNb3R4IpuNAK+VwkwBBEbibYF/7bGJRxzv9NeB4IZMFBAJ4
MyQF+PD2RkE9IudFYKisIhOLVqVJAXcdJlE2Gi4Bc7eFHRgMYIvaFfMfGGsR
7cjO+VdVV2JYBXdIiAYJGXgTyDqBJjC3BG4UzKVlnosGoOzdJjZHP6mDYyP9
1t6YO+sAkNh3XbO/Cm9wEJV1DYoPL7YnrDF01u2kjhEC8WT4FlHos672dFuu
t7M3H0/Orqfnb85PxtOzjyBJ5Ibtf/rEiUzMiD08HFDEklTVRnyR3CC2dm2v
QMqAXUck61b2RyVbeVof/UX5ULyMAojX20AyKK2wRtkVGNoVO8MCzoSzhM4k
ACXErjOQuBsfMYdAHfMxFRhkDGXrO2MKjl4JPTr51FnJiZqngLeDu4i3FCiS
k0k+FER+Eu4mPNfnU2gxYYUlHbH0IQ9ColGt8rgWTf18fZdk1JGLNlcHquaF
ZHI2nZ5f/jBBJIe5axx3Z+pPgZyAo4YkdSQl5D+HrW95GbhkYDTvK/YuI4Hu
oHlHXFD2EcZu8ZLPdp/immkLjmN90GFwOKvM6b2L95MpJtfxp768ot+vz/79
/fn12Sn+Pvlx/PZt+EXJE5Mfr96/PW1/a988ubq4OLs85Zfhqu5cUnsX47/s
DWhVe1fvpudXl+O3e+wVxYkQNC0UrLMUglNEEuyUj3PJk3p98u6//+vwFdp0
sOIvDw+/BaniP745/A0mpABoi4Ek4oB5/CcGRApEGFwwHAV4gekWCIZyUEwI
gxzE0IUGfMbk3q//Aynzn8f6t7N0ffjqe7mAG+5c9DTrXCSabV/ZepmJuOPS
jmkCNTvXe5Turnf8l87fnu7Rxd/+DsDI6OHhN7/7XqEInVqXYsIIgWAc5D9G
UtcBFJbLT88yeW/zoNR42+qwzQGNLCkU2LY5kZXp2R+Jc0Hzh5QC3eh+dEmC
Q9E4erFFSqHPbuh2xkA0icD9ks4tHh4Gmv8+kr8PfB6CFXSkr3BAvLAsc/Ap
ttwqhQlnJ7lw2S0KHm12wPK9TQ+8iMmxYO4riGnWOKMioA3GE7Fl3qBnisDG
Ju6cYQKpM2mB4sssH/DKo9KwQaP0wNDw0QPbBxzmw+Ts+o9n1x+QiB8Qtj8+
iXeou4pRkpQ0Rj8IlyQhKIFPC3ts4XcCX5sqfBz3IjM5UjuMB4jNurQ45d2y
BCl0y8dwNiKf+sx8BAJ8lPMkzVSgGYbsOPHeoYCesVVrSkg6R/osrNUjjSR9
N6IlfRdh3hQpKyiqRQciI7e9KXLMDpGWhfWA0Co6JSnMoqytdzwpAMZAk/zx
7fV84cajiTipoiAcakgvX0isB9B+ayGOBHTGQdm1D08dwvRPTuK5KJFKsPIV
JjdyMiQl5itUa8i7MTWG8mZFURRpZonnYjknzDlck3RUyMENOAXfEeVoul6W
FYSqzd7JIRlxJ+lEQqobCkRnIOQXIHnEt71gd62DxuMAFZ+e4e6GATtAsykv
QExdGzr9oRx4dosDoJu0Jf95389wvN4FBqyKk+wU4rqujguWPHBC0HMmC/rH
GXz03zePssN79Z1Quib5ry0qyBQpY4EJkqpRrXZL2gwmelJsutE5zkdipwKD
QsSINIsznJRi6/ugAP5rzGYWhqR5IEtWuGRyK1q9FKj/OGlf8KcCXZD+GEJ9
b9IUUTucAKCO9Nzq4LuWeIZokoIFyc7bBCce4TrMA4VTy50Q24MZ9qPgLSGQ
e5rEnoJykjOQpbAUmAK21PTTW6uVySznIOdldIIT9Eb14FKpjhqE2HC26ViW
WSf/DTe93vogaN5UqOpKsvedo4PoiKP1y3ZIAMcfWakp04j4EdKPfMtSbgEw
b51IBtyfZpWSGOT0ZC//k8m0KkyL+Vg5+/AhBPofOG+rdF6rcYtPwuiIHDYe
qovzfayM6TJtlUIok+Ylp0LjCoAGJJ05uK7Zc4rcMmYkC0vi/S2lfv75Z7Rc
KACK87v6C/+xLmFRx2+HQ3D2aohvV2Bxngdo50sHnVUMqX5kNBrhj+i9ywP9
w9lUP8f1DQtzNxRjMAz/vpepdv6Lx3n54oW++gO+ibtTn471M3PP9T5SRNMU
4C+uMKmL2QCbaqrp+m5vQpG8bm/vrn7YI7dbboHfHwx1xwuOlYytsDe9eF4d
BAVEIhzvgODicJSB2RaKCJ2p7ggE4w0eP9wnuGqQYD7/VJLQlxhBQmEvdNZx
sAc2U6xjOC2MYUMOaeVEV0wkzdwdjswlbf3q8vLsZPrRG+SRPueRkHD02PYZ
f/fcF7NaFLDLqWM4NIZ1ds6MQ5wSvz2X1F2FBUaFhA4985bbuSHbBlHJ4xIh
c4EfbfO8YW/FsYtHx9q2rP5JetMVW6Ggfl6XuxTg+79P0556o1UW/LdbNy9E
N3cvrKOb7TsDKRLwhQi46V+om57rop3XncKBRzXzmf48Bkcx2YP64gRTqNLI
+ZjXx14zAyIrpyV4xP35qWXYMOs7P+unZxwmy8oeesVv4MShluEZYW+I/Rf3
09enB1EMQLYDVSMscROVOnw9+mr00pc6SFEKDtu+TyfE9mm/g81SCCKo/iMM
QrYNvIEXmFI/lHnIa+Vn0T6Hh63rhlPbju4vI/DRowQ++lICH/3dBP7N6OXo
lVSTHP2LkXiHv8BhjqTfeY7th0LNB5WgSWZ692lafECkOP4hiyK1GVSVRTmb
7oE6JzES58qUw+dw8gsBihzH7Thc+VyiSz+e6BpF9t1buO1dwzQBWHuY4f1M
Blslj4WHjpixrUnmkr46qh5yzYyjkboT4lLZCBcDfIm313O7da9oRoWDrvdh
sFtODuBBYG5q8jvlOG5reDeIYwYK2JSP9ejO7lMKEWjw/fmQkc9DdkmNGr87
l0OXytRNBRImx8EoaFWFR3ltdi6E8l7W7ihuphWBjlBiczs3iOxqhSmcZ/D5
YDxce+AFTN6lKFGiE8Rn+wk5foe397HG/TsBFjzNIhJ38xQ9SnSyIOhXNVxK
2alO3C73E3ffe56B37v12EOK4xPUIN4YmW0/HUL4slCUNiPOePuPQ2Gg5M+I
2gLL7cOUn8M/UPHU2mFS1Sqe8A2TGLyMt6ZY1Eu9//LVwQD+nAIh9f43B/o7
TeQcKLj4vqAZ3+TJwuFNunhtaPZM7x/SmxNe5zmdQM8tLGv/6JDGoce7Ers/
GsFLD9FC0XURv2SHSNB69wQveckDWusgXtw+VuX4dUkEurUqKo1zku/tILi3
OK965nybU5SlQGawxaIwYo7U8VWpnc3SjFQCrFEUIzgt1wlAkQb9TkQhe0f+
cTT6iCHoCCzp98QAa8EhXw/xHvjddFhY0obBrOTOw6kt1k3NyA2rw3cf2zAd
nbZxdBznIxlAIdYmRRwQcQUBL0J+i2UXr9ePgipVIxKrbMuqUsoNkkK9uAdH
l45JYoogYkUwcvQojBx9AYwc/cvASGQKW3pvv6ciQNH/Z4DCCGIjBGlBxhJS
bEHBU1hw9DgW0Gyo6DJFq919/6z1J/u+5P9r6y/R1r5QiTi1uuqzaJF4fk5z
H/FpTpYJliSDs+TgkgM9DiTibT/yHtBFd87x+vUbNXiDjk8AkJ6JEndwQPpY
9/1kNiOSk+QCk7ZEMZmhM1j3Krn3r04m7wZ6cjIdaFOnowP2Tn1ZE3n1Ikt1
eYNVtJxlZWcJy6wKX3Tm3bkd58EdJ9N7rDueo0q8wFwp58Wka3t0JrvjEt1O
Tn1uJVogoYhLk9s0N1aRk6zFrqrindk6xDLHSg31++CgflyY2leAfkSuDdrS
UbofUfSDsOhDeJ4IpTvVeXVfk+mgBSR0pONK18+OC0MSDaITDl+F30n3U++N
M718O3vvPmLE5T25D8we+mInEqlhqJXiZKRgAMKmI6DwMPbVzkMUpLDs03OD
iCtV63Mr3KObtvZHsz2Qosy7Bn4skirzKOIJnemgMEJfpc53jSKlyzPTnldJ
QYHk3OFOLVWDPXxQHh9C+UJ3aNShNDVrGdJ0D+q8mLYmL12a9IZL0GkweteX
ePq8ZlyXQX0DI+42DPHQG+BEA1qsT7lT60srFmgz7iGuuA7H2xyouq3TCira
9eXXcckK6jTG5hzqt709/RJm3xcXV+ph1wHF+rQgwYK48KFfCS0l19g7WaZp
U+1aCT/JtggPk7EG6q7ERgNMHlBrRDxdKOI2RVo2lDkXV732HR/Y+ZZjQ5yv
18+lB+nCOp8xluPCVHq6o2lSKncPNRIJnYPqOfBO0hSMXHHbBdoC1S3lKv3e
w0Bx82hU440izuWsgJwgHb4pUlaD+5mDw5DTqZmYyqp7UObing08GWwx/MP7
y+uz8en49dszvf/i/uz6+up6iO7psToGo/2Yl8E06GufL7/hAD4+f1TvC68T
vYpXvQ9TWOIRN1dk1PcActfM4RErTSsOZN3NuVRc4OGA9o5riJR8FwWEcZKX
gP+BF44lzEBSeFu19TWhLByIVZcpeBdz1si2k0KQJdSlSwoyQhY+oUnq2qzW
NTcPYOG2VKu33UW+N2zOcpkZs8Ii4U71pnh+8mgT0ZCgY4ICgQhzIke4UnqK
+XK+8yBi3FbAhip1rPDjjipDDdpYDjKT9sbQULbdo+tU5IhZ7zha7Mrud5X+
KVR+O7uAebBIC9XI13Uk2zkmx20h69B9hHr81yZpxX8gh8Vg1WCUhKQD45By
Udi/hcOu2yZHYyIA7At+0jLDIp+aXCF4LjeJq3l87rfd8Vq/V5ZFfAWw6soi
LpaOiowFIDAjJcYSVgu+JgsXpzZXeGhiHZDpOmmjUOwmD106M6xDoRYtIM/5
O12BL8gOIlzIOK9NFVDRcJ0TyIFK9Ap0MbWRo0FYi1WfOJdrDwbZgKMU46+/
xk6qXxMOT4B9tVENndFZ7iYi1ztehzQXCn7tXE1QIuWPxEFW0WHFHXaLgdpW
RRLHHUUYziuOdB9RgUtGXeZlOFp0GE74UfEFEJ07U4VWSM9h7tbYqF5CmYqS
ytWK2+/J1+c+O6zj8SF5uSaeEAyVnS1hkytdBCDIy42i3rQk6mLEKhTH9XYi
KuRBZYZ9Em8NOuWcKjcLULYVcpcauQjdC/2RV9a67mOyHG1r1WNYASK5FcJ4
HUP7iG17pGMUlKAeUuG4KFrk+MPzP+EveNzWATo60/al5Kob+lRJDCaZvbUZ
K3tviILbHzvSBDvE2Arp3bIjlGiAc9D4w++ZuEUoHnIWipnmtsYOezNKLg6R
LkcCuUHvwPsO+zRnhhGdLNmtTVpJC+VWyn9bgQpTW+MRFudLbsISHhNyQkDV
lmNxWULUqkNB32rNHbS+pRJLEioz9FLeQW/rG7ImMoDlfpiVN99vQJyxtBw2
gm7grk6QJAI76S0gJex2F8zazgJUSCGiImsnASF/rAGErYSYBAWWjCnYziS9
YdbdSfWOtKZSabRFys82asXlfhUENPBkt++IC5iijkxsPmQTw9t8hx0i4NtK
PbR0FINvdDm+OCPFxz4AYSSqMzlaFZ/w5Juw0cyARvpC2LJqWzVkw/RBAjQ/
VTbkljg5OKv8Vw54APogiBRkiVfuz4Jg/7A0bsNUEiztGhAAAWO9DQaNqxK2
vvGxcLypXvPwOLQWlndFW4SRlViVQXE8+GZUF4D7BTHArI7JnbkjbxwrxnC5
vomRZhr0fCLRHOJjVfmud+IvE4nloPMCipXiVjoQjgpbTMIqJEPl983iVbcF
qU7ahtFQ2aKRjyYkdtXWsMp5q6DBPurxzs9DuYPWbeSVKB8h8MdlfPJsF0N+
5RjRF00lpYK4TV5bbm8MAI+40Hdcutl+7EXi/g5PQuu0XxARFDXYNabb5AMh
n13E7XLeo+UloCmq+RsNmGBS/nMz21toPd6skSgFa7PTxtUwRoUVNkB90x4M
qrkhT8/tKriW4Ic1EAzRvCEIGlOWa1JjceV5J1vRfl8Hu3LvksqEg+ISP5ph
pRExDWOFjBmEAjge9yN0Pykj9j/llt2Z8yCQRIWvnXNHICorZfwNFSARthpS
Ize+G7IWYWkgtKGFCsuYqI9G7Wy9wJ35xCfm2r1ThnLRYJj7eAGqOHJMo7iG
sjIGES/OXYEI8eejmDr84Z/Q3ew/bLGVo5TdO2rqFun3RV/T3UVfln15qoy7
A6hfBqMHBMOPPbSft2HpAyezSUI/mQw19ENha4Jpi8Zan/XWosUIe1glGflz
pfSKh9RltzTB9ZZOMWc7h+rOAbSqaon05CMmkR+HRc1xG7A/ugst9ZL90OxB
dVqIS2ztx2gjJAAIAULL2vn4ctzz2Pqf2arAIXRUBvVIHpe+z0aF+U8WJkuJ
SejtBdcw+sCKnGigj0Dj4tGIX45P+LNwddfUZnJhvVWIq/wxbDvYnuIXq003
w45rOAbTDOHbsT7W09enSrVv4aVo10pdG7L5KT8cE0v9o6s9irceLTfuUwfE
ZVrBkv+IHseXrBnBD7/Rd0wJu6SgxX5uIyekkdSaXWGPb4XP4IcCkU6AnmmN
F3Z8e08+tsO1RG251T+BkX7QX8LGS/oG3fETVWJKnUuKIRD0xf8yn5/czNHf
v5lTM0/ALnzBNv4BLmNt5wz8aISRcYq9DbnJFpSNVJ+O+SORJvtubw4QLaed
SXFDmBR9EnCgLy344pMmz+1tAh7MBXb7F7DOcuXkWw7kevGBnAXvoqwCToOn
gN+R9D4SA2T73QQs0BUfCj1RStH6NdDHD/9gAWwTTkVNIRLfgLw2+SYaftGA
vUbzjfgGjirMjmISFkM+hHcYaX70n65Or471Vc0FVp40nKlV/wOhDKgaMlQA
AA==

-->

</rfc>
