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


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

]>


<rfc ipr="trust200902" docName="draft-gondwana-dkim2-header-04" category="std" consensus="true" submissionType="IETF" obsoletes="4686" tocInclude="true" sortRefs="true" symRefs="true">
  <front>
    <title abbrev="DKIM2 Headers">DKIM2 Header Definitions</title>

    <author initials="B." surname="Gondwana" fullname="Bron Gondwana">
      <organization>Fastmail</organization>
      <address>
        <email>brong@fastmailteam.com</email>
      </address>
    </author>
    <author initials="R." surname="Clayton" fullname="Richard Clayton">
      <organization>Yahoo</organization>
      <address>
        <email>rclayton@yahooinc.com</email>
      </address>
    </author>
    <author initials="W." surname="Chuang" fullname="Wei Chuang">
      <organization>Google</organization>
      <address>
        <email>weihaw@google.com</email>
      </address>
    </author>

    <date year="2025" month="October" day="20"/>

    
    
    <keyword>Internet-Draft</keyword>

    <abstract>


<t>This document describes the email header fields defined for DKIM2, and how they work togther
to provide the required properties.</t>

<t>This is an early draft, a work in progress.</t>



    </abstract>



  </front>

  <middle>


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

<t>To achieve the goals laid out in <xref target="MOTIVATION"/>, this document describes the content of
a 'DKIM2-Signature' header field, which can be added to <xref target="IMF"/> messages.
The 'DKIM2-Signature' header field contains signatures which can be verified using
public keys from the DNS, in a similar way to how <xref target="DKIM"/> works.</t>

<t>The 'DKIM2-Signature' header field also borrows design elements from <xref target="ARC"/>, however it
places strict requirements on the alignment of the components of <xref target="DKIM2"/>
header fields in the <xref target="IMF"/> message with the <xref target="SMTP"/> reverse-path
and forward-path.</t>

<section anchor="imported-abnf"><name>Imported ABNF</name>

<t>This document imports the following ABNF:</t>

<t><list style="symbols">
  <t><spanx style="verb">mailbox</spanx> and <spanx style="verb">domain</spanx> from <xref target="SMTP"/> Section 4.1.2.</t>
  <t><spanx style="verb">selector</spanx> from <xref target="DKIM"/> Section 3.1.</t>
  <t><spanx style="verb">tag-list</spanx> from <xref target="DKIM"/> Section 3.2.</t>
  <t><spanx style="verb">date-time</spanx> from <xref target="DATETIME"/> Section 5.6.</t>
</list></t>

</section>
<section anchor="defined-abnf"><name>Defined ABNF</name>

<t>We will copy (re-define) at least:</t>

<t><list style="symbols">
  <t><spanx style="verb">instance</spanx> and <spanx style="verb">position</spanx> from <xref target="ARC"/> Section 3.9.</t>
</list></t>

</section>
<section anchor="definitions"><name>Definitions</name>

<t><list style="symbols">
  <t>"DKIM2 Header".  Any header field with the name 'DKIM2-Signature'.</t>
  <t>"Historical DKIM2 Header".  Any DKIM2 Header where there exists another DKIM2 Header
 with a higher position on the message.</t>
  <t>"Active DKIM2 Header".  Any DKIM2 Header where there is no DKIM2 Header
 with a higher position on the message.</t>
  <t>"Initial Timestamp". The timestamp on the DKIM2 Header in position 1.</t>
</list></t>

</section>
</section>
<section anchor="the-dkim2-header"><name>The DKIM2 Header</name>

<t>The DKIM2 Header draws significant amounts of design from <xref target="ARC"/>.</t>

<t><xref target="DKIM2"/> Headers are a structured tag-list as defined in <xref target="DKIM"/> Section 3.2.</t>

<texttable>
      <ttcol align='left'>Field identifier</ttcol>
      <ttcol align='left'>Type</ttcol>
      <ttcol align='left'>Explanation</ttcol>
      <c>i=</c>
      <c>position</c>
      <c>Sequence Number (from 1 to N)</c>
      <c>t=</c>
      <c>date-time</c>
      <c>Timestamp (<xref target="DATETIME"/>)</c>
      <c>f=</c>
      <c>dkim2-flags</c>
      <c>Indicates if feedback is requested, or that changes are not allowed</c>
      <c>d=</c>
      <c>domain</c>
      <c>Signing domain</c>
      <c>a=</c>
      <c>TBD</c>
      <c>Crypto algorithm(s) used (unless combined with b= to allow for multiple signatures on the same email, see discussion of crypto-agility above)</c>
      <c>s=</c>
      <c>selector</c>
      <c>DKIM</c>
      <c>b=</c>
      <c>base64</c>
      <c>Signature over hash value strings (DKIM uses b=)</c>
      <c>bh=</c>
      <c>base64</c>
      <c>Body hash value (see discussion)</c>
      <c>h=</c>
      <c>header-list</c>
      <c>Extra headers signed by this hop</c>
      <c>mf=</c>
      <c>mailbox</c>
      <c><xref target="SMTP"/> reverse-path MUST be exactly this value</c>
      <c>rt=</c>
      <c>mailbox-list</c>
      <c><xref target="SMTP"/> forward-path MUST only contain members of this list</c>
      <c>pp=</c>
      <c>domain</c>
      <c>Per procurationem (as proxy for) - if present, the domain being signed for</c>
      <c>mv=</c>
      <c>position</c>
      <c><xref target="DELTA"/> version number signed by this header</c>
      <c>n=</c>
      <c>TBD</c>
      <c>a nonce value (could use for database lookup for DSN handling)</c>
</texttable>

<t>Note that we have not included a version number. Experience from <xref target="IMF"/> onwards shows
that it is essentially impossible to change version numbers. If it becomes necessary to
change DKIM2 in the sort of incompatible way that a new version number would be needed,
we recommend using new header field names instead.</t>

<section anchor="value-of-i"><name>Value of i=</name>

<t>The maximum allowed position is 50.</t>

<t>If the Active DKIM2 Header is not in position 1, there MUST be exactly one
Historical DKIM2 header for each lower integer number, starting at 1.</t>

<t>To allow <xref target="SMTP"/> transactions with more than one forward-path, there MAY
be more than one Active DKIM2 header on a message.</t>

<t>If a message is recieved with multiple Active DKIM2 headers, the
next signer MUST remove all but one of them, keeping the one with the
forward-path for which it is creating an onward message.  For example if one of the
recipients of a multi-recipient message has a forwarding rule, then the DKIM2
header field for that recipient will be the one that is retained as the Historical
DKIM2 Header for the previous position on that particular copy of the message.</t>

</section>
<section anchor="value-of-t"><name>Value of t=</name>

<t>The value is a <xref target="DATETIME"/> date-time.</t>

<t>For a message in transit, the timestamp SHOULD be less than one week ago.  For bounces,
they SHOULD be returned to their source within 2 weeks of the timestamp on the DKIM2
Header with position 1.</t>

<t>This requires that as the destination, or as any intermediate hop unable to deliver
the message further, you SHOULD create a bounce within one week of the initial
timestamp.</t>

<t>Also, as a recipient, you SHOULD reject any message with an initial timestamp more than
a week in the past.</t>

<t>This allows signing hosts to rotate keys and only have to keep the old keys (and keep the
private key private) for a maximum of 2 weeks.</t>

</section>
<section anchor="value-of-f"><name>Value of f=</name>

<t>The value is a comma-separated list of flags.  The following flags are defined:</t>

<texttable>
      <ttcol align='left'>Flag</ttcol>
      <ttcol align='left'>Position</ttcol>
      <ttcol align='left'>Description</ttcol>
      <c>donotmodify</c>
      <c>any</c>
      <c>This signer requests that this message not be further modified</c>
      <c>donotexplode</c>
      <c>any</c>
      <c>This signer requests that this message not be further exploded to multiple recipients</c>
      <c>donotforward</c>
      <c>any</c>
      <c>This signer requests that this message not be sent to any different recipient</c>
      <c>exploded</c>
      <c>any</c>
      <c>This signed wishes to state that it created multiple different copies of this same message</c>
      <c>feedback</c>
      <c>any</c>
      <c>This signer requests that this message be included in any feedback loop reports</c>
</texttable>

<t>The "donot" fields are advisory.  They might be appropriate for some types of transactional email.
Since it is only a request, intermediaries may, by local policy, not honor it, but they SHOULD NOT
relay mail where the request has not been honored to third parties.</t>

<t>The "exploded" tag has security and privacy implications, which will be fleshed out in the security
and privacy considerations if this stays in.  If sending a BCC, or having a hidden alias target,
setting exploded could leak that fact.  If you don't set exploded and have taken a hidden copy,
they could both wind up at a later system which might then reject the copies.</t>

<t>The "feedback" field is advisory, however its absence means that the sender does not want
feedback on this message.  This document does not describe a mechanism for determining how
to send feedback, or what format that feedback should be in.</t>

</section>
<section anchor="value-of-bh"><name>Value of bh=</name>

<t>The header hash is always calculated with the "relaxed" algorithm defined in <xref target="DKIM"/> section 3.4.2.</t>

</section>
<section anchor="value-of-b"><name>Value of b=</name>

<t>The body hash is always calculated with the "relaxed" algorithm defined in <xref target="DKIM"/> section 3.4.4.</t>

</section>
<section anchor="value-of-n"><name>Value of n=</name>

<t>The nonce value is available for any purpose, but may well be used as an index
into a database to access meta-data about an email that has been handled in the
past. DKIM2 signatures expire after a fixed period (a week would be appropriate) so that
it is not necessary to hold information for indefinite periods or to handle DSNs
for email that was delivered long ago.</t>

</section>
<section anchor="value-of-rt"><name>Value of rt=</name>

<t>If a message is sent over <xref target="SMTP"/>, then to be accepted as a valid DKIM2
message, every forward-path MUST exactly match the rf= value of an
Active DKIM2 Header.</t>

<t>See Security Considerations in this document for a discussion of avoiding
inadvertant information disclosure in cases where multiple Active DKIM2
headers are present.</t>

</section>
<section anchor="value-of-mf"><name>Value of mf=</name>

<t>If there are multiple Active DKIM2 Headers, they must all have the same mf= value.</t>

<t>If a message is sent over <xref target="SMTP"/>, then to be accepted as a valid DKIM2
message, the reverse-path MUST exactly match the mf= value of the Active
DKIM2 Headers.</t>

<t>The domain part of the mf= value MUST exactly match the d= value on
all DKIM2 Headers.</t>

</section>
<section anchor="value-of-d"><name>Value of d=</name>

<t>For DKIM2 Headers with position greater than 1, the value of d= MUST be aligned
with the domain of the rt= value of the immediately previous DKIM2 Header, for
example the d= value for the DKIM2 header with i=3 must be the same as the domain
part of the rt= value for the DKIM2 header with i=2.</t>

</section>
<section anchor="value-of-pp"><name>Value of pp=</name>

<t>If the d= domain is not one of the domains of the previous hop, then pp=
contains the domain which is being signed on behalf of.</t>

<t>The domain in pp= MUST be the exact domain of one of the addresses in rt= of
the previous instance.</t>

<t>The relationship between the pp= and d= values can be one of:</t>

<t><list style="numbers">
  <t>an exact match.</t>
  <t>d= is a parent domain (not crossing the PSL prefix list) of pp=</t>
  <t>d= is a parent domain of an MX record for pp= (again, not crossing the PSL)</t>
  <t>d= is explicitly listed in the DNS or by some other out of band method,
in a record to be defined in a later revision of this document, or some 
future specification.</t>
</list></t>

</section>
<section anchor="value-of-mv"><name>Value of mv=</name>

<t>This value is an integer for the matching <xref target="DELTA"/> version that this signature
was created for.  The inclusion of a version implicitly includes all MailVersion
header fields with a lower or equal version, and excludes all MailVersion header
fields with a greater version, when calculating the h= value.</t>

</section>
<section anchor="value-of-h"><name>Value of h=</name>

<t>See the definition in <xref target="DKIM2"/></t>

<section anchor="implicitly-signed-headers"><name>Implicitly signed headers</name>

<t>All DKIM2 Headers with a position less than or equal to the position of the
DKIM2 Header itself are implicitly included in the signed headers for that
DKIM2 Header.  So in a message the Active DKIM2 Header at position 3, all
the DKIM2- prefixed header are included in the signature.  The Historical
signature at position 2 includes the prefixed headers for positions 1 and
2 only, excluding those with position 3 - and of course the Historical
signature with position 1 only includes those prefixed headers that are
also at position 1 and excludes the others.</t>

<t>The MailVersion headers for lower or equal versions to the mv= field are
also implicitly signed, and those with a higher version are not signed.</t>

</section>
</section>
<section anchor="values-of-s-and-a"><name>Values of s= and a=</name>

<t>TBD; we want to support multiple signatures with different algorithms
in the same DKIM2 Header, so we need to figure out how to represent
that to allow crypto agility.</t>

</section>
</section>
<section anchor="process-for-validating-a-dkim2-message-on-receipt"><name>Process for validating a DKIM2 message on receipt</name>

<t><xref target="BOUNCE"/> describes that bounce messages are only allowed for validated messages.</t>

<t>To be able to safely create bounces, a DKIM2 aware MTA will run the following
checks before responding to the DATA step of an <xref target="SMTP"/> transaction.</t>

<t>1) find the Active DKIM2 Header in the message header.  If none are present,
   accept the message if local policy allows.
2) validate that the timestamp on the Active DKIM2 Header is less than one week old.
3) validate that the mf= on the Active DKIM2 Header matches the SMTP reverse-path,
   and that the d= matches the domain.
4) validate that every mailbox in the SMTP forward-path matches an item in the rt=
   on the Active DKIM2 Header.
5) validate that the local system can sign for each address in the SMTP forward-path.
6) fetch the public key for each given selector and algorithm that the receiver
   supports (or reply with a 5xx if no algorithms are supported).  Reply with a
   4xx error if the public key is unable to be feched due to a temporary error.
7) validate that the signature is valid on the Active DKIM2 Header</t>

<t>This is sufficient information to be able to validate the bounce address and that
the message was intended for the named recipients, so it can now be accepted subject
to other local policy.  At this stage if you generate a bounce, it will go back to
the signer and the signer will accept it from you.</t>

<t>A receiver MAY choose not to perform the above tests during the SMTP transaction,
or MAY choose to accept a message despite it failing those tests, however it
MUST perform the tests before creating a <xref target="BOUNCE"/> DSN, and MUST NOT send
a <xref target="BOUNCE"/> DSN if it is unable to create a valid signature.</t>

</section>
<section anchor="temporary-notes"><name>Temporary Notes</name>

<t>The below is text from an earlier version of this document which I think is valuable
to preserve at this point, however it probably belongs in another document and has
not been updated to match the above.</t>

<section anchor="dealing-with-modifications"><name>Dealing with modifications.</name>

<t>Find the highest numbered DKIM2 header that reports a modification. Undo the modification
and repeat. When all modifications have been done then there should be a match
with the original signature (at hop1). If not then the email has been altered (in an
undocumented manner) on its way to you and it SHOULD be rejected.</t>

<t>Note that it is not necessary to check the signature on a DKIM2 header that reports
a modification. Undoing the modification and discovering that the message can now
be authenticated is sufficient.</t>

<t>Over time a reputation can be developed for a intermediary which is making
modifications and given sufficient trust then the "undo" step could be skipped. Note
that the signature of the DKIM2 header that reports the modification would need
to be checked to ensure reputation accrued to the correct entity.</t>

<t>If the modification is substantial (eg URLs rewritten, MIME parts removed) and
it cannot be undone then the receiver (who may not be the immediate next hop)
MUST trust the system doing the modification. If it does not then the mail
SHOULD be rejected.</t>

<t>It will be noted that some modifications can totally change the meaning of
an email. This specification does not try to limit modifications. We believe
that being able to attribute modifications to a particular entity will allow
reliable blocking of malicious intermediaries once they are identified.</t>

</section>
<section anchor="dealing-with-replays"><name>Dealing with replays</name>

<t>Checking source and destination as recorded by the previous hop makes many
“DKIM replay” scenarios impossible.</t>

<t>It is possible to exclude all replays by determining if any DKIM2 header reports an
expansion event (one incoming email resulting in multiple further emails). If not
then you would expect that the (original) hash of the email is unique and duplicates
can be rejected.</t>

<t>If a expansion event is recorded then receiving multiple copies would not
be a surprise. It will be necessary to use local policy to assess whether the
number of copies received is acceptable or not.</t>

<t>Over time you may wish to develop a reputation for a DKIM2 identity which is
doing expansions and conclude that a specific number of copies is to be expected.
This can be used to refine local policy.</t>

</section>
</section>
<section anchor="feedback-loops"><name>Feedback loops</name>

<t>Some mailbox providers are prepared to report their, or their customers',
opinions about incoming email -- for example: that a customer marked a
particular email as "spam". These systems are generally called "feedback
loops".</t>

<t>There are usually bureaucratic systems to ensure reports are only sent to
entities that wish to receive them and the mailbox provider may decide that
some entities should not be sent any feedback.</t>

<t>The senders of email, the originator and/or a commercial company (an ESP)
hired to send the email generally favor feedback loops because it allows
them to make their emails more acceptable, and the commercial companies
can rapidly become aware of customers whose email is widely disliked.</t>

<t>In DKIM2 any intermediary can request feedback, but it is still the decision
of the mailbox provider as to whether any feedback will be sent. They may
still require pre-registration on a per domain basis to receive feedback
if only to ensure that any nominated email address is appropriate and is
not an unsuspecting third party.</t>

<t>Note that feedback can be sent to any requesting entity. There is nothing
special about a requester being at hop1 or hop2 on a chain. In particular
some forwarding systems late in the chain may wish to become aware if they
are forwarding emails that are then reported to be spam.</t>

</section>
<section anchor="handling-of-messages-that-leave-the-dkim2-ecosystem"><name>Handling of messages that leave the DKIM2 ecosystem</name>

<t>Note that DKIM2 signed email can also be DKIM1 signed, and so systems
that are not DKIM2 aware can and will operate as they do at present.</t>

<t>DKIM2 capable servers will announce the capability in their initial banner
in the usual manner for SMTP extensions.</t>

<t>When a DKIM2 signed email is delivered to a server that does not understand
DKIM2 and leaves the DKIM2 ecosystem the DKIM2 specific events can no longer
be expected to occur. In particular any failures to be deliver will be
reported to the address in the relevant return path and not back along
the DKIM2 chain.</t>

<t>A DKIM2 signed email may be delivered to a server that understands DKIM2 but
if that server needs to forward the email elsewhere it may find that there
is no signing key available for the relevant domain (recalling that the
incoming email recorded the destination domain and it is necessary for
the next "hop" to match with that. In such a case, once more the email
will leave the DKIM2 ecosystem.</t>

<t>Refusing to allow an email to leave the DKIM2 ecosystem may be an appropriate
choice in some circumstances. If so then an appropriate DSN should be
created and passed back along the chain in the normal manner.</t>

<t>It is more likely that local policy will be to pass the email to the next
intermediary even though this means that it leaves the DKIM2 ecosystem. In
such a case it would be possible to add a final DKIM2 header to record
this event, but doing this adds considerable complexity, and would provide
limited information which was not otherwise available, hence no such
header will be added.</t>

<t>If, after having left the DKIM2 ecosystem, the email reaches a DKIM2 aware
system then the email may have been altered in such a way that the DKIM2
signatures now fail. The receiving system will apply its local policy to
determine whether or not to accept the email.</t>

<t>If the DKIM2 signatures on the mail are valid, except that the last header
does not specify the receiving system as the next hop, then once again it
will a matter for local policy as to whether to accept the email. It might
be thought that it was obvious that the email was acceptable, but the
non-DKIM2-aware intermediaries that have handled it may have duplicated
the email and there will be no DKIM2 headers to record this.</t>

<t>In any event, systems that accept email which has been outside the DKIM2
ecosystem MUST NOT add any further DKIM2 headers.</t>

<section anchor="dkim2-foo-headers"><name>DKIM2-foo headers</name>

<t>DKIM2 allows for extension headers which are always added to the signature,
but ONLY where they have an i= with a value equal to or lower than the
matching DKIM2 header.  This allows for extensions to add something at
each DKIM2 hop; with it automatically added to the signed header set.</t>

<section anchor="dkim2-authentication-results"><name>DKIM2-Authentication-Results</name>

<t>If present, is identical to how ARC-Autentication-Results from ARC are used,
a place for any hop to add their calculated Authentication-Results header
in a way that is signed; allowing other hops to add a similar header
without needing to use modification algebra to remove it when reversing the
calculation.</t>

</section>
</section>
</section>
<section anchor="security"><name>Security</name>

<t>Mostly TBD</t>

<section anchor="multiple-addresses-in-the-rt-field"><name>Multiple addresses in the rt= field</name>

<t>If a message has multiple values in the rt= field, it is imperative that the
creating system ensure that it doesn't leak BCC information to other
recipients.  This MUST be done by the sending system, by creating
a separately signed message for each BCC recipient.</t>

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

<t>TBD</t>

<t>We will register the header name DKIM2 and the header prefix DKIM2- with
reference to this document for syntax and constraints on the syntax of
future headers with that prefix.</t>

</section>


  </middle>

  <back>


    <references title='Normative References'>



<reference anchor='DATETIME'>
  <front>
    <title>Date and Time on the Internet: Timestamps</title>
    <author fullname='G. Klyne' initials='G.' surname='Klyne'/>
    <author fullname='C. Newman' initials='C.' surname='Newman'/>
    <date month='July' year='2002'/>
    <abstract>
      <t>This document defines a date and time format for use in Internet protocols that is a profile of the ISO 8601 standard for representation of dates and times using the Gregorian calendar.</t>
    </abstract>
  </front>
  <seriesInfo name='RFC' value='3339'/>
  <seriesInfo name='DOI' value='10.17487/RFC3339'/>
</reference>

<reference anchor='SMTP'>
  <front>
    <title>Simple Mail Transfer Protocol</title>
    <author fullname='J. Klensin' initials='J.' surname='Klensin'/>
    <date month='October' year='2008'/>
    <abstract>
      <t>This document is a specification of the basic protocol for Internet electronic mail transport. It consolidates, updates, and clarifies several previous documents, making all or parts of most of them obsolete. It covers the SMTP extension mechanisms and best practices for the contemporary Internet, but does not provide details about particular extensions. Although SMTP was designed as a mail transport and delivery protocol, this specification also contains information that is important to its use as a "mail submission" protocol for "split-UA" (User Agent) mail reading systems and mobile environments. [STANDARDS-TRACK]</t>
    </abstract>
  </front>
  <seriesInfo name='RFC' value='5321'/>
  <seriesInfo name='DOI' value='10.17487/RFC5321'/>
</reference>

<reference anchor='IMF'>
  <front>
    <title>Internet Message Format</title>
    <author fullname='P. Resnick' initials='P.' role='editor' surname='Resnick'/>
    <date month='October' year='2008'/>
    <abstract>
      <t>This document specifies the Internet Message Format (IMF), a syntax for text messages that are sent between computer users, within the framework of "electronic mail" messages. This specification is a revision of Request For Comments (RFC) 2822, which itself superseded Request For Comments (RFC) 822, "Standard for the Format of ARPA Internet Text Messages", updating it to reflect current practice and incorporating incremental changes that were specified in other RFCs. [STANDARDS-TRACK]</t>
    </abstract>
  </front>
  <seriesInfo name='RFC' value='5322'/>
  <seriesInfo name='DOI' value='10.17487/RFC5322'/>
</reference>

<reference anchor='DKIM'>
  <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='MOTIVATION'>
   <front>
      <title>DKIM2 - signing the source and destination of every email</title>
      <author fullname='Bron Gondwana' initials='B.' surname='Gondwana'>
         <organization>Fastmail</organization>
      </author>
      <author fullname='Richard Clayton' initials='R.' surname='Clayton'>
         <organization>Yahoo</organization>
      </author>
      <author fullname='Wei Chuang' initials='W.' surname='Chuang'>
         <organization>Google</organization>
      </author>
      <date day='25' month='June' year='2025'/>
      <abstract>
	 <t>   This memo provides a rationale for replacing the existing email
   security mechanisms with a new mechanism based around a more strongly
   authenticated email delivery pathway, including an asynchronous
   return channel.

	 </t>
      </abstract>
   </front>
   <seriesInfo name='Internet-Draft' value='draft-gondwana-dkim2-motivation-03'/>
   
</reference>


<reference anchor='DELTA'>
   <front>
      <title>A method for describing changes made to an email</title>
      <author fullname='Bron Gondwana' initials='B.' surname='Gondwana'>
         <organization>Fastmail Pty Ltd</organization>
      </author>
      <date day='17' month='October' year='2025'/>
      <abstract>
	 <t>   This memo describes a method for describing the changes made to an
   email during common email modifications, for example those caused by
   mailing lists and forwarders.

   While this is general enough to be used for any changes, it is
   anticipated that this method will normally be used for removing added
   data rather than large complex changes.

	 </t>
      </abstract>
   </front>
   <seriesInfo name='Internet-Draft' value='draft-gondwana-dkim2-modification-alegbra-04'/>
   
</reference>


<reference anchor='BOUNCE'>
   <front>
      <title>DKIM2 Procedures for bounce processing</title>
      <author fullname='Allen Robinson' initials='A.' surname='Robinson'>
         <organization>Google Inc.</organization>
      </author>
      <date day='7' month='July' year='2025'/>
      <abstract>
	 <t>   This memo provides a description of the procedures for bounce
   processing that should be performed by any mail system that
   implements DKIM2, as part of the overall DKIM2 protcol definition.

	 </t>
      </abstract>
   </front>
   <seriesInfo name='Internet-Draft' value='draft-robinson-dkim2-bounce-processing-01'/>
   
</reference>


<reference anchor='DKIM2'>
   <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='14' month='October' year='2025'/>
      <abstract>
	 <t>   DomainKeys Identified Mail v2 (DKIM2) permits a person, role, or
   organization that owns a signing domain to document that it has
   handled an email message by associating their domain with the
   message.  This is achieved by applying a cryptographic signature to
   the message.  Verification is performed by querying an entry within
   the signing domain&#x27;s DNS space to retrieve an appropriate public key.
   As a message is transferred from author to recipient further
   signatures will be added to provide a validatable &quot;chain&quot;.  This
   permits validators to identify when messages have been unexpectedly
   &quot;replayed&quot; and can 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-clayton-dkim2-spec-01'/>
   
</reference>




    </references>

    <references title='Informative References'>



<reference anchor='ARC'>
  <front>
    <title>The Authenticated Received Chain (ARC) Protocol</title>
    <author fullname='K. Andersen' initials='K.' surname='Andersen'/>
    <author fullname='B. Long' initials='B.' role='editor' surname='Long'/>
    <author fullname='S. Blank' initials='S.' role='editor' surname='Blank'/>
    <author fullname='M. Kucherawy' initials='M.' role='editor' surname='Kucherawy'/>
    <date month='July' year='2019'/>
    <abstract>
      <t>The Authenticated Received Chain (ARC) protocol provides an authenticated "chain of custody" for a message, allowing each entity that handles the message to see what entities handled it before and what the message's authentication assessment was at each step in the handling.</t>
      <t>ARC allows Internet Mail Handlers to attach assertions of message authentication assessment to individual messages. As messages traverse ARC-enabled Internet Mail Handlers, additional ARC assertions can be attached to messages to form ordered sets of ARC assertions that represent the authentication assessment at each step of the message-handling paths.</t>
      <t>ARC-enabled Internet Mail Handlers can process sets of ARC assertions to inform message disposition decisions, identify Internet Mail Handlers that might break existing authentication mechanisms, and convey original authentication assessments across trust boundaries.</t>
    </abstract>
  </front>
  <seriesInfo name='RFC' value='8617'/>
  <seriesInfo name='DOI' value='10.17487/RFC8617'/>
</reference>




    </references>


<section anchor="changes-from-earlier-versions"><name>Changes from Earlier Versions</name>

<t>[[This section to be removed by RFC Editor]]</t>

<section anchor="draft-gondwana-dkim2-headers-04"><name>draft-gondwana-dkim2-headers-04:</name>

<t><list style="symbols">
  <t>Replace nd= tag with pp= tag and update docs</t>
</list></t>

</section>
<section anchor="draft-gondwana-dkim2-headers-03"><name>draft-gondwana-dkim2-headers-03:</name>

<t><list style="symbols">
  <t>Add nd= tag and update the instructions to use it</t>
  <t>Add mv= tag and align with modification-algebra-04</t>
  <t>Remove the modifiedbody and modifiedheader flags, they
are duplicative of the mv= data; which is more useful.</t>
  <t>Update the rt= tag to be a list of addresses and require
that all forward-path mailboxes be members of that list.</t>
</list></t>

</section>
<section anchor="draft-gondwana-dkim2-headers-02"><name>draft-gondwana-dkim2-headers-02:</name>

<t><list style="symbols">
  <t>cross-reference Richard's spec draft and rename to DKIM2-Signature</t>
  <t>NOTE: we need to figure out if the two drafts make sense as separate
documents or whether we should just merge them</t>
</list></t>

</section>
<section anchor="draft-gondwana-dkim2-headers-01"><name>draft-gondwana-dkim2-headers-01:</name>

<t><list style="symbols">
  <t>major rewrite</t>
  <t>included support for multiple Active DKIM2 headers, as I have had
side discussions that indicate that large corporate systems would
have a lot of difficulty without this, and it removes constraints
at the SMTP layer that were previously present.</t>
  <t>cross referenced other drafts</t>
</list></t>

</section>
<section anchor="draft-gondwana-dkim2-headers-00"><name>draft-gondwana-dkim2-headers-00:</name>

<t><list style="symbols">
  <t>initial version</t>
  <t>content extracted from draft-gondwana-dkim-motifivation</t>
</list></t>

</section>
</section>


  </back>

<!-- ##markdown-source:
H4sIAAAAAAAAA61cbZPbxpH+Pr8CpXzwborkSStZSeRSVVZv8dZ5JZd2HV8q
Tp2HwJCEF8QgeFkuS3ZVfsjdn8svuX66ewYDLlfJXU7lskQQ6Onp6denG5zP
56Yv+8q9yN78+8XlWfa1s4VrszduVdZlX/q6M3a5bN3t9IbOFD6v7ZaeK1q7
6udrXxc7W9t5cVNuz+Ybvmv++JnphuW27DqidL1v6PaLt9fvTG57t/bt/kXW
9YUZmoI+dy+MX3a+cvhn9uz5b5+bsmlfZH07dP3Z48e/e3xmbtx+59uCqNS9
a2vXz99gddP1ti7+01a+phX2rjNN+SL7c+/zWdb5tm/dqqN/7bf4x1+MsUO/
8e0Lk81NRn/KmhZ8tcj+oHvgi7K5V62vp9d9u36RvbNdv7VlxVcc/vUiW9Kt
69+v9Jve2e0i99vJGh8X2evK7ntfJ0t8LPONbYvJN7zIn+zG+3SFNpdbfr/H
N2Wd31vge1pgM9h6ndD/3pXpRSb9B+/XlUtp71y5sbvfr/kLpmtq325tX966
F3zjm/Prt9cXl2+J43evnz59+ju+enV5/S1f+fLp2RO+cnH5Llw4kwdJb/jK
86e/ec5XLj9cX/zx/Priw3s6yfmbxYHybD2taqF88vzbb67PH7ixKFdlzrfO
beXWy1YO6dWH796/fivPtH5JsqEb5JmlH+rczZvW547UUqXCui33q5D19q5x
uTFlvZoK4/zja97Sb58/+Y0xZj6fZ3bZ9a3Ne2OuN2WXkX0MW1f3WeG6vC2X
rsv6jRNxZ2Ie2ap0VUG3wthckdEawsgsI3XONn6HR/YZqfxN1vs1fWhN7zPi
/bYsHNNr3V+HsqWH6WLj2r503UI5oP9snTnbVnsxUiIrtMoat69bEsBCmN+W
RUEKYX4Fy2p9MeQsfnPtM5tvSncrq629rbqssmWR+aEHnU+fxsP85ZcZ3fXw
3nNPVktX/crY7Ave6fyqXNe2H1r3xUQos2y3IbvIctrB0mW2KGiLtPVPn0i9
fvkl2xLrdo29XhPhz9PidS3pQNaFG7op+VvXkh7RCgMrRDMsqzLPyNl02ar1
W2b+zfurGTZsicq2rGyb7eweLOGYPn0CB8QXxCsH8A+5Ikn6bOnb1u+gAuAt
c5WD3HTZT59IzSBUWoJOoM3K3jSVJb0lt9mWeR9OX54hTwVGbUWUtiJnFfu2
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

-->

</rfc>

