<?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  (Ruby 3.1.2) -->
<rfc xmlns:xi="http://www.w3.org/2001/XInclude" ipr="trust200902" docName="draft-koch-openpgp-webkey-service-19" category="info" consensus="true" submissionType="IETF" tocInclude="true" sortRefs="true" symRefs="true" version="3">
  <!-- xml2rfc v2v3 conversion 3.16.0 -->
  <front>
    <title>OpenPGP Web Key Directory</title>
    <seriesInfo name="Internet-Draft" value="draft-koch-openpgp-webkey-service-19"/>
    <author initials="W." surname="Koch" fullname="Werner Koch">
      <organization>g10 Code GmbH</organization>
      <address>
        <postal>
          <country>Germany</country>
        </postal>
        <email>wk@gnupg.org</email>
      </address>
    </author>
    <date year="2024" month="December" day="05"/>
    <area>sec</area>
    <workgroup>Network Working Group</workgroup>
    <keyword>Internet-Draft</keyword>
    <abstract>
      <t>This specification describes a service to locate OpenPGP keys by mail
address using a Web service and the HTTPS protocol.  It also provides a
method for secure communication between the key owner and the mail
provider to publish and revoke the public key.</t>
    </abstract>
  </front>
  <middle>
    <section anchor="introduction">
      <name>Introduction</name>
      <t>This memo describes a method to associate OpenPGP keys with a mail
address and how to look them up using a web service with a well-known
URI.  In addition a mail based protocol is given to allow a client to
setup such an association and to maintain it.</t>
    </section>
    <section anchor="notational-conventions">
      <name>Notational Conventions</name>
      <t>The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
"SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this
document are to be interpreted as described in <xref target="RFC2119"/>.</t>
    </section>
    <section anchor="web-key-directory">
      <name>Web Key Directory</name>
      <t>A major use case for OpenPGP is the encryption of mail.  A common
difficulty of sending encrypted mails to a new communication partner is
to find the appropriate public key of the recipient.  Unless an
off-channel key exchange has been done, there are no easy ways to
discover the required key.  The common practice is to search the network
of public key servers for a key matching the recipient's mail address.
This practise bears the problem that the keyservers are not able to give
a positive confirmation that a key actually belongs to the mail
addresses given in the key.  Further, there are often several keys
matching a mail address and thus one needs to pick a key on good luck.
This is clearly not a secure way to setup an end-to-end encryption.  Even
if the need for a trusted key for an initial mail message is
relinquished, a non-authenticated key may be a wrong one and the actual
recipient would receive a mail which she can't decrypt, due to the use
of a wrong key.</t>
      <t>Methods to overcome this problem are</t>
      <ul spacing="normal">
        <li>sending an initial unencrypted message with the public key attached,</li>
        <li>using the OpenPGP DANE protocol to lookup the recipients key via the
DNS.</li>
      </ul>
      <t>The first method has the obvious problems of not even trying to encrypt
the initial mail, an extra mail round-trip, and problems with unattended
key discovery.</t>
      <t>The latter method works fine but requires that mail providers need to
set up a separate DNS resolver to provide the key.  The administration of
a DNS zone is often not in the hands of small mail installations.  Thus
an update of the DNS resource records needs to be delegated to the ISP
running the DNS service.  Further, DNS lookups are not encrypted and
missing all confidentially.  Even if the participating MUAs are using
STARTTLS to encrypt the mail exchange, a DNS lookup for the key
unnecessarily identifies the local-part of the recipients mail address
to any passive eavesdroppers.</t>
      <t>This memo specified a new method for key discovery using an encrypted
https connection.</t>
      <section anchor="key-discovery">
        <name>Key Discovery</name>
        <t>Although URIs are able to encode all kind of characters, straightforward
implementations of a key directory may want to store the local-part of
a mail address directly in the file system.  This forbids the use of
certain characters in the local-part.  To allow for such an
implementation method the URI uses an encoded form of the local-part
which can be directly mapped to a file name.</t>
        <t>OpenPGP defines its User IDs, and thus the mail address, as UTF-8
strings.  To help with the common pattern of using capitalized names
(e.g. "Joe.Doe@example.org") for mail addresses, and under the premise
that almost all MTAs treat the local-part case-insensitive and that
the domain-part is required to be compared case-insensitive anyway,
all upper-case ASCII characters in a User ID are mapped to lowercase.
Non-ASCII characters are not changed.</t>
        <t>The so mapped local-part is hashed using the SHA-1 algorithm.  The
resulting 160 bit digest is encoded using the Z-Base-32 method as
described in <xref target="RFC6189"/>, section 5.1.6.  The resulting string has
a fixed length of 32 octets.</t>
        <t>There are two variants on how to form the request URI: The advanced
and the direct method.  Implementations MUST first try the advanced
method.  Only if an address for the required sub-domain does not
exist, they SHOULD fall back to the direct method.  A non-responding
server does not mean that the fall back should be carried out.</t>
        <t>The advanced method requires that a sub-domain with the fixed name
<tt>openpgpkey</tt> is created and queried.  The URI is constructed by
concatenating these items:</t>
        <ul spacing="normal">
          <li>The scheme <tt>https://</tt>,</li>
          <li>the string <tt>openpgpkey</tt>,</li>
          <li>the domain-part,</li>
          <li>the string <tt>/.well-known/openpgpkey/</tt>,</li>
          <li>the domain-part in lowercase,</li>
          <li>the string <tt>/hu/</tt>,</li>
          <li>the above constructed 32 octet string,</li>
          <li>the unchanged local-part as a parameter with name <tt>l</tt> using proper
percent escaping.</li>
        </ul>
        <t>An example for such an advanced method URI to lookup the key for
Joe.Doe@Example.ORG is:</t>
        <artwork><![CDATA[
  https://openpgpkey.example.org/.well-known/openpgpkey/
  example.org/hu/iy9q119eutrkn8s1mk4r39qejnbu3n5q?l=Joe.Doe
]]></artwork>
        <t>(line has been wrapped for rendering purposes)</t>
        <t>The direct method requires no additional DNS entries and constructs
the URI by concatenating these items:</t>
        <ul spacing="normal">
          <li>The scheme <tt>https://</tt>,</li>
          <li>the domain-part,</li>
          <li>the string <tt>/.well-known/openpgpkey/hu/</tt>,</li>
          <li>the above constructed 32 octet string,</li>
          <li>the unchanged local-part as a parameter with name <tt>l</tt> using proper
percent escaping.</li>
        </ul>
        <t>Example for a direct method URI:</t>
        <artwork><![CDATA[
  https://example.org/.well-known/openpgpkey/
  hu/iy9q119eutrkn8s1mk4r39qejnbu3n5q?l=Joe.Doe
]]></artwork>
        <t>(line has been wrapped for rendering purposes)</t>
        <t>Sites which do not use the advanced method but employ wildcard DNS for
their sub-domains MUST make sure that the <tt>openpgpkey</tt> sub-domain is
not subject to the wildcarding.  This can be done by inserting an
empty TXT RR for this sub-domain.</t>
        <t>The HTTP GET method MUST return the binary representation of the
OpenPGP key for the given mail address.  The key needs to carry a User
ID packet (<xref target="RFC4880"/>) with that mail address.  Note that the key
may be revoked or expired - it is up to the client to handle such
conditions.  To ease distribution of revoked keys, a server may return
revoked keys in addition to a new key.  The keys are returned by a
single request as concatenated key blocks.</t>
        <t>The server MUST accept the HTTP HEAD method to allow a client to
check for the existence of a key.</t>
        <t>The server SHOULD use "application/octet-stream" as the
Content-Type for the data but clients SHOULD also accept any other
Content-Type.  The server SHOULD NOT return an ASCII armored version of
the key.</t>
        <t>The server MUST serve a Policy Flags file as specified below.  That
file is even required if the Web Key Directory Update Protocol is not
supported.</t>
        <t>The benefit of the advanced method is its greater flexibility in
setting up the Web Key Directory in environments where more than one
mail domain is hosted.  DNS SRV resource records, as used in earlier
specifications of this protocol, posed a problem for implementations
which have only limited access to DNS resolvers.  Note that the direct
method allows to provide a Web Key Directory without any DNS changes.</t>
      </section>
    </section>
    <section anchor="web-key-directory-update-protocol">
      <name>Web Key Directory Update Protocol</name>
      <t>To put keys into the key directory a protocol to automate the task is
desirable.  The protocol defined here is entirely based on mail and
the assumption that a mail provider can securely deliver mail to the
INBOX of a user (e.g. an IMAP folder).  Note that the same protocol
may also be used for submitting keys for use with OpenPGP DANE.</t>
      <t>In the following sections the term "target key" denotes the to be
published key, the term "submission key" the key associated with the
submission-address of the mail provider.  The string "WELLKNOWN"
denotes the first part of an URI specific for a domain.  In the
examples the domain "example.org" is assumed, thus:</t>
      <artwork><![CDATA[
  WELLKNOWN := https://openpgpkey.example.org/.well-known/
               openpgpkey/example.org
]]></artwork>
      <t>(line has been wrapped for rendering purposes)</t>
      <t>or if the sub-domain <tt>openpgpkey</tt> does not exist (direct method):</t>
      <artwork><![CDATA[
  WELLKNOWN := https://example.org/.well-known/openpgpkey
]]></artwork>
      <t>We assume that the user already created a key for her mail account
alice@example.org.  To install the key at her provider's Web Key
Directory, she performs the following steps:</t>
      <ol spacing="normal" type="1"><li>
          <t>She retrieves a file which contains one line with the mail address
used to submit the key to the mail provider.  See below
for the syntax of that file.  For a mail address at the domain
"example.org" the URI of the file is  </t>
          <t>
WELLKNOWN/submission-address</t>
        </li>
        <li>She sends her key using SMTP (or any other transport mechanism) to
the provider using the submission address and key format as specified
by PGP/MIME.</li>
        <li>The provider checks that the received key has a User ID which matches
an account name of the provider.</li>
        <li>The provider sends an encrypted message containing a nonce and the
fingerprint of the key to the mail account of the user.  Note that a
similar scheme is used by the well known caff(1) tool to help with
key signing parties.</li>
        <li>A legitimate user will be able to decrypt the message because she
created the key and is in charge of the private key.  This step
verifies that the submitted key has actually been created by the
owner of the account.</li>
        <li>The user sends the decrypted nonce back to the submission address
as a confirmation that the private key is owned by her and that the
provider may now publish the key.  The confirmation mail to the
provider MUST be encrypted using the provider's public key as
retrieved using the key lookup protocol described above.</li>
        <li>The provider receives the nonce, matches it with its database of
pending confirmations and then publishes the key.  Finally the
provider sends a mail back to the user to notify her of the
publication of her key.</li>
      </ol>
      <t>The message data structures used for the above protocol are specified in
detail below.</t>
      <section anchor="the-submission-address">
        <name>The Submission Address</name>
        <t>The address of the submission file is</t>
        <artwork><![CDATA[
  WELLKNOWN/submission-address
]]></artwork>
        <t>The file consists of exactly one line, terminated by a LF, or the
sequence of CR and LF, with the full mail address to be used for
submission of a key to the mail provider.  For example the content of the
file may be</t>
        <artwork><![CDATA[
  key-submission-example.org@directory.example.org
]]></artwork>
      </section>
      <section anchor="the-submission-mail">
        <name>The Submission Mail</name>
        <t>The mail used to submit a key to the mail provider MUST comply to the
PGP/MIME specification (<xref target="RFC3156"/>, section 7), which states that
the Content-Type must be "application/pgp-keys", there are no required
or optional parameters, and the body part contains the ASCII-armored
transferable Public Key Packets as defined in <xref target="RFC4880"/>, section
11.1.</t>
        <t>The mail provider MUST publish a key capable of signing and encryption
for the submission-address in the Web Key Directory or via DANE.  The
key to be published MUST be submitted using a PGP/MIME encrypted
message (<xref target="RFC3156"/>, section 4).  The message MUST NOT be signed
(because the authenticity of the signing key has not yet been
confirmed).  After decryption of the message at the mail provider a
single "application/pgp-keys" part, as specified above, is expected.</t>
      </section>
      <section anchor="the-confirmation-request">
        <name>The Confirmation Request</name>
        <t>The mail provider sends a confirmation mail in response to a received
key publication request.  The message MUST be sent from the
submission-address of the mail provider to the mail address extracted
from the target key.  The message needs to be a PGP/MIME signed
message using the submission key of the provider for the
signature.  The signed message MUST have two parts:</t>
        <t>The first part MUST have "text" as its Content-Type and can be used to
explain the purpose of the mail.  For example it may point to this
specification and explain on how to manually perform the protocol.</t>
        <t>The second part MUST have a Content-Type of
"application/vnd.gnupg.wkd" and carry an OpenPGP encrypted message in
ASCII Armor format.  If the protocol version is unknown or less than 5
the Content-Type "application/vnd.gnupg.wks" MUST be used for backward
compatibility.  The message MUST be encrypted to the target key and
MUST NOT be signed.  After decryption a text file in the Web Key data
format must be yielded.</t>
        <t>That data format consists of name-value pairs with one name-value pair
per LF or CR+LF terminated line.  Empty lines are allowed and will be
ignored by the receiver.  A colon is used to terminate a name.</t>
        <t>In a confirmation request the following names MUST be send in the
specified order:</t>
        <ul spacing="normal">
          <li>"type": The value must be "confirmation-request".</li>
          <li>"sender": This is the mailbox the user is expected to sent the
confirmation response to.  The value must match the
mailbox part of the "From:" address of this
request.  Exactly one address MUST be given.</li>
          <li>"address": The value is the addr-spec part of the target key's
mail address.  The value SHOULD match the addr-spec part
of the recipient's address.  The value MUST be UTF-8
encoded as required for an OpenPGP User ID.</li>
          <li>"fingerprint": The value is the fingerprint of the target key.  The
fingerprint is given in uppercase hex encoding
without any interleaving spaces.</li>
          <li>"nonce": The value is a string with a minimum length of 16 octets
and a maximum length of 64 octets.  The string must
entirely be made up of random ASCII letters or
digits.  This nonce will be sent back to the mail provider
as proof that the recipient is the legitimate owner of
the target-key.</li>
        </ul>
        <t>The receiver of that message is expected to verify the outer signature
and disregard the entire message if it can't be verified or has not
been signed by the key associated with the submission address.</t>
        <t>After the message has been verified the receiver decrypts the second
part of the signed message, checks that the "fingerprint" matches the
target key, checks that the "address" matches a User ID of the target
key, and checks the other constrains of the request format.  If any
constraint is not asserted, or the fingerprint or User ID do not match
the target key, or there is no pending publication requests (i.e. a
mail recently sent to the submission address), the user MAY be
notified about this fake confirmation attempt.</t>
        <t>In other cases the confirmation request is legitimate and the MUA
shall silently send a response as described in the next section.</t>
        <t>The rationale for the outer signature used with this request is to
allow early detection of spam mails.  This can be done prior to the
decryption step and avoids asking the user to enter a passphrase to
perform the decryption for a non-legitimate message.  The use of a
simple encrypted attachment, instead of using PGP/MIME encryption, is
to convey the Content-Type of that attachment in the clear and also to
prevent automatic decryption of that attachment by PGP/MIME aware
clients.  The MUA may in fact detect this confirmation request and
present a customized dialog for confirming that request.</t>
      </section>
      <section anchor="the-confirmation-response">
        <name>The Confirmation Response</name>
        <t>A response to a confirmation request MUST only be send in the positive
case; there is no negative confirmation response.  A mail service
provider is expected to cancel a pending key submission after a suitable
time without a confirmation.  The mail service provider SHOULD NOT retry
the sending of a confirmation request after the first request has been
send successfully.</t>
        <t>The user MUST send the confirmation response from her target mail
address to the "from" address of the confirmation request.  The
message MUST be signed and encrypted using the PGP/MIME Combined
format (<xref target="RFC3156"/>, section 6.2).  The signing key is the target
key and the encryption key is the key associated with the provider's
submission address.  The server MAY verify the signature and silently
discard the message if it is not found to be valid;</t>
        <t>The Content-Type used for the plaintext message MUST match the
Content-Type of the request.  The format is the same as described
above for the Confirmation Request.  The body must contain four
name-value pairs in this order:</t>
        <ul spacing="normal">
          <li>"type": The value must be "confirmation-response".</li>
          <li>"sender": The value is the value of the "sender" parameter from the
confirmation request.</li>
          <li>"address": The value is the value of the "address" parameter from
the confirmation request.</li>
          <li>"nonce": The value is the value of the "nonce" parameter from the
confirmation request.</li>
        </ul>
        <t>The server MUST check the "nonce" against the one sent in the request
and publish the key only if the nonce matches and has not been
re-used.</t>
      </section>
      <section anchor="policy-flags">
        <name>Policy Flags</name>
        <t>For key generation and submission it is useful to tell the
client about certain properties of the mail provider in advance.  This
can be done with a file at the URL</t>
        <artwork><![CDATA[
  WELLKNOWN/policy
]]></artwork>
        <t>A site supporting the Web Key Directory MUST serve this file; it is
sufficient if that file has a zero length.  Clients may use this file
to check for Web Key Directory support.</t>
        <t>The file contains keywords and optionally values, one per line with
each line terminated by a LF or the sequence of CR and LF.  Empty lines
and lines starting with a '#' character are considered comment
lines.  A keyword is made up of lowercase letters, digits, hyphens, or
dots.  An underscore is allowed as a name space delimiters; see
below.  The first character must be a letter.  Keywords which are
defined to require a value are directly followed by a colon and then
after optional white space the value.  Clients MUST use
case-insensitive matching for the keyword.</t>
        <t>Currently defined keywords are:</t>
        <ul spacing="normal">
          <li>"mailbox-only": The mail server provider does only accept keys
with only a mailbox in the User ID.  In particular
User IDs with a real name in addition to the
mailbox will be rejected as invalid.</li>
          <li>"dane-only": The mail server provider does not run a Web Key
  Directory but only an OpenPGP DANE service.  The Web
  Key Directory Update protocol is used to update the
  keys for the DANE service.  The use of this keyword
is deprecated.</li>
          <li>"auth-submit": The submission of the mail to the server is done
using an authenticated connection.  Thus the
submitted key will be published immediately without
any confirmation request.</li>
          <li>"protocol-version": This keyword can be used to explicitly claim the
support of a specific version of the Web Key Directory update protocol.
This is in general not needed but implementations may have
workarounds for providers which only support an old protocol
version.  If these providers update to a newer version they
should add this keyword so that the implementation can disable
the workaround.  The value is an integer corresponding to the
respective draft revision number.</li>
          <li>"submission-address": An alternative way to specify the submission
address.  The value is the addr-spec part of the address to send
requests to this server.  If this keyword is used in addition to
the <tt>submission-address</tt> file, both MUST have the same value.</li>
        </ul>
        <t>More keywords will be defined in updates to this I-D.  There is no
registry except for this document.  For experimental use of new
features or for provider specific settings, keywords MUST be prefixed
with a domain name and an underscore.</t>
      </section>
    </section>
    <section anchor="security-considerations">
      <name>Security Considerations</name>
      <t>The use of SHA-1 for the mapping of the local-part to a fixed string
is not a security feature but merely used to map the local-part to a
fixed-sized string made from a well defined set of characters.  It is not
intended to conceal information about a mail address.</t>
      <t>The domain name part of the mail address is not part of the hash to
avoid problems with internationalized domain names.  Instead a
separate URL is required for each domain name.</t>
      <t>To make it a bit harder to test for published keys, the server
responsible to serve the WELLKNOWN directory SHOULD NOT create an
index file for that directory or any sub-directory.</t>
      <t>The mail provider MUST make sure to publish a key in a way that only
the mail address belonging to the requested user is part of the User
ID packets included in the returned key.  Other User ID packets and
their associated binding signatures MUST be removed before
publication.  Confirmation requests MUST only be send for such to be
published User ID.  It is further recommended that a client filters a
received key or a key send for a publication requests so that only the
specific User ID with the mail address of the provider is imported or
send.</t>
      <t>A client MUST NOT accept a HTTP authentication challenge (HTTP
code 401) because the information in the Web Key Directory is public
and needs no authentication.  Allowing an authentication challenge has
the problem to easily confuse a user with a password prompt and
tricking him into falsely entering the passphrase used to protect his
private key or to login to his mail provider.</t>
      <t>The use of DNS SRV records as specified in former revisions of this
document reduces the certainty that a mail address belongs to a
domain.  For example an attacker may change the target to a host in a
sub-domain under their control and thus gain full control over all
keys.</t>
    </section>
    <section anchor="iana-considerations">
      <name>IANA Considerations</name>
      <section anchor="well-known-uri">
        <name>Well-Known URI</name>
        <t>IANA is requested to assign a well-known URI in the "Well-Known URIs"
registry as defined by <xref target="RFC8615"/>:</t>
        <t>URI suffix: openpgpkey</t>
        <t>Change controller: IETF</t>
        <t>Specification document: This</t>
      </section>
    </section>
    <section anchor="acknowledgments">
      <name>Acknowledgments</name>
      <t>The author would like to acknowledge the help of the individuals who
kindly voiced their opinions on the GnuPG mailing lists, in particular,
the help of Bernhard Reiter and Guilhem Moulin.</t>
    </section>
  </middle>
  <back>
    <references>
      <name>Normative References</name>
      <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="RFC3156">
        <front>
          <title>MIME Security with OpenPGP</title>
          <author fullname="M. Elkins" initials="M." surname="Elkins"/>
          <author fullname="D. Del Torto" initials="D." surname="Del Torto"/>
          <author fullname="R. Levien" initials="R." surname="Levien"/>
          <author fullname="T. Roessler" initials="T." surname="Roessler"/>
          <date month="August" year="2001"/>
          <abstract>
            <t>This document describes how the OpenPGP Message Format can be used to provide privacy and authentication using the Multipurpose Internet Mail Extensions (MIME) security content types described in RFC 1847. [STANDARDS-TRACK]</t>
          </abstract>
        </front>
        <seriesInfo name="RFC" value="3156"/>
        <seriesInfo name="DOI" value="10.17487/RFC3156"/>
      </reference>
      <reference anchor="RFC4880">
        <front>
          <title>OpenPGP Message Format</title>
          <author fullname="J. Callas" initials="J." surname="Callas"/>
          <author fullname="L. Donnerhacke" initials="L." surname="Donnerhacke"/>
          <author fullname="H. Finney" initials="H." surname="Finney"/>
          <author fullname="D. Shaw" initials="D." surname="Shaw"/>
          <author fullname="R. Thayer" initials="R." surname="Thayer"/>
          <date month="November" year="2007"/>
          <abstract>
            <t>This document is maintained in order to publish all necessary information needed to develop interoperable applications based on the OpenPGP format. It is not a step-by-step cookbook for writing an application. It describes only the format and methods needed to read, check, generate, and write conforming packets crossing any network. It does not deal with storage and implementation questions. It does, however, discuss implementation issues necessary to avoid security flaws.</t>
            <t>OpenPGP software uses a combination of strong public-key and symmetric cryptography to provide security services for electronic communications and data storage. These services include confidentiality, key management, authentication, and digital signatures. This document specifies the message formats used in OpenPGP. [STANDARDS-TRACK]</t>
          </abstract>
        </front>
        <seriesInfo name="RFC" value="4880"/>
        <seriesInfo name="DOI" value="10.17487/RFC4880"/>
      </reference>
      <reference anchor="RFC8615">
        <front>
          <title>Well-Known Uniform Resource Identifiers (URIs)</title>
          <author fullname="M. Nottingham" initials="M." surname="Nottingham"/>
          <date month="May" year="2019"/>
          <abstract>
            <t>This memo defines a path prefix for "well-known locations", "/.well-known/", in selected Uniform Resource Identifier (URI) schemes.</t>
            <t>In doing so, it obsoletes RFC 5785 and updates the URI schemes defined in RFC 7230 to reserve that space. It also updates RFC 7595 to track URI schemes that support well-known URIs in their registry.</t>
          </abstract>
        </front>
        <seriesInfo name="RFC" value="8615"/>
        <seriesInfo name="DOI" value="10.17487/RFC8615"/>
      </reference>
      <reference anchor="RFC6189">
        <front>
          <title>ZRTP: Media Path Key Agreement for Unicast Secure RTP</title>
          <author fullname="P. Zimmermann" initials="P." surname="Zimmermann"/>
          <author fullname="A. Johnston" initials="A." role="editor" surname="Johnston"/>
          <author fullname="J. Callas" initials="J." surname="Callas"/>
          <date month="April" year="2011"/>
          <abstract>
            <t>This document defines ZRTP, a protocol for media path Diffie-Hellman exchange to agree on a session key and parameters for establishing unicast Secure Real-time Transport Protocol (SRTP) sessions for Voice over IP (VoIP) applications. The ZRTP protocol is media path keying because it is multiplexed on the same port as RTP and does not require support in the signaling protocol. ZRTP does not assume a Public Key Infrastructure (PKI) or require the complexity of certificates in end devices. For the media session, ZRTP provides confidentiality, protection against man-in-the-middle (MiTM) attacks, and, in cases where the signaling protocol provides end-to-end integrity protection, authentication. ZRTP can utilize a Session Description Protocol (SDP) attribute to provide discovery and authentication through the signaling channel. To provide best effort SRTP, ZRTP utilizes normal RTP/AVP (Audio-Visual Profile) profiles. ZRTP secures media sessions that include a voice media stream and can also secure media sessions that do not include voice by using an optional digital signature. This document is not an Internet Standards Track specification; it is published for informational purposes.</t>
          </abstract>
        </front>
        <seriesInfo name="RFC" value="6189"/>
        <seriesInfo name="DOI" value="10.17487/RFC6189"/>
      </reference>
    </references>
    <section anchor="sample-protocol-run">
      <name>Sample Protocol Run</name>
      <t>The following non-normative example can be used by implementors as
guidance.</t>
      <t>Note that GnuPG version 2.1.12 supports the key discovery described in
version -00 of this document (auto-key-locate method "wkd").  Version
2.1.16 can run the protocol described in this document but is also able
to run the protocol version specified by -01.  For backward
compatibility this example uses the Content-Type as required for
versions of this protocol prior to -04; if the client knows that the
server support -04 "vnd.gnupg.wkd" should be used.</t>
      <section anchor="sample-keys">
        <name>Sample Keys</name>
        <t>This is the provider's submission key:</t>
        <artwork><![CDATA[
  -----BEGIN PGP PRIVATE KEY BLOCK-----

  lFgEV/TAohYJKwYBBAHaRw8BAQdAB/k9YQfSTI8qQqqK1KimH/BsvzsowWItSQPT
  FP+fOC4AAP46uJ3Snno3Vy+kORye3rf0VvWvuz82voEQLxG6WpfHhREEtBprZXkt
  c3VibWlzc2lvbkBleGFtcGxlLm5ldIh5BBMWCAAhBQJX9MCiAhsDBQsJCAcCBhUI
  CQoLAgQWAgMBAh4BAheAAAoJEKhtNooW0cqEWMUA/0e9XaeptszWC9ZvPg8INL6a
  BvRqPBYGU7PGmuXsxBovAQDyckOykG0UAfHVyN1w4gSK/biMcnqVr857i8/HuvjW
  C5xdBFf0wKISCisGAQQBl1UBBQEBB0Apvaoe4MtSEJ1fpds/4DFl2kXXBpnVji/s
  Wg9btdthNQMBCAcAAP9FJX99T1LEJzBnvBBnc6bimnT6/1OKM9RdO4R0/uVP6BFL
  iGEEGBYIAAkFAlf0wKICGwwACgkQqG02ihbRyoTlGwD9FBr92osjL7HkhhZZ7Z2D
  My3b9zpoZeMjvPg5YPqpdKMA/jhZoHuZCRMBYf7YRFb8aXtuyetDFZYrkjnum+OG
  HFAD
  =Hnwd
  -----END PGP PRIVATE KEY BLOCK-----
]]></artwork>
        <t>This is the target key to be published:</t>
        <artwork><![CDATA[
  -----BEGIN PGP PRIVATE KEY BLOCK-----

  lFgEV2o9XRYJKwYBBAHaRw8BAQdAZ8zkuQDL9x7rcvvoo6s3iEF1j88Dknd9nZhL
  nTEoBRkAAP94nCZMM4WY2IORXfM6phLGSz3RsHvs/vA1Opaus4+R3BKJtBtwYXRy
  aWNlLmx1bXVtYmFAZXhhbXBsZS5uZXSIeQQTFggAIQUCV2o9XQIbAwULCQgHAgYV
  CAkKCwIEFgIDAQIeAQIXgAAKCRATlWNoKgINCpkNAQDFDcwJUzsxu7aJUiPdpYXj
  4uVarrXakxEE8mGFotWhLAD9GH4rqLDYIE3NKEU0s+Okt4tEIwJaV8H1NNPPPMiK
  3g2cXQRXaj2NEgorBgEEAZdVAQUBAQdAFnnmZc99TuKk5iCq9wmYZUVF2RcXN2Cs
  qAl8iGQQUWsDAQgHAAD/VN/VGmlcwGBPcLTya2hfU4t37nMcFCKdNSXjJ5DFA0AP
  PohhBBgWCAAJBQJXaj2NAhsMAAoJEBOVY2gqAg0Ky4UA/0GmVaXzXemLvv1Xw4yx
  Eaz/KfKKGc4RJ+38fyqUzw8NAQCohQ+ki3I5f84EXLZEiUiLsnVtOn1HNxvND/gW
  TiFZBA==
  =GHi7
  -----END PGP PRIVATE KEY BLOCK-----
]]></artwork>
      </section>
      <section anchor="sample-messages">
        <name>Sample Messages</name>
        <t>The first message triggers the publication requests.</t>
        <artwork><![CDATA[
  From: patrice.lumumba@example.net
  To: key-submission@example.net
  Subject: Key publishing request
  MIME-Version: 1.0
  Content-Type: multipart/encrypted;
          protocol="application/pgp-encrypted";
          boundary="=-=01-e8k41e11ob31eefa36wo=-="
  Date: Wed, 05 Oct 2016 10:15:51 +0000


  --=-=01-e8k41e11ob31eefa36wo=-=
  Content-Type: application/pgp-encrypted

  Version: 1

  --=-=01-e8k41e11ob31eefa36wo=-=
  Content-Type: application/octet-stream

  -----BEGIN PGP MESSAGE-----

  hF4DUgLY5tvmW2sSAQdAR1AcqvFpQe/fHRZbf0xcnl9Tb+AtwaX2yZnZXGELGHsw
  1/e3E0JptwM5tpRAVe71ooF8Zq4jl76ZgQKfj/SyjpLJxyoEDy2N5wTQaqW4JtML
  0ukB1vh7dIRDxBJX/LQIJC0wz8o1Q3vjcLJKFFvDb7YrerABpPIzwOAupcgIbQHj
  5m1+2WU5CL8ffyJy2h1jV2X4OnvWF1Sn6J6SVD6DfZpOPRt9TxSemJrN1LJ3lG0N
  ts8AuYmCOeC1H2r5TYyxqkC98JF8+Nvyxd/fwne8IOjK9uixkNMC5H9/ZOH0YWCb
  wBnNB4iXuym4OIPxiLkDymsVF0ww/XrODE9Y259EGmO45VFNrJAX3HFs9/PcMCVk
  n2qMyEkr8LHiXeEPun6Z54RHUPYv2cUkEZ0hhSJ+rtBxkc/5D/cAScCEXRKFSKEF
  jLJAvLK/u/ga5DAzVai+vh6b6Bq+YVPaD9GWMhWj4CgR90p9LULi6S/Hzwhv9Wzf
  8fJoJOaDjyvRDgr09jYLWamxkS9NWxqwy6MXJvxwbNdd5XtqiW4Y4o0Ll1hDJhxR
  ljn/XvotXKwhKN+4QGhIXDVt4Dl4XxS5ptWfVTau8W8DYqDsU2obEcfsirZv53M1
  Q9FCD8CD9+dkBt8VAJekCWVhEltcRHxlrznbk2jxm93xSD2o6gZ5X0VSaSUXyEhm
  J+8F3gyTHGgbq/TgyjFoockWh5EtGgAFuWvmPJCF5PO/UaNeoKwgwSJBu6oTXkHx
  R4nvvMRcj5UgTsKpZ79NiDQukbjG5ScNT5TCUiiZsBXBqBx3fD61EH6cAuh4P3Kr
  iM7PY4fwAHo890Dx+Qlt
  =WIhx
  -----END PGP MESSAGE-----

  --=-=01-e8k41e11ob31eefa36wo=-=--
]]></artwork>
        <t>The server decrypts this message to</t>
        <artwork><![CDATA[
  Content-Type: application/pgp-keys

  -----BEGIN PGP PUBLIC KEY BLOCK-----

  mDMEV2o9XRYJKwYBBAHaRw8BAQdAZ8zkuQDL9x7rcvvoo6s3iEF1j88Dknd9nZhL
  nTEoBRm0G3BhdHJpY2UubHVtdW1iYUBleGFtcGxlLm5ldIh5BBMWCAAhBQJXaj1d
  AhsDBQsJCAcCBhUICQoLAgQWAgMBAh4BAheAAAoJEBOVY2gqAg0KmQ0BAMUNzAlT
  OzG7tolSI92lhePi5VqutdqTEQTyYYWi1aEsAP0YfiuosNggTc0oRTSz46S3i0Qj
  AlpXwfU00888yIreDbg4BFdqPY0SCisGAQQBl1UBBQEBB0AWeeZlz31O4qTmIKr3
  CZhlRUXZFxc3YKyoCXyIZBBRawMBCAeIYQQYFggACQUCV2o9jQIbDAAKCRATlWNo
  KgINCsuFAP9BplWl813pi779V8OMsRGs/ynyihnOESft/H8qlM8PDQEAqIUPpIty
  OX/OBFy2RIlIi7J1bTp9RzcbzQ/4Fk4hWQQ=
  =qRfF
  -----END PGP PUBLIC KEY BLOCK-----
]]></artwork>
        <t>and returns this confirmation request</t>
        <artwork><![CDATA[
  From: key-submission@example.net
  To: patrice.lumumba@example.net
  Subject: Confirm your key publication
  MIME-Version: 1.0
  Content-Type: multipart/encrypted;
    protocol="application/pgp-encrypted";
    boundary="=-=01-wrzqued738dfx4x97u7y=-="
  Date: Wed, 05 Oct 2016 10:16:57 +0000


  --=-=01-wrzqued738dfx4x97u7y=-=
  Content-Type: application/pgp-encrypted

  Version: 1

  --=-=01-wrzqued738dfx4x97u7y=-=
  Content-Type: application/octet-stream

  -----BEGIN PGP MESSAGE-----

  hF4DkYWHjk/NdMASAQdAluQeqhECpU2T0zEyBAEbFzhLkpubN160wjkFCrtUc0Mw
  FwYgM2fp9cvTMdJ/xjkvmAcIEOT4AY/hn1yFQ4z0KG0gCkSac+8mkDylnPdxlXYw
  0sBSAXlbqpVA7eUpFuU2Zs10zbIXxlwe6osR5wUIJut/RCOsYQmfvxC55x8mUX5/
  zgTnNzlMzye5ws4pTgAeQm2x0Yv018L8IZgY5KxwJLBzlss0wLZ45ZcS80hR11Fx
  NCow1fKF8lMnOJxagTEOih807nctz8vT5bR1gx0d7N3LM+th8nAg9/6Ghf1XTpLo
  MzwGW0FtOG7Dg1Uxbw2bjaOuRBeh6IIpmNAw1pmIfnNu7PpoRydU5w1K/R8MT06z
  MKdJ7IW5mVGes9EGnG3e4mjuILvNaZhfYy+a73IhDSaPm3oqdl1Qx7tbNg6lGjn6
  KStCYAcPGPp3m7aWkfsPGThOVRhEXqaFFywfwSVEj1pdIRjDFA==
  =Cdjh
  -----END PGP MESSAGE-----

  --=-=01-wrzqued738dfx4x97u7y=-=--
]]></artwork>
        <t>The client decrypts this PGP/MIME message as</t>
        <artwork><![CDATA[
  Content-Type: application/vnd.gnupg.wks
  Content-Transfer-Encoding: 8bit

  type: confirmation-request
  sender: key-submission@example.net
  address: patrice.lumumba@example.net
  fingerprint: B21DEAB4F875FB3DA42F1D1D139563682A020D0A
  nonce: f5pscz57zj6fk11wekk8gx4cmrb659a7
]]></artwork>
        <t>creates this response</t>
        <artwork><![CDATA[
  Content-Type: application/vnd.gnupg.wks
  Content-Transfer-Encoding: 8bit

  type: confirmation-response
  sender: key-submission@example.net
  address: patrice.lumumba@example.net
  nonce: f5pscz57zj6fk11wekk8gx4cmrb659a7
]]></artwork>
        <t>and sends it PGP/MIME Combined signed and encrypted to the server</t>
        <artwork><![CDATA[
  From: patrice.lumumba@example.net
  To: key-submission@example.net
  Subject: Key publication confirmation
  MIME-Version: 1.0
  Content-Type: multipart/encrypted;
    protocol="application/pgp-encrypted";
    boundary="=-=01-iacqg4og4pqz11a5cg1o=-="
  Date: Wed, 05 Oct 2016 10:18:52 +0000


  --=-=01-iacqg4og4pqz11a5cg1o=-=
  Content-Type: application/pgp-encrypted

  Version: 1

  --=-=01-iacqg4og4pqz11a5cg1o=-=
  Content-Type: application/octet-stream

  -----BEGIN PGP MESSAGE-----

  hF4DUgLY5tvmW2sSAQdAlq98ugycHadQGRe0+055eGUzdQtORR+u5LuJU+oYXHkw
  4V1z0S1QPO9BWixHA62PtjAOShT2xN+1v8T2gq3mdgCEMCHX/Nj6INuu+HXF8o0D
  0sC5AfEwq24oKF/6Q8vb1L/KUzFeitnWBnxS1i9XONlG9FTpSGfBir9szqz3QtMu
  8Sma+X4g/i/rbO5ZtY9v0r+NCh0fY+fMj8Iaqw8IJUcUWcL2oz+GaHU+CIaJWUyk
  suqjw5Zw9WVPQ2nXHZTVOKPk4b8Y8f34GvoqP9ZyVFhZ+/9xcvE3fHOoZKeIK9Yi
  4Bxza2HvWRkkKc48Orf5AjK45Wm/G72m72d/KiYfzBm0W4T5QkVqRnX+vpoQc+bo
  thEE715ma9SnZMcY3fRcPnhjlDxDneB5DD7WNdiz+wZL0OiHW/kT8Eo4/OZnb72M
  t44hd8xB8wbfhz5/zmgmlG4IGGA4MomZyg7G/fo24xaIqkjgnJ1GryWaztNQM6Xx
  34kDLTF1fkjqmMZOtTEFKwC5dzrp1qb7B4ZWsFXC+bSLC5teaRajmOr4T5tXCFV7
  TL0gNBsg/bRBU6wmFDaOaJjleoTsh/7YNJaMsoiMx7NrHe+uVqaEbE4HsWU=
  =tlCO
  -----END PGP MESSAGE-----

  --=-=01-iacqg4og4pqz11a5cg1o=-=--
]]></artwork>
      </section>
    </section>
    <section anchor="changes-since-14">
      <name>Changes Since -14</name>
      <ul spacing="normal">
        <li>Deprectated dane-only keyword.</li>
      </ul>
    </section>
  </back>
  <!-- ##markdown-source:
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
HqKCFBwVHfsWyxeFDTsALIObRgPRi8ZKeBScQ3wbragrbH1dJRk3QQgPZ9D9
8BAi855+T2d4cBIm58MbnKIVToG/lkilgug1UKpfsJKGXQUJdjkpO4j5gi1s
WDX4om8LZNICWT3G68wcPbbr85x1MD6Jw1x2ZnhNc2/f3ucrjBzivcFy00xp
n3em0Yk4VX1eLY43GcYBECfF97OuYeU1kcr9g6dqmfNA2QxbAfhNLTw2hBfE
l4fWv/CSlkgul0lMB/M2QrS3KnJkIt6lGRyeS+Cfcq3R6mPxRxyOW1/StCZ2
akux3B1UOuR7/rBR39a+klPJ3i3bncuyXJaa8vhSLEsjVSonD6XlaDOZtoqn
0enUSXd0s5ksu+e7a1/mLW8yGk7ZMPXh62ZQyUnSMFfw29mJZdnZr9vrYTC+
aVlnk/o6z8/+vZg527VR99oozI+b5m5cq3nlo7NaHDw2jJL90tdz465kjPP6
UDa0Rt1TGleja+YNtbXLl8u9eUWSduVRe1HqVXRp51bLI7ddkZRKeTdrsWEq
I7srbUdzadsrS7sc/KNJkmS3a52d17fteUo51ea9mZRMaaWFDC7evc8rpdV5
uC22+t2CzIYpn8enYXnZmH0MG6a/cK9l+yyNqjflMLgdGqmZtGl+3frpS247
6STXek+xTl9OMf+hF5NN/7yf89Xkr2q5vkldOq1JRXcb0mhUNtKzcnlUK5dT
0vEs21qu501q7fTmqLrJXLVuZA6LRflofe31pMtz5NvS2lO9XX/UK8N+gdSl
OlChNE13a+172TqXy5ZSWOumNS0k04NOrzRWB7lxKul/DQvlepcNozdqtUZ5
2ZKkQ10yyKoqjctFqmwPo1MjldF36/HNnhqNS7VULzuljO3uux/Nw263Wn2s
MlU2TO+WXZfuR3ul9fZAt/xyeDqqnZ6U3O9WdtNfVca98nLzsRzX10V54fk3
zavWV0vnsLd883XQYMM06xIf8bemdVGjIlzrV/9QgKNaEekofeid/y+oRcYu
Lcbf1WJVvB/8UbVbun44yvls2wU3q9fq6X2xWD1Yasla7TixrWnNLo8PyKuc
VVn1ern5MtMajBebXuG46zYm9+zYbZ7d5FlKD44AGnOv42y50/bK3mW5GPP8
pjzvgwpc0+vFl7c069JqsdutF2V3Ncn7q8WkpY1G0/p2K7VGswpZ9ai1li6z
bmW0bUrb5RcXROnQqVxatfq2VZVGLQ3+WWwlqVMZS1Nj3rc721a/cjz0Qcbr
VeXSnt3dq/8ht2f6UD0uF3s2TM7/kh1nIR+utVrRbNRtb77rStVSo5lzTt3q
slXL9ju1Wcp9HRy8nFdrXdryV7GZ7veHw2FP77BhstuMshiNF/I+069tbae8
rdWklfoljWaEzHXLMlcKyLffOeT1yql0MZer2Vc9M1YW/UyFq8VJMop6YzSa
zV3YFOxXqia/+smvhmkol0Z5qHSnNzmz28xyXvbD6in1SkftTxb7dr5al1LS
kA0ztHe7cnmL1qWN1gVXBdalR8xGefC1zGxP0jbVueXQbDTML3lxX2hm93xO
Ly6525UNU5Pvyc6m02kouXH7NVvc3E6z+6UIJK3Yu9HrQc+28ptirrbormr6
TO+61pc3sNLN/vXcrya33GRM9fqqLP32G1eNRlP/+CuqEfEgPVrCdqON97ys
DTB/u9X4hb5PIq53rg+krxav8nMwwW34pm+u5eCQtKVxAz61Px9OPj15aEJv
wPkkURBTVIRAvCjKLEyrV0swQPEppt9TXIojPvtTNPEiOURqyaD54R8PR9y5
2/7t22GS4JWXx3fWmCOVndtvL78lfkulE1rxkEtr6bS9zqY1bSNnCxcbvnnh
BQhyw/4cO+5SeXEA8U8mBfgnnfpM5z/zafE1BX+E0BL94aBP9/nj0vmgIaX+
XdNEL3/5wYj2apOJ1KjFTOeunqvOtt1l3jub84w7QV0epyXldK4fR1py0xyv
1pvUVbGM0nT9KnkXeZG5razVolHrNpruhQ2TTmrZWqp99C69vHccS1/aR9q2
68XVKbc3Pgqr7aiz2Scnt/2x277e7Fr1lunnL9ORfJrn2l6PW+CUfyinz7sP
tTWuXsvtRbI7arUrqcu9aKdH2fNe6bY79fq5uv5YOpojlY/D1v0ykPyjsm2t
R01u8/Jm+jUzn+Ur3eJmc2vfMrv0/iuzyA2s87yenliFdmHyVS1UN6vjYDj2
StPrRDPbTj/dbWeNRqrPhvHcouQvzcpAq6SbGSc/Xd6up0OlVGzXi6/98+2q
JjcXSyu2BvtOydevh36vkm+WkqtBM7WcV3jR6lK2+uWcvvBvZm7QGl717qF6
M92veupySS6cQbVWWmbypVrDHOTyX/W+05YW2WbdLSWHSq/ydeDeKXPq3WoH
p9ht6gutNvStwiqfGzdnw+U5o8wOtVVqt5u0Xx2vfD0oyXw1qUgTpVJbjDv1
SadWZ8Psu23p3O0k/eRWzlel+5esv553hXWhfHpdfg1l8Azz3m6+z1W241Lq
WOrOunphkmzeL7tzaX7fsGGKm7bdHsjV/e08rm6dVGm/7M5l83qYlPrz6+ly
K/QW7fP1su6ran7hnfR5bpmzU10jvau2d9cx99x7K7k4296ic9l1+q+5UWPX
WlS/vFzVyC2uk/zRm2++prJfnBery1PVnWXsdU3ZuLqzOuezvTQbZlSqV6rF
SrX0qh7KXvFLamuHyvxrVzM8Zdy8Gs7dWh8y+6tZyl4n1Yxd2K7yi9TXRJ7M
FrfazmTDtF+L9ez2Nm02tutTcrq97eu2rRzmu3zNa2yluj8/m8N2pZ4fDpIz
ua/Zncv2MmmX/YI9XRya3K2Mc9b53Bsr+/xsO3U7x9VHqa9XR/5hvW/kJ0p/
mp9WZrq+csuL8ql8zW6qhXStWVAkf5cbZjsOx369j+Eyt7lITbtYSlWvryOD
W9vf5q3d9ZmLeabi/8SyUHAWFCkjPdjkdmHme2zhTxk6Urn+AcLNyt1W5QcE
Z1Z7/z4EZ6Ya2fJObbaPy8zMXze/PHWe1pezP45Q5H2aA9rHQOXHCCUCNcxR
qiz1Zv27ZPAwa3BvfHi2MWmVMsZOG+r5r5PvqadpbTS9LZdzPS3XXGmYWm50
33b72+1USdnj6eSeK0yyemrErZlkHBeXzSyVKhaLt5ajVdfbXLmunobL1LMI
Za5pK+OeTQ9yp6nZ6jhZzrjVzhjPFqv6VckuOze7sri1VuXyWL5ghKK1lqPR
EmFphcHSPcDSagRv8hI8wk7XrwNILh+NuVFMZ4/6x0fpqzjoueOGm7xZN31n
DWqTjZdsFk9GrzisjmrSqTUbHlseB8mDRXJQrt8y45bR0j/a6fX0WBrflfV9
lMzVD7ndfDQK8NRpvKk/E/YfJIr+90wwQe/+3O0bh0r/FAQhUvrneCqASixb
L95sn7Z1ReDavw8w/TWo9AiSLs4dKKF+ZIvq5pq7lj78j9ufA0mFz/zHDyDp
h0H/3SDpX53mvwCSDst5c39I9tWeRECS4Y+0065WOc4y09S9ditLtXX9vuse
gNX9dCF12R/qFcebKakeB0n1y3Lby2yOJeU87ant5HV/OJuS0qoNpjlpmdxZ
6Vt9lLunOo3UtnKYyMpr0QSoYFhD9WoslnyYlFueSAtjfTp+SR/a7Fj3Z5mV
m07d163F1bhoBdsd5y+zVtv3kuPKwF2OzM35Wsnnr0VztsjzO6Xu26nVvxu9
+03LX9zccbqVtJGZuaaW51S62C22VttlvnO9tLvlu+G6qUt3lcuvlEkxtRun
03XufvoV+5LedOpFo2cN2ld5O60N9F0x9WEp3r14nubX4/T2mlI/+tlu79Xb
FS1pW0oWGrtNejE9drlZ6d0vjXmq7g0aH9VtenZdXzLrvTzwx2VtV2i1jmZf
uqSPZmtj9f2P4dEe39RZ/pLuJMfF3jRVuPNhOmr7ozXPm18NzQVIZTWyWs7c
+63uuS+vdpvl7VX+yLZ21Yk8NLP2STXSo+uHt+5vC0ZjbxW4kZt4laWkgDwc
s+aHPD9s3GFjuht8jXe1xUmu12+XzWXyVdunjwBV9xCbhtFfRd3v/qpr/kGe
uWtmycq4aw5axYOz+e4/99Gxk8KPT7MrGhI1duLvUyyu9cBS0v/42LPjpewB
2l/8J4wpq+X8GYsaOQr1KZYz6WpNKufqxY98vZytSrlMPV2F/2VL+UK2UMxI
qUyqmpI4GMDq/qe4yR9d5Z7/uO8Lm0M6fdEOh+L2mlNMZ13Il+QPQaAVa0ZW
Jziy8T9NSzbvfx8x/zRBSOcxuVxB974fSXh+hiHW6vY/lIjg1dQIHf+3eFdd
Vk7bnL3NHU/3dFrOK9v0n0xBFD/zmR+86w+D/ru96786zb8xBWGcSkV/e1Oa
sjpqjLXUayqf1xqzuzryBuPxq5/v+u3Zq71cNA/cLea+0vfUJD0aDkrluX5t
SoXM0NtLg8lumrn2X9Pn4hSgetZUt5Var9JcJPv7Qqvv+6/NRb1op3hiO+VW
8tKmdjllcnanniyMiud1upvszO51Tfesedm6TtJ6aTHoG41SfXqcNDZl3Sm5
99M9O/J6Po+PJ6b8ushtk3rSWQ/yK29ZOqec135ll9osXze9fbElny7FVnum
zOZKN2PfXxtyc/Zaacnt+ezGg37XP+0v+dWlNP8ajjLWormafg06w0NuXVwW
N9lc42yfhqXV7au+W70mS1flXMtumgN71dFandJS57QpX+9ypnmejw+HjpIr
DpxNXtp3cvm5mWx8ZMyPjJrs6MvNvWym5rlpfnT4Oo2txev5aI+U1zV30t6u
VvtI5025NLFWPWWZ3YyVobXbG9Vr1dLK+Wr1Y95X9fvrZdVNDfTmPHmYFmt2
LjlYWeuPTI8Pk8vt1OK1XLysN7t7Pnk3t6bRyLUaDSnXs83VbfvRSG7sTO4q
t06H/dZqpxvObS7fvf6oV1hw5JHNHardaT29OexPZm818Ka1eudSyat355g+
rT/KudXcrS8qr+tJt5L3NHks782BA9vzFpX6F0/RTrupbb/sbpPrcXlWuJj1
qjyQ23tDs6fuLvmx7LflnmvrvetH32lqr/7XSa6ta7mmO58FPt8zKoO/6vN/
0DKaEBZpad4VJzqeHUikc7Rbs0p6kT3SShR0YoeN6f8fY5aUlI90AAA=

-->

</rfc>
