<?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.1.2) -->


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

]>


<rfc ipr="trust200902" docName="draft-dkg-lamps-expect-signed-mail-00" category="info" submissionType="IETF" tocInclude="true" sortRefs="true" symRefs="true">
  <front>
    <title>Expect Signed Mail</title>

    <author initials="D. K." surname="Gillmor" fullname="Daniel Kahn Gillmor">
      <organization>American Civil Liberties Union</organization>
      <address>
        <email>dkg@fifthhorseman.net</email>
      </address>
    </author>

    <date year="2023" month="September" day="29"/>

    <area>int</area>
    <workgroup>lamps</workgroup>
    <keyword>Internet-Draft</keyword>

    <abstract>


<t>This draft proposes a mechanism for e-mail users to indicate to their peers that the peer should expect all future e-mail from them to be cryptographically signed.</t>



    </abstract>

    <note title="About This Document" removeInRFC="true">
      <t>
        The latest revision of this draft can be found at <eref target="https://dkg.gitlab.io/expect-signed-mail/"/>.
        Status information for this document may be found at <eref target="https://datatracker.ietf.org/doc/draft-dkg-lamps-expect-signed-mail/"/>.
      </t>
      <t>
        Discussion of this document takes place on the
        LAMPS Working Group mailing list (<eref target="mailto:spasm@ietf.org"/>),
        which is archived at <eref target="https://mailarchive.ietf.org/arch/browse/spasm/"/>.
        Subscribe at <eref target="https://www.ietf.org/mailman/listinfo/spasm/"/>.
      </t>
      <t>Source for this draft and an issue tracker can be found at
        <eref target="https://gitlab.com/dkg/expect-signed-mail"/>.</t>
    </note>


  </front>

  <middle>


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

<t>E-mail signature validation is hard.
When an e-mail signature is absent (or invalid), a reasonable mail user agent will hide their cryptographic authenticity security indicator for the message.
But an absent security indicator is hard to notice.</t>

<t>Some e-mail users create end-to-end signatures of all of their e-mails.
The peers of those users may want to display a more significant warning message when a signature is absent or invalid.</t>

<t>This draft proposes a mechanism whereby an e-mail author can indicate to a peer that they should expect all their future messages to be cryptographically signed.</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>

</section>
<section anchor="terminology"><name>Terminology</name>

<t>The terms Message Submission Agent (MSA), Message Transfer Agent (MTA), and Message User Agent (MUA) are to be interpreted as defined in <xref target="RFC6409"/>.</t>

</section>
</section>
<section anchor="signalling-mechanism"><name>Signalling Mechanism</name>

<t>A sender that intends to signal their intention to activate the Expected-Signed mechanism <bcp14>MUST</bcp14> add an "Expected-Signed" header to the outgoing email, specifying an expiration date in the value of the header.</t>

<t>The authenticity of the header <bcp14>MUST</bcp14> be validated.
The header <bcp14>SHOULD</bcp14> be transmitted in the protected headers (see <xref target="I-D.ietf-lamps-header-protection-16"/>), and a recipient MUA <bcp14>SHOULD</bcp14> deem it valid if the signing key is already trusted.
Alternatively, the recipient's MUA:</t>

<t><list style="symbols">
  <t><bcp14>SHOULD</bcp14> validate the DKIM headers <xref target="RFC6376"/> and <bcp14>SHOULD</bcp14> require them to be in the protected headers.</t>
  <t><bcp14>SHOULD</bcp14> validate the SPF records <xref target="RFC7208"/> to verify it is coming from an authorized source and <bcp14>SHOULD</bcp14> require the message to be delivered over TLS before deeming it valid.</t>
</list></t>

<t>FIXME: Do we want to support them all?</t>

<t>A recipient MUA that receives a valid "Expected-Signed" header <bcp14>SHOULD</bcp14> safely store this information and its expiration date indexed per email address.</t>

<section anchor="expect-signed-syntax"><name>Expect-Signed syntax</name>

<t>The ABNF (Augmented Backus-Naur Form) syntax for the Expect-Signed header field is given below, as described by <xref target="RFC2616"/>.</t>

<figure><artwork><![CDATA[
Expect-Signed = "Expect-Signed" ":"
                [ directive ]  *( ";" [ directive ] )

directive                 = directive-name [ "=" directive-value ]
directive-name            = token
directive-value           = token | quoted-string
]]></artwork></figure>

<t>Note that:</t>

<t><list style="symbols">
  <t>The Expect-Signed header field name and directive names are not case sensitive.</t>
  <t>All directives <bcp14>MUST</bcp14> appear only once in an Expect-Signed header field.
Directives are either optional or required, as stipulated in their definitions.</t>
  <t>The order of appearance of directives is not significant.</t>
  <t>MUAs <bcp14>MUST</bcp14> ignore any Expect-Signed header field containing directives, or other header field value data, that does not conform to the syntax defined in this specification.</t>
  <t>If an Expect-Signed header field contains directive(s) not recognized by the MUA, the MUA <bcp14>MUST</bcp14> ignore the unrecognised directives.
If the Expect-Signed header field otherwise satisfies the above requirements, the MUA <bcp14>MUST</bcp14> process the recognized directives.</t>
</list></t>

<section anchor="the-expiry-directive"><name>The expiry directive</name>

<t>The expiry directive defines an expiration date for the expectation of a signature.
The policy <bcp14>MUST</bcp14> be enforced until the expiry date is in the past.</t>

<t>This value is expressed by the sender with a fixed-length and single-zone subset of the date and time specification used by the Internet Message Format <xref target="RFC5322"/>.</t>

<figure><artwork><![CDATA[
expiry-name  = "expiry"
expiry-value = IMF-fixdate
]]></artwork></figure>

<t>This value <bcp14>SHOULD</bcp14> be safely stored by the recipient’s MUA, and <bcp14>SHOULD</bcp14> be updated when a valid newer one is received.</t>

<t>NOTE: any date in the past will effectively cease the policy enforcement.</t>

</section>
</section>
<section anchor="header-examples"><name>Header Examples</name>

<t>The Expect-Signed header stipulates an Expect-Signed policy to remain in effect until the specified date:</t>

<figure><artwork><![CDATA[
Expect-Signed: expiry="Sun, 20 Oct 2019 14:19:20 GMT";
]]></artwork></figure>

<t>NOTE: the expiry-value must be quoted since it is not a token.</t>

<t>FIXME: should the expiry use a more sane date format, like ISO-8601?</t>

</section>
</section>
<section anchor="validating-policy"><name>Validating Policy</name>

<t>All e-mails coming from addresses that are stored and valid as Expect-Signed <bcp14>MUST</bcp14> be validated.
To validate a message's signature the recipient's client <bcp14>MUST</bcp14> follow OpenPGP's specification <xref section="5.2.4" sectionFormat="of" target="RFC4880"/>.</t>

<t>FIXME: This is not only OpenPGP.
Should include a reference to PGP/MIME <xref target="RFC3156"/>, S/MIME <xref target="RFC8551"/>, and <xref target="I-D.ietf-lamps-e2e-mail-guidance-12"/>.</t>

<t>The sender's key can be retrieved from any trusted storage or repository, and if none is found it <bcp14>SHOULD</bcp14> be indicated in the feedback.
This mechanism will allow the sender to automatically reply with their key.</t>

</section>
<section anchor="on-policy-violation"><name>On Policy Violation</name>

<t>In the scenario where a sender has enabled the Expect-Signature it is expected that all the outgoing messages are provided with a a valid signature, and both the sender and recipient should be notified when a signature is missing or invalid.</t>

<t>An MSA, MTA, or MUA <bcp14>SHOULD NOT</bcp14> prevent a message from being received due to a missing signature.
The MUA <bcp14>MUST</bcp14> warn the user if an expected signature is missing or invalid, and <bcp14>SHOULD</bcp14> provide feedback as specified in the following sections.</t>

<section anchor="warn"><name>Warn</name>

<t>The recipient's MUA <bcp14>MUST</bcp14> warn the user that the signature is missing or invalid on every instance where the signature is expected but not verified.
The two cases <bcp14>SHOULD</bcp14> be treated as equal, because a missing signature is not any more suspicious than a broken signature: a malicious attacker that alters a message can easily remove the signature too.</t>

</section>
<section anchor="explicit-feedback"><name>Explicit Feedback</name>

<t>FIXME: describe TLSRPT-style feedback</t>

<t>The MUA <bcp14>MAY</bcp14> avoid automatic explicit feedback, as it introduces a vector for attackers to know if an email is reachable or if a user read the message.</t>

<section anchor="sender-behaviour"><name>Sender behaviour</name>

<t>FIXME: Define what to do with the explicit feedback.
FIXME: Key points: Should it be machine or human readable? Localization?</t>

</section>
</section>
<section anchor="inline-feedback"><name>Inline Feedback</name>

<t>When replying to a message whose expectation of signature is failed the MUA <bcp14>SHOULD</bcp14> introduce an <spanx style="verb">Expect-Signed-Failure</spanx> header to signal to the original sender that the message signature was missing or invalid.</t>

<t>The syntax of the <spanx style="verb">Expect-Signed-Failure</spanx> field, described by the ABNF <xref target="RFC2616"/> is as follows:</t>

<figure><artwork><![CDATA[
"Expect-Signed-Failure" ":" failure-reason CRLF
]]></artwork></figure>

<t>Note that the Expect-Signed-Failure header field name and failure-reason value are not case sensitive.</t>

<section anchor="failure-reason"><name>Failure-reason</name>

<t>There are four categories of failure for signature verification:</t>

<t><list style="symbols">
  <t><strong>no-signature</strong>: The message is not provided with a signature packet or part.</t>
  <t><strong>signature-invalid</strong>: The message is provided with a not matching signature, and the key ID matches the signature key ID, i.e., the content is different from the signed data.</t>
  <t><strong>signature-not-verified</strong>: The message is provided with a signature, but the MUA is unable to verify it because it does not have or can not retrieve the matching key.</t>
  <t><strong>signature-expired</strong>: The message has a corresponding signature, that is invalid because either the key or signature expiration are in the past.
In this case an MUA <bcp14>SHOULD NOT</bcp14> give any feedback to the sender.</t>
</list></t>

<t>The failure-reason value can then assume the following values:</t>

<figure><artwork><![CDATA[
failure-reason =  (   "no-signature"
                    / "signature-invalid"
                    / "signature-not-verified"
                    / "signature-expired"
                  )
]]></artwork></figure>

</section>
<section anchor="sender-behaviour-1"><name>Sender behaviour</name>

<t>The sender's MUA receiving an inline feedback <bcp14>MUST</bcp14> display a warning to the user if the reason is "no-signature" or "signature-invalid", and <bcp14>MAY</bcp14> display a warning if the reason is "signature-not-verified" or "signature-expired".</t>

<t>The purpose of this warning is to warn the sender that there might be some misconfigured option in the mail client, that result in messages being unsigned or malformed, or that he is victim of an impersonation.</t>

<t>Furthermore, when receiving an inline feedback with reason "signature-not-verified" the sender's MUA <bcp14>MAY</bcp14> automatically attach a copy of their public key to a successive reply.</t>

</section>
</section>
</section>
<section anchor="common-ux-for-absent-and-invalid-signatures"><name>Common UX for Absent and Invalid Signatures</name>

<t>FIXME: explain why receiving MUAs should display the same thing when a
signature is missing as when it is absent.</t>

</section>
<section anchor="related-work"><name>Related Work</name>

<t>This draft is inspired by (and similar to) HSTS, MTA-STS, TLSRPT, etc.</t>

<t>FIXME: include references</t>

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

<t>IANA might need to register the e-mail headers <spanx style="verb">Expect-Signed</spanx> and <spanx style="verb">Expect-Signed-Failure</spanx>.</t>

</section>


  </middle>

  <back>


    <references title='Normative References'>



<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>

<reference anchor='RFC6409'>
  <front>
    <title>Message Submission for Mail</title>
    <author fullname='R. Gellens' initials='R.' surname='Gellens'/>
    <author fullname='J. Klensin' initials='J.' surname='Klensin'/>
    <date month='November' year='2011'/>
    <abstract>
      <t>This memo splits message submission from message relay, allowing each service to operate according to its own rules (for security, policy, etc.), and specifies what actions are to be taken by a submission server.</t>
      <t>Message relay is unaffected, and continues to use SMTP over port 25.</t>
      <t>When conforming to this document, message submission uses the protocol specified here, normally over port 587.</t>
      <t>This separation of function offers a number of benefits, including the ability to apply specific security or policy requirements. [STANDARDS-TRACK]</t>
    </abstract>
  </front>
  <seriesInfo name='STD' value='72'/>
  <seriesInfo name='RFC' value='6409'/>
  <seriesInfo name='DOI' value='10.17487/RFC6409'/>
</reference>


<reference anchor='I-D.ietf-lamps-header-protection-16'>
   <front>
      <title>Header Protection for Cryptographically Protected E-mail</title>
      <author fullname='Daniel Kahn Gillmor' initials='D. K.' surname='Gillmor'>
         <organization>American Civil Liberties Union</organization>
      </author>
      <author fullname='Bernie Hoeneisen' initials='B.' surname='Hoeneisen'>
         <organization>pEp Foundation</organization>
      </author>
      <author fullname='Alexey Melnikov' initials='A.' surname='Melnikov'>
         <organization>Isode Ltd</organization>
      </author>
      <date day='13' month='September' year='2023'/>
      <abstract>
	 <t>   S/MIME version 3.1 introduced a mechanism to provide end-to-end
   cryptographic protection of e-mail message headers.  However, few
   implementations generate messages using this mechanism, and several
   legacy implementations have revealed rendering or security issues
   when handling such a message.

   This document updates the S/MIME specification to offer a different
   mechanism that provides the same cryptographic protections but with
   fewer downsides when handled by legacy clients.  The header
   protection schemes described here are also applicable to messages
   with PGP/MIME cryptographic protections.  Furthermore, this document
   offers more explicit guidance for clients when generating or handling
   e-mail messages with cryptographic protection of message headers.

	 </t>
      </abstract>
   </front>
   <seriesInfo name='Internet-Draft' value='draft-ietf-lamps-header-protection-16'/>
   
</reference>

<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='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'/>
    <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>

<reference anchor='RFC2616'>
  <front>
    <title>Hypertext Transfer Protocol -- HTTP/1.1</title>
    <author fullname='R. Fielding' initials='R.' surname='Fielding'/>
    <author fullname='J. Gettys' initials='J.' surname='Gettys'/>
    <author fullname='J. Mogul' initials='J.' surname='Mogul'/>
    <author fullname='H. Frystyk' initials='H.' surname='Frystyk'/>
    <author fullname='L. Masinter' initials='L.' surname='Masinter'/>
    <author fullname='P. Leach' initials='P.' surname='Leach'/>
    <author fullname='T. Berners-Lee' initials='T.' surname='Berners-Lee'/>
    <date month='June' year='1999'/>
    <abstract>
      <t>HTTP has been in use by the World-Wide Web global information initiative since 1990. This specification defines the protocol referred to as "HTTP/1.1", and is an update to RFC 2068. [STANDARDS-TRACK]</t>
    </abstract>
  </front>
  <seriesInfo name='RFC' value='2616'/>
  <seriesInfo name='DOI' value='10.17487/RFC2616'/>
</reference>

<reference anchor='RFC5322'>
  <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='RFC4880'>
  <front>
    <title>OpenPGP Message Format</title>
    <author fullname='J. Callas' initials='J.' surname='Callas'/>
    <author fullname='L. Donnerhacke' initials='L.' surname='Donnerhacke'/>
    <author fullname='H. Finney' initials='H.' surname='Finney'/>
    <author fullname='D. Shaw' initials='D.' surname='Shaw'/>
    <author fullname='R. Thayer' initials='R.' surname='Thayer'/>
    <date month='November' year='2007'/>
    <abstract>
      <t>This document is maintained in order to publish all necessary information needed to develop interoperable applications based on the OpenPGP format. It is not a step-by-step cookbook for writing an application. It describes only the format and methods needed to read, check, generate, and write conforming packets crossing any network. It does not deal with storage and implementation questions. It does, however, discuss implementation issues necessary to avoid security flaws.</t>
      <t>OpenPGP software uses a combination of strong public-key and symmetric cryptography to provide security services for electronic communications and data storage. These services include confidentiality, key management, authentication, and digital signatures. This document specifies the message formats used in OpenPGP. [STANDARDS-TRACK]</t>
    </abstract>
  </front>
  <seriesInfo name='RFC' value='4880'/>
  <seriesInfo name='DOI' value='10.17487/RFC4880'/>
</reference>

<reference anchor='RFC3156'>
  <front>
    <title>MIME Security with OpenPGP</title>
    <author fullname='M. Elkins' initials='M.' surname='Elkins'/>
    <author fullname='D. Del Torto' initials='D.' surname='Del Torto'/>
    <author fullname='R. Levien' initials='R.' surname='Levien'/>
    <author fullname='T. Roessler' initials='T.' surname='Roessler'/>
    <date month='August' year='2001'/>
    <abstract>
      <t>This document describes how the OpenPGP Message Format can be used to provide privacy and authentication using the Multipurpose Internet Mail Extensions (MIME) security content types described in RFC 1847. [STANDARDS-TRACK]</t>
    </abstract>
  </front>
  <seriesInfo name='RFC' value='3156'/>
  <seriesInfo name='DOI' value='10.17487/RFC3156'/>
</reference>

<reference anchor='RFC8551'>
  <front>
    <title>Secure/Multipurpose Internet Mail Extensions (S/MIME) Version 4.0 Message Specification</title>
    <author fullname='J. Schaad' initials='J.' surname='Schaad'/>
    <author fullname='B. Ramsdell' initials='B.' surname='Ramsdell'/>
    <author fullname='S. Turner' initials='S.' surname='Turner'/>
    <date month='April' year='2019'/>
    <abstract>
      <t>This document defines Secure/Multipurpose Internet Mail Extensions (S/MIME) version 4.0. S/MIME provides a consistent way to send and receive secure MIME data. Digital signatures provide authentication, message integrity, and non-repudiation with proof of origin. Encryption provides data confidentiality. Compression can be used to reduce data size. This document obsoletes RFC 5751.</t>
    </abstract>
  </front>
  <seriesInfo name='RFC' value='8551'/>
  <seriesInfo name='DOI' value='10.17487/RFC8551'/>
</reference>


<reference anchor='I-D.ietf-lamps-e2e-mail-guidance-12'>
   <front>
      <title>Guidance on End-to-End E-mail Security</title>
      <author fullname='Daniel Kahn Gillmor' initials='D. K.' surname='Gillmor'>
         <organization>American Civil Liberties Union</organization>
      </author>
      <author fullname='Bernie Hoeneisen' initials='B.' surname='Hoeneisen'>
         <organization>pEp Foundation</organization>
      </author>
      <author fullname='Alexey Melnikov' initials='A.' surname='Melnikov'>
         <organization>Isode Ltd</organization>
      </author>
      <date day='13' month='September' year='2023'/>
      <abstract>
	 <t>   End-to-end cryptographic protections for e-mail messages can provide
   useful security.  However, the standards for providing cryptographic
   protection are extremely flexible.  That flexibility can trap users
   and cause surprising failures.  This document offers guidance for
   mail user agent implementers to help mitigate those risks, and to
   make end-to-end e-mail simple and secure for the end user.  It
   provides a useful set of vocabulary as well as suggestions to avoid
   common failures.  It also identifies a number of currently unsolved
   usability and interoperability problems.

	 </t>
      </abstract>
   </front>
   <seriesInfo name='Internet-Draft' value='draft-ietf-lamps-e2e-mail-guidance-12'/>
   
</reference>




    </references>



<section anchor="acknowledgements"><name>Acknowledgements</name>

<t>FIXME</t>

</section>
<section anchor="mapping-the-solution-space"><name>Mapping the Solution Space</name>

<t>[ RFC Editor: please remove this section before publication ]</t>

<t>The range of possible solutions in this problem space is potentially quite wide.</t>

<t>The draft attempts to make some decisions, but they can be revisted.
This appendix tries to document some distinct axes along which the problem can be resolved.</t>

<t>The completed draft should provide a clear choice along each axis, or a mechanism for some active participant in the protocol to select a choice.</t>

<section anchor="signal-location"><name>Signal Location</name>

<t>Where should the signal be emitted?
Is it a per-message signal?
Is it in the sender's certificate?
Is it in the DNS?</t>

</section>
<section anchor="signal-scope"><name>Signal Scope</name>

<t>What is the scope of the signal?
For example, does it cover a particular e-mail address in the "From" field?
Could it cover all e-mail addresses in a given domain?
Or does it only cover a specific pair-wise promise (e.g., "alice@example.com will sign all mail that is only addressed to bob@example.net")?
Does it apply to all mail, or could it be limited to end-to-end-encrypted mail?</t>

</section>
<section anchor="intervening-mail-user-agents"><name>Intervening Mail User Agents</name>

<t>How does this signal interact with messages that arrive through intervening MUAs, like mailing lists or bug-tracking systems that may (deliberately or not) break signatures while forwarding mail?</t>

</section>
<section anchor="how-to-signal"><name>How to Signal?</name>

<t>How does the sender opt into emitting this signal such that all of their MUAs are aware of it?
Clearly, you'd want each MUA controlled by the sender to know that the signal has been published so that they can all adjust their signing policy.</t>

</section>
<section anchor="retraction"><name>Retraction</name>

<t>How does the sender change their mind once such a signal has been emitted?
Does the signal expire?
What happens to messages during the period where the signal is in some sort of indeterminate state?</t>

</section>
<section anchor="consequences"><name>Consequences</name>

<t>What should the available consequences be when an unsigned (or broken-signature) message arrives from a sender who has emitted that signal?
Should the recieving MUA show the message with a warning?
Should the receiving MUA report the failure to the sender (e.g., like MTA-STS)?
Should they reject the message entirely?
How much control should the signaller be able to exercise?</t>

</section>
<section anchor="what-kind-of-cryptographic-signature"><name>What Kind of Cryptographic Signature?</name>

<t>Does the signal commit the sender to any particular kind of cryptographic signature?
For example, PGP/MIME, or S/MIME?
To signatures verifiable by any particular certificate?</t>

</section>
</section>
<section anchor="document-considerations"><name>Document Considerations</name>

<t>[ RFC Editor: please remove this section before publication ]</t>

<section anchor="document-history"><name>Document History</name>

</section>
</section>


  </back>

<!-- ##markdown-source:
H4sIAAAAAAAAA6Va7XIbt5L9P0+BpX/EconUR+zE4V2vwlhWrLJleU355qay
qQ04A5K4Gg4mgxnJzN1U7Wvsv32WfZR9kj3dDcwHJcWp2lTdaxGDj0aj+/Tp
BsbjcVLbOjdT9epTadJaze2qMJm60DZPMpcWeoNvWaWX9Ti7Xo1zvSn92HDf
see+4w36jg8Pk1TXZuWq7VTZYumSxJbVVNVV4+vjw8NvDo8TXRlNH+vk1lXX
q8o15VTxjMm12aItm6rzojZVYerxKa2Z+Gaxsd5bV1xtS0hy/urqLEluTNGY
aaJUmGP0dnbxfj5CQ829Rj9gflus1Pf0ndpJRrT7UvvNt9bUy4mrVvRBV+ka
H9Z1XfrpwQH1oyZ7Yyax2wE1HCwqd+vNAc9wQCMrU7reyBXUqBeT1G0OoKiD
uyqiMTlU5OveKHSdhJHW3TMIKyW+1kX27zp3Bba2NT4p7VT9VLt0X3lX1ZVZ
evy13dAfPyeJbuq1q6CdMRZUULefqtOJejNR39s837iKm+VgT3VhTa7e6HUx
+IpdT9VsYyqb6kK9tDc2V2/twlS1NV59LHAe3M+IXrGLb5d2Wa+xsEdbMcEJ
Jsl4PFZ64etKp/h1tbZeLEmVlSudx0xabUy6hhB+o5auUoY3rRpvKq9qB+Ez
S2ZFf9drYytVGv601jU18E/l167JMyXaUzrP1bKpm8rE6ZaV21DvDU2zMCqt
tmXtVpUu15g9z7dKND4RkTc2y3KTJI/IGCuXNWlN+01eyWzUV/P0Nzq3maaP
Cltb6woz/LA2hYLOzG5n9IAuTFGrx9ioLXjw3j5UAK/wrtCL3Kh290qvqOst
zkStbWbC7geSKzpp9LKprbEFkzYV/RF0hkVIo6SkjfEe802S75qaZAty3DMi
bIP0VDhMjDHJ3G3M8GBSSIwzMUU2rt0Y/3Tb9Mot+QTwj4gsI/0E52/C6fE3
nH+YbqO36lZDIKyaWV/m+A3DcFAazWuXZITQha4K8umwG3XLmr5Xw52CJ5+3
O8xTmcW2d2jiQYpMv2+AWqwt2t72HruTLQfrC4L6z1vdo0fqg/m1sZXZQHyv
3upi1WBowkoDNioCR69GFx/nV6N9+Ve9u+S/P7z614/nH16d0t/z17O3b9s/
ktBj/vry49vT7q9u5MvLi4tX705lMFrVoCkZXcx+xBfAjxpdvr86v3w3ezuC
TrBP0qlLG5IXGGrCHi2hd1mZGiFE+yQzPq0AGxmN+e7l+//576On6h//+KcP
Zy+Pj46++f338OP50ddP8YNOVFZzBdQjP0nTiS5Lo+lQWcupLm2tc6Ce9nQI
t4WiM4Qin/xEmvl5qv55kZZHT/8lNNCGB41RZ4NG1tndljuDRYn3NN2zTKvN
QfuOpofyzn4c/I567zWywVyZamMLl7vVVswEmt94dRG8Y94GTjVjKHl8MZ8B
buL3q0oXfglzjl+v6CvpPvb46HtfP872HjxmlZmlLeSQ5Ty/enqIwyXDZj6B
MyPHvYgulyQzgE+RRWei6YqM/YS9OfoRtzO8kvcBhW/YE7FXISuIkYGudN7M
x62zjNx5tNNtBDPRvCpHE+WaeuVIMg5jiKHobZdbaiEw+FTaStA9o3XZ7Bn0
GxPgLcw3kQMYwPGgg0i1aCMGOf1V9zVYD77XdCobW9eiTY5wlat5E6G3V4+9
MaTo8/Epc5RAyuTzOPSH2OOjr37/PRwqRZnUlpZOE4cZl8wMgqKtRS5lRWYG
XeiAcIcwNQfcZ1thciT5LCeKBs3cmHzLDtpN/oWn6acIpHGJuGXud/rm/KLd
R7CVL7+GmCxkGFEJFPYj9kO6mDy00Pz9GQnFqCnrfH18+BzrYL4b0JrllraN
3YGv0V6ZIlBoZOi3v2EJ75oqNQ8I1kYhkS8zObRRYZTDP+rq7RytS4pgpGFa
ICoZEp+d/+3iFbiXU7emDXy+KUuQOdk0HOaEnGR4ZuwraDJYikKYHNqDRh6E
9nppKNbUjiXHlomdVxuxbNqdRcS5a+yZ+YTtlJjISFDMMoR3L9FK1oze57dF
rT+JE8y+e3emHs+aFUUGfPtOp9eNH7/TTaXOsOxe6N2Sk+FUQfYlWGlGx7PC
XgvoMne3+wI1MaIgYodI8hXZOeQiQjqc7UXUTqub0XTE/Xb/+wnMoyK3uTHq
Z6WePFajv4x2Wvdkia5p978X3bcx8WuMH70Y9RoFO34eTiNdB9PU7toUO71k
7J1e6j/Ur42j4wfPhqElyTvHPqBr9sKrP1Yxr01G0O2KmjyDPSggYi14GsDa
W/rI/jZDCG67+4C4EqA5brsiZY+FOz288gTbO+0moeWMhT1gjpLMEEEABhI8
LpNIX9uyoQwqYiNCBIceSwMEC2i7cHqaZhmE0iQOfvVEhmHR3nrskgfDycJ2
8IHcRRfbP1Je6mDJlrGym3yf5Ha8k0FnOT84l94XT86cETEwDTlkjErBP3pB
lb1WghORUWyWxT1f/rGKo3y+k+6x3+MlCRqx99/Ej2hV7H0//jHQAbU1RRjg
Tc9SoPHz5ed8mDVxa8mIILlfUv5IQ/QCSBnPl1nvzvLA+hR4E8NLFLe/OpDo
EZ84o9e2+yZQtNsaVOrvC+4RjYTLyweyoC69CAmMy226beO5oZNLIVaDuJ/H
GXhVRlHfRi7t65iLiCVYBl2C1O4QAim6hSNg6aUFAo9zU6zoJ2dZxSo3499c
ga4NUp060gxejbrUFv48MBVKstoFYnWlJXlnHAkCkj778vi4RVLZRwAnAKn8
HvW/yUZeqPOLszGEJSEGW+x4TT8ItcK00e1///O/vBhgL9hiVFMyV4qZnsS7
wtySdxeswRANKaqCUyOoksf22RrpXbJos1yKGUCO1BCq1d15hnMkO5QA91ps
+NUnUKvceDGoe828RSV/1xvD7HDsioIopZNBjp7BhNMi28Ys03vi2DQo/MVo
3iAjOj5Ul5jh+PDoG3X0dHr0zRQt319cjf4StdDZYTijDagbaVRCBRkSQXQd
gVBLLOm4Schse/YMK2qTcl2Y1mtgPfsqt9ewrfnl+PlXh0cnRPv/GkojgMb3
rATQGToEKQYMWZcQCxOqOhQJgp2QNcihA/2Hmr2PULuOAurIz8BHuwLBLlNN
88CtMNfS5eAY6rI0xfvv33+xg7dwkLmQavVscjx5Sn5HHvP0+fND9pigNzb+
oFSOhWG+STIXjULxeZMZ5uPIvgydA8wDXQ4uzi9eBUf88ugZKM2+mvcbnz97
dkSNpJW77N8ci27HqwYqwLTjI/HlqxZXsCmi9FTWWJAiwBcMfCdy35bhs/oJ
HDgAlw6h31VbWRgpQhF8b+kaJo89h43VkjZ5WRqTLcAAJwILvaILuaRmlfeA
j9K8pnbETaVCguWpEEB4KPEeG+C08rIIdqX+al2upUB3Lov61BS6sk4qO4Th
MvsaVmS4zpbtRq1QQKoDKkuOIeYoVZ0uV2yrOmSoCFI3NiOIEsiOINXanGht
4WQDURJq67h9cLYFEy5BgvtqW5zOQ4BBcWtWKOT1SOuvZkw8erkdFRkQX264
QtPmK3zYC0MTRfBUWRPqW3GJnaDXxmQqwQkhoNqAXYZIKur6jLADcA96a+2D
6V2Lg9F42CVZHvG9kHz8ACnErnfSzvuEbCvFnxEP7qqgq4qqoVRwT00wnztj
2w0vmpodnfNJG3P6+tYxafaDtN7oUCsB4dH5PhpTHSB1V+ctKMMjBW8bX9rU
uoYRkuxiUTH1b4dMaR7sQjrpuoZK4941Zeu+ZwHk/4h/lt1rQyxsuMXauTbJ
oylrdRZOqYW5mIVRovvh/RVSj23eHWbSGc3sR6VvHAF4dGtSn8wauzO3t1wF
4mK75LZQcahgx+1wfei6AGIEw+O0lEmABqxQ+dyJUcrJU9ViWP5mvjgXF1yY
tb6BuqouH2d2iFPXUol2Le7clXkSB70BoJbAhdpPVYR4jrQbyETTQaR1s4G4
JA4JeaLeOoCb/Y1B64Q1fV7k1LfTM98iMPiRaYhvtmVvqpzv8NSB8SyhlwBx
PTho1Uu6+2UQTcdnGIHBv/TqY7EQFypllV1Z+t0v2/XLIJ0At/oBqLrqcpvA
Wh+SgjOH/WGuX8faQj/p5/KUD0DhA3Ua3Tsrp/6sGvwYy5WLevnh7VkvYb6b
y8TRDyTNO9MJ13owcybrOxuMYKVUMgThlK4c+ArVyj1KmJ69oHfrxHAjvIRT
/CdPCjduvz95MuWcKJ5MQJPdSNXNV5J38Z1JqStJhJ88aT+PwwHeM+3ulLQM
fJzsfrUbAetwj3F+Kl1CFthJIR/3lZ2YiWSClL1S7KKbBrtkslS3V3nh7oTz
6TsiQ5BxBOU/IXdPVIL06Dfo2cit3KBmGJHb9jJ4QAl7OkGrpNfCrcRFokqE
uwxFZXZ9V0qiKhoaqMCMSwdWNdSoVM19G7uiTKGCEpU9MJtexkvmNshLz0ON
gU0We9hhEVSE43DUhutYqmA0CL59rzOQRmomM943G7MT17lP9Nud8S+Uekze
3Lft+2t39N+BGt0x2T/Zu28tf3JIOLWHeu89FGkGXJyULBQsXDhYiQKtkpnN
dBei8f4z6D5SMElqWGU4waG6yALu0Uu450Fwvjv73Rkf0NTO3FElwRjKpqKb
VkF6zNJOz1G8pWg74YQuTe1qzQHU07UzAglVx+yq4dp6KXftRfArhH9J4fZj
bdw3ORGJjqQL022KABeQGTyJ0laqKbqw8pph4caCZG646oM1NiUYhytite2s
qUg+4mP7ws7/8OgYWYIOH1RgvWsNTJcG+Q9znzVDQbnt7tTLZgE+wj7O3MA3
KdXKLFfUQBo4RXrpNhss//FvHD9mcjNOB38eUKNNfHzLgYjoUJ3idr3tbZDr
oiFLiRbDwmv2aOoiCUtyL8kGlvFnSa/kip4l/GCkmkuvdQb39Axtng2KYv9j
KX5t6GkONrynXs+v5pzzjPkPYaH7ytRpl4rHTLvNsz2/6Ji9m0EzsAeonQ8X
zdwohlcYk0m9ZmWRC4eioDwLiPdWQ9ryC+v0ASoTXpQIqXukZinxV5CzlZQ8
g7D06UKXJXs3XV65vGFLnyM2myT5t58UKI96lVEiPlVlzuWrlrxTcTgUJ8Kl
k9iHgP3PIVXSxYrdEW7pLUU1H1bxbYkZgREfNsjEdCqR0vEFLJvir40FTbqF
3oKLy1HBQs2mrNmtN/o6+G2GxIzunn0bUnt1hxvrww0omUNZwgXsJ1Uz62Hi
HZ4VyEzojKPEQp8oMcgdG5tN1/FCkCVu58ampBx4xQyCindkYSJrMOGYfMKr
crq0SNfOEi3muQ372ycrdfzd90kskpZqMrElJAUlXeD17idd6pg2e5Pzq5Aw
vaRUchvOGYCULH5g0OuV2wLvptqy3AOfJOecHtHrk2o84Nt5/GaLIZik9FCL
OaLZ6XL6bn7Sl2QOYDEkhhAKKZ+gKVL0uM4ZPc6SYui+8B5LFxd02amDJhry
zviCRmp6cdXRGWjbSNjzSfIypklhfFsX7JUC6fooXP5ljkqnJ8ll1S7MpbW4
eizUQQxbjfmqAeewoX8fm8kKbHJEqbH5NshPT/Sk/kSb4+V58UiqePIoCYPB
wi3awYWpR3snyWmQBOabCwiHadhs0l4imAO3apmnezCF//FzIHq6gEExCwTg
YMcMuSRR9wIDSPEaiS/vXxxejo8fYsAeJeB0D46kkFpZxofKNau1dI2zA9BD
1ZaWp6YcfuZJ9kWzGtOLPX4/6bdw1U2YkN5pPaab7gVBJ9XR0R0hbU8tEOqu
+4/A4KE55y2I9Exeu13SPqCLeTCs/r5aPoBAT/I68QGBxW7TiHbrrjjXBkWO
UkRt9S39P9ptDWMjF6dnClvXfJHJdTv7OAVcSjEqsNE7NzCx0jCsHuXMyxcG
RskI69f8TEB1L8IIh0gonf2dKu4iWHxPIbcB8bkXv4pkDLhPAwQ6q/jqb2P5
SVRqZOv6jjQtVJy6fmKVC+kHBrB/rxlrBamjpWRNFaMO4MW6bLfqlYdLLEY+
em7KioWMNb8/omK7rxlnaFsUWc2vTQi3vGoP2/QNva6l2JP2+pGT3IZXky1R
ozeSUuXq6Oxemx6JaftQuW6vzdZOarzhAQ0fSwSweScGVQ1NJDb8fmxQyghZ
YWCsuyM7SsS1cXmx0Wbqg7wowg/7WSAre/35iGP9nYJEf3kKuBWc64TtYkMH
Hsz0bpjIOb1QMUk1n0yFuBvOgrX/hk1nqV4OHo62zA89d00G6Aj97Vblkfz1
UP46zDp8juq7WQfhIl5uMDTKlcYJ3db08EJIMe+DX2IOVhtEM1Cl00gQdnnc
/5cnPerN/drSLcg2Sf4P+knI+CMvAAA=

-->

</rfc>

