<?xml version="1.0" encoding="UTF-8"?>
  <?xml-stylesheet type="text/xsl" href="rfc2629.xslt" ?>
  <!-- generated by https://github.com/cabo/kramdown-rfc version 1.7.34 (Ruby 3.2.3) -->


<!DOCTYPE rfc  [
  <!ENTITY nbsp    "&#160;">
  <!ENTITY zwsp   "&#8203;">
  <!ENTITY nbhy   "&#8209;">
  <!ENTITY wj     "&#8288;">

]>


<rfc ipr="trust200902" docName="draft-vitap-ml-dsa-webauthn-03" category="std" consensus="true" submissionType="IETF" tocInclude="true" sortRefs="true" symRefs="true">
  <front>
    <title abbrev="ml-dsa-webauthn">ML-DSA for Web Authentication</title>

    <author fullname="Aditya Mitra">
      <organization>VIT-AP University</organization>
      <address>
        <email>adityamitra5102@gmail.com</email>
      </address>
    </author>
    <author fullname="Sibi S. Chakkaravarthy">
      <organization>VIT-AP University</organization>
      <address>
        <email>chakkaravarthy.sibi@vitap.ac.in</email>
      </address>
    </author>
    <author fullname="Anisha Ghosh">
      <organization>VIT-AP University</organization>
      <address>
        <email>ghoshanisha2002@gmail.com</email>
      </address>
    </author>
    <author fullname="Devi Priya VS">
      <organization>VIT-AP University</organization>
      <address>
        <email>priya.21phd7042@vitap.ac.in</email>
      </address>
    </author>

    <date year="2026" month="March" day="22"/>

    
    
    <keyword>PQC</keyword> <keyword>COSE</keyword> <keyword>WebAuthn</keyword> <keyword>ML-DSA</keyword> <keyword>CBOR</keyword> <keyword>Passwordless</keyword> <keyword>Phishing-resistant</keyword>

    <abstract>


<?line 73?>
<t>This document describes implementation of Passwordless authentication in Web Authentication (WebAuthn) using Module-Lattice-Based Digital Signature Standard (ML-DSA), a Post-Quantum Cryptography (PQC) digital signature scheme defined in FIPS 204.</t>



    </abstract>



  </front>

  <middle>


<?line 76?>

<section anchor="introduction"><name>Introduction</name>

<t>This document describes how to use ML-DSA keys and signature as described in <xref target="FIPS-204"/> with <xref target="WebAuthn"/>.</t>

</section>
<section anchor="terminology"><name>Terminology</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?>

<t>Some examples in this specification are truncated with "..." for readability.</t>

</section>
<section anchor="background-on-post-quantum-cryptography"><name>Background on Post-Quantum Cryptography</name>

<t>This section describes a generic backround of Post-Quantum Cryptography, Web Authentication and Phishing Resistance.
Post-Quantum Cryptography is defined to be a set of cryptographic algorithms that are not vulnerable against a malicious actor in possession of a large scale Quantum Computer. <xref target="FIPS-204"/> has described Module-Lattice-Based Digital Signature Algorithm which is not vulnerable to attacks involving a large-scale quantum computer.</t>

<section anchor="motivation-for-ml-dsa-in-webauthn"><name>Motivation for ML-DSA in WebAuthn</name>

<t>With the wide range adoption of phishing-resistant passwordless authentication standard like Security Keys, Passkeys and Device attestation following the FIDO2 Specifications, the adopted cryptographic standards for authentication have been primarily ES256 (Elliptic Curve Digital Signature Algorithm with SHA-256) and RS256 (RSA with SHA-256) as defined in <xref target="FIPS-186-5"/>. Though most authenticators support other algorithms as well, the widely used default algorithms- ES256 and RS256 are deemed to be insecure against adversaries employing large-scale quantum computers.</t>

<t>Hence, the adoption of ML-DSA for WebAuthn would be necessary to secure digital identities and accounts from such adversaries.</t>

</section>
</section>
<section anchor="ml-dsa-integration-in-webauthn"><name>ML-DSA Integration in WebAuthn</name>

<t>This section describes the implementation of WebAuthn with ML-DSA.</t>

<section anchor="ml-dsa-key-representation-in-cose"><name>ML-DSA Key Representation in COSE</name>

<t><xref target="I-D.draft-ietf-cose-dilithium-05"/> describes CBOR Object Signing and Encryption (COSE) Serialization for ML-DSA. It is to be noted that the COSE representation of only 'Public key' or 'Verifying key' is used in WebAuthn. Hence, the COSE Representation of private keys are beyond the scope of this document.</t>

<t>ML-DSA Signature Scheme is parameterized to support different security levels. In this document, the abbreviations of ML-DSA-44, ML-DSA-65 and ML-DSA-87 are used to refer to ML-DSA with the parameter choices given in Table 1 of FIPS-204.</t>

<t>This document requests the registration of the ML-DSA algorithms in <xref target="IANA.cose"/> as mentioned in <xref target="I-D.draft-ietf-cose-dilithium-05"/> as :</t>

<texttable align="left" title="COSE algorithms for ML-DSA" anchor="cose-algorithms">
      <ttcol align='left'>Name</ttcol>
      <ttcol align='left'>value</ttcol>
      <ttcol align='left'>Description</ttcol>
      <c>ML-DSA-44</c>
      <c>TBD (requested assignment -48)</c>
      <c>CBOR Object Signing Algorithm for ML-DSA-44</c>
      <c>ML-DSA-65</c>
      <c>TBD (requested assignment -49)</c>
      <c>CBOR Object Signing Algorithm for ML-DSA-65</c>
      <c>ML-DSA-87</c>
      <c>TBD (requested assignment -50)</c>
      <c>CBOR Object Signing Algorithm for ML-DSA-87</c>
</texttable>

<t>In accordance with the Algorithm Key Paid Type section of <xref target="I-D.draft-ietf-cose-dilithium-05"/>, when present in AKP Keys, the "pub" parameter has the following constraints:</t>

<t>The "pub" parameter is the ML-DSA public key, as described in Section 5.3 of FIPS-204.</t>

<t>The size of "pub", and the associated signature for each of these algorithms is defined in Table 2 of FIPS-204, and repeated here for convenience:</t>

<texttable align="left" title="Sizes (in bytes) of keys and signatures of ML-DSA" anchor="fips-204-table-2">
      <ttcol align='left'>Algorithm</ttcol>
      <ttcol align='left'>Private Key</ttcol>
      <ttcol align='left'>Public Key</ttcol>
      <ttcol align='left'>Signature Size</ttcol>
      <c>ML-DSA-44</c>
      <c>2560</c>
      <c>1312</c>
      <c>2420</c>
      <c>ML-DSA-65</c>
      <c>4032</c>
      <c>1952</c>
      <c>3309</c>
      <c>ML-DSA-87</c>
      <c>4896</c>
      <c>2592</c>
      <c>4627</c>
</texttable>

<t>These algorithms are used to produce signatures as described in Algorithm 2 of FIPS-204.</t>

<t>Signatures are encoded as bytestrings using the algorithms defined in Section 7.2 of FIPS-204.</t>

</section>
<section anchor="signature-generation-and-verification"><name>Signature Generation and Verification</name>

<t>Signature generation is done in accordance with Section 5.2 of FIPS-204. Signature Verification is done in accordance with Section 5.3 of FIPS-204.</t>

<t>If small keys or signature is needed, ML-DSA might not be the ideal option. Furthermore, in usage scenarios expecting swifter processing, ML-DSA-87 might not be the best option. Therefore, using ML-DSA-44 and ML-DSA-65 with WebAuthn is advised.</t>

</section>
</section>
<section anchor="authenticator-behavior"><name>Authenticator Behavior</name>

<t>This section describes how an authenticator, roaming or platform would implement ML-DSA.</t>

<t>The authenticator <bcp14>MUST</bcp14> have a secure storage for storing cryptographic secrets which <bcp14>SHOULD NOT</bcp14> be able to export the secrets in an unauthorized manner.</t>

<section anchor="credential-creation"><name>Credential Creation</name>

<figure><artwork><![CDATA[
         +---------------+                    +--------+                                   +-----------+
         |               |                    |        |                                   |           |
         | Authenticator |                    | Client |                                   | RP Server |
         |               |                    |        |                                   |           |
         +-------+-------+                    +---+----+                                   +-----+-----+
                 |                                |                                              |
                 |                                |                                              |
                 |                                |                                              |
                 |                                |                                              |
                 |                                |      Get Challenge                           |
                 |                                +--------------------------------------------->|
                 |                                |                                              |
                 |                                |                                              |
                 |                                |                                              |
                 |                                |                   Challenge                  |
                 |                                |<---------------------------------------------+
                 |                                |                                              |
                 |                                |                                              |
                 |                                |                                              |
                 |                                |                                              |
                 |                                |                                              |
                 |                                |                                              |
                 |                                |                                              |
                 |                                |                                              |
                 |                                |                                              |
                 |  Credential Creation Request   |                                              |
                 |<-------------------------------+                                              |
+----------------+   (Challenge)                  |                                              |
| Generate       |                                |                                              |
| Keypair        |                                |                                              |
|                |                                |                                              |
|                |                                |                                              |
|                |                                |                                              |
+--------------->|                                |                                              |
                 |                                |                                              |
+----------------+                                |                                              |
| Sign challenge |                                |                                              |
|                |                                |                                              |
|                |                                |                                              |
|                |                                |                                              |
|                |                                |                                              |
+--------------->|                                |                                              |
                 |                                |                                              |
                 |  Assertion Response            |                                              |
                 +------------------------------->|                                              |
                 |  (Signed Challenge)            |     Assertion                                |
                 |                                +--------------------------------------------->|
                 |                                |                                              |
                 |                                |                                              +--------------------+
                 |                                |                                              |  Verify            |
                 |                                |                                              |                    |
                 |                                |                                              |                    |
                 |                                |                                              |                    |
                 |                                |                                              |                    |
                 |                                |                                              |<-------------------+
                 |                                |                                              |
                 |                                |                                              +--------------------+
                 |                                |                                              |   Save public key  |
                 |                                |                                              |                    |
                 |                                |                                              |                    |
                 |                                |                                              |                    |
                 |                                |                                              |                    |
                 |                                |                                              |                    |
                 |                                |                                              |<-------------------+
                 |                                |     Authentication response                  |
                 |                                |<---------------------------------------------+
                 |                                |                                              |
                 |                                |                                              |
                 |                                |                                              |
                 |                                |                                              |
                 |                                |                                              |
                 |                                |                                              |
                 |                                |                                              |
]]></artwork></figure>

<t><xref target="WebAuthn"/> defines the credential creation API. This API takes a public key credential creation object, containing a cryptographic challenge, the Relying Party ID (RP ID), User details, and public key credential parameters. The public key credential parameters define the accepted algorithms.</t>

<t>An example of public key credential creation object is:</t>

<figure><artwork><![CDATA[
{
  challenge: new Uint8Array([215, 150, 119, 213, 215, 247, 188, 15, 142, 10, 53, 135, 17, 205, 130, 133, 158, 32, 113, 0, 62, 67, 112, 191, 123, 180, 224, 151, 233, 114, 68, 225]),
  rp: { id: "example.com", name: "Example Corporation" },
  user: {
    id: new Uint8Array([79, 252, 83, 72, 214, 7, 89, 26]),
    name: "johndoe",
    displayName: "John Doe",
  },
  pubKeyCredParams: [{ type: "public-key", alg: -7 }, { type: "public-key", alg: -49 }],
}
]]></artwork></figure>

<t>The web application invokes the <spanx style="verb">Navigator.credentials.create()</spanx> function with the Public Key Credential Creation Object. The client web browser, or an application invokes the authenticator API defined in <xref target="CTAP"/>. The public key credential creation object is CBOR encoded and sent to the authenticator device over a chosen transport method which includes but is not limited to USB HID, BLE and NFC.</t>

<t>An example of CBOR Encoded Public Key Credential Creation object is:</t>

<figure><artwork><![CDATA[
h'A50158201637B26333915747DBDC6C630C0165405A64939AE8F6E4FC39414F853F702F1602A2626964696C6F63616C686F7374646E616D656B44656D6F2073657276657203A3626964504EC1D4219F294FB4A0BC0CD29D485AFC646E616D6566615F757365726B646973706C61794E616D6567412E20557365720481A263616C67382F64747970656A7075626C69632D6B657907A1627576F5'
]]></artwork></figure>

<t>The authenticator <bcp14>MUST</bcp14> verify whether any credential mentioned in the list of "excludeCredentials" in the public key credential creation object is already present on the authenticator, and in such cases it will return the error code in accordance with <xref target="CTAP"/>. Further authenticator <bcp14>MUST</bcp14> perform all additional checks involving authenticator PIN, User presence, user verification etc in accordance with Section 5.1 of CTAP.</t>

<t>The authenticator generates ML-DSA keypair in accordance with Section 5.1 of FIPS 204 and unique Key ID. The public key is COSE encoded following <xref target="I-D.draft-ietf-cose-dilithium-05"/> and is a part of the attestedCredentialData.</t>

<t>After passing all checks in accordance with section 5.1 of CTAP, the authenticator <bcp14>SHOULD</bcp14> create the attestation statement. The authData is created in accordance with WebAuthn and CTAP specifications and the clientDataHash is appended to it. This is signed with the private key of the generated keypair. The attestation statement is generated in accordance with CTAP and WebAuthn.</t>

<t>The ML-DSA private key is to be stored in accordance with the "Storage security and Key management" section of this document.</t>

<t>The attestation statement is encoded in CBOR and returned to the client application via the same transport method.</t>

</section>
<section anchor="authentication-flow"><name>Authentication Flow</name>

<figure><artwork><![CDATA[
      +---------------+                    +--------+                                   +-----------+
      |               |                    |        |                                   |           |
      | Authenticator |                    | Client |                                   | RP Server |
      |               |                    |        |                                   |           |
      +-------+-------+                    +---+----+                                   +-----+-----+
              |                                |                                              |
              |                                |                                              |
              |                                |                                              |
              |                                |                                              |
              |                                |      Get Challenge                           |
              |                                +--------------------------------------------->|
              |                                |                                              |
              |                                |                                              |
              |                                |                                              |
              |                                |                   Challenge                  |
              |                                |<---------------------------------------------+
              |                                |                                              |
              |                                |                                              |
              |                                |                                              |
              |                                |                                              |
              |                                |                                              |
              |                                |                                              |
              |                                |                                              |
              |                                |                                              |
              |                                |                                              |
              |   Assertion Request            |                                              |
              |<-------------------------------+                                              |
              |   (Challenge)                  |                                              |
+-------------+                                |                                              |
|Sign         |                                |                                              |
|Challenge    |                                |                                              |
|             |                                |                                              |
|             |                                |                                              |
+------------>|                                |                                              |
              |  Assertion Response            |                                              |
              +------------------------------->|                                              |
              |  (Signed Challenge)            |                                              |
              |                                |                                              |
              |                                |                                              |
              |                                |                                              |
              |                                |                                              |
              |                                |                                              |
              |                                |                                              |
              |                                |                                              |
              |                                |                                              |
              |                                |     Assertion                                |
              |                                +--------------------------------------------->|
              |                                |                                              |
              |                                |                                              +--------------------+
              |                                |                                              |     Verify         |
              |                                |                                              |                    |
              |                                |                                              |                    |
              |                                |                                              |                    |
              |                                |                                              |                    |
              |                                |                                              |<-------------------+
              |                                |     Authentication response                  |
              |                                |<---------------------------------------------+
              |                                |                                              |
              |                                |                                              |
              |                                |                                              |
              |                                |                                              |
              |                                |                                              |
              |                                |                                              |
              |                                |                                              |
              |                                |                                              |
              |                                |                                              |
              |                                |                                              |
              |                                |                                              |
              |                                |                                              |
              |                                |                                              |
              |                                |                                              |
              |                                |                                              |
              |                                |                                              |
              |                                |                                              |
              |                                |                                              |
]]></artwork></figure>

<t><xref target="WebAuthn"/> defines the credential request API. This API takes a public key credential request object, containing a cryptographic challenge, the Relying Party ID (RP ID) and optionally a list of allowed credentials.</t>

<t>An example of public key credential request object is:</t>

<figure><artwork><![CDATA[
{
  challenge: new Uint8Array([215, 150, 119, 213, 215, 247, 188, 15, 142, 10, 53, 135, 17, 205, 130, 133, 158, 32, 113, 0, 62, 67, 112, 191, 123, 180, 224, 151, 233, 114, 68, 225]),
  rpId: "example.com",
}
]]></artwork></figure>

<t>The web application invokes the <spanx style="verb">Navigator.credentials.get()</spanx> function with the Public Key Credential Request Object. The client web browser, or an application invokes the authenticator API defined in <xref target="CTAP"/>. The public key credential request object is CBOR encoded and sent to the authenticator device over a chosen transport method which includes but is not limited to USB HID, BLE and NFC.</t>

<t>If a list of <spanx style="verb">allowedCredentials</spanx> is present, the authenticator must discover credentials bound to the same RP ID which is present in the list. If no such credential is present, it will return the error code in accordance with <xref target="CTAP"/>. Further authenticator <bcp14>MUST</bcp14> perform all additional checks involving authenticator PIN, User presence, user verification etc in accordance with Section 5.2 of CTAP.</t>

<t>The authenticator, on discovering a suitable credential for authentication <bcp14>SHOULD</bcp14> verify the algorithm. If it is not ML-DSA, the authenticator <bcp14>SHALL</bcp14> behave in accordance with the "Backward Compatibility Considerations" section of this document.</t>

<t>The credential is retrieved in accordance with the "Storage security and Key management" section of this document.</t>

<t>After passing all checks in accordance with section 5.2 of CTAP, the authenticator <bcp14>SHOULD</bcp14> create the assertion statement. The authData is created in accordance with WebAuthn and CTAP specifications and the clientDataHash is appended to it. This is signed with the decrypted ML-DSA private key. The assertion response is generated in accordance with CTAP and WebAuthn.</t>

<t>The assertion response is encoded in CBOR and returned to the client application via the same transport method.</t>

<t>All memory addresses used to handle the ML-DSA private key is immediately zeroized.</t>

<t>The authenticator <spanx style="verb">getNextAssertion()</spanx> function specification is to be similarly implemented in accordance with <xref target="CTAP"/>.</t>

</section>
<section anchor="backward-compatibility-consideration"><name>Backward Compatibility Consideration</name>

<t>The authenticator <bcp14>SHOULD</bcp14> choose the algorithm to be used in accordance with CTAP, and hence not choose ML-DSA if not supported by the RP.</t>

</section>
</section>
<section anchor="client-and-platform-considerations"><name>Client and Platform Considerations</name>

<t>This section describes the considerations about the Client and Platform.</t>

<section anchor="cose-algorithm-support-in-webauthn-clients"><name>COSE Algorithm Support in WebAuthn Clients</name>

<t>The CTAP implementations on client, for example Windows Hello for Microsoft Windows based systems, iCloud Keychain for Apple systems, Google Password Manager, Dashlane, OnePassword and other browser based implementations for Linux <bcp14>SHOULD</bcp14> have support for ML-DSA Algorithms in accordance with COSE. Further, Platform Authenticators for such devices are <bcp14>RECOMMENDED</bcp14> to have support for ML-DSA Key Generation and signing in accordance with this document.</t>

</section>
<section anchor="handling-large-signatures-and-keys"><name>Handling large signatures and keys</name>

<t>It is considered that the chosen transport methods including but not limited to USB HID, BLE and NFC are able to perform exchanges of the CBOR encoded data which may be often over 2000 bytes. The use of attestion certificates may increase the length even more.</t>

</section>
<section anchor="error-handling-and-fallback-mechanisms"><name>Error Handling and Fallback mechanisms</name>

<t>In case of errors involving ML-DSA key generation and signing, the authenticator may fallback to using ES256 or RS256 algoritms. In case of errors involving communication with the client, the authenticator may handle it in accordance with <xref target="CTAP"/>.</t>

</section>
</section>
<section anchor="attestation-considerations"><name>Attestation Considerations</name>

<t>Using Post Quantum Crptography for creating attestation certificates for credentials implies the presence of additional ML-DSA signatures and public keys in the x.509 certificate, depending upon the attestation format, defined in the <xref target="WebAuthn"/> flow. A second ML-DSA-44 Signature size is around 2420 bytes and a public key is around 1312 bytes, and bigger for others. On the other hand, <xref target="CTAP"/> using a 7-bit sequence continuation packet numbers for CTAP-HID constrains it to have a maximum of 129 frames only. CTAP-HID frame can be of size 64 bytes at max. A makeCredential response with a valid attestation certificate would contain atleast <spanx style="verb">1312+2420+1312+2420=7464</spanx> bytes.</t>

<t>The first frame has 7 bytes of header (4 byte channel identifier, 1 byte CMD, 2 bytes BCNT), while continuation frames have 5 bytes of header (4 bytes of channel identifier, 1 byte of sequence number).</t>

<t>Further, the first frame will have one byte of status code. The makeCredential response will contain the authData. This further contains 32 bytes of RP ID Hash, 1 byte of flags, 4 bytes of sign count and variable length attestedCredential data. The attestedCredential data further contains 16 bytes of AAGUID, 2 bytes of credential ID length. The credential ID is to be atleast 16 bytes, followed by the public key.</t>

<t>This covers a total of 8182 bytes, leaving only 74 bytes for CBOR encoding, and the full x.509 certificate, including fields like the version, subjects, certificate chain and so on. Further, when other algorithms like ML-DSA-65 or higher is used, the available bytes in CTAP-HID would not suffice for the attestation certificate.</t>

<section anchor="webauthn-considerations"><name>WebAuthn Considerations</name>

<t>Due to the attestation certificate size limitations, Web Authentication standard is requested to recognize an attestation format 'minimal'.</t>

<t>The syntax of Minimal Attestation is defined by:
~~~
$$attStmtType //= (
                      fmt: "minimal",
                      attStmt: minimalStmtFormat,
                  )</t>

<t>minimalStmtFormat = {
                       alg: COSEAlgorithmIdentifier,
                       keyid: bytes,
                       sig: bytes, 
                   }
~~~</t>

<t><spanx style="verb">sig</spanx> here is a signature over the authenticatorData and clientDataHash. The authenticator produces the sig by concatenating authenticatorData and clientDataHash, and signing the result using an attestation private key selected through an authenticator-specific mechanism.</t>

<t><spanx style="verb">keyid</spanx> is an Identifier that identifies the key used to sign. It is a 16-byte unique identifier.</t>

<section anchor="verification-and-fido-mds-database-considerations"><name>Verification and FIDO MDS Database Considerations</name>

<t>The FIDO MDS database is requested to maintain the set of Public Key/ Verifying key certificates, identifiable by the AAGUID and the KeyId together. The RP may verify the attestation signature with the public key identified by the AAGUID and KeyID from the FIDO MDS database. Enterprise based implementations or implementations requiring self-attestation without FIDO MDS database <bcp14>MAY</bcp14> maintain their on keystores instead of the FIDO MDS database.</t>

</section>
</section>
</section>
<section anchor="security-considerations"><name>Security Considerations</name>

<t>The security considerations of <xref target="RFC9053"/> applies to this specification as well.</t>

<t>A detailed security analysis of ML-DSA is beyond the scope of this specification, see <xref target="FIPS-204"/> for additional details.</t>

<section anchor="resistance-to-quantum-attacks"><name>Resistance to Quantum Attacks</name>

<t>See <xref target="FIPS-204"/> for details on resistance to quantum attacks.</t>

</section>
<section anchor="storage-security-and-key-management"><name>Storage security and Key management</name>

<t>It is to be noted that at the time of writing this draft, there is no suitable hardware security module (HSM), trusted platform module (TPM), Secure Element (SE), Trusted Execution Environment (TEE) with native support for ML-DSA. Hence, secure credential storage is a challenge. To overcome the same, the ML-DSA keys, also referred to as credentials, <bcp14>MUST</bcp14> be encrypted with Advanced Ecnryption Standard (AES), which is a Post Quantum Symmetric encryption algorithm in Galosis Counter Mode (GCM) with 256-bit keys.</t>

<t>The AES Keys <bcp14>MUST</bcp14> be generated and stored in secure storage, which may include a HSM, TPM, SE or TEE. The ML-DSA Keys may be generated on the standard computing environment, outside the secure storage. The ML-DSA Credential <bcp14>MUST</bcp14> be encrypted by AES as described above before being written to the Flash memory or Disk. Conversely, the same <bcp14>MUST</bcp14> be decrypted by AES in the secure storage before being used.</t>

<t>Any memory location, pointer or heap that has been used to handle the ML-DSA Credentials <bcp14>MUST</bcp14> be zeroized immediately after the operation is performed.</t>

<t>This section is to be updated when suitable secure storage modules supporting ML-DSA becomes widely available.</t>

</section>
<section anchor="implementation-best-practices"><name>Implementation Best Practices</name>

<t>If the amount of space in the secure storage permits, each ML-DSA Private key is <bcp14>RECOMMENDED</bcp14> to be encrypted with unique AES keys.
*       Prior to storage, each ML-DSA private key is to be encrypted independently using a distinct AES encryption key.
*       To guarantee robust encryption, the AES key size must be at least AES-256.
*       To avoid unwanted access, encrypted keys ought to be kept in Hardware Security Modules (HSMs), Secure Elements (SEs), or Trusted Platform Modules (TPMs).
*       NIST SP 800-57 recommendations should be followed by key management to provide secure AES key lifecycle management (creation, storage, rotation, and disposal).
*       Only in a trusted execution environment (TEE) or secure enclave should the private key be decrypted in order to avoid memory leakage.</t>

</section>
</section>
<section anchor="iana-considerations"><name>IANA Considerations</name>

<section anchor="additions-to-existing-registries"><name>Additions to Existing Registries</name>

<t>This document requests the registration of the ML-DSA entries to the COSE Algorithm Registry as mentioned in <xref target="I-D.draft-ietf-cose-dilithium-05"/>.</t>

</section>
</section>


  </middle>

  <back>


<references title='References' anchor="sec-combined-references">

    <references title='Normative References' anchor="sec-normative-references">



<reference anchor='IANA.cose'> <front> <title>*** BROKEN REFERENCE ***</title> <author> <organization/> </author> <date/> </front> </reference>
<reference anchor='RFC9053'> <front> <title>*** BROKEN REFERENCE ***</title> <author> <organization/> </author> <date/> </front> </reference>
<reference anchor='RFC9679'> <front> <title>*** BROKEN REFERENCE ***</title> <author> <organization/> </author> <date/> </front> </reference>

<reference anchor="I-D.draft-ietf-cose-dilithium-05">
   <front>
      <title>ML-DSA for JOSE and COSE</title>
      <author fullname="Michael Prorock" initials="M." surname="Prorock">
         <organization>mesur.io</organization>
      </author>
      <author fullname="Orie Steele" initials="O." surname="Steele">
         <organization>Transmute</organization>
      </author>
      <author fullname="Rafael Misoczki" initials="R." surname="Misoczki">
         <organization>Google</organization>
      </author>
      <author fullname="Michael Osborne" initials="M." surname="Osborne">
         <organization>IBM</organization>
      </author>
      <author fullname="Christine Cloostermans" initials="C." surname="Cloostermans">
         <organization>NXP</organization>
      </author>
      <date day="18" month="December" year="2024"/>
      <abstract>
	 <t>   This document describes JSON Object Signing and Encryption (JOSE) and
   CBOR Object Signing and Encryption (COSE) serializations for Module-
   Lattice-Based Digital Signature Standard (ML-DSA), a Post-Quantum
   Cryptography (PQC) digital signature scheme defined in FIPS 204.

	 </t>
      </abstract>
   </front>
   <seriesInfo name="Internet-Draft" value="draft-ietf-cose-dilithium-05"/>
   
</reference>
<reference anchor='RFC2119'> <front> <title>*** BROKEN REFERENCE ***</title> <author> <organization/> </author> <date/> </front> </reference>
<reference anchor='RFC8174'> <front> <title>*** BROKEN REFERENCE ***</title> <author> <organization/> </author> <date/> </front> </reference>



    </references>

    <references title='Informative References' anchor="sec-informative-references">




<reference anchor="I-D.draft-ietf-cose-key-thumbprint">
   <front>
      <title>CBOR Object Signing and Encryption (COSE) Key Thumbprint</title>
      <author fullname="Kohei Isobe" initials="K." surname="Isobe">
         <organization>SECOM CO., LTD.</organization>
      </author>
      <author fullname="Hannes Tschofenig" initials="H." surname="Tschofenig">
         <organization>University of Applied Sciences Bonn-Rhein-Sieg</organization>
      </author>
      <author fullname="Orie Steele" initials="O." surname="Steele">
         <organization>Transmute</organization>
      </author>
      <date day="6" month="September" year="2024"/>
      <abstract>
	 <t>   This specification defines a method for computing a hash value over a
   CBOR Object Signing and Encryption (COSE) Key. It specifies which
   fields within the COSE Key structure are included in the
   cryptographic hash computation, the process for creating a canonical
   representation of these fields, and how to hash the resulting byte
   sequence.  The resulting hash value, referred to as a &quot;thumbprint,&quot;
   can be used to identify or select the corresponding key.

	 </t>
      </abstract>
   </front>
   <seriesInfo name="Internet-Draft" value="draft-ietf-cose-key-thumbprint-06"/>
   
</reference>

<reference anchor="I-D.draft-ietf-lamps-dilithium-certificates">
   <front>
      <title>Internet X.509 Public Key Infrastructure - Algorithm Identifiers for the Module-Lattice-Based Digital Signature Algorithm (ML-DSA)</title>
      <author fullname="Jake Massimo" initials="J." surname="Massimo">
         <organization>AWS</organization>
      </author>
      <author fullname="Panos Kampanakis" initials="P." surname="Kampanakis">
         <organization>AWS</organization>
      </author>
      <author fullname="Sean Turner" initials="S." surname="Turner">
         <organization>sn3rd</organization>
      </author>
      <author fullname="Bas Westerbaan" initials="B." surname="Westerbaan">
         <organization>Cloudflare</organization>
      </author>
      <date day="30" month="September" year="2025"/>
      <abstract>
	 <t>   Digital signatures are used within X.509 certificates, Certificate
   Revocation Lists (CRLs), and to sign messages.  This document
   specifies the conventions for using FIPS 204, the Module-Lattice-
   Based Digital Signature Algorithm (ML-DSA) in Internet X.509
   certificates and certificate revocation lists.  The conventions for
   the associated signatures, subject public keys, and private key are
   also described.

	 </t>
      </abstract>
   </front>
   <seriesInfo name="Internet-Draft" value="draft-ietf-lamps-dilithium-certificates-13"/>
   
</reference>

<reference anchor="FIPS-186-5" target="https://doi.org/10.6028/NIST.FIPS.186-5">
  <front>
    <title>Digital Signature Standard (DSS)</title>
    <author >
      <organization></organization>
    </author>
    <date year="n.d."/>
  </front>
</reference>
<reference anchor="FIPS-204" target="https://doi.org/10.6028/NIST.FIPS.204">
  <front>
    <title>Module-Lattice-Based Digital Signature Standard</title>
    <author >
      <organization></organization>
    </author>
    <date year="n.d."/>
  </front>
</reference>
<reference anchor="WebAuthn" target="https://www.w3.org/TR/webauthn-2">
  <front>
    <title>Web Authentication: An API for accessing Public Key Credentials</title>
    <author >
      <organization></organization>
    </author>
    <date year="n.d."/>
  </front>
</reference>
<reference anchor="CTAP" target="https://fidoalliance.org/specs/fido-v2.0-id-20180227/fido-client-to-authenticator-protocol-v2.0-id-20180227.html">
  <front>
    <title>Client To Authenticator Protocol (CTAP)</title>
    <author >
      <organization></organization>
    </author>
    <date year="n.d."/>
  </front>
</reference>
<reference anchor="SP-500-57" target="https://doi.org/10.6028/NBS.SP.500-57">
  <front>
    <title>Audit and Evaluation of Computer Security II: System Vulnerabilities and Controls</title>
    <author >
      <organization></organization>
    </author>
    <date year="n.d."/>
  </front>
</reference>


    </references>

</references>


<?line 477?>

<section numbered="false" anchor="acknowledgments"><name>Acknowledgments</name>

<t>We express our sincere gratitude to Dr. S. V. Kota Reddy, Vice Chancellor, VIT-AP University, for his unwavering support and encouragement throughout this research. We also extend our heartfelt thanks to Dr. Jagadish Chandra Mudiganti, Registrar, VIT-AP University, for facilitating a conducive research environment. Our appreciation goes to Dr. Hari Seetha, Director, Centre of Excellence, Artificial Intelligence and Robotics (AIR), VIT-AP University, for her invaluable guidance and insightful discussions that significantly contributed to this work.</t>

<t>We also acknowledge Indominus Labs Private Limited and Digital Fortress Private Limited for their generous support, which played a crucial role in the successful execution of this research.</t>

</section>


  </back>

<!-- ##markdown-source:
H4sIAAAAAAAAA+09e3PbuPH/eybfAT9fZ2I3kqK3bE/vWlmSE/ViW7Wcu+l0
OhNIhCTUFMkjSDtqnH6WfpZ+st/uAuBDovxIk2ua2jNxLArALhb7BBfYcrn8
bCeSkSuO2O7pm3J/3GUzP2Q/iwnrxtFCeJGc8kj63u6zHT6ZhOIaGi7dsqN4
+UZMOLTBr6CNmPvh6oipyHm282zH8aceX8KoTshnUflaRjwor/UrVxvPdlQ8
WUqlAEK0CqD9cHB58mzHi5cTER7BODAw/Df1PSU8FasjFoWxeLYDaEDn7xgP
BQeMxmIahzJa7eKzGz+8mod+HMAXQ88RgYBfXkQT8kNociVW0MaBcVmZjf7U
o/975+MB/QFzx5YefdA00Q2Ozy90D64U9neFUvrBQqqF9OblUCipIu5FSAJO
4AgI/IOfWey6mihdB3Dl7FRGIdff+eGce/LvROoj9tPwstwdsbeevBahgra6
kVhy6R4xTr2X2LlVq9b/MMfHlam/LAI1lhPJxhXWW/CrKx7yax5Gi9XjgU5z
/SsKhv0DrWqFTyvSK5ylB2Th7NXCV4vHA5xjN05D1Kv3zbIvriUbhRKI+tP4
8bAC7Fmp14KF06k26/mJATf64RLGuUZOZGzYPesCHgqZ1f6Jzy9OeofVVuPI
chI9aHcOjyznsGG5X9HyIEU0K2PHsiNdGS1kvCxXW0eG3cp6hGc70pvlQRcM
AMxcjhYgLzAJL9LQyz8O+wXtXb4MVAbiVISRnKGACxCsBPjg4nKM0Bk7GY7G
5dpBu9w60vSyqqIv50AiF7hr7vEoDgUbA9s7PHTYXn883t81zXk4F4DTIooC
dfTypePLCqzLy1q10q7WD16eDceXFQRSISAZoPVqcw3kqe/Erii/4RGoJFE+
5ko4bDsej8YAIGr4Vv7X4G+qRORw1h0NSWPy6RTUASgBNoonrpyyH8WK9UKB
mkdyV23B5+bmpnLTIJQuL14mmrGuUelddkdraPRcibrs0s8iA/BHoR/5U99l
e9hp2wLMpONz15XcmwoCqgIxVfS4fF2vVMvSAdLXDqr1ekc/nRK8cuSXeRZe
OTDwNrpVFtHS1eiPR+VWtVpuddbm0I1BgzFYJza45m5MxGT+jPX8ZRBHImRW
nbPhEDTYSkViyX6KXU+EfILcK4Wi7j2wGqG/lbgbi308roxHFY0TolhG80f/
MT5RoE+noLkvQZszsF/xEgntCDUN5QQAymXgCnyW4Js1BIzneINJr8CIsj3L
XPssJmZ5JFezPS2k+yXG2chXUflPMZibeAmstgoifx7yYLFie2DU9pljhlHJ
MGq6gBnAnGbSAziAI7I+A9avWDospQPzwU/fsSFS14mniDo+2UaZhX/DIh9m
JIwOYaCU9AqlsLlKehDkDx+soH/8yG5AI8ETS52PHwkfxOFShEvp+a4/X2kU
BA6ONt5RoBTeji93S/p/dnZOf18M/vR2eDHo49/j1903b5I/dkyL8evzt2/6
6V9pz9756engrK87w1OWe7Sze9r9M3yDE9s9H10Oz8+6b3ZxMlGOMuCUID0m
Ar4Cdg5CEcGcudrJEeC4N/rXP2tNmPb/gaWo12qHQAj94aDWIaoA62hovueu
zEfgp9UODwLBQxwFpJlNeYALrUpIZAWr4bGFCEVlZ+e3f0HK/PWI/W4yDWrN
H8wDnHDuoaVZ7iHRbPPJRmdNxIJHBWASauaer1E6j2/3z7nPlu6Zh7/7vQv8
zMBS/f4HYpuxD1wu3nOUWJWsD+o6be5QFGmRwthD6+doBtytVCq7pM3Bq3S0
qllVNB8e8yk5lbQY20UvERMlSGwyUsLZXIAGA9MwgbHMULPtQ5WKFAgyg3U3
2YVxN0GXP9vZrg2QNY3Ea67kgF2EsKdpM0CLu+DCAx2WCujFNRt7fsSujeZ1
oeecS0/BV2zJwchJP4Z5TdH+AJEDXylBrjyOzZmL6hh0DoeOCWJGxVfy8r/I
aYcHKsWuxRckQ04XOM81dGG6MAZQG5ng2nevkWoGsbJG7BeD2NQiRsv9HeAA
XpemOTKE0Wtaq5vw4NnOz8g1sD7APo5gIfdgvtzxA2sggo3AgAV32Axltbwr
r0RqBMGTANFGY5OoVfR3pwInJ1RksXRd/wYniAidDPvndTbOcrwi3aHxA3rm
196CVtqZyeO14NcC+EZ46CgveShBGQ3G9Vab7Q3AmYDpTlkvDqHRnYuExAIN
UoaO+zSLCz3GBRB27UuVtVGGU8hFBMvALhd+PF+wpY+MmHVKQOriIPBD4G14
GmYZGka8Ea5bSlYLphAjWwEcHrtRpm3ZzC3FEAXBEWA5nUStK1ycjDw4GFYA
ZUDOBWgdf4ULcRefKWK01wKEN7Muhm/ykTixG1i82HUQuCfQ0+ThCpExeFhT
L8ndTPwjcEpBzUSwqKG/BOKAkGQwNZrNAANjL4AbMs5LwuZbFBpivekUpQjj
kurBE6HSoNA1vhBgFlXSESDaoOfDh3ImDALlkELEQIqdT/4GqBCLkTijG+kR
N5OHhZ32QXhC8LpN+JeR4AobRqgo9DqCusA1RWWHk8GuoPpziMGMyPg+N249
iOBziC3Z858AwoyWmR7BmMRPGdJVWGZ5aeyLjbFBoEDLCOMwhShmK99zqIua
+oHARjnvgmhpCJlxELVnB+0CCNKX4HCE8u+aX61MOHI2A68AdJCymsUV18JV
QJM1D8ZwJO33SK08UrYsN5sl+2e7RfQ3nw46NAWiAwAOBcDDPwy2N1ZbJiiy
6cIHPabYHCJcYoJL0ts1hGbNQ2XT9QzFLzEoPs2CoZhL9N0tSfGZgZhRAKRH
yknADmwFKgEHg15WzazxHTQ4Qti37AzQZfrnlmHIYj9t+bndeNInHg60J31L
ccdtSk/scXncZ3tmYuQtoutMsy03D/bNsEUCkGrYlM1hzAwAWKV7ABw+GkC7
lQEAC383gFb10QAOIEL7cMS+o02OrCZ3odf3u66YRbs6ovx+l4Qr0yYdZvcj
riDwN6rC0EFfKeXDFC5qpBGXDrtcgchZVQfMtM4UJfLCmRFjZJvujyNjoXHI
3SCe7GYYHB0bfJ5aZ9zKBG6FyEAd2YhmvZdUWS4OEs1T2oiixgbVVqVRIDMw
FdAC+AVB0LEEibZS/lSS55tGaEg1wcFGaCGCaC4rPzmTrMW0ngWpBwftKWhY
DEBoRJgvyLZETWikKSX7Le7Zkf7DBbjNbp3cZpUbTGKL1IB5riZCV2vU6smH
erNe3ZCBZrWRtqgdttIPjUb1cIOjmweH7XTA1mHavNmuG/6cyUDh/MsR0qRc
L2RQnIFie0C5yQpctn0k3GaMnFGymm8v11chq14Dis1Ftvs6d6SUrm9wxzjT
DUaF9fEdklqNYhQCsyqzS0Esk2KRYQTLf53KJgQw+OkavsLYJ41hyHoa/zKH
jQ6SjFOAKt8TFOauiW/K93m4GYhZEA8balOEhjOmlhhi02IBN6fSgtGGEEAy
awzZUs4XEYUg4FqQc+QI8Mm0W1dhJ3GIXunSD8ElADxixSk8Eh54Yz74je8D
xATIrW7kDNUArLDZVCxl+HIDDHhGUQLlEgVvRjDMDlMiLhlLDdJAc0+cNZgN
eIYSWMt4hfndxWMBMYD0wzu8QdwE4l7eIS+x0OdLxALGCFwe4Xa28WQTzzHr
I6LKyo3AaLuCAhBunV0Fz5F0qF3wb9Kq+WhGTEMB7oGOC9PNCAp+TWAI5Eav
iBwt0xyZA9bF029uyH9acs9Lg8J0Pxf/TJj3H//4h96ApJ8X5fzPiyIP4cWd
325rjO0zkNbdjE23I/uw8Ns7RrjNQcrzwxZIZnP6YZAuRuilQzSyBmk7RpsP
/505Waq+uG+dXjxunV5srNODsX3IdLLNn2D8KjBeiQjfn7quwA2ezwxjXV3c
/fPD106rbxLGHYv/aTB+96hFf9IlTzCeYHyVMAo8Qnaht0A+E4z7VMVDHJM8
jA2Lg0PsJTpuv6DTo2Hc2oAv3Te7r9MnwPhRrAIuwwcP8SkwHjvE/y6Mdb76
4b9Uzgvl4zPD0NtbmFVnHIv/0jV/gvFwGN+KfBQN0VUKkwnJ+qkAs3U/M4z7
wqT7ifmgeeyhWAqHFVtDDSOd66fBuPvnfzQeLJz2rxL4ML1TvMo9/HUAFzx8
AvxNAS7y3r+VcP4/KbJsjK8E0jej3zofPQH+9gF/Zl2xljkaFvhlpvnTFuYT
jCcYd8GgN7yYmpieUDBZEDpTZ5puA07tNmB3NMTX8VLRGaGIX1EOeMZkFXXy
KTOqhFkzEZc6wXHt5XayZ6Azji6ES1mIIx7igZk+27sYwX/7JfYWwhTAEsah
owGeswV4knekKH3g3lZm5jorZDoVlE6cpofQy/KuZ/PvKcvxIZNmUidEEa0/
4LomMz1inrhhb6UXHXTDkK/2/lKvtUqs1qrCr9phidVrDfwFz+rNDjw7OMBv
4V+zDr+gVQu+rzXwCXxdr+IfDezcwOctaN3AhjgKPG3D320cpoYPD2vwq47t
DuC7er2JPeBZnfrW4GP7AJ+3/rpfQqzD4Ih9YNI5YruGBHhqcbfE9FHF3YGh
S88PA19nuuyyj9Q1hhWDzpqncYT1aXdwri3A6gBgd+o4Z4APqB7gF22DAbOg
/uYvPMcXu+apI1Xg8tWZ/vKP8CXr2281ArBQP4oVbmqPcLnVEfvLB6YP5u7q
RcTzhphI5s6PWLkD3dhdDZqH7ONfYeSPiQghg92ICeNB4KZnpa79KyNJ7874
tZxjkkElZRVVIV4Re/vv2Cz2dOpJksZXeOAu3Y7XyYaatfVpNkJgEvo3QO4S
pqZg3soWfPLZKCjJucx0PGync9K3yc0ml+scyCThCjPAEKnILwDo6ER/H9Mk
OKbLQlMWhdxTlL0CArnwHXv+wZu6sQN4T+LIHoZw5VJGOl/s7fiYvR72S+z4
zYCgnp30CmSVkBsY5O4hbYHgLp53W1WQqHq11m50juvtRqNxWGt1mp3+cb/X
7rUb1R581WpWW91287Bx2B0cnLQHzZNe47BZa54ctBonnWr9pNau1rv1dr19
2G7Cv177pN1o1+D/g/ZJp9FpwtMBfO63W+3jZhN+99sn9Wqn0W516p02/q42
ug3dv1VtDnq1frNeOzypHzZPjpvd6nGv2uvXD/vNg1b3pJcZrd2utU46LT1S
+xihA7wqQK51Dpu2VadZqw9Aj5h21eZBDbDVGHYaB/WTdhOmfAj9Wu1up9pp
ASY9wKVR78OYrc5htdOttesAp33Sep6TjoL8p2u9QXGzEPpcg5fjsFwWM7KQ
KxUd7wH9QxyRPYZq2zyYWbmLh6FWScqr722yqbYuMDIdMZhyhaeuQMyk64Lf
GcWh7iPCkBJCncI8vFSYTKZcESUCEVIOGebkcceRiCzivRBrh3zyh2OHZ8Yc
6llMKTsOPl5ncwRFNL07P5DS0hHJLblqJnURJp8eg6T3U/ePas9hEiFjT/4S
65zYYX9Dt6ACwXxnq0DS1OLNDHZcFfI6eBjZ3Hh9aEg4KVf0ecS1JtBph1wf
ZKajhZawGxNQm2QpFSgwk3yn9XcGfnLiKaIkQD1L7IrIINK6h1MEOslapDPA
ADh/tE8lac5a3eOIr7miA2J4cNJztEKUkfHPMJ9Rb/umRxTScxmWbnZ1Hbus
Buei6eCQafuCKRDWiGZyWMSylE36ziCQnFfBbMfi8Sj3fGwSI5PzHQgAuWjJ
PXiOiO1mk9s3z5XcOSHLcHhWB42EzvdG6db0TCmes6bXkussSzxEsW66bGbl
WrB6Ahy9lln5K6VVrscGxdsBd357xwi3KZhfJaHyV5rNr5xK+cWDyCcAnw3A
J+dOfvEXZV8Nib4xAI9Jlvzi24xfJ4meADwB+AYBZJNAbArk5wPw+RMhN2fw
mbMgXzwOwccDuKUssgf3/wQAOW3+JQA8rv9XCCC3yF8+p+v2SydbffFMq9uH
pVn9WwDu6fEE4AnAEwCbKPDJ+YxPMdr6z8Nyor5MzspaGuOXJ2bhwyeo//VQ
H5SI9FDl8slZSE97A08AngA8AXgC8ATgCcAWAI9ITDQ3sz0qL9H2+Xxpifo6
40DnbbgrvI3VZKtwTGOgi0nTtK+HphLm8fx2MgmHG1mEnyGXbi6ixyTS2b3c
/3Ae3cYSf21pdMNZhpnfGW7OpF69o9s5dRZVUabMMlZ4SaeaEpaZBWMTuiva
TIzSKEiW0muPM9cR2vyvCgN8PN9kZKVkzOLwDaZo1e9O0Sph+pqlsdZiKpZ0
c1+WSAV3IJs8JpOJl7sQj0gtE17RCTzFuVB4ffpE0HVm25J48KLxG7wEGq/K
Btj6FnIsdaCkY27GUw9I48mvOSxxKMX1F00e+rTssfojs8eSzaqvNnfMEWQZ
hVOQy2VwTSaRxMOfnjBWPNgXS9bquphxuvTDFUo3gMRkT3sn5QLAuCJ3eWk+
j00ul8LBi0fB9P9dhD5esrclm/Id2Kkz8T5KtidzRit/mX+aIQeK2uUhjJ7c
L1hMz0SVmQS0h4hdMZ6WRxc+WJW8ZjBI2Yuhi9ZUp84uUOGR9jDD2PvmZ/TQ
XOEMo0y07rkYmWsaTYIYlQWw9yvmVcU9F3hPc40ZB1tjLsPeHDm5BhHTT9O7
RcfmgunM1demt7IUI+7N3xWuUBVrDizpq2eNk/ez9BxwKdhrASZUX+Urp6Gv
/FmUfDehkgCKKsMoMGQ9149JW4GjJ/V9390AB0uavPL9OXy2JVvYKWk1MAh9
kG6Xe2Buzj2RfE1eKlk4498YkOtzQEhvpBe/t2xAut1euZ2pHNDNXUW9wQlA
0cSoltKlzCUJamhk0LU/o29uzRTO0CJYjACq8rVLWJW5f7nQJKxrd1j31yjd
ycX2uYtnPcqKpfXWF6xbvsrer77F71LG5cKR0ed6gMNFE7c3eVqHQ7yH1Qcf
X9mM3ZyD6KBt0B7Tkq9QLIGhABvyturValXfe6sVNJaywZCEUmGRXNlSWdQf
UAYjYwQeQwsgmsBLzPF+V0uwAXlTCdkQ+ROwi1j/A+Y+pfJmS2VuqMa0eQRK
LljWUUqTybOX42YWsNCbBBxnFhYV58GhdGUD+NoUNtBMudRXwG9FAAKPZexZ
XZvYOSu8xcCNKZDR/dqXdTMpx5va660uq4XlHtL6Jml5E7pkms4tIIkzI+XW
zLRKfGoUZGl0oPU4aclTj9XQfY3N0+hEWX/7faVVPcyCKzFddRAxigN7YiJX
rAPLupWyMRA2yYXxMwggKqyLettPb+5tNjNXHNPt3uiZ6GoyeOW15mJd/WHt
1IBpRbdkUytteyZyDoqQCEQaD5jhXKOjFSAuZClZMcNInHXKE4mlBCAqQ9Lh
zgDoQT29AJhOgCBTFUdNe+xdBjFO7z+nIyJWYWFBmfdyCUsLa1CrH7IZnjZU
VHuhknamp8ConpZfTYB20046wlGQZkt+lTn1kjpGxHwcr/CXzjZeMfcTm60O
aOWCnEfsHdLtBZL4RfLX93gO6Z1VHNbYzWQI7TWqeP97x6AH+C4EB9Zmexpj
3JbwPGHLdswk6v6a/qp3ChrPrBM77p1d7uPV89Jdo7QhE9GwtQ0OPboDFhLS
rqNes30SzMQeRWuzoqiRYOKd2skYQMtYUfCotej2VcDYwNA3yvjuxqeemeDS
NFGsUU/noUNf9Mmz+M9cPgd+zsxX0f1aWP6EuPyah5IMhtHVm6dgyEJkz3Rs
fLmJWK2dAux2X70dZhaN6isl/QFnDdlsoOS+SdxXy2x23JI53ZN6fqlIp3Ux
KJrFTbzIxyIwAPigdpDIOIxIWpzKmHQshUgmE/tIRsRGPlhWs0inpVYauMcF
s01lirAH1dT0vRL4HbQ7A1CzAqWdMjJYPstchW6KKWwU66Fx05vKAdOFnC90
XQT0pY3Juebg6uOS6hlhpGP1hBZh7TrPZrj1g/Nd18IZHK3FTh3YDTPUj0Wy
ubRFc5A6ItfFVlwqKOGVVHmisNxWy6B6KVMf7DkMgftoG9aCPV9KTy65+zxV
NWoFjPieygbo73KmNFOzYbI6MtuGv/kNDD2OlhGVunj58nu2V3CGnn5mywir
/eqR7SHizR8z3hEzLfHDiTZwRV32EfmNpux7e+65CAIeJkYfOfGih6kW29oL
ZATPUGsx2NoK9IRtwwobpfut76DtO13Zgk7VpcUAyInc8INoOwLZPr+XkO5X
pB6TKeag/REYF8UdtAxylWc8mweMXMq59REVx1FY3coY7TxbZUNzJVyQW3LW
Q6qutX6Vf9kG3KnjqtnwHZGZNjehT7ou2u1PrI2eGYKyewWIpi3HxEHjlUmX
m7OPqZUykvldvp4DudLD/jk77Y8ZTh/Ds8LIV6TtHNtuXfKWWI7FGiNTGy/d
DH/JcrWecn5lKcHUaCJdWIZMQaJQYYwhwpnT8V29/GDG0EvO7idmz90lnJWe
SMz4cpY4TgFABNbXBb+ioslX2EAXpZRAiOKgFsv5rT1CcknaMQVOmZWzuCKG
uGmwSebT7p9zpJUhxvzoOeM5RtTYsADcseHaJqo6OkgK4RUvb7JhubaVoav3
2JOwgXH3/cJakLo6nN7fMldm4P5CuhXK3ZWSmfosyEJbS3XlBgejKES+2iFt
L6dxhrmiw5qgtKojYmsjnq6uY0i1UorGM4MwvQ2YGcAWnjOFEJPKLPdv96bB
/Ea1NBPQR3JJs76BEbTGQZODBafJRJsqKX66x74Au3eDsXsCdkm1Htne6/Ep
eLhRGJNMJrVC7NeXI/x6rAuADEzhkL3xAB5emj6D9/AtLefAu5ahr0tP7V0O
BvtaijwqpF2wN5IUajMFRjLOma01QjoqeYtYwfrLqPOnWGjU7peWsvueV1QS
CiJNUwct1JqGq2wUWtJvTCZUfsfsGROqXeca1w8mNfVsZbu0BnB3MNbRgH77
w/Ox8Xi1XOJu/9QOShye7NaBKL7iro/c3EPvGDT1Kb7u2XvVOzWEqrfaFNzh
HJLNWQBKda4SlNPtajI6ydHkfJWWUmbPxbxZA4RhtWHhRvBrPEB1A4uk1WK6
WaXsNk0KxwTSiQOlayki44l0xUsMlBHqAVvaJYNMDkbGud9cBdCrOOFcQSU+
8akOJlbXgf8QLjI+biIZv/DExVcFZnccptWX6qqCagsdZOGuSuneugWZviww
IBMrlKt1k4Ma2zI9XW9lobm+VTeBT1WHyW0WPNACi3EoVfDcvlOfeVWZYGe3
6HP79pze89AGQZAp1WS24ZL9/MyWc6JC4sDR5XbR70+0wtpctcwnxTwzW2AT
gQKnbAHPJAKwSm2Yr0Z5jO+LR1jVGzdLzTtaMrVLigsxSgz4VGyheYClpzGW
oaJoBoVR/n3G2ubrpiQbfwZX1ojTb41fCSP5VB4xkZQsnMLz/+nY0tM7TDBX
qmSq92Qc0PsgZBGBy0i/jhYtYNBd85iHoC3AkIT+BN87p401jxp8dURDb6Yp
OmU6PIVvsVBrfkx+7Uu8u+KG0zsXvBlKIfESnHUNrRirV+npXImAdgdfW6uQ
WPpTwwJoFtSG4leo+fExag6j/ZMt86QrqBe1n0HxbAg8PR6xAyr/TtEWMDVo
Eu0uqIUtsJoNua9yFtGUXbtG7WKYxRLKlTMxXU1dkW2+Z+9TKaWLHPqReYRq
E69k8hV3s4ieY6COAXNiDkVi2sSGacNXAhoVoLRLm/96JtHaNRY5ZQPD+6Gj
y3PqhbN6RPAr1JSmAnz3rFvgduGFDcZ/IdYcvCfGw4rUVItTivS106OLdkLb
MHHVxPrLJgNhdW/5zqSiPe6Am23m6ZXn34BnN1/ql1MfjvR2l3C+352B3hO6
7N7PWDwcN4WRXbHmG5hirEyH6EZowAC1Pvjx4wr7qcJ+hAUFtBwH1PtPuNXQ
W6DtBh4K4cHwstwdsbeepD2SaKXfdSFhUFJMFoJ1SZAjcD8mDhOG0+GYfilH
YYsSPJxCDPmz0N6FeA8GyCFEQd2H0Uy42JZ7V8ri+Uc+58BoC8IM3DN2Gjty
DmIqS5aefDuuMz7Fd6EmCkUvGyJVdKQsLlmmrLBzQAS8bRAvXTmWzX2RYAKS
LkGYIQ7iJbCO0IiSMnq45uRJDt4j5bQ31tVhFu2RgUpxXTmnLUoqzOxPfNDq
IObd4cX+djrjppGHFVvJ0MxjqV9C6OuKFFbSm8UuZYTEVLnclD6nEBo9eFKv
uN0HLkAc2VfnsBA3fnhVMcxC68AT5hKAruMvpRcr9oZPVGIz3piXWlTB21Rs
PoF1J05bb2Q2rKS5VggrrRs2sS4V3uWGo4FHGROVQt9NbVlM+hdnl2oPf/av
fyL2//pnwkfPdv4fETL0jQSKAAA=

-->

</rfc>

