<?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.5 (Ruby 3.2.2) -->
<rfc xmlns:xi="http://www.w3.org/2001/XInclude" ipr="trust200902" docName="draft-gazdag-x509-shbs-00" category="info" submissionType="IETF" tocInclude="true" sortRefs="true" symRefs="true" version="3">
  <!-- xml2rfc v2v3 conversion 3.19.4 -->
  <front>
    <title abbrev="HSS and XMSS for X.509">Internet X.509 Public Key Infrastructure: Algorithm Identifiers for HSS and XMSS</title>
    <seriesInfo name="Internet-Draft" value="draft-gazdag-x509-shbs-00"/>
    <author initials="K." surname="Bashiri" fullname="Kaveh Bashiri">
      <organization>BSI</organization>
      <address>
        <email>kaveh.bashiri.ietf@gmail.com</email>
      </address>
    </author>
    <author initials="S." surname="Fluhrer" fullname="Scott Fluhrer">
      <organization>Cisco Systems</organization>
      <address>
        <email>sfluhrer@cisco.com</email>
      </address>
    </author>
    <author initials="S." surname="Gazdag" fullname="Stefan Gazdag">
      <organization>genua GmbH</organization>
      <address>
        <email>ietf@gazdag.de</email>
      </address>
    </author>
    <author initials="D." surname="Van Geest" fullname="Daniel Van Geest">
      <organization>CryptoNext Security</organization>
      <address>
        <email>daniel.vangeest.ietf@gmail.com</email>
      </address>
    </author>
    <author initials="S." surname="Kousidis" fullname="Stavros Kousidis">
      <organization>BSI</organization>
      <address>
        <email>kousidis.ietf@gmail.com</email>
      </address>
    </author>
    <date year="2024" month="February" day="22"/>
    <keyword>Internet-Draft</keyword>
    <abstract>
      <?line 104?>

<t>This document specifies algorithm identifiers and ASN.1 encoding formats for
the Stateful Hash-Based Signature Schemes (S-HBS) Hierarchical Signature System
(HSS), eXtended Merkle Signature Scheme (XMSS), and XMSS^MT, a multi-tree
variant of XMSS. This specification applies to the Internet X.509 Public Key
infrastructure (PKI) when those digital signatures are used in Internet X.509
certificates and certificate revocation lists.</t>
    </abstract>
    <note removeInRFC="true">
      <name>About This Document</name>
      <t>
        Status information for this document may be found at <eref target="https://datatracker.ietf.org/doc/draft-gazdag-x509-shbs/"/>.
      </t>
      <t>Source for this draft and an issue tracker can be found at
        <eref target="https://github.com/x509-hbs/draft-x509-shbs"/>.</t>
    </note>
  </front>
  <middle>
    <?line 113?>

<section anchor="introduction">
      <name>Introduction</name>
      <t>Stateful Hash-Based Signature Schemes (S-HBS) such as HSS, XMSS and XMSS^MT
combine Merkle trees with One Time Signatures (OTS) in order to provide digital
signature schemes that remain secure even when quantum computers become
available. Their theoretic security is well understood and depends only on the
security of the underlying hash function. As such they can serve as an
important building block for quantum computer resistant information and
communication technology.</t>
      <t>The private key of S-HBS is a finite collection of OTS keys, hence only a
limited number of messages can be signed and the private key's state must be
updated and persisted after signing to prevent reuse of OTS keys.  While the
right selection of algorithm parameters would allow a private key to sign a
virtually unbounded number of messages (e.g. 2^60), this is at the cost of a
larger signature size and longer signing time. Due to the statefulness of the
private key and the limited number of signatures that can be created, S-HBS
might not be appropriate for use in interactive protocols. However, in some use
cases the deployment of S-HBS may be appropriate. Such use cases are described
and discussed later in <xref target="use-cases-shbs-x509"/>.</t>
    </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="notation">
      <name>Notation</name>
      <t>The parameter 'n' is the security parameter, given in bytes. In practice this
is typically aligned to the standard output length of the hash function in use,
i.e. either 24, 32 or 64 bytes. The height of a single tree is typically given
by the parameter 'h'. The number of levels of trees is either called 'L' (HSS)
or 'd' (XMSS, XMSS^MT).</t>
      <t>[EDNOTE: Should we delete this section? The parameters are not used in this
document.]</t>
    </section>
    <section anchor="use-cases-shbs-x509">
      <name>Use Cases of S-HBS in X.509</name>
      <t>As many cryptographic algorithms that are considered to be quantum-resistant,
S-HBS have several pros and cons regarding their practical usage. On the
positive side they are considered to be secure against a classical as well as a
quantum adversary, and a secure instantiation of S-HBS may always be built as
long as a cryptographically secure hash function exists. Moreover, S-HBS offer
small public key sizes, and, in comparison to other post-quantum signature
schemes, the S-HBS can offer relatively small signature sizes (for certain
parameter sets). While key generation and signature generation may take longer
than classical alternatives, fast and minimal verification routines can be
built.  The major negative aspect is the statefulness.  Private keys always
have to be handled in a secure manner, S-HBS necessitate a special treatment of
the private key in order to avoid security incidents like signature forgery
<xref target="MCGREW"/>, <xref target="SP800208"/>. Therefore, for S-HBS, a secure environment <bcp14>MUST</bcp14> be used
for key generation and key management.</t>
      <t>Note that, in general, root CAs offer such a secure environment and the number
of issued signatures (including signed certificates and CRLs) is often moderate
due to the fact that many root CAs delegate OCSP services or the signing of
end-entity certificates to other entities (such as subordinate CAs) that use
stateless signature schemes. Therefore, many root CAs should be able to handle
the required state management, and S-HBS offer a viable solution.</t>
      <t>As the above reasoning for root CAs usually does not apply for subordinate CAs,
it is <bcp14>NOT RECOMMENDED</bcp14> for subordinate CAs to use S-HBS for issuing end-entity
certificates. Moreover, S-HBS <bcp14>MUST NOT</bcp14> be used for end-entity certificates.</t>
      <t>However, S-HBS <bcp14>MAY</bcp14> be used for code signing certificates, since they are
suitable and recommended in such non-interactive contexts. For example, see the
recommendations for software and firmware signing in <xref target="CNSA2.0"/>. Some
manufactures use common and well-established key formats like X.509 for their
code signing and update mechanisms. Also there are multi-party IoT ecosystems
where publicly trusted code signing certificates are useful.</t>
    </section>
    <section anchor="public-key-algorithms">
      <name>Public Key Algorithms</name>
      <t>Certificates conforming to <xref target="RFC5280"/> can convey a public key for any public key
algorithm. The certificate indicates the algorithm through an algorithm
identifier. An algorithm identifier consists of an OID and optional parameters.</t>
      <t>In this document, we define new OIDs for identifying the different stateful
hash-based signature algorithms. An additional OID is defined in <xref target="RFC8708"/> and
repeated here for convenience. For all of the OIDs, the parameters <bcp14>MUST</bcp14> be
absent.</t>
      <section anchor="hss-public-keys">
        <name>HSS Public Keys</name>
        <t>The object identifier and public key algorithm identifier for HSS is defined in
<xref target="RFC8708"/>. The definitions are repeated here for reference.</t>
        <t>The object identifier for an HSS public key is <tt>id-alg-hss-lms-hashsig</tt>:</t>
        <artwork><![CDATA[
id-alg-hss-lms-hashsig  OBJECT IDENTIFIER ::= {
   iso(1) member-body(2) us(840) rsadsi(113549) pkcs(1) pkcs9(9)
   smime(16) alg(3) 17 }
]]></artwork>
        <t>Note that the <tt>id-alg-hss-lms-hashsig</tt> algorithm identifier is also referred to
as <tt>id-alg-mts-hashsig</tt>. This synonym is based on the terminology used in an
early draft of the document that became <xref target="RFC8554"/>.</t>
        <t>The HSS public key identifier is as follows:</t>
        <artwork><![CDATA[
pk-HSS-LMS-HashSig PUBLIC-KEY ::= {
   IDENTIFIER id-alg-hss-lms-hashsig
   KEY HSS-LMS-HashSig-PublicKey
   PARAMS ARE absent
   CERT-KEY-USAGE
      { digitalSignature, nonRepudiation, keyCertSign, cRLSign } }
]]></artwork>
        <t>The HSS public key is defined as follows:</t>
        <artwork><![CDATA[
HSS-LMS-HashSig-PublicKey ::= OCTET STRING
]]></artwork>
        <t>See <xref target="SP800208"/> and <xref target="RFC8554"/> for more information on the contents and
format of an HSS public key. Note that the single-tree signature scheme LMS is
instantiated as HSS with number of levels being equal to 1.</t>
      </section>
      <section anchor="xmss-public-keys">
        <name>XMSS Public Keys</name>
        <t>The object identifier for an XMSS public key is <tt>id-alg-xmss-hashsig</tt>:</t>
        <artwork><![CDATA[
id-alg-xmss-hashsig  OBJECT IDENTIFIER ::= {
   itu-t(0) identified-organization(4) etsi(0) reserved(127)
   etsi-identified-organization(0) isara(15) algorithms(1)
   asymmetric(1) xmss(13) 0 }
]]></artwork>
        <t>The XMSS public key identifier is as follows:</t>
        <artwork><![CDATA[
pk-XMSS-HashSig PUBLIC-KEY ::= {
   IDENTIFIER id-alg-xmss-hashsig
   KEY XMSS-HashSig-PublicKey
   PARAMS ARE absent
   CERT-KEY-USAGE
      { digitalSignature, nonRepudiation, keyCertSign, cRLSign } }
]]></artwork>
        <t>The XMSS public key is defined as follows:</t>
        <artwork><![CDATA[
XMSS-HashSig-PublicKey ::= OCTET STRING
]]></artwork>
        <t>See <xref target="SP800208"/> and <xref target="RFC8391"/> for more information on the contents and
format of an XMSS public key.</t>
      </section>
      <section anchor="xmssmt-public-keys">
        <name>XMSS^MT Public Keys</name>
        <t>The object identifier for an XMSS^MT public key is <tt>id-alg-xmssmt-hashsig</tt>:</t>
        <artwork><![CDATA[
id-alg-xmssmt-hashsig  OBJECT IDENTIFIER ::= {
   itu-t(0) identified-organization(4) etsi(0) reserved(127)
   etsi-identified-organization(0) isara(15) algorithms(1)
   asymmetric(1) xmssmt(14) 0 }
]]></artwork>
        <t>The XMSS^MT public key identifier is as follows:</t>
        <artwork><![CDATA[
pk-XMSSMT-HashSig PUBLIC-KEY ::= {
   IDENTIFIER id-alg-xmssmt-hashsig
   KEY XMSSMT-HashSig-PublicKey
   PARAMS ARE absent
   CERT-KEY-USAGE
      { digitalSignature, nonRepudiation, keyCertSign, cRLSign } }
]]></artwork>
        <t>The XMSS^MT public key is defined as follows:</t>
        <artwork><![CDATA[
XMSSMT-HashSig-PublicKey ::= OCTET STRING
]]></artwork>
        <t>See <xref target="SP800208"/> and <xref target="RFC8391"/> for more information on the contents and
format of an XMSS^MT public key.</t>
      </section>
    </section>
    <section anchor="key-usage-bits">
      <name>Key Usage Bits</name>
      <t>The intended application for the key is indicated in the keyUsage certificate
extension <xref target="RFC5280"/>. If the keyUsage extension is present in a certificate that
indicates <tt>id-alg-hss-lms-hashsig</tt>, <tt>id-alg-xmss-hashsig</tt>, or
<tt>id-alg-xmssmt-hashsig</tt>, then the following requirements given in this section
<bcp14>MUST</bcp14> be fulfilled.</t>
      <t>If the keyUsage extension is present in a code signing certificate, then it
<bcp14>MUST</bcp14> contain at least one of the following values:</t>
      <artwork><![CDATA[
nonRepudiation; or
digitalSignature.
]]></artwork>
      <t>However, it <bcp14>MUST NOT</bcp14> contain other values.</t>
      <t>If the keyUsage extension is present in a certification authority certificate,
then it <bcp14>MUST</bcp14> contain at least one of the following values:</t>
      <artwork><![CDATA[
nonRepudiation; or
digitalSignature; or
keyCertSign; or
cRLSign.
]]></artwork>
      <t>However, it <bcp14>MUST NOT</bcp14> contain other values.</t>
      <t>Note that for certificates that indicate <tt>id-alg-hss-lms-hashsig</tt> the above
definitions are more restrictive than the requirement defined in Section 4 of
<xref target="RFC8708"/>.</t>
    </section>
    <section anchor="signature-algorithms">
      <name>Signature Algorithms</name>
      <t>This section identifies OIDs for signing using HSS, XMSS, and XMSS^MT. When
these algorithm identifiers appear in the algorithm field as an
AlgorithmIdentifier, the encoding <bcp14>MUST</bcp14> omit the parameters field. That is, the
AlgorithmIdentifier <bcp14>SHALL</bcp14> be a SEQUENCE of one component, one of the OIDs
defined in the following subsections.</t>
      <t>The data to be signed is prepared for signing. For the algorithms used in this
document, the data is signed directly by the signature algorithm, the data is
not hashed before processing. Then, a private key operation is performed to
generate the signature value.</t>
      <t>[EDNOTE: Should we delete the preceding paragraph?]</t>
      <t>For HSS, the signature value is described in section 6.4 of <xref target="RFC8554"/>. For XMSS
and XMSS^MT the signature values are described in sections B.2 and C.2 of
<xref target="RFC8391"/>, respectively. The octet string representing the signature is encoded
directly in the OCTET STRING without adding any additional ASN.1 wrapping. For
the Certificate and CertificateList structures, the signature value is wrapped
in the "signatureValue" OCTET STRING field.</t>
      <section anchor="hss-signature-algorithm">
        <name>HSS Signature Algorithm</name>
        <t>The HSS public key OID is also used to specify that an HSS signature was
generated on the full message, i.e. the message was not hashed before being
processed by the HSS signature algorithm.</t>
        <artwork><![CDATA[
id-alg-hss-lms-hashsig OBJECT IDENTIFIER ::= {
   iso(1) member-body(2) us(840) rsadsi(113549) pkcs(1) pkcs9(9)
   smime(16) alg(3) 17 }
]]></artwork>
        <t>The HSS signature is defined as follows:</t>
        <artwork><![CDATA[
HSS-LMS-HashSig-Signature ::= OCTET STRING
]]></artwork>
        <t>See <xref target="SP800208"/> and <xref target="RFC8554"/> for more information on the contents and
format of an HSS signature.</t>
      </section>
      <section anchor="xmss-signature-algorithm">
        <name>XMSS Signature Algorithm</name>
        <t>The XMSS public key OID is also used to specify that an XMSS signature was
generated on the full message, i.e. the message was not hashed before being
processed by the XMSS signature algorithm.</t>
        <artwork><![CDATA[
id-alg-xmss-hashsig  OBJECT IDENTIFIER ::= {
   itu-t(0) identified-organization(4) etsi(0) reserved(127)
   etsi-identified-organization(0) isara(15) algorithms(1)
   asymmetric(1) xmss(13) 0 }
]]></artwork>
        <t>The XMSS signature is defined as follows:</t>
        <artwork><![CDATA[
XMSS-HashSig-Signature ::= OCTET STRING
]]></artwork>
        <t>See <xref target="SP800208"/> and <xref target="RFC8391"/> for more information on the contents and
format of an XMSS signature.</t>
        <t>The signature generation <bcp14>MUST</bcp14> be performed according to 7.2 of
<xref target="SP800208"/>.</t>
      </section>
      <section anchor="xmssmt-signature-algorithm">
        <name>XMSS^MT Signature Algorithm</name>
        <t>The XMSS^MT public key OID is also used to specify that an XMSS^MT signature
was generated on the full message, i.e. the message was not hashed before being
processed by the XMSS^MT signature algorithm.</t>
        <artwork><![CDATA[
id-alg-xmssmt-hashsig  OBJECT IDENTIFIER ::= {
   itu-t(0) identified-organization(4) etsi(0) reserved(127)
   etsi-identified-organization(0) isara(15) algorithms(1)
   asymmetric(1) xmssmt(14) 0 }
]]></artwork>
        <t>The XMSS^MT signature is defined as follows:</t>
        <artwork><![CDATA[
XMSSMT-HashSig-Signature ::= OCTET STRING
]]></artwork>
        <t>See <xref target="SP800208"/> and <xref target="RFC8391"/> for more information on the contents and
format of an XMSS^MT signature.</t>
        <t>The signature generation <bcp14>MUST</bcp14> be performed according to 7.2 of
<xref target="SP800208"/>.</t>
      </section>
    </section>
    <section anchor="key-generation">
      <name>Key Generation</name>
      <t>The key generation for XMSS and XMSS^MT <bcp14>MUST</bcp14> be performed according to 7.2 of
<xref target="SP800208"/></t>
    </section>
    <section anchor="asn1-module">
      <name>ASN.1 Module</name>
      <t>For reference purposes, the ASN.1 syntax is presented as an ASN.1 module here.
This ASN.1 Module builds upon the conventions established in <xref target="RFC5911"/>.</t>
      <artwork><![CDATA[
--
-- ASN.1 Module
--

<CODE STARTS>

Hashsigs-pkix-0 -- TBD - IANA assigned module OID

DEFINITIONS IMPLICIT TAGS ::= BEGIN

EXPORTS ALL;

IMPORTS
  PUBLIC-KEY, SIGNATURE-ALGORITHM
  FROM AlgorithmInformation-2009
    {iso(1) identified-organization(3) dod(6) internet(1) security(5)
    mechanisms(5) pkix(7) id-mod(0) id-mod-algorithmInformation-02(58)};

--
-- Object Identifiers
--

-- id-alg-hss-lms-hashsig is defined in [RFC8708]

id-alg-hss-lms-hashsig OBJECT IDENTIFIER ::= { iso(1)
   member-body(2) us(840) rsadsi(113549) pkcs(1) pkcs9(9)
   smime(16) alg(3) 17 }

id-alg-xmss-hashsig  OBJECT IDENTIFIER ::= { itu-t(0)
   identified-organization(4) etsi(0) reserved(127)
   etsi-identified-organization(0) isara(15) algorithms(1)
   asymmetric(1) xmss(13) 0 }

id-alg-xmssmt-hashsig  OBJECT IDENTIFIER ::= { itu-t(0)
   identified-organization(4) etsi(0) reserved(127)
   etsi-identified-organization(0) isara(15) algorithms(1)
   asymmetric(1) xmssmt(14) 0 }

--
-- Signature Algorithms and Public Keys
--

-- sa-HSS-LMS-HashSig is defined in [RFC8708]

sa-HSS-LMS-HashSig SIGNATURE-ALGORITHM ::= {
   IDENTIFIER id-alg-hss-lms-hashsig
   PARAMS ARE absent
   PUBLIC-KEYS { pk-HSS-LMS-HashSig }
   SMIME-CAPS { IDENTIFIED BY id-alg-hss-lms-hashsig } }

sa-XMSS-HashSig SIGNATURE-ALGORITHM ::= {
   IDENTIFIER id-alg-xmss-hashsig
   PARAMS ARE absent
   PUBLIC-KEYS { pk-XMSS-HashSig }
   SMIME-CAPS { IDENTIFIED BY id-alg-xmss-hashsig } }

sa-XMSSMT-HashSig SIGNATURE-ALGORITHM ::= {
   IDENTIFIER id-alg-xmssmt-hashsig
   PARAMS ARE absent
   PUBLIC-KEYS { pk-XMSSMT-HashSig }
   SMIME-CAPS { IDENTIFIED BY id-alg-xmssmt-hashsig } }

-- pk-HSS-LMS-HashSig is defined in [RFC8708]

pk-HSS-LMS-HashSig PUBLIC-KEY ::= {
   IDENTIFIER id-alg-hss-lms-hashsig
   KEY HSS-LMS-HashSig-PublicKey
   PARAMS ARE absent
   CERT-KEY-USAGE
      { digitalSignature, nonRepudiation, keyCertSign, cRLSign } }

HSS-LMS-HashSig-PublicKey ::= OCTET STRING

pk-XMSS-HashSig PUBLIC-KEY ::= {
   IDENTIFIER id-alg-xmss-hashsig
   KEY XMSS-HashSig-PublicKey
   PARAMS ARE absent
   CERT-KEY-USAGE
      { digitalSignature, nonRepudiation, keyCertSign, cRLSign } }

XMSS-HashSig-PublicKey ::= OCTET STRING

pk-XMSSMT-HashSig PUBLIC-KEY ::= {
   IDENTIFIER id-alg-xmssmt-hashsig
   KEY XMSSMT-HashSig-PublicKey
   PARAMS ARE absent
   CERT-KEY-USAGE
      { digitalSignature, nonRepudiation, keyCertSign, cRLSign } }

XMSSMT-HashSig-PublicKey ::= OCTET STRING

END

<CODE ENDS>
]]></artwork>
    </section>
    <section anchor="security-considerations">
      <name>Security Considerations</name>
      <t>The security requirements of <xref target="SP800208"/> <bcp14>MUST</bcp14> be taken into account.</t>
      <t>For S-HBS it is crucial to stress the importance of a correct state management.
If an attacker were able to obtain signatures for two different messages
created using the same OTS key, then it would become computationally feasible
for that attacker to create forgeries <xref target="BH16"/>. As noted in <xref target="MCGREW"/> and
<xref target="ETSI-TR-103-692"/>, extreme care needs to be taken in order to avoid the risk
that an OTS key will be reused accidentally.  This is a new requirement that
most developers will not be familiar with and requires careful handling.</t>
      <t>Various strategies for a correct state management can be applied:</t>
      <ul spacing="normal">
        <li>
          <t>Implement a track record of all signatures generated by a key pair associated
to a S-HBS instance. This track record may be stored outside the
device which is used to generate the signature. Check the track record to
prevent OTS key reuse before a new signature is released. Drop the new
signature and hit your PANIC button if you spot OTS key reuse.</t>
        </li>
        <li>
          <t>Use a S-HBS instance only for a moderate number of signatures such
that it is always practical to keep a consistent track record and be able to
unambiguously trace back all generated signatures.</t>
        </li>
        <li>
          <t>Apply the state reservation strategy described in Section 5 of <xref target="MCGREW"/>, where
upcoming states are reserved in advance by the signer. In this way the number of
state synchronisations between nonvolatile and volatile memory is reduced.</t>
        </li>
      </ul>
    </section>
    <section anchor="backup-and-restore-management">
      <name>Backup and Restore Management</name>
      <t>Certificate Authorities have high demands in order to ensure the availability
of signature generation throughout the validity period of signing key pairs.</t>
      <t>Usual backup and restore strategies when using a stateless signature scheme
(e.g. SLH-DSA) are to duplicate private keying material and to operate
redundant signing devices or to store and safeguard a copy of the private
keying material such that it can be used to set up a new signing device in case
of technical difficulties.</t>
      <t>For S-HBS such straightforward backup and restore strategies will lead to OTS
reuse with high probability as a correct state management is not guaranteed.
Strategies for maintaining availability and keeping a correct state are
described in Section 7 of <xref target="SP800208"/>.</t>
    </section>
    <section anchor="iana-considerations">
      <name>IANA Considerations</name>
      <t>IANA is requested to assign a module OID from the "SMI for PKIX Module
Identifier" registry for the ASN.1 module in Section 6.</t>
    </section>
  </middle>
  <back>
    <references>
      <name>References</name>
      <references anchor="sec-normative-references">
        <name>Normative References</name>
        <reference anchor="RFC5911">
          <front>
            <title>New ASN.1 Modules for Cryptographic Message Syntax (CMS) and S/MIME</title>
            <author fullname="P. Hoffman" initials="P." surname="Hoffman"/>
            <author fullname="J. Schaad" initials="J." surname="Schaad"/>
            <date month="June" year="2010"/>
            <abstract>
              <t>The Cryptographic Message Syntax (CMS) format, and many associated formats, are expressed using ASN.1. The current ASN.1 modules conform to the 1988 version of ASN.1. This document updates those ASN.1 modules to conform to the 2002 version of ASN.1. There are no bits-on-the-wire changes to any of the formats; this is simply a change to the syntax. This document is not an Internet Standards Track specification; it is published for informational purposes.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="5911"/>
          <seriesInfo name="DOI" value="10.17487/RFC5911"/>
        </reference>
        <reference anchor="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"/>
            <author fullname="S. Santesson" initials="S." surname="Santesson"/>
            <author fullname="S. Farrell" initials="S." surname="Farrell"/>
            <author fullname="S. Boeyen" initials="S." surname="Boeyen"/>
            <author fullname="R. Housley" initials="R." surname="Housley"/>
            <author fullname="W. Polk" initials="W." surname="Polk"/>
            <date month="May" year="2008"/>
            <abstract>
              <t>This memo profiles the X.509 v3 certificate and X.509 v2 certificate revocation list (CRL) for use in the Internet. An overview of this approach and model is provided as an introduction. The X.509 v3 certificate format is described in detail, with additional information regarding the format and semantics of Internet name forms. Standard certificate extensions are described and two Internet-specific extensions are defined. A set of required certificate extensions is specified. The X.509 v2 CRL format is described in detail along with standard and Internet-specific extensions. An algorithm for X.509 certification path validation is described. An ASN.1 module and examples are provided in the appendices. [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="5280"/>
          <seriesInfo name="DOI" value="10.17487/RFC5280"/>
        </reference>
        <reference anchor="RFC8391">
          <front>
            <title>XMSS: eXtended Merkle Signature Scheme</title>
            <author fullname="A. Huelsing" initials="A." surname="Huelsing"/>
            <author fullname="D. Butin" initials="D." surname="Butin"/>
            <author fullname="S. Gazdag" initials="S." surname="Gazdag"/>
            <author fullname="J. Rijneveld" initials="J." surname="Rijneveld"/>
            <author fullname="A. Mohaisen" initials="A." surname="Mohaisen"/>
            <date month="May" year="2018"/>
            <abstract>
              <t>This note describes the eXtended Merkle Signature Scheme (XMSS), a hash-based digital signature system that is based on existing descriptions in scientific literature. This note specifies Winternitz One-Time Signature Plus (WOTS+), a one-time signature scheme; XMSS, a single-tree scheme; and XMSS^MT, a multi-tree variant of XMSS. Both XMSS and XMSS^MT use WOTS+ as a main building block. XMSS provides cryptographic digital signatures without relying on the conjectured hardness of mathematical problems. Instead, it is proven that it only relies on the properties of cryptographic hash functions. XMSS provides strong security guarantees and is even secure when the collision resistance of the underlying hash function is broken. It is suitable for compact implementations, is relatively simple to implement, and naturally resists side-channel attacks. Unlike most other signature systems, hash-based signatures can so far withstand known attacks using quantum computers.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8391"/>
          <seriesInfo name="DOI" value="10.17487/RFC8391"/>
        </reference>
        <reference anchor="RFC8554">
          <front>
            <title>Leighton-Micali Hash-Based Signatures</title>
            <author fullname="D. McGrew" initials="D." surname="McGrew"/>
            <author fullname="M. Curcio" initials="M." surname="Curcio"/>
            <author fullname="S. Fluhrer" initials="S." surname="Fluhrer"/>
            <date month="April" year="2019"/>
            <abstract>
              <t>This note describes a digital-signature system based on cryptographic hash functions, following the seminal work in this area of Lamport, Diffie, Winternitz, and Merkle, as adapted by Leighton and Micali in 1995. It specifies a one-time signature scheme and a general signature scheme. These systems provide asymmetric authentication without using large integer mathematics and can achieve a high security level. They are suitable for compact implementations, are relatively simple to implement, and are naturally resistant to side-channel attacks. Unlike many other signature systems, hash-based signatures would still be secure even if it proves feasible for an attacker to build a quantum computer.</t>
              <t>This document is a product of the Crypto Forum Research Group (CFRG) in the IRTF. This has been reviewed by many researchers, both in the research group and outside of it. The Acknowledgements section lists many of them.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8554"/>
          <seriesInfo name="DOI" value="10.17487/RFC8554"/>
        </reference>
        <reference anchor="RFC8708">
          <front>
            <title>Use of the HSS/LMS Hash-Based Signature Algorithm in the Cryptographic Message Syntax (CMS)</title>
            <author fullname="R. Housley" initials="R." surname="Housley"/>
            <date month="February" year="2020"/>
            <abstract>
              <t>This document specifies the conventions for using the Hierarchical Signature System (HSS) / Leighton-Micali Signature (LMS) hash-based signature algorithm with the Cryptographic Message Syntax (CMS). In addition, the algorithm identifier and public key syntax are provided. The HSS/LMS algorithm is one form of hash-based digital signature; it is described in RFC 8554.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8708"/>
          <seriesInfo name="DOI" value="10.17487/RFC8708"/>
        </reference>
        <reference anchor="SP800208" target="https://doi.org/10.6028/NIST.SP.800-208">
          <front>
            <title>Recommendation for Stateful Hash-Based Signature Schemes</title>
            <author initials="" surname="National Institute of Standards and Technology (NIST)">
              <organization/>
            </author>
            <date year="2020" month="October" day="29"/>
          </front>
        </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="RFC3279">
          <front>
            <title>Algorithms and Identifiers for the Internet X.509 Public Key Infrastructure Certificate and Certificate Revocation List (CRL) Profile</title>
            <author fullname="L. Bassham" initials="L." surname="Bassham"/>
            <author fullname="W. Polk" initials="W." surname="Polk"/>
            <author fullname="R. Housley" initials="R." surname="Housley"/>
            <date month="April" year="2002"/>
            <abstract>
              <t>This document specifies algorithm identifiers and ASN.1 encoding formats for digital signatures and subject public keys used in the Internet X.509 Public Key Infrastructure (PKI). Digital signatures are used to sign certificates and certificate revocation list (CRLs). Certificates include the public key of the named subject. [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="3279"/>
          <seriesInfo name="DOI" value="10.17487/RFC3279"/>
        </reference>
        <reference anchor="RFC8410">
          <front>
            <title>Algorithm Identifiers for Ed25519, Ed448, X25519, and X448 for Use in the Internet X.509 Public Key Infrastructure</title>
            <author fullname="S. Josefsson" initials="S." surname="Josefsson"/>
            <author fullname="J. Schaad" initials="J." surname="Schaad"/>
            <date month="August" year="2018"/>
            <abstract>
              <t>This document specifies algorithm identifiers and ASN.1 encoding formats for elliptic curve constructs using the curve25519 and curve448 curves. The signature algorithms covered are Ed25519 and Ed448. The key agreement algorithms covered are X25519 and X448. The encoding for public key, private key, and Edwards-curve Digital Signature Algorithm (EdDSA) structures is provided.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8410"/>
          <seriesInfo name="DOI" value="10.17487/RFC8410"/>
        </reference>
        <reference anchor="RFC8411">
          <front>
            <title>IANA Registration for the Cryptographic Algorithm Object Identifier Range</title>
            <author fullname="J. Schaad" initials="J." surname="Schaad"/>
            <author fullname="R. Andrews" initials="R." surname="Andrews"/>
            <date month="August" year="2018"/>
            <abstract>
              <t>When the Curdle Security Working Group was chartered, a range of object identifiers was donated by DigiCert, Inc. for the purpose of registering the Edwards Elliptic Curve key agreement and signature algorithms. This donated set of OIDs allowed for shorter values than would be possible using the existing S/MIME or PKIX arcs. This document describes the donated range and the identifiers that were assigned from that range, transfers control of that range to IANA, and establishes IANA allocation policies for any future assignments within that range.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8411"/>
          <seriesInfo name="DOI" value="10.17487/RFC8411"/>
        </reference>
        <reference anchor="MCGREW" target="https://tubiblio.ulb.tu-darmstadt.de/id/eprint/101633">
          <front>
            <title>State Management for Hash-Based Signatures</title>
            <author initials="D." surname="McGrew">
              <organization/>
            </author>
            <author initials="P." surname="Kampanakis">
              <organization/>
            </author>
            <author initials="S." surname="Fluhrer">
              <organization/>
            </author>
            <author initials="S." surname="Gazdag">
              <organization/>
            </author>
            <author initials="D." surname="Butin">
              <organization/>
            </author>
            <author initials="J." surname="Buchmann">
              <organization/>
            </author>
            <date year="2016" month="November" day="02"/>
          </front>
        </reference>
        <reference anchor="BH16" target="https://eprint.iacr.org/2016/1042.pdf">
          <front>
            <title>Oops, I did it again – Security of One-Time Signatures under Two-Message Attacks.</title>
            <author initials="L." surname="Bruinderink">
              <organization/>
            </author>
            <author initials="S." surname="Hülsing">
              <organization/>
            </author>
            <date year="2016"/>
          </front>
        </reference>
        <reference anchor="CNSA2.0" target="https://media.defense.gov/2022/Sep/07/2003071834/-1/-1/0/CSA_CNSA_2.0_ALGORITHMS_.PDF">
          <front>
            <title>Commercial National Security Algorithm Suite 2.0 (CNSA 2.0) Cybersecurity Advisory (CSA)</title>
            <author initials="" surname="National Security Agency (NSA)">
              <organization/>
            </author>
            <date year="2022" month="September" day="07"/>
          </front>
        </reference>
        <reference anchor="ETSI-TR-103-692" target="https://www.etsi.org/deliver/etsi_tr/103600_103699/103692/01.01.01_60/tr_103692v010101p.pdf">
          <front>
            <title>State management for stateful authentication mechanisms</title>
            <author initials="" surname="European Telecommunications Standards Institute (ETSI)">
              <organization/>
            </author>
            <date year="2021" month="November"/>
          </front>
        </reference>
      </references>
    </references>
    <?line 563?>

<section numbered="false" anchor="acknowledgments">
      <name>Acknowledgments</name>
      <t>Thanks for Russ Housley and Panos Kampanakis for helpful suggestions.</t>
      <t>This document uses a lot of text from similar documents <xref target="SP800208"/>,
(<xref target="RFC3279"/> and <xref target="RFC8410"/>) as well as <xref target="RFC8708"/>. Thanks go to the authors of
those documents. "Copying always makes things easier and less error prone" -
<xref target="RFC8411"/>.</t>
    </section>
  </back>
  <!-- ##markdown-source:
H4sIAAAAAAAAA+U823LbRpbv/RW9yoOpLYIiJVm2lEwyFEVbnOg2Ij2TlMfj
aQJNEiMAjaAB0YzLVfsP+wP7Ifu0+yf7JXvO6QbQoEjH8m4y2WziKpFAX06f
+6UPPc9jeZhH8oTvjJJcZonM+Xedp91jflNMo9Dn38oVHyWzTOg8K/y8yGBo
P5qrLMwXMR8FMsnDWSgzzWcq4+fjMRdJwL+7HI93mJhOM3kPS7uPaRxtscN8
kUtYanXCw2SmGAuUn4gYdggyMcu9ufgxEHPvHYz19GKqvW6X6WIah1qHKslX
KYwcDScvGOxxwL7gIpPihGvpw+elyu7mmSrSE37Rv7wZc49fhHGYy4D3gyDM
YQER8UvpL0QS6tiAf/Pt6DsCdHw5uhyyO7mCZQLYxKLGO0O42L1MCnkCm3B3
B/xuYPoz7B0mc/4S3+LjWIQRAJYKHf8+lPmso7I5g9mAw2IK+KETwgH3zLmr
A+8wJop8obIT5sF4DmjSJ/zbDj8VehFmIT0zGPtW3MtF4znsccJPxyP6Ig0I
dziqMzWjOgjK7+f4puOr2N1i3OEvomKRyczZYuyrPG88py0GofYVH690LmPt
bqZnZujvfRyxYYuXRF93h1zOROI+px3mgG/BX8bTc3d5Az0N7QTSXfqsw/+E
y0ipc2f1M6C0jNZemSNkqzRXV/JdzsfSL4C3V+5OAU3s3ItkjvM+jrdvVaHD
INSNY4n7TOnmq43ksQPWd2CJymKRh/fAdZzfvhg8Pe71yo/7z7sn/Iv7A+7L
rM3v97mfRebV84PjHrx6F2ttHzx9eggPFlpHcfnoWfd59QgOwX16M7553u3u
wysCLxfZXOYnfJHnqT7Z2wtUiCy81+t2jrr7z/euRuNJZ3zTgTkeTDJzjFq5
lXCAWCaBQJEjKQN0AJ2LiJ8DH3rAsiCT43CeCNQuwGULGUuDo5L5Of3n2b8W
11fCCvEo0bBZkUuuZrg47JUFmuR4AvKdqEjNV7yFQO7SEgALQLYP5/N6APAx
Y6h+mhg+2H92bD8+P+x164+E98vBy9vhnzcjJy+mIahO1SmiaScvPIAm1rkI
cuDSvTDYk2kWJjngrnd0cOCiivDCL0Ui5oCBJDcadQOOPgE5IAKX/stMLje/
vgE+FXEKW91ZdnwwZE0FbHrvyOkmAE6LPEw2v/0DvvUXsUiSBkV6R16v53X3
4eHpee9oM4INAjuh8DPiQpwG6Dzc76TBzEXotUp1m494EAY8zLmYC+Dv//qX
f62EHBnmOpHeJIylg15eJIHM+GSpvEupNZCD9/Nc+He689OYv4CjZUWIK4TJ
3Vbcnf/nv0cajMTa8eHr4Grc3+90N589lkEogJFmMtGyM1f3cPr9/b2xTPe6
z+Bz96D7rPf84HDP6+G/7t5g3H+LK76FJd/2L15e344m55fjt52bsxcurgYo
pZkfgjxVglWhqTb44wJMKIe1eAtXxU+7fLCaggNQDQ7uQw1GHUaM+7uPkON6
O1D4PkpsOb8S2H0PLGP3GTwcTsYjb3ILAnzgHR3vb8bWcrnsyFwbZRXICMQ7
28MHb/MMOObgqNt9i3+Oj+nb8f5et9ehf2+Punt5Zl7u33d7+H+6zl9GYOOm
wOpSu+Gh0TvyjeaLK1fjp1EyLDKVSrBTExmR/iwSu4x2FFyt91qIjTVU9UCS
GPM8j4sp+G7CzxmbLELNwckqCFqdSh99N1CVFX1Dx6FDBdofX3V6HMihAvRo
jJYkZ4nB6T5NlfPW2Ds/He/yc1hWZP4CzhK5w8h1YC3wEnfbXH6Xg7WAdS5l
dhfJB8vxFnqRMLB0KP96OYEvPC6iPPTyTEp2L7JQwAFBunFAh9O57XEtOUSa
Rnj0XHE8yFbnF02D4/zyFviIu3wJlIV5SktQLuDGwXl0rT7AD+UFogLUTXNh
BjY6N0BIg2DnAQdnWVnwolDnoG2IfnEYBJFk4EjCYpkKABIYwtjjkK9B33Kh
0UVvG0fcQSADJpuGiSyRjmjUfAksgfqRr+vH1vUEVoTTgXcMihJwmGbqHnin
xAarsMG1hSNfiBxOGKMOJl0huQRH2qDyhwLoVcQcwEiBoYH5psj3kol78IHE
NJJIRBlmSCyVSZAqXikcoO1SRpHR2jpXKqCjBTIFRtJcJREoeiSXZNpR/Eh2
mhKtkLUXgEQ+KxJCbof3tcEYjFpxXyDM2b1EBIqEhXGqshxZbFqEEUnGNFL+
HSmA9bPAoTVQE0dXbgYyYBKwhmjzvHJWOiiqEpAa3iNfQBxCrg0SEk8r+CxM
UA/7KgL9QJPRkk3GOBRMHqDUl+bggkU27EmKGNQ0DoyNUdN0rqkk1pUGaXlz
2yfa6DOQLg2HlaxIUcGYsSlgGw6G32Z4TlwGUUHsgLRFeoMcuLB1OP/zIkQO
A2pk4XwBakg6Z6g1USoycJ6JF5aqiGCTKFJLOLuLFdgKd4VT3odZXsCQFdB0
qgrSIBtO3AKj2eH7fz3qggbJUS0gPnM6t6806QxAGdqRjDtMHP4o6cyRSubu
UUEwOvyskKUeKbV/AhtaJmMuwCWOHxLF0R8kKpY2PsS0MLBtqM9iQlmikBio
w8BOgK6DxZHzENcgXSGqHND3YO1QLnMFbAKIP1dLIAqECCiAIFs4HCJwTRtK
FJdIrcgwVLwWi9XaPh3wAEAqcCczFXVdILWfhVMZMJI7iPYKjcooEsgWsN37
9zDBowkmkMcI98OHDuq0gUqQVci24fQzScyN340UINowDNd85/LVeLLTNn/5
1TV9vh3+8dXodniGn8fn/YuL6gOzI8bn168uzupP9czB9eXl8OrMTIanvPGI
7Vz2v98xhmbn+mYyur7qX+zgefKGHUUUAPmn0mAeeJ9kQrMKLzjndHDzH//W
OwRc/BMEEvu9HiDAfnnee3YIX1ATmt1Ics1X1D8MCCAFYRI4HBCfoo4FOQdt
pBdqmYDAZxKw+c+vETNvTvhXUz/tHX5tH+CBGw9LnDUeEs4ePnkw2SBxw6MN
21TYbDxfw3QT3v73je8l3p2HX30Toanyes+/+ZohC12pXBiTSFqzVBz8SfIE
xZvkslT81ds2n4dofwCp0xVY4w5YVxAXlBtfEoUZzl2l6K2gIo2MlqwFndww
rooc1DyPZDIHa2ntSsOY4BbA/20WdkB+JGg3gG3/sM0P9sGA8qPDEgCEHowc
SjiqIY7xgTXGvAELQc6mK6Ou6/MunphFaq0SgchHRhORSYdlLAC4EhznycUT
Tp4XA1CeBE+Me9UuHYNd4Kq/vB6eAcmG4PAuSBMvUeQj2NIIgjbq+xvewL5R
DaipSleIcFpKTecvb5B0r0CRDEiR1AYusU7Y+y82aQ3GwDSDzw1WmbI280yk
4FHWlsPqT9zdByUCXklmyAYCam2zV5nkNjObLsQ9MgnoR3DlUkzWkHOGSimT
c6AzaXvyQCyPwLgCbUoHPCSj5pUOSefilsZv2AiDdX4oGgWDI7gfCa1pQWE9
GfQyWOlHiACg0iJbGd0gygVwNowIRWk7a50toqVYoQ9F/kmOuggNF63bRBux
k12wybTyHbmg/BLcLUV2w6yvZjOZMR2jJkqNm4waGi2kJgjJwKDzA164RrdG
cUUcBwjKvfJUlblj1kEkVWf3QNtH+wDyI8rKIJS0ZdMmg0FHw4dONGCT1aKg
Icrb7VhfA+GDkBJoW3pezjLOC0RdLu6ktfIQ4QAcDnUidOUJHIB2JpB4sFQM
5gpA44CjOrzIFCY/KheLER3A+UERicXfAeYE2IrYRWBgkleKynEgYPxN7Tto
S1ZGvGp4CQAMIiNdFV9gUqUmVyJ9WCkkJ06YGAhgzdGrsLaerfl8Db9e3Ksw
cFztxKcIUYMDcycdLAIVAGMr9tpkxt60+esyhfiGdFImYYhsmwQgQtauIZYJ
eG8qIXjIXk1N/MRw8Abi4aM66gYNBQZAktQT75nRURuIANpn0NeWl0wEtGnT
0iszepOBLIVaFzJwnbIWnD0qSA9Yf/lBLDe4vdC7SEgF/jCwkwoQasmC2j+c
ge4w+olUWAUh6tM5EuB6ML6hWAOskEbzQExh3U0gFoQ0HrpLQIzG/pWU0UuM
bFtlxKeLqUIFhsvDXrtmf/T+iNkidFUfxGsNojVh1cYKoGM4jehkhg2JkTL5
QxGistNryRGjvRwdAqS4D2kFraKCoi7S7biKmILKgbUEKBCbd6j3L7Rx9AMF
p0QDg7H8yiRfmkcFk0uCteZwbBqKx0Cv1gCIA5AFcO8a443o/aFmLF2tkn1p
lS30gqNW/rid3f++MdEH7qkI705to1/g1xaGAZg54RERnJX5dqMViAcSlXhu
UAAmKZfvULm/QAjfiTiNgMpa2rCskbI3lTENLL1Ec4Z7zMIspi8leLDRa5u2
BGkfY+AOhC+Q2U0+FcMFWNPKL9o4T2oEOtQLaQS6TC2RYjEOwMywf5ixBjJw
CROHOkk1iNgjTTKGQKIapHwQWATA/EhNOBxK2xrVkgYZ4wWMk2cFRbFbMV4m
dEAtU8jilEarzCgEKwN3CuAYT2Tj4de2UPOG7IGPIc8KQ9nafuJZUcrqR6zy
aIxT52aKwiQo5R6lpQqa8wUYnjlIfVI/ZHVOD5CUbEz2GS8F7D05ngm/Hp2Z
QCS1udnarQMMjNYioLbxCGfolSdyibMN19gNVtZ5gtAQBZ9yj9bMMXQ6vCnl
rmodVPtyBuK6YIuA4c60GXH4a1vEekMZlUymFC9TRGTlCOPLEDMiht/Ri7Bu
OgLabjrRurRATEy1sS5ffEF17ZrqNjBV07+T4a6xSFmRmqYbMV2WyRunYNUp
DK2DOggm5nt4LFDNiElfdrYBYziK9nJggm3/FgYegOYttPaiWHtIAsD9306Y
KWRufMv59ekfhoMJH50NryajF6PhLT85+R1/X2auwddr9XZBItGEelMVrFr7
uyA1reeH3V0ODmygw1avd/D08HiXp3e+xtH497h1vFsuouMwlq3e0S7irnWw
y3vP+AfHvhOttsG/Gd+Y30HNQAgzXjgTNRLivF6gTBSvQGGuYpxpGNMkDzlw
B8izqSaWMY1IGETmaIywcl/yVZUaIJin0gfeMoz69OnhG0uxdcI0QUYBwoSX
tlRJ7zyY4F1cgrUAcMdAkZtXpxejgfft8PsmJRwKbcZUORBnri3qGS7HxLcd
dNO/7V+Oef92yI1ElC8Gw9sJbu69GvdfDqsCBufvyyxwlTFuowm6lSm4T2RT
2nhiVJc4os392wv8wD8grTehphaVB3jZCj/h5HowGU74eHI7unrJ2BgMXO2W
krRWRCFxiRXFVXWS1lKeDCZ6vahizFurKJuQdniTU00AT0WJBx4WB6g5Jhmq
MM4cD1ekxPuDIH4qyR2BCCpCm9Izqsnk8j9BOVl9QMM3KwS8KLBFG7ivfloV
5IWXt0Dqq90DD+IDMNQ/Elpbh7scq3A4BNwDTKwHrd7+s0oN4Etv22RcF8Jh
0eo93XUsBaiTcrrQK/Bf8iz0Uccg6K0e6JJuyV4PUPCTooczPkPuXKy5Qucu
9+uQuA1csVXkNkP/CHk7OO59rrytwWlEwOaqHikEOGO7HMT5RyShfvl/UBbi
vNU7XJOGdVx8kkBcTj5TJGr0rQtFveSvRywe8slHJWPTEX452WgCS9EK7v+K
LrGchrkVDIwGKUSkMrhf383KbcEFC2M2xrC5W3pu1nEiEQZxpEzwOmYd43T4
aNacUA+CdVNkcyqGYjLSCWrQbLI6stnm5rU326s2VxnbIsHk45tDGIKhIbWZ
ipiQWdUC3Iw2K5NREKjMQkyXY/Dz6WfbEk9aaMLcrI8ExaK4wCICJhVVIktH
sob2XkSFLPmsycRf4snx8Tq3u0mGMK/zE+WOJmFkVn7cyarDUEqOrrKsZTja
zB6S/8yHrF44klw9swL9SETUTlyZXK7TbPi05NHtkUiVw2LrkRyJNeASNTIl
YyjJ7GTOKG5w4tuxLY4fYvavDhNRsuvLHm4aYuJwcK3JdR2VlyxZoHta3wdp
3KjB1LlMkIZabrseVBUlmzkIeBsF9qJEBVd9UdzE29WNIqKFisN8PQynZTAi
Q4SbKH3TctwUKTEZycfDP74aXg2GyFjIX1iEgL+YoHDYDfHAHAQ3WVAXU4s7
beO0QOSiLN2YxK8RB4DVpuosQk16oYEMvbn4ZXBAC4e6XDUA4vs5hJK2rrch
HdKYxzD1iRwnMReLiVosXFG2H2GZmGpy8xJJWqbR8QgyQ/NhImKbYZdrO5NI
/FQJEPeVviRyIgGptPQN1vdemFxHe9OqxpA6BfKSZY86yOpOuExoRb5kDoNu
WnLtNoKzqOannX2To4e/pSChrW2jMGIBhopMJvui/FxiiiozZsKqvjKJVW+K
xVTkYxmwiniWoVxjT+GcKnLKY1H+cuWmtMwVuyUgLS2ZiDLpTjrRQF5/vwg1
wWfupOmt+KVFAToL1E415E84YqcJpRG4Kt21QblsDM5tRo5yLMTseCeHrtqt
bCHWRMk1eEuhK36rkitgYqPymg4oaayU42P7BOfwh/xOETGzXI+PjeQ0t6vT
qB/Nb/0D01uTBzA/JuNRE+oXy3hox8Ow8dd2flkPLT+FYWjOL8gxa/ttYZnf
XhLk0ziuEfB/Drv9TwN+l98mDVXnVIZLZ722a8L3lb25ofgzq/jrsnQjd/BR
9l0LAT+Vg3Fafc8BGfJnZ+LGlh/j499kCuPT2dmJ0v8BDN2A9X+bpyngf1mt
UV+idNadWY/KdfkfvRnuZZyXSxUUeEP9hVuYAonJUqVL98SM1CuIuN45AaW0
oYJ9H9NK9j4jRTLuDua6NTjVaY3m6vKoW1C2dUFsk3tjed/z7J8mzPYV/f1q
cH02BNr3byfjr62xNTKivfQufOd1cfrk9Ix7fNS/6nO8GUS+uwUbFIOZdjZ8
Mboa4c3FMR9d3lyMBqMJn/RfjonHTocvR1dm4PC7m2vYjUMM86V5AsPxiWX+
OrHW5uPRy6v+5NXt0Kv6eOyoF7fXl7XeGtXs6O13u8dVRuy9dWK2iSKYh0AF
raNdc5E1kTmOLi//tJ5WEunU3eEpR9y0nuG6HiDCaAr85IlNIHX3W0+f7374
cp0s1yZZ67QUN4gDI7Z4blvqwZ/j7Vk3j1XH/Bm8vcc6FJX+rfTxr0UN1w7F
443Lr/dUrnFpcuimfAtpULfwsMazWjyo236UXzeM3yD3n1nw3ZpCr9XMGEiz
odb8oRxJnfHeoH+DA6uNz/jp99tE7UOJSDhao472GefaVFD79EM1dn/EiRpi
un4cpwrymQd6WA553JEcCB55KEdOP9Tsvon+H+XZ/zd3E3CFx1w4sMj5TVeP
cYVPrgg7CPmNVw9LtHxiORCHD6/OXD8UvqIX+kXdFz2wrQTC6Y6qrmY3ylmY
P63DltKxx7vt1B6myLMv6Hbbi/JCNjd3Zf2sMFfEFWYY8W4wOtplx6MvTWsK
xAWY8Hxwy7eDVSS8fUj98jLjS7qPae8JqymVW5xb1VRzXCrnZmDZqsds55st
U1CGE69R2U7CqohmuwNNv6hturQd5XgpWAodwu7MFDcxNi8hA3jMFvbyOtZI
XuOvDryh7k8Iu62ys1faKZR7vdZ3/qaNZTJEO/ep30XKQNtqQYnu9dv0VOwJ
9R0rcwX2SHwZRhFOpK5Jir7Ir8GDUOuA7VakO5ZutYgKpzF2LwZ4Uwiz/Nos
ZhsFZyIOo1Bk5mKRuSZM0zVBjT3EdIUb88+M/UlkoSqw8xNTFfPQkmk70cte
RdNTHUCYDfER3ik2l+s5dp/f0c1k7Jea8UYfh5sUmeKlWMREKsIMoyvl070o
kArEXtUgpIkT7XW9xuq2Y1HnCoszqsjLZhxYApCDrV3LRegvEJFl6mZz7aPD
BwsJC9PNP3eLXMFaZYNrSTrT6GrzM4ZCjWREJrHsKYMOP8tUapoN6Mc5nGQN
kGUB/LxSRQbq6mo0gHA3z7FYM8OHXKdqbUNsEKcWqnXUmA5CQ7WyDWFzryle
EEf0UpktN2ktah6q25wARXdSpsQAdEuYeM5FCYJetwPAckUi4mk4L4CN6IK1
AJCmOAFJX9O7hoNO0qd7/FUXjPX3TcbCMuOqWd4pi6NPSeNVvSd0wRvBSEEf
UFUvr+5xl0EEVbKDe8KWU3HDS9Ll/ealWDltIZj84BYyvUr8RaYgArZ35Kcy
X0qQdjAQ9wpblux1/OoLhJL4mxjECkHh01UC0O2ngJQipaG3krjW+QGYxpVy
3rdldpRHagFahPMFoAPkMNANNSMTjQxFlUjTPw/Sn6+YS3k3G2RvjWOJCufc
iygMqFcSlKIKSoZBPJayifR6hW0YRFV7gMwewNEb1NxvFLjg27tNmGnLHl+c
e2fj/m7ZURsU5nJKoz0J14qxsRiNFDXuKFvXxM6FoEgC7LQvATYybxpplFEL
pv9LzOS8wP5N5Oq0+kEAuxFb38j+FoAREqvuqtSvzDmioJL6emNqhQO5R9RT
ez8JFBq70Mf+BGL82gLTLog+7AEF6V0igD+BYVTzoFsIElAOzGgiUvTEIGmm
ppYBbP/fNi0emlwzogVQKJFFx00TgD/egBac6Olwlu3KkqkhdHMHbFHZKLTP
mm4K5S4prbbu59BDkpwfCkmtGmgNKPdm9JvNvfFZpmJT6YT4p/5FN5vqqzNL
O9jUCYosW1WXnhrpRwfII/sjHEgFSnj6d4laRjKYk6fF3p8Y7SCD3+3MRKTl
DuWkRXJnUHZbAL+fox603f83IsGfAqt+fYlGLWSUohXWxRxcn/r2gdtmXlC7
PY+UuWaOP1ZG59UhGHew7eVA7eC0zVqv7Y9ZOdnrw173za7bbNroPiDQ56rs
WDO3e7RpFKQfPCn36fCdAYgO0dzYjBg8HvQX4ZHm6HnZnggSepllCrtnVSJ3
uMcsJJif/W8lyKxMhlAAAA==

-->

</rfc>
