<?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.6.17 (Ruby 3.0.2) -->
<rfc xmlns:xi="http://www.w3.org/2001/XInclude" ipr="trust200902" docName="draft-chuang-replay-resistant-arc-01" category="exp" consensus="true" submissionType="IETF" tocInclude="true" sortRefs="true" symRefs="true" version="3">
  <!-- xml2rfc v2v3 conversion 3.15.1 -->
  <front>
    <title abbrev="Replay Resistant ARC">Replay Resistant Authenticated Receiver Chain</title>
    <seriesInfo name="Internet-Draft" value="draft-chuang-replay-resistant-arc-01"/>
    <author fullname="Weihaw Chuang">
      <organization>Google, Inc.</organization>
      <address>
        <email>weihaw@google.com</email>
      </address>
    </author>
    <author fullname="Allen Robin">
      <organization>Google, Inc.</organization>
      <address>
        <email>arobins@google.com</email>
      </address>
    </author>
    <date year="2022" month="October" day="21"/>
    <workgroup>Independent Stream</workgroup>
    <keyword>DKIM</keyword>
    <keyword>ARC</keyword>
    <keyword>Replay</keyword>
    <abstract>
      <t>DKIM <xref target="RFC6376"/> is an IETF standard for the cryptographic protocol to authenticate email at the domain level and protect the integrity of messages during transit.  <eref target="https://www.rfc-editor.org/rfc/rfc6376.html#section-8.6">Section 8.6</eref> defines a vulnerability called DKIM Replay as a spam message sent through a SMTP MTA DKIM signer, that then is sent to many more recipients, leveraging the reputation of the signer.  We propose two Replay Resistant cryptographic domain based protocols that leverage ARC <xref target="RFC8617"/>.  The first technique discloses all SMTP recipients as signed RFC822 headers by the sender which allows a receiver to verify this.  The second technique defines a SMTP extension that allows both the sender and receiver to participate in signing the message signature.  It includes a path building technique that accurately defines the SMTP forwarding path of the message.  Both techniques permit a receiver to detect DKIM and ARC replay.</t>
    </abstract>
  </front>
  <middle>
    <section anchor="introduction">
      <name>Introduction</name>
      <t>This protocol provides two different techniques to authenticate email by domain that is replay resistant.  It leverages the features of ARC to name ADMD in the email forwarding path and the intermediate results.   The first technique discloses all SMTP recipients as signed RFC822 headers by the sender which allows a receiver to verify this.  The second technique defines a SMTP extension that allows both the sender and receiver to participate in signing the message signature.  These results may be used by spam filtering to apply some local policy, and/or applied to DMARC policy evaluation as one of its input email authenticators.</t>
    </section>
    <section anchor="terminology-and-definitions">
      <name>Terminology and Definitions</name>
      <t>Acronyms</t>
      <ul spacing="normal">
        <li>ARC <xref target="RFC8617"/> - is a protocol that is meant to resolve some of the issues for DMARC <xref target="RFC7489"/> to fix the problems that DMARC policy rejects caused by mail forwarding, and is based on DKIM, but suffers from similar issues as DKIM replay. ARC defines digital signatures and Authentication-Results <xref target="RFC8601"/> by Administrative Management Domain (ADMD) and a versioning mechanism for them.</li>
        <li>Authentication-Results <xref target="RFC8601"/>- A header containing a list of validation results and comments.</li>
        <li>DKIM <xref target="RFC6376"/>- IETF standard for the cryptographic protocol to authenticate email at the domain level and protect the integrity of messages during transit.</li>
        <li>DKIM replay- <xref target="RFC6376"/> section 8.6 defines a vulnerability called DKIM Replay as a spam message sent through a SMTP MTA DKIM signer, that then is sent to many more recipients, leveraging the reputation of the signer.</li>
        <li>DMARC <xref target="RFC7489"/>- Defines a sender's domain identity and from that a sender's message handling policy when messages are being spoofed.  It defines using SPF and DKIM as methods to determine the authenticity of messages.</li>
        <li>signed RFC822 header recipients- These identities are defined by To, Cc and Forwarded-to headers, and MUST be a signed headers present in the ARC-Seal.</li>
        <li>SMTP recipients- The RFC5321 MAIL FROM recipients are disclosed during the SMTP transmission.  These identities define the inboxes that the message is intended for.</li>
      </ul>
    </section>
    <section anchor="arc-set-improvements">
      <name>ARC Set Improvements</name>
      <t>This protocol uses ARC <xref target="RFC8617"/> to describe all ADMDs using the ARC set number as the ADMD version numbers.  The initial ARC set "i=1" is defined for the message originator, and signs for the outbound message with an empty ARC-Authentication-Results.  Traditionally ARC signing happens on inbound, however with these changes ARC implementations should be modified to sign on outbound as well that enables marking origination and forwarding.  This protocol adds additional new ARC-Seal tag/values to describe protocol settings and new ARC-Authentication-Results status and comments.  This protocol also heavily leverages ARC sealing and message signing which in turn leverages DKIM cryptographic primitives.</t>
    </section>
    <section anchor="declare-all-recipients-and-affirm-dara">
      <name>Declare All Recipients and Affirm (DARA)</name>
      <section anchor="concepts">
        <name>Concepts</name>
        <t>We can harden the protocol against replay attacks by explicitly identifying all recipients in the headers, including when the recipient is "hidden" such as Bcc or Mailing-lists.  That way when a signed message arrives, the receiver can check if the RCPT TO recipient correctly is a subset of the recipient in the signed message header.  If not, then the message may be part of a replay attack.  For blind carbon copy, while a  Bcc header may be added, it can be stripped by subsequent forwarders.  Instead we create a new Forwarded-to header that includes an ARC set versioning number to indicate which ADMD sent the message to a new recipient.</t>
        <artwork><![CDATA[
Forwarded-to: i=1; user@example.com
]]></artwork>
        <t>The Forwarded-to header MUST be signed by the ARC-Message-Signature i.e. be present in the "h=", then prepended to the headers of the message.  For privacy, if there are multiple recipients, the message must be split and signed exclusively for each Forwarded-to recipient to maintain privacy between recipients.  Subsequent forwarders MUST not strip the Forwarded-to header from the message.  To handle the email forwarder and mailing list scenario, we also use the Forwarded-to header to indicate that a message is sent to a new recipient.  Messages sent to a new ADMD but with the same recipient identity disclosed by Forwarded-to MAY reuse the prior header.</t>
        <t>Senders and receivers may variously support the Declare All Recipients and Affirm (DARA) protocol or not, so the protocol needs to be tolerant of naive ADMDs.  For example a naive mailing list sender sending to a protocol aware receiver shouldn't have traffic rejected simply because it didn't follow the protocol.  Yet simultaneously, the DARA protocol needs to discourage abuse by spammers seeking to use the naive ADMD path for DKIM replay.  In this protocol, that sender publishes their capability in the ARC-Seal as "dara=" tag/value, and whether the receiver should validate recipients.  A value of "v" indicates that the receiver MUST validate the recipients, and if it fails verification, treat the message as DARA unauthenticated with the implication that the message is being replayed.  As with other email authentication methods, the verifier is free to apply a locally defined policy against unauthenticated email.  A value of "d" indicates that the receiver MAY choose to discretionally validate the recipients.  If a receiver validates the recipients, it SHOULD treat recipient verification failure as neutral and SHOULD treat success as passes.  The discretionary validation mode is to support the scenario of sending to a naive ADMD that does not support ARC or the DARA protocol.  Because such naive forwarders may not add any indication of its presence e.g. adding an ARC set,  the sender must protect subsequent DARA aware receivers from misinterpreting prior settings while allowing for recipient updates that may otherwise trigger false positive verification failures.  All ADMD supporting the DARA protocol MUST publish a DNS txt policy record as described below.  The sender fetches the receiver's policy record to determine whether to select the required verification "dara=v" which is done when the receiver supports the DARA protocol, otherwise the sender selects the optional "dara=d" validation profile.   In addition when the receiver does not support the protocol, the sender always identifies the individual signed recipient.  This may be needed when the recipient is in the To, or Cc headers, and in this case also adds a Forwarded-to header per recipient, then signs the message only for that recipient.  Unique identification of the recipient and the receiving domain allows a receiver to adjust the reputation system in case there is a replay attack.  Instead of penalizing the sender that is DARA aware, the receiver MAY elect to apply the reputation penalty to the receiving domain that is naive to DARA.</t>
        <t>The receiver's verification process is to collect all the recipients in the To, Cc and Forwarded-to headers.  It verifies that they are signed appropriately in the sender's ARC-Message-Signature and if so, put them into a set of signed headers.  The receiver then collects all the RCPT TO recipients as the envelope recipients.  The receiver then verifies that the envelope recipients are a subset of the signed headers.  It applies the policy depending on the sender's capabilities as described in the ARC-Seal "dara=" tag/value.  The result of this check should be published in the ARC-Authentication-Results as dara=pass/fail/neutral.</t>
        <t>The DARA DNS policy record identifies whether an ADMD supports the protocol.  It is a TXT DNS record located at the same domain name as the MX record.  Quite likely it will share the policy record with SPF.  Such a policy record starts with a SeRCi version number "dara_version=" which must be set to "ver1.0" indicating that ADMD supports DARA.  While usually the sender looks up the DARA TXT DNS record, a receiver MAY elect to check the sender's policy if it suspects that a MiTM has stripped off the sender's DARA policy.  If it detects a DARA declaration in the DNS policy, but not in the message, the receiver may elect to treat the message as spam.</t>
      </section>
      <section anchor="definitions">
        <name>Definitions</name>
        <t>DNS TXT Policy tags</t>
        <ul spacing="normal">
          <li>"dara_version=": Value of "ver1.0" if the ADMD supports the DARA verification protocol.</li>
        </ul>
        <t>ARC-Seal tags</t>
        <ul spacing="normal">
          <li>"dara=": Value of "v" if the sender mandates that the receiver verify the recipients.  Value "d" if the sender asks the receiver to optionally verify the recipients, and writes a "pass" if the recipient verification passes.</li>
        </ul>
        <t>ARC-Authentication-Results tags</t>
        <ul spacing="normal">
          <li>"dara=": Value of "pass" if recipient validation passes, otherwise "fail".  In some circumstances this tag/value may not be set or be treated as "neutral".</li>
        </ul>
      </section>
      <section anchor="header-examples">
        <name>Header Examples</name>
        <section anchor="mbp-mailing-list-mbp">
          <name>MBP-Mailing-List-MBP</name>
          <t>First MBP outbound (after ARC seal)</t>
          <artwork><![CDATA[
ARC-Seal: i=1; dara=v
ARC-Authentication-Results: i=1
To: mailing.list@example.com
]]></artwork>
          <t>Mailing-List inbound (after ARC seal)</t>
          <artwork><![CDATA[
ARC-Seal: i=2; dara=v
ARC-Authentication-Results: i=2; dara=pass (rcpt.to mailing.list@example.com matches signed header)
ARC-Seal: i=1; dara=v
ARC-Authentication-Results: i=1
To: mailing.list@example.com
]]></artwork>
          <t>Mailing-List outbound (after ARC seal)</t>
          <artwork><![CDATA[
Forwarded-to: i=2; user@example.com
ARC-Seal: i=2; dara=v
ARC-Authentication-Results: i=2; dara=pass (rcpt.to mailing.list@example.com matches signed header)
ARC-Seal: i=1; dara=v
ARC-Authentication-Results: i=1
To: mailing.list@example.com
]]></artwork>
          <t>Final MBP inbound (after ARC seal)</t>
          <artwork><![CDATA[
ARC-Seal: i=3; dara=v; 
ARC-Authentication-Results: i=3; dara=pass (rcpt.to user@example.com matches signed header)
Forwarded-to: i=2; user@example.com
ARC-Seal: i=2; dara=v; 
ARC-Authentication-Results: i=2; dara=pass (rcpt.to mailing.list@example.com matches signed header)
ARC-Seal: i=1; dara=v
ARC-Authentication-Results: i=1
To: mailing.list@example.com
]]></artwork>
        </section>
        <section anchor="mbp-mbp-replay-mbp">
          <name>MBP-MBP-Replay-MBP</name>
          <t>First MBP outbound (after ARC seal)</t>
          <artwork><![CDATA[
ARC-Seal: i=1; dara=v
ARC-Authentication-Results: i=1
To: user@example.com
]]></artwork>
          <t>Second MBP inbound (after ARC seal)</t>
          <artwork><![CDATA[
ARC-Seal: i=2; dara=v; 
ARC-Authentication-Results: i=2; dara=pass (rcpt.to user@example.com matches signed header)
ARC-Seal: i=1; dara=v
ARC-Authentication-Results: i=1
To: user@example.com
]]></artwork>
          <t>Above message captured by spammer, modified (add additional headers) and then resent.  A spammer might send the message to john.doe@example.com which would be unspecified in the headers.</t>
          <t>Victim (last) MBP inbound (after ARC seal)</t>
          <artwork><![CDATA[
ARC-Seal: i=3; dara=v
ARC-Authentication-Results: i=3; dara=fail (rcpt.to john.doe@example.com mismatches signed header);
ARC-Seal: i=2; dara=v
ARC-Authentication-Results: i=2; dara=pass (rcpt.to user@example.com matches signed header);
ARC-Seal: i=1; dara=v
ARC-Authentication-Results: i=1
To: user@example.com
]]></artwork>
        </section>
        <section anchor="mbp-naive-forwarder-mbp">
          <name>MBP-Naive-Forwarder-MBP</name>
          <t>This describes a forwarder that doesn't not support DARA.</t>
          <t>First MBP outbound (after ARC seal)</t>
          <artwork><![CDATA[
Forwarded-to: i=1; user@naive.example.com
ARC-Seal: i=1; dara=d
ARC-Authentication-Results: i=1
To: user@example.com
]]></artwork>
          <t>Forwarder headers will be the same as above as the forwarder is naive to the protocol.</t>
          <t>Final MBP inbound (after ARC seal).  In this case the envelope recipient will change weihaw@example.com.  The declared recipient user@other.example.com will mismatch the envelope recipient, and fail DARA.  However the protocol is set to optional verification with DARA=d, and so does not report the failure.</t>
          <artwork><![CDATA[
ARC-Seal: i=2; dara=v
ARC-Authentication-Results: i=2
Forwarded-to: i=1; user@naive.example.com
ARC-Seal: i=1; dara=d
ARC-Authentication-Results: i=1
To: user@naive.example.com
]]></artwork>
        </section>
      </section>
    </section>
    <section anchor="sender-receiver-co-signing-serci">
      <name>Sender Receiver Co-Signing (SeRCi)</name>
      <section anchor="concepts-1">
        <name>Concepts</name>
        <t>We can create a challenge response system using cryptographic signing orchestrated between the sender and receiver of an SMTP transaction.  The receiver challenges the sender to sign a mutually agreed upon value with their secret key, and can demonstrate a proof of that SMTP client-server relationship to 3rd parties.  One problem is that the receiver can't proactively issue the challenge, so as part of the EHLO, the server issues the challenge as an optional SMTP extension argument.  The sender can respond with the signature incorporating the shared value as a SMTP extension verb.   Another problem is preventing a malicious party from intercepting a message and trying to replicate the challenge.   We propose using a timestamp that can't be used in the future i.e. both parties make sure the timestamp reasonably represents the current time.  This cryptographic challenge needs to sign a hash that ties the signature back to the message, and for this proposal, we take the whole message hash from the ARC-message-signature.  In addition the destination domain is specified to reduce the risk for this signature to be intercepted and reused for other communications with other destination domains.</t>
        <t>Such a protocol can help authenticate to a receiver that some sender sent a message without risk of replay via some third party.  Sender Receiver Co-Signing (SeRCi pronounced Cersei as in the GoT character) could be used similarly to SPF <xref target="RFC7208"/> but without the risk of shared tenancy <eref target="https://www.7elements.co.uk/resources/blog/smtp-multipass/">attack</eref>, <eref target="https://arxiv.org/abs/2204.05122">IP reuse</eref> attack, and BPG <eref target="http://people.scs.carleton.ca/~kranakis/Papers/TR-05-07.pdf">vulnerabilities</eref>.  Moreover a third party can independently verify the result that some sender and receiver sent the given message at the given time.  This obviates the need to trust the ARC-Authentication-Results.  Later we use SeRCi metadata to describe the forwarding path of the message.</t>
        <t>The SMTP extension for SeRCi for generating the hash and then publishing it is meant to prove that the sender and receiver collaborated to create the hash.  The protocol is advertised as a SMTP extension in the SMTP EHLO named SeRCi with a timestamp argument.  That timestamp will be in UTC seconds.  If the timestamp is acceptable to the sender, then it should sign a tuple of base64 message hash used in the outbound ARC-Message-Signature, destination domain as defined in the next paragraph, and timestamp.  That signature then should be base64 encoded and disclosed to the receiver as:</t>
        <artwork><![CDATA[
SERCI-SIGNATURE <sender domain> <selector> <signature> 
]]></artwork>
        <t>where domain corresponds to the sender's DKIM domain and selector that is used to find the DKIM public key DNS record.  If the timestamp is not acceptable, the sender can report this as SERCI-SIGNATURE "out-of-time" and potentially the receiver will return a new timestamp.  The sender is allowed to do this once, and after that the receiver MUST report an error.  To prevent eavesdropping and potential spoofing, this protocol must be secured by SMTP TLS.  Upon obtaining the signature, the receiver MUST then validate the SeRCi signature.  It looks at the sender's ARC-Message-Signature hash to see if that is acceptable, meaning matches a hash the receiver generates of the message.  Next it checks if the timestamp is the same as provided to the sender, and if the destination domain is the same as the receiver's ARC-Seal "d=" domain. The SERCI-SIGNATURE command returns OK on success, otherwise some error code.</t>
        <t>An example SMTP transaction might look like:</t>
        <artwork><![CDATA[
EHLO sender.example.com
250-sender.example.com at your service, [1.2.3.4]
250-SIZE 157286400
...
250 SMTPUTF8
250 SERCI <timestamp>
MAIL FROM:<sender>
RCPT TO:<recipient>
DATA <message>
SERCI-SIGNATURE <sender domain> <selector> <base64(signsender(<base64(message hash),destination domain,timestamp>)))>
]]></artwork>
        <t>The sender discovers the receiver's support for this protocol by a DNS txt policy lookup upon the recipient email address domain.  Within this policy record may be a tag value indicating which SeRCi version number "SERCI_version=" which must be set to "ver1.0<tt>"</tt> when that ADMD indicates it supports SeRCi.  The lookup also discovers the normalized destination domain name, and that destination domain MUST match the ADMD ARC-Seal "d=" domain (<xref target="RFC8601"/>) which enables tracing this domain from sender to receiver as described later.  The domain name is specified <tt>serci=&amp;lt;domain&gt;</tt> in the DNS policy record.  Once discovered this domain is put in the sender's ARC-Seal as <tt>serci=&amp;lt;domain&gt;</tt>, which indicates support by the receiver for the SeRCi as well as identify the intended receiver domain.   If no such DNS txt policy record is found, then the receiver does not support the SeRCi protocol.  This is indicated in the ARC-Seal by a SeRCi naive receiver tag/value of "snr=<tt>"</tt> and RFC822 FROM domain for path building described later.  Further the "snr=" tag indicates to subsequent SeRCi aware receivers that there was an intermediate naive forwarder.  If a domain advertises a SMTP SeRCi-SIGNATURE extension but does not publish a DNS txt policy, the sender MUST not call the SeRCi-SIGNATURE command as the receiver is declaring their intent to not participate in SeRCi.</t>
        <t>The SeRCi aware receiver will verify the signature after the SeRCi-SIGNATURE verb.  Assuming the receiver agrees with the signature (i.e. verifies it), in addition to return OK , the receiver adds the signature as part of the SeRCi  ARC-Authentication-Results as a comment:</t>
        <artwork><![CDATA[
ARC-Authentication-Results i=1; serci=<pass|fail> 
        (<sender domain>,<selector>,<base64(message hash)>,
         <timestamp>,<signature>); 
]]></artwork>
        <section anchor="definitions-1">
          <name>Definitions</name>
          <t>DNS TXT Policy tags</t>
          <ul spacing="normal">
            <li>"serci_version=": Value of "ver1.0" if the ADMD supports the SeRCi verification protocol.</li>
            <li>"serci=": Value of the receiver's ARC-Seal "d=" domain</li>
          </ul>
          <t>ARC-Seal tags</t>
          <ul spacing="normal">
            <li>"serci=": Value of the receiver's ARC-Seal "d=" domain when the receiver is SeRCi capable.</li>
            <li>"snr=": Value of RFC822 recipient's domain name when the receiver is naive of SeRCi.</li>
          </ul>
          <t>ARC-Authentication-Results tags</t>
          <ul spacing="normal">
            <li>"serci=": Value of "pass" if sender/recipient signing validation succeeds, otherwise "fail".</li>
          </ul>
        </section>
      </section>
      <section anchor="header-example">
        <name>Header Example</name>
        <artwork><![CDATA[
ARC-Seal: i=2; d=destination.example.com
ARC-Authentication-Results: i=2; serci=pass (source.example.com, message_hash_base64, selector, 1664511950175, signature_base64)
ARC-Seal: i=1; d=source.example.com; serci=destination.example.com
ARC-Authentication-Results: i=1
To: user@destination.example.com
]]></artwork>
      </section>
    </section>
    <section anchor="chaining">
      <name>Chaining</name>
      <t>A receiver may check that a message was forwarded from the originator to it without discontinuities, and as intended by the originator.  With SeRCi the sender defines a tag "serci=" with a value of the  intended destination domain.  If a discontinuity is detected, that indicates either there is a protocol unaware forwarder, or that there is a malicious sender attempting to take the message and reinject it along a new path outside the intent of the originator.  Moreover the path that the message traverses can be used as the message flow identifier in a reputation system.  It can help differentiate benign message flows from malicious ones to help identify a different form of replay.  If the originator is malicious and intends for a message to be replayed even as part of an identified ADMD path, a path based reputation system can better segregate those malicious messages than a domain based one.</t>
      <t>We define nodes of the path as the ARC-Seal "d=" identities and form edges from SeRCi destination domain identities.  Because building the edges of a path is recursive, we call this chain building.  The edge is defined as a pair of nodes n1, n2 where n1 is some ARC-Seal "d=" domain and the "SeRCi=" domain is n2.  This assumes that validation results from SeRCi and potentially DARA have already run and the results already populate the ARC-Authentication-Results.  Chain building starts at the origination at ARC set "i=1", and walk through the ARC headers to the final receiver's ARC set "i=N".  First the verifier looks up the SeRCi policy associated with the ARC set "i=1" ARC-Seal "d=" domain.  If there is a valid SeRCi policy, then chain building can proceed.  At ARC set "i=1" only the ARC seal and message-signature is checked.  Starting at ARC set "i=2",  path verifier MUST evaluate the local result, meaning the ARC seal, message-signature and SeRCi verification results, and the prior ARC set results are correct, and take the AND of the results.   If any one of them is a failure or neutral, the path result is a failure or neutral.   If the SeRCi result is missing, the path verifier checks if there was "snr=" tag at that node or prior node, then treats the SeRCi result as neutral, to tolerate the naive receiver.  If not then treat the SeRCi result as missing and hence a fail.  Otherwise if all the local results passed, then the current path results is a pass.  Further local policy may modify the ARC message-signature result (perhaps due to future work around this <eref target="https://datatracker.ietf.org/doc/draft-kucherawy-dkim-transform/">draft</eref> or this <eref target="https://datatracker.ietf.org/doc/draft-kucherawy-dkim-list-canon/">one</eref>)  The path verifier SHOULD incorporate meaning AND the DARA local results if available as well.  In the local evaluation, the verifier SHOULD independently verify the SeRCi signature instead of taking the result from ARC-Authentication-Result and having to trust an externally generated result.  The path verifier then evaluates the next ARC set results until it reaches the final recipient to compute a global result.  That global result is published in the final receiver's at ARC set "i=N" ARC-Authentication-Results as a "chain=" result.  The chain builder will internally collect the list of ARC-Seal "d=" nodes from ARC set 1 to N for when there is a "serci=" edge defined and passing result.  The "snr=" domain may also be used to fill in a naive domain in the path.  The path is for reputation building but this is not added to ARC-Authentication-Results.</t>
      <section anchor="definitions-2">
        <name>Definitions</name>
        <t>ARC-Authentication-Results tags</t>
        <ul spacing="normal">
          <li>"chain=": Value of "pass" if local results and prior nodes are all passes, otherwise if "snr=" was present in the flow then "neutral", else "fail".</li>
        </ul>
      </section>
      <section anchor="header-examples-1">
        <name>Header Examples</name>
        <section anchor="mbp-mailing-list-mbp-1">
          <name>MBP-Mailing-List-MBP</name>
          <t>First MBP outbound (after ARC seal)</t>
          <artwork><![CDATA[
ARC-Seal: i=1; d=originator.example.com; serci=mailinglist.example.com
ARC-Authentication-Results: i=1
To: mailing.list@mailinglist.example.com
]]></artwork>
          <t>Mailing-List outbound (after ARC seal)</t>
          <artwork><![CDATA[
ARC-Seal: i=2; d=mailinglist.example.com; serci=terminator.example.com
ARC-Authentication-Results: i=2; serci=pass; chain=pass
ARC-Seal: i=1; d=originator.example.com; serci=mailinglist.example.com
ARC-Authentication-Results: i=1
To: mailing.list@mailinglist.example.com
]]></artwork>
          <t>Final MBP inbound (after ARC seal)</t>
          <artwork><![CDATA[
ARC-Seal: i=3; d=terminator.example.com
ARC-Authentication-Results: i=3; serci=pass; chain=pass
ARC-Seal: i=2; d=mailinglist.example.com; serci=terminator.example.com
ARC-Authentication-Results: i=2; serci=pass; chain=pass
ARC-Seal: i=1; d=originator.example.com; serci=mailinglist.example.com
ARC-Authentication-Results: i=1
To: mailing.list@mailinglist.example.com
]]></artwork>
          <t>The path verification result is "pass".  The constructed path is (originator.example.com, mailinglist.example.com, terminator.example.com).</t>
        </section>
        <section anchor="mbp-naive-forwarder-aware-forwarder-mbp">
          <name>MBP-Naive-Forwarder-Aware-Forwarder-MBP</name>
          <t>This example includes naive forwarder naive.example.com that doesn't not support SeRCi.  This is taken after the last MBP.</t>
          <artwork><![CDATA[
ARC-Seal: i=3; d=destination.example.com
ARC-Authentication-Results: i=3; serci=pass; chain=neutral
ARC-Seal: i=2; d=intermediate.example.com; serci=destination.example.com
ARC-Authentication-Results: i=2; chain=neutral
ARC-Seal: i=1; d=source.example.com; snr=naive.example.com
ARC-Authentication-Results: i=1
To: user@destination.example.com
]]></artwork>
          <t>The path verification result is "neutral".  The constructed path is (source.example.com, naive.example.com, intermediary.example.com, destination.example.com).</t>
        </section>
        <section anchor="mbp-mbp-replay-mbp-1">
          <name>MBP-MBP-Replay-MBP</name>
          <t>Final headers as seen by the victim MBP after replay injection to victim.example.com domain.</t>
          <artwork><![CDATA[
ARC-Seal: i=3; d=victim.example.com
ARC-Authentication-Results: i=3; chain=fail
ARC-Seal: i=2; d=destination.example.com
ARC-Authentication-Results: i=2; serci=pass; chain=pass
ARC-Seal: i=1; d=source.example.com; serci=destination.example.com
ARC-Authentication-Results: i=1
To: user@destination.example.com
]]></artwork>
          <t>Due to the path discontinuity, the path verification result is "fail".  The constructed path is (source.example.com, destination.example.com).</t>
        </section>
      </section>
    </section>
    <section anchor="dmarc">
      <name>DMARC</name>
      <t>These protocols can act as authenticators for DMARC <xref target="RFC7489"/>.  In particular SeRCi can act similarly to SPF in authenticating peers, while Chain's path is similar to DKIM in being tolerant of forwarding.  This protocol modifies DMARC to permit the SeRCi and Chain to authenticate for DMARC.  It requires alignment with the RFC822 domain for SeRCi sender's ARC-Seal "d=" domains.   With Chain, that is further restricted to the originating sender's domain at ARC set "i=1".</t>
    </section>
    <section anchor="privacy-considerations">
      <name>Privacy Considerations</name>
    </section>
    <section anchor="security-considerations">
      <name>Security Considerations</name>
    </section>
    <section anchor="iana-considerations">
      <name>IANA Considerations</name>
      <t>This document has no IANA actions yet.</t>
    </section>
  </middle>
  <back>
    <references>
      <name>Normative References</name>
      <reference anchor="RFC6376" target="https://www.rfc-editor.org/info/rfc6376">
        <front>
          <title>DomainKeys Identified Mail (DKIM) Signatures</title>
          <author fullname="D. Crocker" initials="D." role="editor" surname="Crocker">
            <organization/>
          </author>
          <author fullname="T. Hansen" initials="T." role="editor" surname="Hansen">
            <organization/>
          </author>
          <author fullname="M. Kucherawy" initials="M." role="editor" surname="Kucherawy">
            <organization/>
          </author>
          <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="RFC8617" target="https://www.rfc-editor.org/info/rfc8617">
        <front>
          <title>The Authenticated Received Chain (ARC) Protocol</title>
          <author fullname="K. Andersen" initials="K." surname="Andersen">
            <organization/>
          </author>
          <author fullname="B. Long" initials="B." role="editor" surname="Long">
            <organization/>
          </author>
          <author fullname="S. Blank" initials="S." role="editor" surname="Blank">
            <organization/>
          </author>
          <author fullname="M. Kucherawy" initials="M." role="editor" surname="Kucherawy">
            <organization/>
          </author>
          <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>
      <reference anchor="RFC7489" target="https://www.rfc-editor.org/info/rfc7489">
        <front>
          <title>Domain-based Message Authentication, Reporting, and Conformance (DMARC)</title>
          <author fullname="M. Kucherawy" initials="M." role="editor" surname="Kucherawy">
            <organization/>
          </author>
          <author fullname="E. Zwicky" initials="E." role="editor" surname="Zwicky">
            <organization/>
          </author>
          <date month="March" year="2015"/>
          <abstract>
            <t>Domain-based Message Authentication, Reporting, and Conformance (DMARC) is a scalable mechanism by which a mail-originating organization can express domain-level policies and preferences for message validation, disposition, and reporting, that a mail-receiving organization can use to improve mail handling.</t>
            <t>Originators of Internet Mail need to be able to associate reliable and authenticated domain identifiers with messages, communicate policies about messages that use those identifiers, and report about mail using those identifiers.  These abilities have several benefits: Receivers can provide feedback to Domain Owners about the use of their domains; this feedback can provide valuable insight about the management of internal operations and the presence of external domain name abuse.</t>
            <t>DMARC does not produce or encourage elevated delivery privilege of authenticated email.  DMARC is a mechanism for policy distribution that enables increasingly strict handling of messages that fail authentication checks, ranging from no action, through altered delivery, up to message rejection.</t>
          </abstract>
        </front>
        <seriesInfo name="RFC" value="7489"/>
        <seriesInfo name="DOI" value="10.17487/RFC7489"/>
      </reference>
      <reference anchor="RFC8601" target="https://www.rfc-editor.org/info/rfc8601">
        <front>
          <title>Message Header Field for Indicating Message Authentication Status</title>
          <author fullname="M. Kucherawy" initials="M." surname="Kucherawy">
            <organization/>
          </author>
          <date month="May" year="2019"/>
          <abstract>
            <t>This document specifies a message header field called "Authentication-Results" for use with electronic mail messages to indicate the results of message authentication efforts.  Any receiver-side software, such as mail filters or Mail User Agents (MUAs), can use this header field to relay that information in a convenient and meaningful way to users or to make sorting and filtering decisions.</t>
            <t>This document obsoletes RFC 7601.</t>
          </abstract>
        </front>
        <seriesInfo name="RFC" value="8601"/>
        <seriesInfo name="DOI" value="10.17487/RFC8601"/>
      </reference>
      <reference anchor="RFC7208" target="https://www.rfc-editor.org/info/rfc7208">
        <front>
          <title>Sender Policy Framework (SPF) for Authorizing Use of Domains in Email, Version 1</title>
          <author fullname="S. Kitterman" initials="S." surname="Kitterman">
            <organization/>
          </author>
          <date month="April" year="2014"/>
          <abstract>
            <t>Email on the Internet can be forged in a number of ways.  In particular, existing protocols place no restriction on what a sending host can use as the "MAIL FROM" of a message or the domain given on the SMTP HELO/EHLO commands.  This document describes version 1 of the Sender Policy Framework (SPF) protocol, whereby ADministrative Management Domains (ADMDs) can explicitly authorize the hosts that are allowed to use their domain names, and a receiving host can check such authorization.</t>
            <t>This document obsoletes RFC 4408.</t>
          </abstract>
        </front>
        <seriesInfo name="RFC" value="7208"/>
        <seriesInfo name="DOI" value="10.17487/RFC7208"/>
      </reference>
    </references>
    <section anchor="acknowledgments">
      <name>Acknowledgments</name>
      <t>Thanks goes to Brandon Long, John R. Levine, Murray S. Kucherawy, Emanuel Schorsch and Bruce Nan for their sage advice.</t>
    </section>
  </back>
  <!-- ##markdown-source:
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
pwpe6NqPmeBBHmqjlDhVNp/8N8qp/51AaAAA

-->

</rfc>
