<?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.43 (Ruby 3.2.3) -->
<rfc xmlns:xi="http://www.w3.org/2001/XInclude" ipr="trust200902" docName="draft-buck-dkim-pq-dkim1-00" category="info" submissionType="IETF" xml:lang="en" version="3">
  <!-- xml2rfc v2v3 conversion 3.35.0 -->
  <front>
    <title abbrev="PQC in DKIM">Post-Quantum Cryptography in DKIM</title>
    <seriesInfo name="Internet-Draft" value="draft-buck-dkim-pq-dkim1-00"/>
    <author initials="B." surname="Buck" fullname="Bastian Buck" role="editor">
      <organization>BWeb-SSL Services UG &amp; Co. KG</organization>
      <address>
        <postal>
          <street>Breite 12</street>
          <city>Mengen</city>
          <region>BW</region>
          <code>88512</code>
          <country>DE</country>
        </postal>
        <email>ietf@bastian-buck.de</email>
        <uri>https://bweb-ssl.de</uri>
      </address>
    </author>
    <date year="2026" month="November" day="02"/>
    <area>General</area>
    <workgroup>Network Working Group</workgroup>
    <keyword>post-quantum cryptography</keyword>
    <keyword>dkim</keyword>
    <keyword>ml-dsa</keyword>
    <keyword>fn-dsa</keyword>
    <abstract>
      <?line 187?>

<t>This document discusses suitable post-quantum (PQ) signature algorithms for DomainKeys Identified Mail (DKIM). Because DKIM signatures are carried in emails, and public keys in DNS TXT records the usage of already standardized algorithms is limited. For compatibility reasons, signers that want post-quantum security are expected to add a PQ signature to a message in addition to a traditional signature, using separate DKIM-Signature header fields. The existing RSA and Ed25519 algorithms remain unchanged.</t>
    </abstract>
  </front>
  <middle>
    <?line 191?>

<section anchor="introduction">
      <name>Introduction</name>
      <t>DomainKeys Identified Mail (DKIM) <xref target="RFC6376"/> signs email messages by hashing selected header fields and the message body and signing the resulting header hash with a digital signature. Recipients obtain the verification key from the Domain Name System (DNS). DKIM defines RSA <xref target="RFC8017"/> and, in <xref target="RFC8463"/>, Ed25519 as signing algorithms. Neither is resistant to attacks by a cryptographically relevant quantum computer (CRQC) running Shor's algorithm <xref target="SHOR"/>.</t>
      <t>For DKIM, the relevant threat is forgery: an attacker with a CRQC could derive a private signing key from a published public key and sign messages in the name of a domain. This matters for keys that remain published for a long time and for archived messages whose signatures are still checked later.</t>
      <t>This document discusses the use of post-quantum (PQ) signature algorithms for DKIM1 (DKIM version 1, "v=1" as specified in <xref target="RFC6376"/>). Four candidates are compared: ML-DSA, FN-DSA, SLH-DSA, and SQIsign. Three parameter sets of the first two families are considered in detail: ML-DSA-44, ML-DSA-65 <xref target="FIPS-204"/>, and FN-DSA-512 <xref target="FIPS-206"/>. In parallel, standardization of DKIM2 <xref target="I-D.ietf-dkim-dkim2-spec"/> with PQ support is ongoing; DKIM1 currently has no PQ signature algorithm. This document does not define new algorithm identifiers, tags, or registry entries, and it does not
modify <xref target="RFC6376"/> or <xref target="RFC8463"/>. The key words of BCP 14 are used only in <xref target="alg-table"/>, which is a proposal for implementation requirements and not a standard. It does not update <xref target="RFC6376"/>, <xref target="RFC8301"/>, or <xref target="RFC8463"/>, and it does not define algorithm identifiers.</t>
      <section anchor="requirements-language">
        <name>Requirements Language</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>
    <section anchor="pqinfo">
      <name>Post-Quantum Signature Algorithms</name>
      <t>This section describes the PQ signature schemes considered in this document. All are designed to resist attacks by a CRQC. Their public keys or signatures are larger than those of RSA and Ed25519, and the public keys of the lattice-based schemes do not fit in DNS over UDP responses.</t>
      <section anchor="ml-dsa">
        <name>ML-DSA</name>
        <t>ML-DSA <xref target="FIPS-204"/> is a lattice-based signature scheme built on the Fiat-Shamir with aborts paradigm. Its security rests on the presumed hardness of the Module Learning With Errors (Module-LWE) and Module Short Integer Solution (Module-SIS) problems. This document considers ML-DSA-44 and ML-DSA-65. Because these schemes are comparatively new, ML-DSA signatures are intended to be used together with a separate traditional DKIM signature.</t>
      </section>
      <section anchor="fn-dsa">
        <name>FN-DSA</name>
        <t>FN-DSA <xref target="FIPS-206"/> is a lattice-based signature scheme following the hash-and-sign paradigm. Its security rests on the presumed hardness of the SIS problem over NTRU lattices. FN-DSA has smaller public keys and signatures than ML-DSA. This document considers FN-DSA-512, which is likewise intended to be used together with a separate traditional DKIM signature. FN-DSA is not yet a final standard at the time of writing.</t>
      </section>
      <section anchor="slh-dsa">
        <name>SLH-DSA</name>
        <t>SLH-DSA <xref target="FIPS-205"/> is a stateless hash-based signature scheme. Its security is based on the security of hash functions. SLH-DSA was standardized with 12 different parameter sets yielding different security levels, artifact sizes, and performance. In general, SLH-DSA has larger signatures, smaller public keys, and poorer performance compared to lattice-based alternatives. SLH-DSA-SHAKE-128f is used as a representative in this document, because it has the fastest signing of the small-key sets; the "s" variants have smaller signatures but slower signing.</t>
      </section>
      <section anchor="sqisign">
        <name>SQIsign</name>
        <t>SQIsign <xref target="SQISIGN"/> is an isogeny-based signature scheme. Its security rests on the presumed hardness of finding isogenies between supersingular elliptic curves, a problem that differs fundamentally from the lattice and hash-function assumptions above. SQIsign has the smallest public keys and signatures of all schemes considered, but has poorer performance compared to lattice based schemes. SQIsign is a candidate in NIST's additional signature process and therefore not standardized.</t>
      </section>
    </section>
    <section anchor="pqdkim">
      <name>PQ-secure DKIM</name>
      <t>DKIM supports multiple digital signature algorithms. RFC 6376 defines rsa-sha256 and RFC 8463 defines ed25519-sha256. This document discusses the use of mldsa44-sha256, mldsa65-sha256, and fndsa512-sha256. The suggested implementation requirements for signers and verifiers are given in <xref target="alg-table"/>.</t>
      <t>The suffix "-sha256" in the algorithm names denotes the hash function used by DKIM to compute the header and body hashes (<xref target="RFC6376"/>, Section 3.3) and is independent of any hash function used internally by ML-DSA or FN-DSA.</t>
      <t>For mldsa44-sha256, mldsa65-sha256, and fndsa512-sha256, the signer applies the signing algorithm of the respective scheme directly to the DKIM header hash as message, using the pure variant (not HashML-DSA) and an empty context string. The algorithm names mldsa44-sha256, mldsa65-sha256, and fndsa512-sha256 are used in this document as working names only. This document does not register them with IANA and does not define new "a=" tag values.</t>
      <section anchor="keyfactors-algos">
        <name>Key Factors and Possible Algorithms</name>
        <t>DKIM has some key factors, which are relevant for the implementation of post-quantum secure algorithms. These key factors are mainly performance, public-key size and signature size. In short, none of the algorithms mentioned in <xref target="pqinfo"/> fits all of the three key factors.</t>
        <section anchor="performance">
          <name>Performance</name>
          <t>DKIM signatures are signed by the sending server and verified by the receiving server. Calculations are performed on the server, so faster is better. The already standardized algorithms RSA and Ed25519 perform well in sign and verify operations. The PQ alternatives SLH-DSA-SHAKE-128f and SQIsign-I are ~51 and ~49 times slower than RSA-2048 with the sign operation, and ~80 and ~1021 times slower with the verify operation. ML-DSA-44 (~11 times faster sign; nearly the same verify time), ML-DSA-65 (~7 times faster sign; ~2 times slower verify) and FN-DSA-512 (~3 times faster sign, nearly the same verify time) perform better while signing and have about the same verify times. All values are based on calculations by <xref target="PQSHIELD"/>.</t>
        </section>
        <section anchor="public-key-size">
          <name>Public-Key Size</name>
          <t>Public DKIM keys are stored as DNS TXT records. Typically these public keys are retrieved using DNS UDP responses, and the traditional maximum UDP size is 512 bytes (smaller is better). RSA-2048 (~256 bytes) and Ed25519 (32 bytes) keys encoded in Base64 fit in such 512 byte packets, PQ alternatives mostly do not. SLH-DSA public keys are 32, 48 or 64 bytes in size, the keys of SQIsign 83, 129 or 169 bytes. SLH-DSA and SQIsign are compatible in this case. ML-DSA (1312, 1952, 2592) and FN-DSA (897, 1793) keys exceed this limit and would need a TCP fallback for the DNS response.</t>
        </section>
        <section anchor="signature-size">
          <name>Signature Size</name>
          <t>DKIM signatures are transmitted in the header of emails and are currently based on RSA and Ed25519. Typically the signature is stored in the email on several devices, like sending and receiving server, and one or more clients (smaller is better). The mentioned traditional algorithms use 64 bytes (Ed25519) up to 256 bytes (RSA-2048), which has no significant impact on email sizes. The PQ alternatives mostly have significantly larger signatures (ML-DSA-44 2420 bytes, ML-DSA-65 3309 bytes, FN-DSA-512 666 bytes, SLH-DSA-SHAKE-128f 17088 bytes), but SQIsign-I in this case has more or less the same signature size (200 bytes). Larger signatures, especially encoded in Base64, mean more space needed for storing emails, which could be a problem especially for the SLH-DSA variants.</t>
        </section>
      </section>
      <section anchor="pq-algorithm-consideration">
        <name>PQ Algorithm Consideration</name>
        <t>Based on the key factors discussed in <xref target="keyfactors-algos"/>, none of the mentioned PQ alternatives fulfills all requirements. SQIsign matches most of the key factors but has poor performance and, more importantly, is not standardized. SLH-DSA would increase the email size by at least 17 kilobytes with the first fast variant and also has poor performance. ML-DSA-44, ML-DSA-65 and FN-DSA-512 are the most suitable algorithm variants. They show good performance, but their public keys exceed the 512 byte UDP limit, which makes TCP fallbacks necessary. Their signatures, from 666 bytes (FN-DSA-512) up to 3309 bytes (ML-DSA-65), increase email sizes only moderately. Larger sets (ML-DSA-87, FN-DSA-1024) have larger keys and signatures and exceed the size limits discussed below even further.</t>
      </section>
      <section anchor="sizes">
        <name>Key Sizes</name>
        <t>For rsa-sha256, the key size for signers should be at least 2048 bits (instead of 1024 bits defined in <xref target="RFC8301"/>), due to newer attacks on smaller key sizes <xref target="RSAFORGE"/>. For the PQ algorithms, the key size is fixed by the parameter set.</t>
      </section>
      <section anchor="hybrid-signing">
        <name>Hybrid Signing</name>
        <t>RSA and Ed25519 are vulnerable to Shor's algorithm <xref target="SHOR"/>. To obtain post-quantum security, a signer needs to add both a traditional signature (rsa-sha256 or ed25519-sha256) and a PQ signature (mldsa44-sha256, mldsa65-sha256, or fndsa512-sha256) to the message, as described in <xref target="transition"/>, to get a hybrid construct with two separate signatures. This is more compatible (the traditional algorithm is also used), and if one algorithm is broken, the other part still verifies. A composite construct (one signature combining both algorithms) would break compatibility with the current DKIM system. PQ public keys can exceed the size of a UDP DNS response, so verifiers need to be able to retrieve keys over TCP.</t>
      </section>
    </section>
    <section anchor="signature-and-key-syntax">
      <name>Signature and Key Syntax</name>
      <t>This section illustrates how DKIM signatures and keys could look if the algorithms discussed here were defined for DKIM. It is informational and does not update <xref target="RFC6376"/> or <xref target="RFC8463"/>.</t>
      <section anchor="signature-syntax">
        <name>Signature Syntax</name>
        <t>The "a=" tag (<xref target="RFC6376"/>, Section 3.5; <xref target="RFC8463"/>, Section 4.1) could be extended by adding the following alternatives to the rule sig-a-tag-k:</t>
        <sourcecode type="abnf"><![CDATA[
sig-a-tag-k =/ "mldsa44"
sig-a-tag-k =/ "mldsa65"
sig-a-tag-k =/ "fndsa512"
]]></sourcecode>
      </section>
      <section anchor="key-syntax">
        <name>Key Syntax</name>
        <t>The "k=" tag (<xref target="RFC6376"/>, Section 3.6.1; <xref target="RFC8463"/>, Section 4.2) could be extended by adding the following alternatives to the rule key-k-tag-type:</t>
        <sourcecode type="abnf"><![CDATA[
key-k-tag-type  =/ "mldsa44"
key-k-tag-type  =/ "mldsa65"
key-k-tag-type  =/ "fndsa512"
]]></sourcecode>
        <t>The "p=" value would be the base64-encoded public key of the respective scheme, without further encapsulation. See <xref target="ap-pubkeys"/> for sample key records.</t>
      </section>
    </section>
    <section anchor="requirements">
      <name>Proposed Algorithm and Key Requirements</name>
      <t>Section 3.3 of <xref target="RFC6376"/> describes DKIM's hash and signature algorithms and <xref target="RFC8463"/> extends them. <xref target="alg-table"/> lists the proposed implementation requirements for DKIM signing algorithms. They are a proposal only, to be adopted, if at all, by a Standards Track document. Algorithms marked as PQ-secure provide post-quantum security only in combination with a traditional signature and only if verifiers require the PQ signature to be valid (see <xref target="hybrid-signing"/>). ML-DSA-65 offers a higher security level than ML-DSA-44 (NIST category 3 instead of 2) at the cost of larger keys and signatures (several kilobytes); it is therefore only advisable where such higher security needs exist. Some implementations limit the size of individual header fields or of the whole header, which could be a problem for ML-DSA based signatures. Such limits have not been evaluated in this document and need to be checked in an implementation.</t>
      <table anchor="alg-table">
        <name>Proposed Algorithm and Key Size Requirements; (1) = for higher security needs</name>
        <thead>
          <tr>
            <th align="left">Algorithm (a=)</th>
            <th align="left">Key size</th>
            <th align="left">Signer</th>
            <th align="left">Verifier</th>
            <th align="left">PQ-Secure</th>
            <th align="left">Reference</th>
          </tr>
        </thead>
        <tbody>
          <tr>
            <td align="left">rsa-sha256</td>
            <td align="left">&lt; 1024 bits</td>
            <td align="left">
              <bcp14>MUST NOT</bcp14></td>
            <td align="left">
              <bcp14>MUST NOT</bcp14></td>
            <td align="left">No</td>
            <td align="left">
              <xref target="RFC8301"/></td>
          </tr>
          <tr>
            <td align="left">rsa-sha256</td>
            <td align="left">1024 bits</td>
            <td align="left">
              <bcp14>SHOULD NOT</bcp14></td>
            <td align="left">
              <bcp14>MUST</bcp14></td>
            <td align="left">No</td>
            <td align="left">
              <xref target="RFC8301"/></td>
          </tr>
          <tr>
            <td align="left">rsa-sha256</td>
            <td align="left">2048 bits</td>
            <td align="left">
              <bcp14>MUST</bcp14></td>
            <td align="left">
              <bcp14>MUST</bcp14></td>
            <td align="left">No</td>
            <td align="left">
              <xref target="RFC8301"/></td>
          </tr>
          <tr>
            <td align="left">rsa-sha256</td>
            <td align="left">4096 bits</td>
            <td align="left">
              <bcp14>MAY</bcp14></td>
            <td align="left">
              <bcp14>MUST</bcp14></td>
            <td align="left">No</td>
            <td align="left">
              <xref target="RFC8301"/></td>
          </tr>
          <tr>
            <td align="left">rsa-sha256</td>
            <td align="left">&gt; 4096 bits</td>
            <td align="left">
              <bcp14>MAY</bcp14></td>
            <td align="left">
              <bcp14>MAY</bcp14></td>
            <td align="left">No</td>
            <td align="left">
              <xref target="RFC8301"/></td>
          </tr>
          <tr>
            <td align="left">ed25519-sha256</td>
            <td align="left">fixed</td>
            <td align="left">
              <bcp14>SHOULD</bcp14></td>
            <td align="left">
              <bcp14>MUST</bcp14></td>
            <td align="left">No</td>
            <td align="left">
              <xref target="RFC8463"/></td>
          </tr>
          <tr>
            <td align="left">mldsa44-sha256</td>
            <td align="left">fixed</td>
            <td align="left">
              <bcp14>MUST</bcp14></td>
            <td align="left">
              <bcp14>MUST</bcp14></td>
            <td align="left">Yes (hybrid only)</td>
            <td align="left">
              <xref target="FIPS-204"/></td>
          </tr>
          <tr>
            <td align="left">mldsa65-sha256</td>
            <td align="left">fixed</td>
            <td align="left">
              <bcp14>SHOULD</bcp14> (1)</td>
            <td align="left">
              <bcp14>MUST</bcp14></td>
            <td align="left">Yes (hybrid only)</td>
            <td align="left">
              <xref target="FIPS-204"/></td>
          </tr>
          <tr>
            <td align="left">fndsa512-sha256</td>
            <td align="left">fixed</td>
            <td align="left">
              <bcp14>SHOULD</bcp14></td>
            <td align="left">
              <bcp14>SHOULD</bcp14></td>
            <td align="left">Yes (hybrid only)</td>
            <td align="left">
              <xref target="FIPS-206"/></td>
          </tr>
        </tbody>
      </table>
    </section>
    <section anchor="transition">
      <name>Transition Considerations</name>
      <t>A signer that adds a PQ signature to a message needs to also add a traditional signature (rsa-sha256 or ed25519-sha256), so that verifiers without PQ support can still validate the message. Because a selector can publish only one key record in the DNS, the two signatures need to use different selectors; they can use the same d= and, if present, i= values. Without the traditional signature, verifiers that do not support PQ algorithms would treat the message as unsigned. Without the PQ signature, the message would gain no protection against a CRQC (see <xref target="hybrid-signing"/>). The deployment of PQ signatures is expected to follow that of ed25519-sha256, which is not yet supported by all verifiers. A verifier that supports PQ algorithms validates both signatures; a valid traditional signature alone does not provide PQ security (see <xref target="hybrid-signing"/>). Since a verifier cannot know whether a domain signs with PQ algorithms, requiring the PQ signature is only possible for domains for which this is known, for example through local policy.</t>
    </section>
    <section anchor="iana">
      <name>IANA Considerations</name>
      <t>This document has no IANA actions. The algorithm names used here are working names only (see <xref target="pqdkim"/>). Registration of key types and signature algorithms would have to be requested in a separate Standards Track document.</t>
    </section>
    <section anchor="security">
      <name>Security Considerations</name>
      <t>The security considerations of <xref target="RFC6376"/> apply in addition to those below.</t>
      <t>The algorithms discussed in this document are intended to provide authenticity of DKIM signatures against an adversary with a CRQC. They do so only if a verifier requires both a traditional and a PQ signature as described in <xref target="hybrid-signing"/>. If a verifier accepts a message with only a valid traditional signature, an attacker can remove the PQ signature and forge the traditional one (downgrade).</t>
      <t>Large public keys and signatures increase DNS response sizes and header lengths; see <xref target="hybrid-signing"/> for the TCP fallback. FN-DSA is not yet a final standard at the time of writing, and its implementation needs particular care, because the floating-point operations used in signing can leak information through side channels.</t>
    </section>
  </middle>
  <back>
    <references anchor="sec-combined-references">
      <name>References</name>
      <references anchor="sec-normative-references">
        <name>Normative References</name>
        <reference anchor="RFC6376">
          <front>
            <title>DomainKeys Identified Mail (DKIM) Signatures</title>
            <author fullname="D. Crocker" initials="D." role="editor" surname="Crocker"/>
            <author fullname="T. Hansen" initials="T." role="editor" surname="Hansen"/>
            <author fullname="M. Kucherawy" initials="M." role="editor" surname="Kucherawy"/>
            <date month="September" year="2011"/>
            <abstract>
              <t>DomainKeys Identified Mail (DKIM) permits a person, role, or organization that owns the signing domain to claim some responsibility for a message by associating the domain with the message. This can be an author's organization, an operational relay, or one of their agents. DKIM separates the question of the identity of the Signer of the message from the purported author of the message. Assertion of responsibility is validated through a cryptographic signature and by querying the Signer's domain directly to retrieve the appropriate public key. Message transit from author to recipient is through relays that typically make no substantive change to the message content and thus preserve the DKIM signature.</t>
              <t>This memo obsoletes RFC 4871 and RFC 5672. [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="STD" value="76"/>
          <seriesInfo name="RFC" value="6376"/>
          <seriesInfo name="DOI" value="10.17487/RFC6376"/>
        </reference>
        <reference anchor="RFC8301">
          <front>
            <title>Cryptographic Algorithm and Key Usage Update to DomainKeys Identified Mail (DKIM)</title>
            <author fullname="S. Kitterman" initials="S." surname="Kitterman"/>
            <date month="January" year="2018"/>
            <abstract>
              <t>The cryptographic algorithm and key size requirements included when DomainKeys Identified Mail (DKIM) was designed a decade ago are functionally obsolete and in need of immediate revision. This document updates DKIM requirements to those minimally suitable for operation with currently specified algorithms.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8301"/>
          <seriesInfo name="DOI" value="10.17487/RFC8301"/>
        </reference>
        <reference anchor="RFC8463">
          <front>
            <title>A New Cryptographic Signature Method for DomainKeys Identified Mail (DKIM)</title>
            <author fullname="J. Levine" initials="J." surname="Levine"/>
            <date month="September" year="2018"/>
            <abstract>
              <t>This document adds a new signing algorithm, Ed25519-SHA256, to "DomainKeys Identified Mail (DKIM) Signatures" (RFC 6376). DKIM verifiers are required to implement this algorithm.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8463"/>
          <seriesInfo name="DOI" value="10.17487/RFC8463"/>
        </reference>
        <reference anchor="I-D.ietf-dkim-dkim2-spec">
          <front>
            <title>DomainKeys Identified Mail Signatures v2 (DKIM2)</title>
            <author fullname="Richard Clayton" initials="R." surname="Clayton">
              <organization>Yahoo</organization>
            </author>
            <author fullname="Wei Chuang" initials="W." surname="Chuang">
              <organization>Google</organization>
            </author>
            <author fullname="Bron Gondwana" initials="B." surname="Gondwana">
              <organization>Fastmail Pty Ltd</organization>
            </author>
            <date day="1" month="November" year="2026"/>
            <abstract>
              <t>   DomainKeys Identified Mail v2 (DKIM2) permits the owner of a signing
   domain to document that they have handled an email message by
   associating their domain with the message.  This is achieved by
   providing a hash value that has been calculated on the current
   contents of the message and then applying a cryptographic signature
   that covers the hash values and other details about the transmission
   of the message.  Verification is performed by querying an entry
   within the signing domain's DNS space to retrieve an appropriate
   public key.  As a message is transferred from author to recipient,
   systems that alter the body or header fields will provide details of
   their changes and calculate new hash values.  Further signatures will
   be added to provide a "chain" that receivers can validate.  This
   permits verifiers to identify the nature of changes made by
   intermediaries and apply a reputation to the systems that made
   changes.  DKIM2 also allows recipients to detect when messages have
   been unexpectedly "replayed" and will ensure that Delivery Status
   Notifications are only sent to entities that were involved in the
   transmission of a message.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-ietf-dkim-dkim2-spec-09"/>
        </reference>
        <reference anchor="FIPS-204" target="https://nvlpubs.nist.gov/nistpubs/FIPS/NIST.FIPS.204.pdf">
          <front>
            <title>Module-Lattice-Based Digital Signature Standard</title>
            <author>
              <organization>NIST</organization>
            </author>
            <date year="2024" month="August"/>
          </front>
          <seriesInfo name="NIST" value="FIPS 204"/>
          <seriesInfo name="DOI" value="10.6028/NIST.FIPS.204"/>
        </reference>
        <reference anchor="FIPS-205" target="https://nvlpubs.nist.gov/nistpubs/FIPS/NIST.FIPS.205.pdf">
          <front>
            <title>Stateless Hash-Based Digital Signature Standard</title>
            <author>
              <organization>NIST</organization>
            </author>
            <date year="2024" month="August"/>
          </front>
          <seriesInfo name="NIST" value="FIPS 205"/>
          <seriesInfo name="DOI" value="10.6028/NIST.FIPS.205"/>
        </reference>
        <reference anchor="FIPS-206" target="https://www.nist.gov/news-events/news/2024/08/nist-releases-first-3-finalized-post-quantum-encryption-standards">
          <front>
            <title>Fast Fourier Transform over NTRU-Lattice-Based Digital Signature Algorithm</title>
            <author>
              <organization>NIST</organization>
            </author>
            <date year="2026" month="November"/>
          </front>
          <seriesInfo name="NIST" value="FIPS 206"/>
          <seriesInfo name="DOI" value="TBD"/>
        </reference>
        <reference anchor="SQISIGN" target="https://sqisign.org">
          <front>
            <title>SQIsign</title>
            <author initials="M. A." surname="Aardal" fullname="Marius A. Aardal">
              <organization/>
            </author>
            <author initials="G." surname="Adj" fullname="Gora Adj">
              <organization/>
            </author>
            <author initials="D. F." surname="Aranha" fullname="Diego F. Aranha">
              <organization/>
            </author>
            <author initials="A." surname="Basso" fullname="Andrea Basso">
              <organization/>
            </author>
            <author initials="G." surname="Borin" fullname="Giacomo Borin">
              <organization/>
            </author>
            <author initials="I. A." surname="Canales Martinez" fullname="Isaac Andres Canales Martinez">
              <organization/>
            </author>
            <author initials="J." surname="Chavez-Saab" fullname="Jorge Chavez-Saab">
              <organization/>
            </author>
            <author initials="M." surname="Corte-Real Santos" fullname="Maria Corte-Real Santos">
              <organization/>
            </author>
            <author initials="P." surname="Dartois" fullname="Pierrick Dartois">
              <organization/>
            </author>
            <author initials="L." surname="De Feo" fullname="Luca De Feo">
              <organization/>
            </author>
            <author initials="M." surname="Duparc" fullname="Max Duparc">
              <organization/>
            </author>
            <author initials="T." surname="Espitau" fullname="Thomas Espitau">
              <organization/>
            </author>
            <author initials="J. K." surname="Eriksen" fullname="Jonathan Komada Eriksen">
              <organization/>
            </author>
            <author initials="T. B." surname="Fouotsa" fullname="Tako Boris Fouotsa">
              <organization/>
            </author>
            <author initials="D. L." surname="Gazzoni Filho" fullname="Decio Luiz Gazzoni Filho">
              <organization/>
            </author>
            <author initials="B." surname="Hess" fullname="Basil Hess">
              <organization/>
            </author>
            <author initials="R." surname="Invernizzi" fullname="Riccardo Invernizzi">
              <organization/>
            </author>
            <author initials="D." surname="Kohel" fullname="David Kohel">
              <organization/>
            </author>
            <author initials="A." surname="Leroux" fullname="Antonin Leroux">
              <organization/>
            </author>
            <author initials="P." surname="Longa" fullname="Patrick Longa">
              <organization/>
            </author>
            <author initials="L." surname="Maino" fullname="Luciano Maino">
              <organization/>
            </author>
            <author initials="M." surname="Meyer" fullname="Michael Meyer">
              <organization/>
            </author>
            <author initials="M." surname="Mula" fullname="Marzio Mula">
              <organization/>
            </author>
            <author initials="K." surname="Nakagawa" fullname="Kohei Nakagawa">
              <organization/>
            </author>
            <author initials="H." surname="Onuki" fullname="Hiroshi Onuki">
              <organization/>
            </author>
            <author initials="L." surname="Panny" fullname="Lorenz Panny">
              <organization/>
            </author>
            <author initials="S." surname="Patranabis" fullname="Sikhar Patranabis">
              <organization/>
            </author>
            <author initials="C." surname="Petit" fullname="Christophe Petit">
              <organization/>
            </author>
            <author initials="G." surname="Pope" fullname="Giacomo Pope">
              <organization/>
            </author>
            <author initials="K." surname="Reijnders" fullname="Krijn Reijnders">
              <organization/>
            </author>
            <author initials="D." surname="Robert" fullname="Damien Robert">
              <organization/>
            </author>
            <author initials="F." surname="Rodriguez-Henriquez" fullname="Francisco Rodriguez-Henriquez">
              <organization/>
            </author>
            <author initials="S." surname="Schaeffler" fullname="Sina Schaeffler">
              <organization/>
            </author>
            <author initials="F." surname="Vercauteren" fullname="Frederik Vercauteren">
              <organization/>
            </author>
            <author initials="A." surname="Wallet" fullname="Alexandre Wallet">
              <organization/>
            </author>
            <author initials="B." surname="Wesolowski" fullname="Benjamin Wesolowski">
              <organization/>
            </author>
            <author initials="W." surname="van Woerden" fullname="Wessel van Woerden">
              <organization/>
            </author>
            <date year="2026"/>
          </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="RFC8017">
          <front>
            <title>PKCS #1: RSA Cryptography Specifications Version 2.2</title>
            <author fullname="K. Moriarty" initials="K." role="editor" surname="Moriarty"/>
            <author fullname="B. Kaliski" initials="B." surname="Kaliski"/>
            <author fullname="J. Jonsson" initials="J." surname="Jonsson"/>
            <author fullname="A. Rusch" initials="A." surname="Rusch"/>
            <date month="November" year="2016"/>
            <abstract>
              <t>This document provides recommendations for the implementation of public-key cryptography based on the RSA algorithm, covering cryptographic primitives, encryption schemes, signature schemes with appendix, and ASN.1 syntax for representing keys and for identifying the schemes.</t>
              <t>This document represents a republication of PKCS #1 v2.2 from RSA Laboratories' Public-Key Cryptography Standards (PKCS) series. By publishing this RFC, change control is transferred to the IETF.</t>
              <t>This document also obsoletes RFC 3447.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8017"/>
          <seriesInfo name="DOI" value="10.17487/RFC8017"/>
        </reference>
        <reference anchor="SHOR" target="https://doi.org/10.1137/S0097539795293172">
          <front>
            <title>Polynomial-Time Algorithms for Prime Factorization and Discrete Logarithms on a Quantum Computer</title>
            <author initials="P. W." surname="Shor" fullname="Peter W. Shor">
              <organization/>
            </author>
            <date year="1997"/>
          </front>
          <seriesInfo name="DOI" value="10.1137/S0097539795293172"/>
          <seriesInfo name="SIAM" value="Journal on Computing"/>
          <seriesInfo name="Volume" value="26"/>
          <seriesInfo name="Issue" value="5"/>
          <seriesInfo name="pp." value="1484-1509"/>
        </reference>
        <reference anchor="PQSHIELD" target="https://pqshield.github.io/nist-sigs-zoo/">
          <front>
            <title>Post-Quantum Signature Schemes</title>
            <author initials="" surname="PQShield" fullname="PQShield">
              <organization/>
            </author>
            <date year="2026"/>
          </front>
        </reference>
        <reference anchor="RSAFORGE" target="https://eprint.iacr.org/2026/2131">
          <front>
            <title>Forging 1024-bit RSA signatures in nearly SNFS time</title>
            <author initials="L." surname="Shea" fullname="Laura Shea">
              <organization/>
            </author>
            <author initials="M." surname="Haller" fullname="Miro Haller">
              <organization/>
            </author>
            <author initials="A." surname="Suhl" fullname="Adam Suhl">
              <organization/>
            </author>
            <author initials="N." surname="Heninger" fullname="Nadia Heninger">
              <organization/>
            </author>
            <author initials="E." surname="Thome" fullname="Emmanuel Thome">
              <organization/>
            </author>
            <date year="2026"/>
          </front>
          <seriesInfo name="Cryptology ePrint Archive, Paper 2026/2131" value=""/>
        </reference>
      </references>
    </references>
    <?line 337?>

<section anchor="examples-of-a-signed-message">
      <name>Examples of a Signed Message</name>
      <t>TBD</t>
      <section anchor="secret-keys">
        <name>Secret Keys</name>
        <section anchor="ml-dsa-44">
          <name>ML-DSA-44</name>
        </section>
        <section anchor="ml-dsa-65">
          <name>ML-DSA-65</name>
        </section>
        <section anchor="fn-dsa-512">
          <name>FN-DSA-512</name>
        </section>
      </section>
      <section anchor="ap-pubkeys">
        <name>Public Key DNS Records</name>
        <section anchor="ml-dsa-44-1">
          <name>ML-DSA-44</name>
        </section>
        <section anchor="ml-dsa-65-1">
          <name>ML-DSA-65</name>
        </section>
        <section anchor="fn-dsa-512-1">
          <name>FN-DSA-512</name>
        </section>
      </section>
      <section anchor="signed-message">
        <name>Signed Message</name>
        <section anchor="ml-dsa-44-2">
          <name>ML-DSA-44</name>
        </section>
        <section anchor="ml-dsa-65-2">
          <name>ML-DSA-65</name>
        </section>
        <section anchor="fn-dsa-512-2">
          <name>FN-DSA-512</name>
          <!-- ~~~~ -->
<!--#source code goes here {{REPLACE}}-->
<!-- ~~~~ -->
<!--{: title='test' sourcecode-markers="true"}-->

<!--# Acknowledgements {#Acknowledgements}-->
<!--{: numbered="false"}-->

<!--This template uses extracts from templates written by
{{{Pekka Savola}}}, {{{Elwyn Davies}}} and
{{{Henrik Levkowetz}}}. {{REPLACE}}-->

</section>
      </section>
    </section>
  </back>
  <!-- ##markdown-source:
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
LXAfOkgL+G5NxuvjoHUwyKsZBhe8ja97A376dfeQ0ax2qIQBOUiidPHAaLrz
FvXKxti+HmyZ34Ot7UFzlmpcm+a+l4BtfB24YZZztMrP7lyRl6X6sZ2Dem76
5cmNr8/WDf+63aTFDN9s1y83vu6sju59c/FKNEa8ZHyJ50gZ4FD9fJSVxdoZ
tKk2GKfAcqigfegr2ojqiu7UmCqJwmq8MTtyJEOoUadjHhiHbLAR172z3GDe
1oka9GU5twcPJs1twCp2IlTtpNK6ceM0QaO+UJct/ExqJj/GM/gU6sr+ACZA
PB4tKdBuOBxcGcZmv1axja/kqLnnZsMONna23WOmT6V0PduU4cC1/V1XCdEl
XKBbDolNeAdM3luxixm8HzZuqih1rtRmwQ6STJAFJ4oVzAbYCD8pE0pdncah
w4OdHjKrQxow2D80I+rZPcurawkFe30XkkJsxpmF2BjsUJY7ONzDz+29w21f
b8XGweEzND473HE8+RgqwrBTd/zJvRd8mkPvGwC43p5cQ8OTZAS+VLGB5Opk
ar2pdwOBVWudQ6XbUhqrFC6iVrgIDDEnuyau006rYn2l4y1P11JHL4BQdc8o
sV3FHD9iCg3lRH6JWMuvAfS4DFC5dpq87cNdMVaRhGaExcPEHCGu1ctbPrN0
gclXcs9lExautGPDbmdTlHNCSJU6iw2n5JsuUNtzC3YZdGSJcI0wTTl1Zo/G
TXK93rNbDTa5ZT0FHq1k2GKj9rPbu9tbhiLfe+7sbB26p55b3N/fd0/XBJLB
s62DA2uVJr2qw4qvz7xRZjaYzgWPyh02YYLY2N6yxIH5l6uFAgajMevIigMA
BlSIVryOBheVfcfGZBF0iwla4C4cGAGYg86R8pJYbwVnHs56XTpv8BvEUSE1
cWLTTGnO1F/4JRofQbkkyoKcFXT30IRHteq1hT8uE3oZxyAjP2eqE9WZLMKp
1RM3oU+Lnw43kmE+8GY2QhsB2Vipeq4S1sxbqxoTczJOQ7pboTwrZbFSxbwQ
9OpAAaURd3GSGZuokIE5nqTYW+UI7DoSAKl1RHrIwVfjVlRnL0V8JBZUN13q
VKKSKBnYkg9exCTLoia8HZn43Sr0V85W1dGGIh47XqdgM3mHXfpOF0xUVBGQ
+dIdH/gKzoWSyurERr0Z51BqS62sen9vs1fz3nMc5tRplrFmKsponE1Rlc8N
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
S+f/AS/ofvJsUQAA

-->

</rfc>
