<?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-ietf-lamps-e2e-mail-guidance-16" category="info" submissionType="IETF" tocInclude="true" sortRefs="true" symRefs="true">
  <front>
    <title>Guidance on End-to-End E-mail Security</title>

    <author initials="D. K." surname="Gillmor" fullname="Daniel Kahn Gillmor" role="editor">
      <organization abbrev="ACLU">American Civil Liberties Union</organization>
      <address>
        <postal>
          <street>125 Broad St.</street>
          <city>New York, NY</city>
          <code>10004</code>
          <country>USA</country>
        </postal>
        <email>dkg@fifthhorseman.net</email>
      </address>
    </author>
    <author initials="B." surname="Hoeneisen" fullname="Bernie Hoeneisen" role="editor">
      <organization>pEp Project</organization>
      <address>
        <postal>
          <street>Oberer Graben 4</street>
          <city>8400 Winterthur</city>
          <country>Switzerland</country>
        </postal>
        <email>bernie.hoeneisen@pep-project.org</email>
        <uri>https://pep-project.org/</uri>
      </address>
    </author>
    <author initials="A." surname="Melnikov" fullname="Alexey Melnikov" role="editor">
      <organization>Isode Ltd</organization>
      <address>
        <postal>
          <street>14 Castle Mews</street>
          <city>Hampton, Middlesex</city>
          <code>TW12 2NP</code>
          <country>UK</country>
        </postal>
        <email>alexey.melnikov@isode.com</email>
      </address>
    </author>

    <date year="2024" month="March" day="16"/>

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

    <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 recommendations to avoid common failures.
It also identifies a number of currently unsolved usability and interoperability problems.</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/e2e-mail-guidance/"/>.
        Status information for this document may be found at <eref target="https://datatracker.ietf.org/doc/draft-ietf-lamps-e2e-mail-guidance/"/>.
      </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/e2e-mail-guidance"/>.</t>
    </note>


  </front>

  <middle>


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

<t>E-mail end-to-end security using S/MIME (<xref target="RFC8551"/>) and PGP/MIME (<xref target="RFC3156"/>) cryptographic standards can provide integrity, authentication and confidentiality to MIME (<xref target="RFC4289"/>) e-mail messages.</t>

<t>However, there are many ways that a receiving mail user agent can misinterpret or accidentally break these security guarantees.
For example, <xref target="EFAIL"></xref>'s "Direct Exfiltration" attack leaks cleartext due to an attack that splices existing ciphertext into a new message, which is then handled optimistically (and wrongly) by many mail user agents.</t>

<t>A mail user agent that interprets a message with end-to-end cryptographic protections needs to do so defensively, staying alert to different ways that these protections can be bypassed by mangling (either malicious or accidental) or a failed user experience.</t>

<t>A mail user agent that generates a message with end-to-end cryptographic protections should be aware of these defensive interpretation strategies, and should compose any new outbound message conservatively if they want the protections to remain intact.</t>

<t>This document offers guidance to the implementer of a mail user agent that provides these cryptographic protections, whether for sending or receiving mail.
An implementation that follows this guidance will provide its users with stronger and easier-to-understand security properties, and will also offer more reliable interoperability for messages exchanged with other implementations.</t>

<t>In <xref target="future-work"/>, this document also identifies a number of interoperability and usability concerns for end-to-end cryptographic e-mail which have no current broadly accepted technical standard for resolution.
One major area not covered in this document is the acquisition and long-term maintenance of cryptographic identity information and metadata across multiple mail user agents controlled by the same user.</t>

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

<t>For the purposes of this document, we define the following concepts:</t>

<t><list style="symbols">
  <t><em>MUA</em> is short for Mail User Agent; an e-mail client.</t>
  <t><em>Protection</em> of message data refers to cryptographic encryption and/or signatures, providing confidentiality, authenticity, and/or integrity.</t>
  <t><em>Cryptographic Layer</em>, <em>Cryptographic Envelope</em>, <em>Cryptographic Payload</em>, <em>Cryptographic Summary</em>, and <em>Errant Cryptographic Layer</em> are defined in <xref target="cryptographic-structure"/></t>
  <t>A <em>well-formed</em> e-mail message with cryptographic protection has both a <em>Cryptographic Envelope</em> and a <em>Cryptographic Payload</em>.</t>
  <t><em>Structural Header Fields</em> are documented in <xref target="structural-header-fields"/>.</t>
  <t><em>User-Facing Header Fields</em> are documented in <xref target="user-facing-header-fields"/>.</t>
  <t><em>Main Body Part</em> is the part (or parts) that are typically rendered to the user as the message itself (not "as an attachment").  See <xref target="main-body-part"/>.</t>
</list></t>

<t>This document contains extensive discussion about end-to-end cryptographic protections in e-mail, while acknowledging that many MUAs have no capabilities for end-to-end cryptographic protections at all.
We divide MUAs into three distinct profiles:</t>

<t><list style="symbols">
  <t>A <em>Non-cryptographic</em> MUA has no capabilities for end-to-end cryptographic protections.</t>
  <t>A <em>Conformant</em> MUA follows the guidance in this document when dealing with end-to-end cryptographic protections.</t>
  <t>A <em>Legacy</em> MUA has capabilities for end-to-end cryptographic protections, but does not adhere to the the guidance in this document.</t>
</list></t>

<t>At the time of the writing of this document, most MUAs with cryptographic protections are legacy MUAs.</t>

<section anchor="structural-header-fields"><name>Structural Header Fields</name>

<t>A message header field named <spanx style="verb">MIME-Version</spanx>, or whose name begins with <spanx style="verb">Content-</spanx> is referred to in this document as a "structural" header field.
This is a less-ambiguous name for what <xref target="RFC2045"/> calls "MIME Header Fields".</t>

<t>These header fields indicate something about the specific MIME part they are attached to, and cannot be transferred or copied to other parts without endangering the readability of the message.</t>

<t>This includes:</t>

<t><list style="symbols">
  <t><spanx style="verb">MIME-Version</spanx></t>
  <t><spanx style="verb">Content-Type</spanx></t>
  <t><spanx style="verb">Content-Transfer-Encoding</spanx></t>
  <t><spanx style="verb">Content-Disposition</spanx></t>
</list></t>

</section>
<section anchor="user-facing-header-fields"><name>User-Facing Header Fields</name>

<t>Of all the header fields that an e-mail message may contain, only a handful are typically presented directly to the user.
This document refers to them as "user-facing" header fields.
Typically, user-facing header fields are:</t>

<t><list style="symbols">
  <t><spanx style="verb">Subject</spanx></t>
  <t><spanx style="verb">From</spanx></t>
  <t><spanx style="verb">To</spanx></t>
  <t><spanx style="verb">Cc</spanx></t>
  <t><spanx style="verb">Date</spanx></t>
  <t><spanx style="verb">Reply-To</spanx></t>
  <t><spanx style="verb">Followup-To</spanx></t>
  <t><spanx style="verb">Sender</spanx></t>
  <t><spanx style="verb">Resent-From</spanx></t>
  <t><spanx style="verb">Resent-To</spanx></t>
  <t><spanx style="verb">Resent-Cc</spanx></t>
  <t><spanx style="verb">Resent-Date</spanx></t>
  <t><spanx style="verb">Resent-Sender</spanx></t>
</list></t>

<t>The above list are the header fields most often presented directly to the user who views a message, though an MUA may also decide to treat any other header field as "user-facing".
Of course, many of these header fields are entirely absent from any given message, and an absent header field is not presented to the user at all.</t>

<t>Note that the resending header fields (those beginning with <spanx style="verb">Resent-</spanx>) are typically only added by an intervening MUA (see <xref section="3.6.6" sectionFormat="of" target="RFC5322"/> and <xref target="intervening-mua"/> of this document).
As such, though they may in some cases be presented to the user, they will typically not bear any end-to-end cryptographic protection (even if the original header fields of a message are protected, see <xref target="message-header-fields"/>), because they are unknown to the original sender.</t>

<t>Other header fields may affect the visible rendering of the message (e.g., <spanx style="verb">References</spanx> and <spanx style="verb">In-Reply-To</spanx> may affect the placement of a message in a threaded discussion; or the <spanx style="verb">List-*</spanx> and <spanx style="verb">Archived-At</spanx> header fields added by mailing lists may cause additional buttons to be displayed during rendering), but they are not directly displayed to the user and so are not considered "user-facing".</t>

</section>
</section>
</section>
<section anchor="usability"><name>Usability</name>

<t>Any MUA that enables its user to transition from unprotected messages to messages with end-to-end cryptographic protection needs to consider how the user understands this transition.
That said, the primary goal of the user of an MUA is communication -- so interface elements that interfere with communication should be avoided where possible.</t>

<t>Furthermore, it is a near certainty that the user will continue to encounter unprotected messages, and may need to send unprotected messages (for example, if a given recipient cannot handle cryptographic protections).
This means that the MUA needs to provide the user with some guidance, so that they understand what protections any given message or conversation has.
But the user should not be overwhelmed with choices or presented with unactionable information.</t>

<section anchor="simplicity"><name>Simplicity</name>

<t>The end user (the operator of the MUA) is unlikely to understand complex end-to-end cryptographic protections on any e-mail message, so keep it simple.</t>

<t>For clarity to the user, any cryptographic protections should apply to the message as a whole, not just to some subparts.</t>

<t>This is true for message composition: the standard message composition user interface of an MUA should offer minimal controls which indicate which types of protection to apply to the new message as a whole.</t>

<t>This is also true for message interpretation: the standard message rendering user interface of an MUA should offer a minimal, clear indicator about the end-to-end cryptographic status of the message as a whole.</t>

<t>See <xref target="types-of-protection"/> for more detail about mental models and cryptographic status.</t>

<t>(It is of course possible that a message forwarded as a MIME attachment could have its own cryptographic status while still being a message subpart; but that status should be distinct from the status of the enclosing message.)</t>

</section>
<section anchor="similar-ux"><name>E-mail Users Want a Familiar Experience</name>

<t>A person communicating over the Internet today often has many options for reaching their desired correspondent, including web-based bulletin boards, contact forms, and instant messaging services.</t>

<t>E-mail offers a few distinctions from these other systems, most notably features like:</t>

<t><list style="symbols">
  <t>Ubiquity: Most correspondents will have an e-mail address, while not everyone is present on the various non-e-mail messaging services, particularly those that have reliable end-to-end cryptographic protections,</t>
  <t>Federation: interaction between users on distinct domains who have not agreed on a common communications provider is still possible, and</t>
  <t>User Control: the user can interact with the e-mail system using an MUA of their choosing, including automation and other control over their preferred and/or customized workflow.</t>
</list></t>

<t>Other systems (like some popular instant messaging applications, such as WhatsApp and Signal Private Messenger) offer built-in end-to-end cryptographic protections by default, which are simpler for the user to understand.
("All the messages I see on Signal are confidential and integrity-protected" is a clean user story)</t>

<t>A user of e-mail is likely using e-mail instead of other systems because of the distinctions outlined above.
When adding end-to-end cryptographic protection to an e-mail endpoint, care should be taken not to negate any of the distinct features of e-mail as a whole.
If these features are violated to provide end-to-end crypto, the user may just as well choose one of the other systems that don't have the drawbacks that e-mail has.
Implementers should try to provide end-to-end protections that retain the familiar experience of e-mail itself.</t>

<t>Furthermore, an e-mail user is likely to regularly interact with other e-mail correspondents who <em>cannot</em> handle or produce end-to-end cryptographic protections.
Care should be taken that enabling cryptography in an MUA does not inadvertently limit the ability of the user to interact with correspondents who use legacy or non-cryptographic MUAs.</t>

</section>
<section anchor="security-indicators"><name>Warning About Failure vs. Announcing Success</name>

<t>Moving the web from http to https offers useful historical similarities to adding end-to-end encryption to e-mail.</t>

<t>In particular, the indicators of what is "secure" vs. "insecure" for web browsers have changed over time.
For example, years ago the default experience was http, and https sites were flagged with "secure" indicators like a lock icon.
Starting in 2018, some browsers reversed that process by downplaying https, and instead visibly marking http as "not secure" (see <xref target="chrome-indicators"></xref>).</t>

<t>By analogy, when the user of an MUA first enables end-to-end cryptographic protection, it's likely that they will want to see which messages <em>have</em> protection (that is, the security indicators amenable to a conformant MUA as of 2024 are most likely to be comparable to those of a pre-2018 web browser).
But a user whose private e-mail communications with a given correspondent, or within a given domain are known to be entirely end-to-end protected might instead want to know which messages do <em>not</em> have the expected protections.</t>

<t>Note also that some messages may be expected to be confidential, but other messages are expected to be public -- the types of protection (see <xref target="types-of-protection"/>) that apply to each particular message will be different.
And the types of protection that are <em>expected</em> to be present in any context might differ (for example, by sender, by thread, or by date).</t>

<t>It is out of scope for this document to define expectations about protections for any given message, but an implementer who cares about usable experience should be deliberate and judicious about the expectations their interface assumes that the user has in a given context.
See also <xref target="expect-e2e"/> for future work.</t>

</section>
</section>
<section anchor="types-of-protection"><name>Types of Protection</name>

<t>A given message might be:</t>

<t><list style="symbols">
  <t>signed,</t>
  <t>encrypted,</t>
  <t>both signed and encrypted, or</t>
  <t>none of the above.</t>
</list></t>

<t>Given that many e-mail messages offer no cryptographic protections, the user needs to be able to detect which protections are present for any given message.</t>

<section anchor="simple-mental-model"><name>Simplified Mental Model</name>

<t>To the extent that an e-mail message actually does have end-to-end cryptographic protections, those protections need to be visible and comprehensible to the end users: both the sending user and the receiving user.
If either user is unaware of the protections, then they do not effectively extend all the way to the "end".</t>

<t>However, most users do not have (or want to have) a sophisticated mental model of what kinds of protections can be associated with a given message.
Even the four states above approach the limits of complexity for an interface for normal users.</t>

<t>While <xref target="no-encrypted-only"/> recommends avoiding deliberate creation of encrypted-only messages, some messages may end up in the encrypted-only state due to signature failure or certificate revocation.</t>

<t>A simple model for the receiving user could be that a message is in one of three normal states, which align with the only reasonable choices for message composition:</t>

<t><list style="symbols">
  <t>Unprotected</t>
  <t>Verified (has a valid signature from the apparent sender of the message)</t>
  <t>Confidential (meaning, encrypted, with a valid signature from the apparent sender of the message)</t>
</list></t>

<t>However, one error state exists for received mail that does not correspond to a reasonable choice for message composition:</t>

<t><list style="symbols">
  <t>Encrypted But Unverified (meaning, encrypted without a valid signature from the apparent sender of the message)</t>
</list></t>

<t>Note that this last state is not "Confidential" (a secret shared exclusively between the participants in the communication) because the recipient does not know for sure who sent it.</t>

<t>In an ecosystem where encrypted-only messages are never deliberately sent (see <xref target="no-encrypted-only"/>), representing an Encrypted But Unverified message as a type of user-visible error is not unreasonable.
However, this is not the state of the global e-mail ecosystem when this document was written, since some legacy MUAs permit sending encrypted-but-unsigned mail (see <xref target="expect-e2e"/> for possible future guidance).</t>

<t>Alternately, an MUA may prefer to represent the state of a Encrypted but Unverified message to the user as though it was Unprotected, since no verification is possible.
However the MUA represents the message to the user, though, it <bcp14>MUST NOT</bcp14> leak cleartext of an encrypted message (even an Encrypted but Unverified message) in subsequent replies (see <xref target="composing-reply"/>) or similar replications of the message.</t>

<t>Note that a cleartext message with an invalid signature <bcp14>SHOULD NOT</bcp14> be represented to the user as anything other than Unprotected (see <xref target="signature-failures"/>), unless the MUA is providing the user with debugging information.</t>

<t>At the time this document was written, the global e-mail ecosystem contains a heterogeneous mix of legacy and non-cryptographic MUAs.
In such an ecosystem, a conformant MUA may prefer instead to represent "Verified" and "Encrypted" as orthogonal states of any given received message.
While this model does not precisely match the choice a user makes when composing a message, it may align more with the reality of the range of messages they receive.</t>

</section>
<section anchor="one-cryptographic-status-per-message"><name>One Cryptographic Status Per Message</name>

<t>Some MUAs may attempt to generate multiple copies of a given e-mail message, with different copies offering different types of protection (for example, opportunistically encrypting on a per-recipient basis).
A message resulting from this approach will have a cryptographic state that few users will understand.
Even if the sender understands the different statuses of the different copies, the recipients of the messages may not understand (each recipient might not even know about the other copies).
See for example the discussion in <xref target="mixed-recipients"/> for how this can go wrong.</t>

<t>For comprehensibility, a conformant MUA <bcp14>SHOULD NOT</bcp14> create multiple copies of a given message that differ in the types of end-to-end cryptographic protections afforded.</t>

<t>For opportunistic cryptographic protections that are not surfaced to the user (that is, that are not end-to-end), other mechanisms like transport encryption (<xref target="RFC3207"/>) or domain-based signing (<xref target="RFC6376"/>) may be preferable due to ease of implementation and deployment.
These opportunistic transport protections are orthogonal to the end-to-end protections described in this document.</t>

<t>To the extent that opportunistic message protections are made visible to the user for a given copy of a message, a conformant MUA will distinguish that status from the message's end-to-end cryptographic status.
But the potential confusion caused by rendering this complex, hybrid state may not be worth the value of additional knowledge gained by the user.
The benefits of opportunistic protections accrue (or don't) even without visibility to the user (see <xref target="RFC7435"/>).</t>

<t>The user needs a single clear, simple, and correct indication about the end-to-end cryptographic status of any given message.
See <xref target="cryptographic-summary"/> for more details.</t>

</section>
</section>
<section anchor="cryptographic-structure"><name>Cryptographic MIME Message Structure</name>

<t>Implementations use the structure of an e-mail message to establish (when sending) and understand (when receiving) the cryptographic status of the message.
This section establishes some conventions about how to think about message structure.</t>

<section anchor="cryptographic-layer"><name>Cryptographic Layers</name>

<t>"Cryptographic Layer" refers to a MIME substructure that supplies some cryptographic protections to an internal MIME subtree.
The internal subtree is known as the "protected part" though of course it may itself be a multipart object.</t>

<t>In the diagrams below, <u>↧</u> indicates "decrypts to", and <u>⇩</u> indicates "unwraps to".</t>

<section anchor="smime-cryptographic-layers"><name>S/MIME Cryptographic Layers</name>

<t>For S/MIME <xref target="RFC8551"></xref>, there are four forms of Cryptographic Layers: multipart/signed, PKCS#7 signed-data, PKCS7 enveloped-data, PKCS7 authEnveloped-data.</t>

<section anchor="smime-multipart-signed"><name>S/MIME Multipart Signed Cryptographic Layer</name>

<figure><artwork><![CDATA[
└┬╴multipart/signed; protocol="application/pkcs7-signature"
 ├─╴[protected part]
 └─╴application/pkcs7-signature
]]></artwork></figure>

<t>This MIME layer offers authentication and integrity.</t>

</section>
<section anchor="smime-pkcs7-signed-data"><name>S/MIME PKCS7 signed-data Cryptographic Layer</name>

<figure><artwork><![CDATA[
└─╴application/pkcs7-mime; smime-type="signed-data"
 ⇩ (unwraps to)
 └─╴[protected part]
]]></artwork></figure>

<t>This MIME layer offers authentication and integrity.</t>

</section>
<section anchor="smime-pkcs7-enveloped-data"><name>S/MIME PKCS7 enveloped-data Cryptographic Layer</name>

<figure><artwork><![CDATA[
└─╴application/pkcs7-mime; smime-type="enveloped-data"
 ↧ (decrypts to)
 └─╴[protected part]
]]></artwork></figure>

<t>This MIME layer offers confidentiality.</t>

</section>
<section anchor="smime-pkcs7-authenveloped-data"><name>S/MIME PKCS7 authEnveloped-data Cryptographic Layer</name>

<figure><artwork><![CDATA[
└─╴application/pkcs7-mime; smime-type="authEnveloped-data"
 ↧ (decrypts to)
 └─╴[protected part]
]]></artwork></figure>

<t>This MIME layer offers confidentiality and integrity.</t>

<t>Note that <spanx style="verb">enveloped-data</spanx> (<xref target="smime-pkcs7-enveloped-data"/>) and <spanx style="verb">authEnveloped-data</spanx> (<xref target="smime-pkcs7-authenveloped-data"/>) have identical message structure and very similar confidentiality semantics.
The only difference between the two is ciphertext malleability.</t>

<t>The examples in this document only include <spanx style="verb">enveloped-data</spanx>, but the implications for that layer apply to <spanx style="verb">authEnveloped-data</spanx> as well.</t>

</section>
<section anchor="pkcs7-compression-is-not-a-cryptographic-layer"><name>PKCS7 Compression is NOT a Cryptographic Layer</name>

<t>The Cryptographic Message Syntax (CMS) provides a MIME compression layer (<spanx style="verb">smime-type="compressed-data"</spanx>), as defined in <xref target="RFC3274"/>.
While the compression layer is technically a part of CMS, it is not considered a Cryptographic Layer for the purposes of this document.</t>

</section>
</section>
<section anchor="pgpmime-cryptographic-layers"><name>PGP/MIME Cryptographic Layers</name>

<t>For PGP/MIME <xref target="RFC3156"></xref> there are two forms of Cryptographic Layers, signing and encryption.</t>

<section anchor="pgpmime-multipart-signed"><name>PGP/MIME Signing Cryptographic Layer (multipart/signed)</name>

<figure><artwork><![CDATA[
└┬╴multipart/signed; protocol="application/pgp-signature"
 ├─╴[protected part]
 └─╴application/pgp-signature
]]></artwork></figure>

<t>This MIME layer offers authenticity and integrity.</t>

</section>
<section anchor="pgpmime-multipart-encrypted"><name>PGP/MIME Encryption Cryptographic Layer (multipart/encrypted)</name>

<figure><artwork><![CDATA[
└┬╴multipart/encrypted
 ├─╴application/pgp-encrypted
 └─╴application/octet-stream
  ↧ (decrypts to)
  └─╴[protected part]
]]></artwork></figure>

<t>This MIME layer can offer any of:</t>

<t><list style="symbols">
  <t>confidentiality (via a Symmetrically Encrypted Data Packet, see <xref section="5.7" sectionFormat="of" target="I-D.ietf-openpgp-crypto-refresh-13"/>; an MUA <bcp14>MUST NOT</bcp14> generate this form due to ciphertext malleability)</t>
  <t>confidentiality and integrity (via a Symmetrically Encrypted Integrity Protected Data Packet (SEIPD), see <xref section="5.13" sectionFormat="of" target="I-D.ietf-openpgp-crypto-refresh-13"/>), or</t>
  <t>confidentiality, integrity, and authenticity all together (by including an OpenPGP Signature Packet within the SEIPD).</t>
</list></t>

</section>
</section>
</section>
<section anchor="cryptographic-envelope"><name>Cryptographic Envelope</name>

<t>The Cryptographic Envelope is the largest contiguous set of Cryptographic Layers of an e-mail message starting with the outermost MIME type (that is, with the Content-Type of the message itself).</t>

<t>If the Content-Type of the message itself is not a Cryptographic Layer, then the message has no cryptographic envelope.</t>

<t>"Contiguous" in the definition above indicates that if a Cryptographic Layer is the protected part of another Cryptographic Layer, the layers together comprise a single Cryptographic Envelope.</t>

<t>Note that if a non-Cryptographic Layer intervenes, all Cryptographic Layers within the non-Cryptographic Layer <em>are not</em> part of the Cryptographic Envelope.
They are Errant Cryptographic Layers (see <xref target="errant-cryptographic-layers"/>).</t>

<t>Note also that the ordering of the Cryptographic Layers implies different cryptographic properties.
A signed-then-encrypted message is different than an encrypted-then-signed message.
See <xref target="sign-then-encrypt"/>.</t>

</section>
<section anchor="cryptographic-payload"><name>Cryptographic Payload</name>

<t>The Cryptographic Payload of a message is the first non-Cryptographic Layer -- the "protected part" -- within the Cryptographic Envelope.</t>

</section>
<section anchor="types-of-cryptographic-envelope"><name>Types of Cryptographic Envelope</name>

<section anchor="simple-cryptographic-envelopes"><name>Simple Cryptographic Envelopes</name>

<t>As described above, if the "protected part" identified in the section above is not itself a Cryptographic Layer, that part <em>is</em> the Cryptographic Payload.</t>

<t>If the application wants to generate a message that is both encrypted and signed, it <bcp14>MAY</bcp14> use the simple MIME structure from <xref target="pgpmime-multipart-encrypted"/> by ensuring that the <xref target="I-D.ietf-openpgp-crypto-refresh-13"></xref> Encrypted Message within the <spanx style="verb">application/octet-stream</spanx> part contains an <xref target="I-D.ietf-openpgp-crypto-refresh-13"></xref> Signed Message (the final option described in <xref target="pgpmime-multipart-encrypted"/>).</t>

</section>
<section anchor="multilayer-cryptographic-envelopes"><name>Multilayer Cryptographic Envelopes</name>

<t>It is possible to construct a Cryptographic Envelope consisting of multiple layers with either S/MIME or PGP/MIME , for example using the following structure:</t>

<figure><artwork><![CDATA[
A └─╴application/pkcs7-mime; smime-type="enveloped-data"
B  ↧ (decrypts to)
C  └─╴application/pkcs7-mime; smime-type="signed-data"
D   ⇩ (unwraps to)
E   └─╴[protected part]
]]></artwork></figure>

<t>When handling such a message, the properties of the Cryptographic Envelope are derived from the series <spanx style="verb">A</spanx>, <spanx style="verb">C</spanx>.</t>

<t>As noted in <xref target="simple-cryptographic-envelopes"/>, PGP/MIME applications also have a simpler MIME construction available with the same cryptographic properties.</t>

</section>
</section>
<section anchor="errant-cryptographic-layers"><name>Errant Cryptographic Layers</name>

<t>Due to confusion, malice, or well-intentioned tampering, a message may contain a Cryptographic Layer that is not part of the Cryptographic Envelope.
Such a layer is an Errant Cryptographic Layer.</t>

<t>An Errant Cryptographic Layer <bcp14>MUST NOT</bcp14> contribute to the message's overall cryptographic state.</t>

<t>Guidance for dealing with Errant Cryptographic Layers can be found in <xref target="errant-layers"/>.</t>

<section anchor="mailing-list-wrapping"><name>Mailing List Wrapping</name>

<t>Some mailing list software will re-wrap a well-formed signed message before re-sending to add a footer, resulting in the following structure seen by recipients of the e-mail:</t>

<figure><artwork><![CDATA[
H └┬╴multipart/mixed
I  ├┬╴multipart/signed
J  │├─╴text/plain
K  │└─╴application/pgp-signature
L  └─╴text/plain
]]></artwork></figure>

<t>In this message, <spanx style="verb">L</spanx> is the footer added by the mailing list.  <spanx style="verb">I</spanx> is now an Errant Cryptographic Layer.</t>

<t>Note that this message has no Cryptographic Envelope at all.</t>

<t>It is <bcp14>NOT RECOMMENDED</bcp14> to produce e-mail messages with this structure, because a legacy MUA may present the data in part <spanx style="verb">L</spanx> as though it were part of <spanx style="verb">J</spanx>, though they have different cryptographic properties.
In particular, if the user believes that the entire message is signed, but cannot distinguish <spanx style="verb">L</spanx> from <spanx style="verb">J</spanx> then the author of <spanx style="verb">L</spanx> can effectively tamper with content of the signed message, breaking the user's expectation of integrity and authenticity.</t>

</section>
<section anchor="baroque-example"><name>A Baroque Example</name>

<t>Consider a message with the following overcomplicated structure:</t>

<figure><artwork><![CDATA[
M └┬╴multipart/encrypted
N  ├─╴application/pgp-encrypted
O  └─╴application/octet-stream
P   ↧ (decrypts to)
Q   └┬╴multipart/signed
R    ├┬╴multipart/mixed
S    │├┬╴multipart/signed
T    ││├─╴text/plain
U    ││└─╴application/pgp-signature
V    │└─╴text/plain
W    └─╴application/pgp-signature
]]></artwork></figure>

<t>The 3 Cryptographic Layers in such a message are rooted in parts <spanx style="verb">M</spanx>, <spanx style="verb">Q</spanx>, and <spanx style="verb">S</spanx>.
But the Cryptographic Envelope of the message consists only of the properties derived from the series <spanx style="verb">M</spanx>, <spanx style="verb">Q</spanx>.
The Cryptographic Payload of the message is part <spanx style="verb">R</spanx>.
Part <spanx style="verb">S</spanx> is an Errant Cryptographic Layer.</t>

<t>Note that this message has both a Cryptographic Envelope <em>and</em> an Errant Cryptographic Layer.</t>

<t>It is <bcp14>NOT RECOMMENDED</bcp14> to generate messages with such complicated structures.
Even if a receiving MUA can parse this structure properly, it is nearly impossible to render in a way that the user can reason about the cryptographic properties of part <spanx style="verb">T</spanx> compared to part <spanx style="verb">V</spanx>.</t>

</section>
</section>
<section anchor="cryptographic-summary"><name>Cryptographic Summary</name>

<t>The cryptographic status of an e-mail message with end-to-end cryptographic protections is known as the Cryptographic Summary.
A reasonable, simple Cryptographic Summary is derived from the aggregate properties of the layers in the Cryptographic Envelope.
This is a conceptual tool and a feature that an MUA can use to guide behavior and user experience, but it is not necessarily always directly exposed in any given user interface.
See <xref target="well-formed"/> for guidance and considerations about rendering the Cryptographic Summary to the user.</t>

</section>
</section>
<section anchor="message-composition"><name>Message Composition</name>

<t>This section describes the ideal composition of an e-mail message with end-to-end cryptographic protection.
A message composed with this form is most likely to achieve its end-to-end security goals.</t>

<section anchor="composition"><name>Message Composition Algorithm</name>

<t>This section roughly describes the steps that an MUA should use to compose a cryptographically-protected message that has a proper cryptographic envelope and payload.</t>

<t>The message composition algorithm takes three parameters:</t>

<t><list style="symbols">
  <t><spanx style="verb">origbody</spanx>: the traditional unprotected message body as a well-formed MIME tree (possibly just a single MIME leaf part).
As a well-formed MIME tree, <spanx style="verb">origbody</spanx> already has structural header fields present (see <xref target="structural-header-fields"/>).</t>
  <t><spanx style="verb">origheaders</spanx>: the intended non-structural header fields for the message, represented here as a list of <spanx style="verb">(h,v)</spanx> pairs, where <spanx style="verb">h</spanx> is a header field name and <spanx style="verb">v</spanx> is the associated value.</t>
  <t><spanx style="verb">crypto</spanx>: The series of cryptographic protections to apply (for example, "sign with the secret key corresponding to X.509 certificate X, then encrypt to X.509 certificates X and Y").
This is a routine that accepts a MIME tree as input (the Cryptographic Payload), wraps the input in the appropriate Cryptographic Envelope, and returns the resultant MIME tree as output.</t>
</list></t>

<t>The algorithm returns a MIME object that is ready to be injected into the mail system:</t>

<t><list style="symbols">
  <t>Apply <spanx style="verb">crypto</spanx> to <spanx style="verb">origbody</spanx>, yielding MIME tree <spanx style="verb">output</spanx></t>
  <t>For each header name and value <spanx style="verb">(h,v)</spanx> in <spanx style="verb">origheaders</spanx>:
  <list style="symbols">
      <t>Add header <spanx style="verb">h</spanx> to <spanx style="verb">output</spanx> with value <spanx style="verb">v</spanx></t>
    </list></t>
  <t>Return <spanx style="verb">output</spanx></t>
</list></t>

</section>
<section anchor="sign-then-encrypt"><name>Encryption Outside, Signature Inside</name>

<t>An e-mail message that is both signed and encrypted is signed <em>inside</em> the encryption, and not the other way around.
For example, when crafting an encrypted and signed message using a simple Cryptographic Envelope of a single layer (<xref target="simple-cryptographic-envelopes"/>) with PGP/MIME, the OpenPGP Encrypted Message object should contain an OpenPGP Signed Message.
Likewise, when using a multilayer Cryptographic Envelope (<xref target="multilayer-cryptographic-envelopes"/>), the outer layer should be an encryption layer and the inner layer should be a signing layer.</t>

<t>Putting the signature inside the encryption has two advantages:</t>

<t><list style="symbols">
  <t>The details of the signature remain confidential, visible only to the parties capable of decryption.</t>
  <t>Any mail transport agent that modifies the message is unlikely to be able to accidentally break the signature.</t>
</list></t>

<t>A conformant MUA <bcp14>MUST NOT</bcp14> generate an encrypted and signed message where the only signature is outside the encryption.</t>

</section>
<section anchor="no-encrypted-only"><name>Avoid Offering Encrypted-only Messages</name>

<t>When generating an e-mail, the user has options about what forms of end-to-end cryptographic protections to apply to it.</t>

<t>In some cases, offering any end-to-end cryptographic protection is harmful: it may confuse the recipient and offer no benefit.</t>

<t>In other cases, signing a message is useful (authenticity and integrity are desirable) but encryption is either impossible (for example, if the sender does not know how to encrypt to all recipients) or meaningless (for example, an e-mail message to a mailing list that is intended to be published to a public archive).</t>

<t>In other cases, full end-to-end confidentiality, authenticity, and integrity are desirable.</t>

<t>There is no common use case for generating an e-mail message with end-to-end confidentiality but without authenticity or integrity.</t>

<t>A conformant MUA will keep its message composition interface simple, so when presenting the user with a choice of cryptographic protection, it <bcp14>MUST</bcp14> offer no more than three choices:</t>

<t><list style="symbols">
  <t>no end-to-end cryptographic protection</t>
  <t>Verified (signed only)</t>
  <t>Confidential (signed and encrypted)</t>
</list></t>

<t>Note that these choices correspond to the simplified mental model in <xref target="simple-mental-model"/>.</t>

<t>The alternative approach, offering the user two boolean choices during message composition (one choice about signing, another choice about encryption) is a common anti-pattern among legacy MUAs, and creates additional usability hurdles for normal users:</t>

<t><list style="symbols">
  <t>A user who wants to send a signed and encrypted message will have to click two buttons instead of one.</t>
  <t>A user who clicks "Encrypt" but neglects to click "Signed" may not understand that they are creating a message which cannot be authenticated by the receiver.</t>
</list></t>

</section>
<section anchor="composing-reply"><name>Composing a Reply Message</name>

<t>When replying to a message, most MUAs compose an initial draft of the reply that contains quoted text from the original message.
A responsible MUA will take precautions to avoid leaking the cleartext of an encrypted message in such a reply.</t>

<t>If the original message was end-to-end encrypted, the replying MUA <bcp14>MUST</bcp14> either:</t>

<t><list style="symbols">
  <t>compose the reply with end-to-end encryption, or</t>
  <t>avoid including quoted text from the original message.</t>
</list></t>

<t>In general, MUAs <bcp14>SHOULD</bcp14> prefer the first option: to compose an encrypted reply.
This is what users expect.</t>

<t>However, in some circumstances, the replying MUA cannot compose an encrypted reply.
For example, the MUA might not have a valid, unexpired, encryption-capable certificate for all recipients.
This can also happen during composition when a user adds a new recipient into the reply, or manually toggles the cryptographic protections to remove encryption.</t>

<t>In this circumstance, the composing MUA <bcp14>SHOULD</bcp14> strip the quoted text from the original message, unless the user indicates that they are deliberately including previously confidential content in a non-confidential message.</t>

<t>Note additional nuance about replies to malformed messages that contain encryption in <xref target="reply-to-errant-encryption"/>.</t>

</section>
</section>
<section anchor="message-interpretation"><name>Message Interpretation</name>

<t>Despite the best efforts of well-intentioned senders to create e-mail messages with well-formed end-to-end cryptographic protection, receiving MUAs will inevitably encounter some messages with malformed end-to-end cryptographic protection.</t>

<t>This section offers guidance on dealing with both well-formed and malformed messages containing Cryptographic Layers.</t>

<section anchor="well-formed"><name>Rendering Well-formed Messages</name>

<t>A message is well-formed when it has a Cryptographic Envelope, a Cryptographic Payload, and no Errant Cryptographic Layers.
Rendering a well-formed message is straightforward.</t>

<t>The receiving MUA evaluates and assembles the cryptographic properties of the Cryptographic Envelope into a Cryptographic Summary and displays that status to the user in a secure, strictly-controlled part of the UI.
In particular, the part of the UI used to render the Cryptographic Summary of the message <bcp14>MUST NOT</bcp14> be spoofable, modifiable, or otherwise controllable by the received message itself.
By analogy, consider the "lock" icon in the address bar of the web browser: regardless of the content of the webpage, the lock icon will only be displayed when the transport to the web server is adequately secured.</t>

<t>Aside from this Cryptographic Summary, the message itself <bcp14>MUST</bcp14> be rendered as though the Cryptographic Payload is the body of the message.
The Cryptographic Layers themselves <bcp14>SHOULD NOT</bcp14> be rendered as distinct objects unless the MUA is providing the user with debugging information.</t>

</section>
<section anchor="errant-layers"><name>Errant Cryptographic Layers</name>

<t>If an incoming message has any Errant Cryptographic Layers, a conformant interpreting MUA <bcp14>MUST</bcp14> ignore those layers when rendering the Cryptographic Summary of the message to the user.</t>

<section anchor="errant-signing-layer"><name>Errant Signing Layer</name>

<t>When rendering a message with an Errant Cryptographic Layer that provides authenticity and integrity (via signatures), the message should be rendered by replacing the Cryptographic layer with the part it encloses.</t>

<t>For example, a message with this structure:</t>

<figure><artwork><![CDATA[
A └┬╴multipart/mixed
B  ├╴text/plain
C  ├┬╴multipart/signed
D  │├─╴image/jpeg
E  │└─╴application/pgp-signature
F  └─╴text/plain
]]></artwork></figure>

<t>Should be rendered identically to this:</t>

<figure><artwork><![CDATA[
A └┬╴multipart/mixed
B  ├─╴text/plain
D  ├─╴image/jpeg
F  └─╴text/plain
]]></artwork></figure>

<t>In such a situation, a conformant MUA <bcp14>MUST NOT</bcp14> indicate in the Cryptographic Summary that the message is signed.
It <bcp14>MUST</bcp14> indicate that the message is Unprotected.</t>

<section anchor="exception-mailing-list-footers"><name>Exception: Mailing List Footers</name>

<t>The use case described in <xref target="mailing-list-wrapping"/> is common enough in some contexts that a conformant MUA <bcp14>MAY</bcp14> decide to handle it as a special exception.</t>

<t>If the MUA determines that the message comes from a mailing list (for example, it has a <spanx style="verb">List-ID</spanx> header), and it has a structure that appends a footer to a signing-only Cryptographic Layer with a valid signature, such as:</t>

<figure><artwork><![CDATA[
H └┬╴multipart/mixed
I  ├┬╴multipart/signed
J  │├─╴[protected part, may be arbitrary MIME subtree]
K  │└─╴application/{pgp,pkcs7}-signature
L  └─╴[footer, typically text/plain]
]]></artwork></figure>

<t>or:</t>

<figure><artwork><![CDATA[
H └┬╴multipart/mixed
I  ├─╴application/pkcs7-mime; smime-type="signed-data"
   │⇩ (unwraps to)
J  │└─╴[protected part, may be an arbitrary MIME subtree]
L  └─╴[footer, typically text/plain]
]]></artwork></figure>

<t>Then, the MUA <bcp14>MAY</bcp14> indicate to the user that this is a Verified message that has been wrapped by the mailing list.</t>

<t>In this case, the MUA <bcp14>MUST</bcp14> distinguish the footer (part <spanx style="verb">L</spanx>) from the protected part (part <spanx style="verb">J</spanx>) when rendering any information about the signature.</t>

<t>One way to do this is to offer the user two different views of the message: the "mailing list" view, which hides any positive Cryptographic Summary but shows the footer:</t>

<figure><artwork><![CDATA[
Cryptographic Protections: Unprotected
H └┬╴multipart/mixed
J  ├─╴[protected part, may be arbitrary MIME subtree]
L  └─╴[footer, typically text/plain]
]]></artwork></figure>

<t>or the "sender's view", which shows the Cryptographic Summary as Verified, but hides the footer:</t>

<figure><artwork><![CDATA[
Cryptographic Protections: Verified [details from part I]
J └─╴[protected part, may be arbitrary MIME subtree]
]]></artwork></figure>

</section>
</section>
<section anchor="errant-encryption-layer"><name>Errant Encryption Layer</name>

<t>An MUA may encounter a message with an Errant Cryptographic Layer that offers confidentiality (encryption), and the MUA is capable of decrypting it.</t>

<t>The user wants to be able to see the contents of any message that they receive, so a conformant MUA in this situation <bcp14>SHOULD</bcp14> decrypt the part.</t>

<t>In this case, though, a conformant MUA <bcp14>MUST NOT</bcp14> indicate in the message's Cryptographic Summary that the message itself was encrypted.
Such an indication could be taken to mean that other (non-encrypted) parts of the message arrived with cryptographic confidentiality.</t>

<t>Furthermore, when decrypting an Errant Cryptographic Layer, the MUA <bcp14>MUST</bcp14> treat the decrypted cleartext as a distinct MIME subtree, and not attempt to merge or splice it together with any other part of the message.
This offers protection against the direct exfiltration (also known as EFAIL-DE) attacks described in <xref target="EFAIL"></xref> and so-called <spanx style="verb">multipart/oracle</spanx> attacks described in <xref target="ORACLE"></xref>.</t>

<section anchor="reply-to-errant-encryption"><name>Replying to a Message with an Errant Encryption Layer</name>

<t>Note that there is an asymmetry here between rendering and replying to a message with an Errant Encryption Layer.</t>

<t>When rendering, the MUA does not indicate that the message was encrypted, even if some subpart of it was decrypted for rendering.</t>

<t>When composing a reply to a message that has any encryption layer, even an errant one, the reply message <bcp14>SHOULD</bcp14> be marked for encryption, unless quoted and attributed text is not included in the reply, as noted in <xref target="composing-reply"/>.</t>

<t>When composing a reply to a message with an errant cryptographic layer, a conformant MUA <bcp14>MUST NOT</bcp14> decrypt any errant cryptographic layers when generating quoted or attributed text.
This will typically mean either leaving the ciphertext itself in the generated reply message, or simply not generating any quoted or attributed text at all.
This offers protection against the reply-based attacks described in <xref target="REPLY"></xref>.</t>

<t>In all circumstances, if the reply message cannot be encrypted (or if the user elects to not encrypt the reply), the composed reply <bcp14>MUST NOT</bcp14> include any material from the decrypted subpart.</t>

</section>
</section>
<section anchor="avoiding-non-mime-cryptographic-mechanisms"><name>Avoiding Non-MIME Cryptographic Mechanisms</name>

<t>In some cases, there may be a cryptographic signature or encryption that does not coincide with a MIME boundary.
For example so-called "PGP Inline" messages typically contain base64-encoded ("ASCII-armored", see <xref section="6" sectionFormat="of" target="I-D.ietf-openpgp-crypto-refresh-13"/>) ciphertext, or within the content of a MIME part.</t>

<section anchor="do-not-validate-non-mime-signatures"><name>Do Not Validate Non-MIME Signatures</name>

<t>When encountering cryptographic signatures in these positions, a conformant MUA <bcp14>MUST NOT</bcp14> attempt to validate any signature.
It is challenging to communicate to the user exactly which part of such a message is covered by the signature, so it is better to leave the message marked as Unprotected.
See <xref target="SPOOFING"></xref> for examples of spoofed message signatures that rely on permissive legacy clients that are willing to validate signatures in poorly-structured messages.</t>

</section>
<section anchor="skip-or-isolate-non-mime-decryption-when-rendering"><name>Skip or Isolate Non-MIME Decryption When Rendering</name>

<t>When encountering what appears to be encrypted data not at a MIME boundary, a conformant MUA <bcp14>MAY</bcp14> decline to decrypt the data at all.</t>

<t>During message rendering, if a conformant MUA attempts decryption of such a non-MIME encrypted section of an e-mail, it <bcp14>MUST</bcp14> synthesize a separate MIME part to contain only the decrypted data, and not attempt to merge or splice that part together with any other part of the message.
Keeping such a section distinct and isolated from any other part of the message offers protection against the direct exfiltration attacks (also known as EFAIL-DE) described in <xref target="EFAIL"></xref>.</t>

</section>
<section anchor="do-not-decrypt-non-mime-decryption-when-replying"><name>Do Not Decrypt Non-MIME Decryption when Replying</name>

<t>When composing a reply to a message with such a non-MIME encrypted section, a conformant MUA <bcp14>MUST NOT</bcp14> decrypt any non-MIME encrypted section when generating quoted or attributed text, similar to the guidance in <xref target="reply-to-errant-encryption"/>.</t>

<t>This offers protection against the reply-based attacks described in <xref target="REPLY"></xref>.</t>

</section>
</section>
</section>
<section anchor="forwarded-messages-with-cryptographic-protection"><name>Forwarded Messages with Cryptographic Protection</name>

<t>An incoming e-mail message may include an attached forwarded message, typically as a MIME subpart with <spanx style="verb">Content-Type: message/rfc822</spanx> (<xref target="RFC5322"/>) or <spanx style="verb">Content-Type: message/global</spanx> (<xref target="RFC5355"/>).</t>

<t>Regardless of the cryptographic protections and structure of the incoming message, the internal forwarded message may have its own Cryptographic Envelope.</t>

<t>The Cryptographic Layers that are part of the Cryptographic Envelope of the forwarded message are not Errant Cryptographic Layers of the surrounding message -- they are simply layers that apply to the forwarded message itself.</t>

<t>A conformant rendering MUA <bcp14>MUST NOT</bcp14> conflate the cryptographic protections of the forwarded message with the cryptographic protections of the incoming message.</t>

<t>A conformant rendering MUA <bcp14>MAY</bcp14> render a Cryptographic Summary of the protections afforded to the forwarded message by its own Cryptographic Envelope, as long as that rendering is unambiguously tied to the forwarded message itself, and cannot be spoofed either by the enclosing message or by the forwarded message.</t>

</section>
<section anchor="signature-failures"><name>Signature failures</name>

<t>A cryptographic signature may fail in multiple ways.
A conformant receiving MUA that discovers a failed signature treats the message as though the signature did not exist.
This is similar to the standard guidance for about failed DKIM signatures (see <xref section="6.1" sectionFormat="of" target="RFC6376"/>).</t>

<t>A conformant MUA <bcp14>MUST NOT</bcp14> render a message with a failed signature as more dangerous or more dubious than a comparable message without any signature at all.
In both cases, the Cryptographic Summary should be Unprotected.</t>

<t>A conformant MUA that encounters an encrypted-and-signed message where the signature is invalid <bcp14>SHOULD</bcp14> treat the message the same way that it would treat a message that is encryption-only, unless the MUA is providing the user with debugging information.</t>

<t>Some different ways that a signature may be invalid on a given message:</t>

<t><list style="symbols">
  <t>the signature is not cryptographically valid (the math fails).</t>
  <t>the signature relies on suspect cryptographic primitives (e.g., over a deprecated digest algorithm, or was made by a weak key, e.g., 1024-bit RSA); note that this requires the rendering MUA to have an explicit policy about what cryptographic primitives are acceptable.</t>
  <t>the signature is made by a certificate which the receiving MUA does not have access to.</t>
  <t>the certificate used to verify the signature was revoked.</t>
  <t>the certificate used to verify the signature was expired at the time that the signature was made.</t>
  <t>the certificate used to verify the signature does not correspond to the author of the message. (for X.509, there is no subjectAltName of type rfc822Name whose value matches an e-mail address found in <spanx style="verb">From:</spanx> or <spanx style="verb">Sender:</spanx>)</t>
  <t>the certificate used to verify the signature was not issued by an authority that the MUA user is willing to rely on for certifying the sender's e-mail address, and the user has no other reasonable indication that the certificate belongs to the sender's e-mail address.</t>
  <t>the signature indicates that it was made at a time much before or much after from the date of the message itself.</t>
  <t>The signature covers a message that depends on an external subresource that might change (see <xref target="external-subresources"/>).</t>
</list></t>

<t>A valid signature must pass all these tests, but of course invalid signatures may be invalid in more than one of the ways listed above.</t>

</section>
<section anchor="weak-encryption"><name>Weak Encryption</name>

<t>Sometimes, a MUA might encounter a message with a well-formed Cryptographic Envelope that uses a form of encryption with substantial known flaws.
For example, a PGP/MIME message might use a Symmetrically Encrypted Data packet, which is known to have malleable ciphertext (see <xref section="5.7" sectionFormat="of" target="I-D.ietf-openpgp-crypto-refresh-13"/>).
ِAs another example, an S/MIME message may use an <spanx style="verb">enveloped-data</spanx> MIME part with a <spanx style="verb">contentEncryptionAlgorithm</spanx> of <spanx style="verb">rc2-cbc</spanx> with <spanx style="verb">rc2ParameterVersion</spanx> of 160, meaning a 40-bit key (see <xref section="5.2" sectionFormat="of" target="RFC3370"/>), which is widely considered breakable via brute force with moderate hardware investment in 2024.
As cryptanalysis and hardware capacities advance, an implementation may widen the scope of what encryption mechanisms are considered weak.</t>

<t>A receiving MUA <bcp14>MUST</bcp14> warn the user that such a message has a known weakness.
The receiving MUA <bcp14>MAY</bcp14> decline to decrypt such a message at all.
If it decides to decrypt a message with a weak encryption layer, it <bcp14>MUST NOT</bcp14> indicate in the message's Cryptographic Summary that the message was encrypted, as the confidentiality of the message is suspect.
This is similar to the approach taken in <xref target="errant-encryption-layer"/> for messages with an Errant Encryption Layer.</t>

<t>Like the Errant Encryption Layer situation, there is an asymmetry between rendering and replying to a message with weak encryption.
The guidance in <xref target="reply-to-errant-encryption"/> should be followed when replying to a message with weak encryption as well.</t>

<t>A receiving MUA <bcp14>MAY</bcp14> also treat historically archived messages with weak encryption differently from modern messages.
For example, if an encryption algorithm was known to be weak in 2005, then a message that appears to have been encrypted with that algorithm in 1995 might decrypted with a warning, as an archival service.
But a message that appears to have been encrypted with that same weak algorithm in 2015 might be quarantined as a likely attack.</t>

<t>There are several possible ways to distinguish a historical message from a modern one, including:</t>

<t><list style="symbols">
  <t>The message timestamp (e.g., the <spanx style="verb">Date</spanx> header field)</t>
  <t>The time the message was first observed on the network (e.g., delivery of a new message via IMAP from a mailbox that had recently checked)</t>
  <t>The timestamp in any signature observed in the message</t>
  <t>The message structure (a message composed using protocol elements that were invented after the encryption algorithm was known weak is likely to be an attack than a legitimate archival message)</t>
</list></t>

</section>
</section>
<section anchor="reasoning-about-message-parts"><name>Reasoning about Message Parts</name>

<t>When generating or rendering messages, it is useful to know what parts of the message are likely to be displayed, and how.
This section introduces some common terms that can be applied to parts within the Cryptographic Payload.</t>

<section anchor="main-body-part"><name>Main Body Part</name>

<t>When an e-mail message is composed or rendered to the user there is typically one main view that presents a (mostly textual) part of the message.</t>

<t>While the message itself may be constructed of several distinct MIME parts in a tree, the part that is rendered to the user is the "Main Body Part".</t>

<t>When rendering a message, one of the primary jobs of the receiving MUA is identifying which part (or parts) is the Main Body Part.
Typically, this is found by traversing the MIME tree of the message looking for a leaf node that has a primary content type of <spanx style="verb">text</spanx> (e.g., <spanx style="verb">text/plain</spanx> or <spanx style="verb">text/html</spanx>) and is not <spanx style="verb">Content-Disposition: attachment</spanx>.</t>

<t>MIME tree traversal follows the first child of every <spanx style="verb">multipart</spanx> node, with the exception of <spanx style="verb">multipart/alternative</spanx>.
When traversing a <spanx style="verb">multipart/alternative</spanx> node, all children should be scanned, with preference given to the last child node with a MIME type that the MUA is capable of rendering directly.</t>

<t>An MUA <bcp14>MAY</bcp14> offer the user a mechanism to prefer a particular MIME type within <spanx style="verb">multipart/alternative</spanx> instead of the last renderable child.
For example, a user may explicitly prefer a <spanx style="verb">text/plain</spanx> alternative part over <spanx style="verb">text/html</spanx>.
Note that due to uncertainty about the capabilities and configuration of the receiving MUA, a conformant composing MUA should consider that multiple parts might be rendered as the Main Body Part when the message is ultimately viewed.
In particular, the composing MUA should ensure that any part likely to be viewed as the Main Body Part has the same semantic content as any other such part.</t>

<t>When composing a message, an originating MUA operating on behalf of an active user can identify which part (or parts) are the "main" parts: these are the parts the MUA generates from the user's editor.
Tooling that automatically generates e-mail messages should also have a reasonable estimate of which part (or parts) are the "main" parts, as they can be programmatically identified by the message author.</t>

<t>For a filtering program that attempts to transform an outbound message without any special knowledge about which parts are Main Body Parts, it can identify the likely parts by following the same routine as a receiving MUA.</t>

</section>
<section anchor="attachments"><name>Attachments</name>

<t>A message may contain one or more separated MIME parts that are intended for download or extraction.
Such a part is commonly called an "attachment", and is commonly identified by having <spanx style="verb">Content-Disposition: attachment</spanx>.</t>

<t>An MUA <bcp14>MAY</bcp14> identify a subpart as an attachment, or permit extraction of a subpart even when the subpart does not have <spanx style="verb">Content-Disposition: attachment</spanx>.</t>

<t>When generating a message with end-to-end cryptographic protection, any attachment <bcp14>MUST</bcp14> be included within the Cryptographic Payload.
If an attachment is found outside the Cryptographic Payload, then the message is not well-formed (see <xref target="well-formed"/>), and will not be handled by other MUAs as intended.</t>

<t>Some MUAs have tried to compose messages where each attachment is placed in its own cryptographic envelope.
Such a message is problematic for several reasons:</t>

<t><list style="symbols">
  <t>The attachments can be stripped, replaced, or reordered without breaking any cryptographic integrity mechanism.</t>
  <t>The resulting message may have a mix of cryptographic statuses (e.g., if a signature on one part fails but another succeeds, or if one part is encrypted and another is not).
This mix of statuses is difficult to represent to the user in a comprehensible way.</t>
  <t>The divisions between the different attachments are visible to operators of any mail transport agent (MTA) that handles the message, potentially resulting in a metadata leak.
For example, the MTA operator may learn the number of attachments, and the size of each attachment.</t>
</list></t>

<t>These messages are unlikely to be usefully interoperable without additional standardization work (see <xref target="split-attachments"/>).</t>

</section>
<section anchor="mime-part-examples"><name>MIME Part Examples</name>

<t>Consider a common message with the following MIME structure:</t>

<figure><artwork><![CDATA[
M └─╴application/pkcs7-mime
   ↧ (decrypts to)
N  └─╴application/pkcs7-mime
    ⇩ (unwraps to)
O   └┬╴multipart/mixed
P    ├┬╴multipart/alternative
Q    │├─╴text/plain
R    │└─╴text/html
S    └─╴image/png
]]></artwork></figure>

<t>Parts <spanx style="verb">M</spanx> and <spanx style="verb">N</spanx> comprise the Cryptographic Envelope.</t>

<t>Parts <spanx style="verb">Q</spanx> and <spanx style="verb">R</spanx> are both Main Body Parts.</t>

<t>If part <spanx style="verb">S</spanx> is <spanx style="verb">Content-Disposition: attachment</spanx>, then it is an attachment.
If part <spanx style="verb">S</spanx> has no <spanx style="verb">Content-Disposition</spanx> header, it is potentially ambiguous whether it is an attachment or not.
If the sender prefers a specific behavior, it should explicitly set the <spanx style="verb">Content-Disposition</spanx> header on part <spanx style="verb">S</spanx> to either <spanx style="verb">inline</spanx> or <spanx style="verb">attachment</spanx> as guidance to the receiving MUA.</t>

<t>Consider also this alternate structure:</t>

<figure><artwork><![CDATA[
M └─╴application/pkcs7-mime
   ↧ (decrypts to)
N  └─╴application/pkcs7-mime
    ⇩ (unwraps to)
O   └┬╴multipart/alternative
P    ├─╴text/plain
Q    └┬╴multipart/related
R     ├─╴text/html
S     └─╴image/png
]]></artwork></figure>

<t>In this case, parts <spanx style="verb">M</spanx> and <spanx style="verb">N</spanx> still comprise the Cryptographic Envelope.</t>

<t>Parts <spanx style="verb">P</spanx> and <spanx style="verb">R</spanx> (the first two leaf nodes within each subtree of part <spanx style="verb">O</spanx>) are the Main Body Parts.</t>

<t>Part <spanx style="verb">S</spanx> is more likely not to be an attachment, as the subtree layout suggests that it is only relevant for the HTML version of the message.
For example, it might be rendered as an image within the HTML alternative.</t>

</section>
</section>
<section anchor="cert-management"><name>Certificate Management</name>

<t>A cryptographically-capable MUA typically maintains knowledge about certificates for the user's own account(s), as well as certificates for the peers that it communicates with.</t>

<section anchor="peer-certificates"><name>Peer Certificates</name>

<t>Most certificates that a cryptographically-capable MUA will use will be certificates belonging to the parties that the user communicates with through the MUA.
This section discusses how to manage the certificates that belong to such a peer.</t>

<t>The MUA will need to be able to discover X.509 certificates for each peer, cache them, and select among them when composing an encrypted message.</t>

<t>Detailed guidance about how to do this is beyond the scope of this document, but future revisions may bring it into scope (see <xref target="more-peer-certs"/>).</t>

<section anchor="peer-cert-selection"><name>Peer Certificate Selection</name>

<t>When composing an encrypted message, the MUA needs to select an encryption-capable certificate for each recipient.</t>

<t>To select such a certificate for a given destination e-mail address, the MUA should look through all of its known certificates and verify that <em>all</em> of the conditions below are met:</t>

<t><list style="symbols">
  <t>The certificate must be valid, not expired or revoked.</t>
  <t>It must have a subjectAltName of type rfc822Name whose contents match the destination e-mail address.
In particular, the local-part of the two addresses should be an exact bytewise match, and the domain parts of the two addresses should be matched by ensuring label equivalence across the full domain name, as described in <xref section="2.3.2.4" sectionFormat="of" target="RFC5890"/>.</t>
  <t>The algorithm OID in the certificate's SPKI is known to the MUA and capable of encryption.
Examples include:
  <list style="symbols">
      <t>rsaEncryption (OID 1.2.840.113549.1.1.1), with keyUsage (OID 2.5.29.15) extension present and the "key encipherment" bit (value 32) set.</t>
      <t>curveX25519 (OID 1.3.101.110) with keyUsage extension present and the "key agreement" bit (value 8) set.</t>
    </list></t>
  <t>If extendedKeyUsage (OID 2.5.29.37) is present, it contains at least one of the following OIDs: e-mail protection (OID 1.3.6.1.5.5.7.3.4), anyExtendedKeyUsage (OID 2.5.29.37.0).</t>
</list></t>

<t>A conformant MUA may include more considerations when selecting a peer certificate as well, see <xref target="more-peer-cert-selection"/> for examples.</t>

</section>
</section>
<section anchor="local-certificates"><name>Local Certificates</name>

<t>The MUA also needs to know about one or more certificates associated with the user's e-mail account.
It is typically expected to have access to the secret key material associated with the public keys in those certificates.</t>

<t>While some basic guidance is offered here, it is beyond the scope of this document to describe all possible relevant guidance for local certificate and key material handling.
See <xref target="more-local-certs"/> for suggestions of guidance that a future version might bring into scope.</t>

<section anchor="local-certificate-setup"><name>Getting Certificates for the User</name>

<t>If a conformant MUA does not have any certificate or secret key for the user, it should help the user to generate, acquire, or import them with a minimum of difficulty.</t>

<section anchor="local-cert-smime"><name>User Certificates for S/MIME</name>

<t>For S/MIME, the user <bcp14>SHOULD</bcp14> have both a signing-capable certificate and an encryption-capable certificate (and the corresponding secret keys).
Using the same cryptographic key material for multiple algorithms (i.e., for both encryption and signing) has been the source of vulnerabilities in other (non-e-mail) contexts (e.g., <xref target="DROWN"/> and <xref target="IKE"/>).
The simplest way to avoid any comparable risk is to use distinct key material for each cryptographic algorithm.
A conformant MUA that generates S/MIME certificates for the user <bcp14>MUST</bcp14> generate distinct S/MIME certificates: one for encryption and another for signing, to avoid possible cross-protocol key misuse.</t>

<t>The simplest option for an S/MIME-capable MUA is for the MUA to permit the user to import a PKCS #12 (<xref target="RFC7292"/>) object that is expected to contain secret key material, end entity certificates for the user, and intermediate certification authority certificates that permit chaining from the end entity certs to widely-accepted trust anchors.
A conformant MUA that imports such a PKCS #12 bundle <bcp14>SHOULD</bcp14> warn the user if the bundle contains an S/MIME certificate and corresponding secret key where the same secret key is used for both encryption and signing.</t>

<t>An S/MIME-capable MUA that has access to user certificates and their corresponding secret key material should also offer the ability to export those objects into a well-formed PKCS #12 object that could be imported into another MUA operated by the same user.</t>

<t>Manual handling of PKCS #12 objects is challenging for most users.
Producing the initial PKCS #12 object typically can only be done with the aid of a certification authority via non-standardized, labor-intensive, and error-prone procedures that most users do not understand.
Furthermore, manual export and import incurs ongoing labor (for example, before certificate expiration) by the user which most users are unprepared to do (see <xref target="local-cert-maintenance"/>).</t>

<t>A better approach is for the MUA to integrate some form of automated certificate issuance procedure, for example, by using the ACME protocol for end user S/MIME certificates (<xref target="RFC8823"/>).</t>

<t>Another possible approach is integration with a cryptographic hardware token or smartcard that can provide certificates and permit the use of isolated secret key material, for example <xref target="PKCS11"></xref>, though this approach delegates the complexity of acquiring and managing certificates to management of the hardware token itself (see <xref target="smartcards"/>).</t>

<t>See also <xref target="I-D.woodhouse-cert-best-practice"/> for more recommendations about managing user certificates.</t>

</section>
<section anchor="local-cert-pgp"><name>User Certificates for PGP/MIME</name>

<t>As distinct from S/MIME, OpenPGP (<xref target="I-D.ietf-openpgp-crypto-refresh-13"/>) has a different set of common practices.
For one thing, a single OpenPGP certificate can contain both a signing-capable key and a distinct encryption-capable key, so only one certificate is needed for an e-mail user of OpenPGP, as long as the certificate has distinct key material for the different purposes.</t>

<t>Furthermore, a single OpenPGP certificate <bcp14>MAY</bcp14> be only self-signed, so the MUA can generate such a certificate entirely on its own.</t>

<t>An OpenPGP-capable MUA should have the ability to import and export OpenPGP Tranferable Secret Keys (see <xref section="10.2" sectionFormat="of" target="I-D.ietf-openpgp-crypto-refresh-13"/>), to enable manual transfer of user certificates and secret key material between multiple MUAs controlled by the user.</t>

<t>Since an OpenPGP certificate <bcp14>MAY</bcp14> be certified by third parties (whether formal certification authorities or merely other well-connected peers) the MUA <bcp14>SHOULD</bcp14> offer affordances to help the user acquire and merge third party certifications on their certificate.
When doing this, the MUA should prioritize third-party certifications from entities that the user's peers are likely to know about and be willing to rely on.</t>

<t>Since an OpenPGP certificate can grow arbitrarily large with third-party certifications, the MUA should assist the user in pruning it to ensure that it remains a reasonable size when transmitting it to other parties.</t>

</section>
<section anchor="local-key-generation"><name>Generate Secret Key Material Locally</name>

<t>Regardless of protocol used (S/MIME or PGP), when producing certificates for the end user, the MUA <bcp14>SHOULD</bcp14> ensure that it has generated secret key material locally, and <bcp14>MUST NOT</bcp14> accept secret key material from an untrusted external party as the basis for the user's certificate.
For example, a user who trusts their system administrator not to compromise their MUA may accept secret key material generated by the sysdmin, but probably should not accept secret key material generated by an unaffiliated online web service.</t>

<t>An MUA that accepts secret key material from a third party cannot prevent that third party from retaining this material.
A third party with this level of access could decrypt messages intended to be confidential for the user, or could forge messages that would appear to come from the user.</t>

</section>
</section>
<section anchor="local-cert-maintenance"><name>Local Certificate Maintenance</name>

<t>In the context of a single e-mail account managed by an MUA, where that e-mail account is expected to be able to use end-to-end cryptographic protections, the MUA <bcp14>SHOULD</bcp14> warn the user (or proactively fix the problem) when/if:</t>

<t><list style="symbols">
  <t>For S/MIME, the user's own certificate set for the account does not include a valid, unexpired encryption-capable X.509 certificate, and a valid, unexpired signature-capable X.509 certificate.</t>
  <t>For PGP/MIME, the user's own certificate does not include a valid, unexpired signing-capable key/subkey and a valid, unexpired encryption-capable key/subkey.</t>
  <t>Any of the user's own certificates for the account:
  <list style="symbols">
      <t>is due to expire in the next month (or at some other reasonable cadence).</t>
      <t>not match the e-mail address associated with the account in question.</t>
    </list></t>
  <t>Any of the user's own S/MIME certificates for the account:
  <list style="symbols">
      <t>does not have a keyUsage extension.</t>
      <t>does not contain an extendedKeyUsage extension.</t>
      <t>would be considered invalid by the MUA for any other reason if it were a peer certificate.</t>
    </list></t>
</list></t>

<t>An MUA that takes active steps to fix any of these problems before they arise is even more usable than just warning, but guidance on how to do active certificate maintenance is beyond scope for this current document (see <xref target="more-local-cert-maintenance"/>).</t>

<t>If the MUA does find any of these issues and chooses to warn the user, it should use one aggregate warning with simple language that the certificates might not be acceptable for other people, and recommend a course of action that the user can take to remedy the problem.</t>

</section>
<section anchor="sending-certificates"><name>Shipping Certificates in Outbound Messages</name>

<t>When sending mail, a conformant MUA <bcp14>SHOULD</bcp14> include copies of the user's own certificates (and potentially other certificates) in each message to facilitate future communication, unless it has specific knowledge that the other parties involved already know the relevant keys (for example, if it is mail between members within a domain that has a synchronized and up-to-date certificate directory).</t>

<t>The mechanism for including these certificates, and which certificates to include in the message, are protocol specific.</t>

<section anchor="shipping-certificates-in-smime-messages"><name>Shipping Certificates in S/MIME Messages</name>

<t>In any S/MIME SignedData object, certificates can be shipped in the "certificates" member.
In S/MIME EnvelopedData object, certificates can be shipped in the "originatorInfo.certs" member.</t>

<t>When a single S/MIME-protected e-mail message is encrypted and signed, it is usually sufficient to ship all the relevant certificates in the inner SignedData object's "certificates" member.</t>

<t>The S/MIME certificates shipped in such a message <bcp14>SHOULD</bcp14> include:</t>

<t><list style="symbols">
  <t>The user's own S/MIME signing certificate, so that signature on the current message can be validated.</t>
  <t>The user's own S/MIME encryption-capable certificate, so that the recipient can reply in encrypted form.</t>
  <t>On an encrypted message to multiple recipients, the encryption-capable peer certificates of the other recipients, so that any recipient can easily "reply all" without needing to search for certificates.</t>
  <t>Any intermediate CA certificates needed to chain all of the above to a widely-trusted set of root authorities.</t>
</list></t>

</section>
<section anchor="shipping-certificates-in-pgpmime-messages"><name>Shipping Certificates in PGP/MIME Messages</name>

<t>PGP/MIME does not have a single specific standard location for shipping certificates.</t>

<t>Some MUAs ship relevant OpenPGP certificates in a single MIME leaf of Content-Type "application/pgp-keys".
When such a message has cryptographic protections, to ensure that the message is well-formed, this kind of MIME part <bcp14>SHOULD</bcp14> be a leaf of the Cryptographic Payload, and not outside of it.
One problem with this approach is that it appears to recipients with non-cryptographic MUAs as an "attachment", which can lead to confusion if the user does not know how to use it.</t>

<t>Other implementations ship relevant OpenPGP certificates in "Autocrypt" or "Autocrypt-Gossip" message header fields (see <xref target="AUTOCRYPT"/>).
To ensure that those header fields receive the same cryptographic authenticity as the rest of the message, these header fields <bcp14>SHOULD</bcp14> be protected as described in <xref target="I-D.ietf-lamps-header-protection"/>.</t>

<t>The OpenPGP certificates shipped in such a message <bcp14>SHOULD</bcp14> include:</t>

<t><list style="symbols">
  <t>The user's own OpenPGP certificate, capable of both signing and encryption, so that the user can validate the message's signature and can encrypt future messages</t>
  <t>On an encrypted message to multiple recipients, the OpenPGP certificates of the other recipients, so that any recipient can easily "reply all" without needing to search for certificates.</t>
</list></t>

</section>
</section>
</section>
</section>
<section anchor="common-pitfalls"><name>Common Pitfalls and Guidelines</name>

<t>This section highlights a few "pitfalls" and guidelines based on these discussions and lessons learned.</t>

<section anchor="reading-sent-messages"><name>Reading Sent Messages</name>

<t>When sending a message, a typical MUA will store a copy of the message sent in sender's Sent mail folder so that the sender can read it later.
If the message is an encrypted message, storing it encrypted requires some forethought to ensure that the sender can read it in the future.</t>

<t>It is a common and simple practice to encrypt the message not only to the recipients of the message, but also to the sender.
One advantage of doing this is that the message that is sent on the wire can be identical to the message stored in the sender's Sent mail folder.
This allows the sender to review and re-read the message even though it was encrypted.</t>

<t>There are at least three other approaches that are possible to ensure future readability by the sender of the message, but with different tradeoffs:</t>

<t><list style="symbols">
  <t>Encrypt two versions of the message: one to the recipients (this version is sent on the wire), and one to the sender only (this version is stored in the sender's Sent folder).
This approach means that the message stored in the Sent folder is not byte-for-byte identical to the message sent to the recipients.
In the event that message delivery has a transient failure, the MUA cannot simply re-submit the stored message into the SMTP system and expect it to be readable by the recipient.</t>
  <t>Store a cleartext version of the message in the Sent folder.
This presents a risk of information leakage: anyone with access to the Sent folder can read the contents of the message.
Furthermore, any attempt to re-send the message needs to also re-apply the cryptographic transformation before sending, or else the message contents will leak upon re-send.
A conformant MUA <bcp14>SHOULD NOT</bcp14> store a cleartext copy in the Sent folder unless it knows that the Sent folder cannot be read by an attacker.
For example, if end-to-end confidentiality is desired, then storing the cleartext in an IMAP folder where a potentially adversarial server can read it defeats the purpose.</t>
  <t>A final option is that the MUA can store a copy of the message's encryption session key.
Standard e-mail encryption mechanisms (e.g., S/MIME and PGP/MIME) are hybrid mechanisms: the asymmetric encryption steps simply encrypt a symmetric "session key", which is used to encrypt the message itself.
If the MUA stores the session key itself, it can use the session key to decrypt the Sent message without needing the Sent message to be decryptable by the user's own asymmetric key.
An MUA doing this must take care to store (and backup) its stash of session keys, because if it loses them it will not be able to read the sent messages; and if someone else gains access to them, they can decrypt the sent messages.
This has the additional consequence that any other MUA accessing the same Sent folder cannot decrypt the message unless it also has access to the stashed session key.</t>
</list></t>

</section>
<section anchor="reading-encrypted-messages-after-certificate-expiration"><name>Reading Encrypted Messages after Certificate Expiration</name>

<t>When encrypting a message, the sending MUA should decline to encrypt to an expired certificate (see <xref target="peer-cert-selection"/>).
But when decrypting a message, as long as the viewing MUA has access to the appropriate secret key material, it should permit decryption of the message, even if the associated certificate is expired.
That is, the viewing MUA should not prevent the user from reading a message that they have already received.</t>

<t>The viewing MUA may warn the user when decrypting a message that appears to have been encrypted to an encryption-capable certificate that was expired at the time of encryption (e.g., based on the <spanx style="verb">Date:</spanx> header field of the message, or the timestamp in the cryptographic signature), but otherwise should not complain.</t>

<t>The primary goal of certificate expiration is to facilitate rotation of secret key material, so that secret key material does not need to be retained indefinitely.
Certificate expiration permits the user to destroy an older secret key if access to the messages received under it is no longer necessary (see also <xref target="secure-deletion"/>).</t>

</section>
<section anchor="message-header-fields"><name>Unprotected Message Header Fields</name>

<t>Many legacy cryptographically-aware MUAs only apply cryptographic protections to the body of the message, but leave the header fields unprotected.
This gives rise to vulnerabilities like information leakage (e.g., the Subject line is visible to a passive intermediary) or message tampering (e.g., the Subject line is replaced, effectively changing the semantics of a signed message).
These are not only security vulnerabilities, but usability problems, because the distinction between what is a header and what is the body of a message is unclear to many end users, and requires a more complex mental model than is necessary.
Useful security comes from alignment between simple mental models and tooling.</t>

<t>To avoid these concerns, a conformant MUA <bcp14>MUST</bcp14> implement header protection as described in <xref target="I-D.ietf-lamps-header-protection"/>.</t>

<t>Note that some message header fields, like <spanx style="verb">List-*</spanx>, <spanx style="verb">Archived-At</spanx>, and <spanx style="verb">Resent-*</spanx> are typically added by an intervening MUA (see <xref target="intervening-mua"/>), not by one of the traditional "ends" of an end-to-end e-mail exchange.
A receiving MUA may choose to consider the contents of these header fields on an end-to-end protected message as markers added during message transit, even if they are not covered by the end-to-end cryptographic protection.</t>

</section>
<section anchor="bcc-variants"><name>Composing an Encrypted Message with Bcc</name>

<t>When composing an encrypted message containing at least one recipient address in the <spanx style="verb">Bcc</spanx> header field, there is a risk that the encrypted message itself could leak information about the actual recipients, even if the <spanx style="verb">Bcc</spanx> header field does not mention the recipient.
For example, if the message clearly indicates which certificates it is encrypted to, the set of certificates can identify the recipients even if they are not named in the message header fields.</t>

<t>Because of these complexities, there are several interacting factors that need to be taken into account when composing an encrypted message with Bcc'ed recipients.</t>

<t><list style="symbols">
  <t><xref section="3.6.3" sectionFormat="of" target="RFC5322"/> describes a set of choices about whether (and how) to populate the <spanx style="verb">Bcc</spanx> field explicitly on Bcc'ed copies of the message, and in the copy stored in the sender's <spanx style="verb">Sent</spanx> folder.</t>
  <t>When separate copies are made for <spanx style="verb">Bcc</spanx>ed recipients, should each separate copy <em>also</em> be encrypted to the named recipients, or just to the designated <spanx style="verb">Bcc</spanx> recipient?</t>
  <t>When a copy is stored in the <spanx style="verb">Sent</spanx> folder, should that copy also be encrypted to <spanx style="verb">Bcc</spanx>ed recipients? (see also <xref target="reading-sent-messages"/>)</t>
  <t>When a message is encrypted, if there is a mechanism to include the certificates of the recipients, whose certificates should be included?</t>
</list></t>

<section anchor="bcc-recommendation"><name>Simple Encryption with Bcc</name>

<t>Here is a simple approach that tries to minimize the total number of variants of the message created while leaving a coherent view of the message itself:</t>

<t><list style="symbols">
  <t>No cryptographic payload contains any <spanx style="verb">Bcc</spanx> header field.</t>
  <t>The main copy of the message is signed and encrypted to all named recipients and to the sender.
A copy of this message is also stored in the sender's <spanx style="verb">Sent</spanx> folder.</t>
  <t>Each <spanx style="verb">Bcc</spanx> recipient receives a distinct copy of the message, with an identical cryptographic payload, and the message is signed and encrypted to that specific recipient and all the named recipients.
These copies are not stored in the sender's <spanx style="verb">Sent</spanx> folder.</t>
  <t>Any Bcc'ed recipient <bcp14>MUST NOT</bcp14> be taken into consideration when determining which certificates to include in the message.
In particular, certificates for Bcc'ed recipients <bcp14>MUST NOT</bcp14> included in any message.</t>
</list></t>

<section anchor="rationale"><name>Rationale</name>

<t>The approach described in <xref target="bcc-recommendation"/> aligns the list of cryptographic recipients as closely as possible with the set of named recipients, while still allowing a <spanx style="verb">Bcc</spanx>ed recipient to read their own copy, and to "Reply All" should they want to.</t>

<t>This should reduce user confusion on the receiving side: a recipient of such a message who naively looks at the user-facing header fields from their own mailbox will have a good sense of what cryptographic treatments have been applied to the message.
It also simplifies message composition and user experience: the message composer sees fields that match their expectations about what will happen to the message.
Additionally, it may preserve the ability for a Bcc'ed recipient to retain their anonymity, should they need to offer the signed cryptographic payload to an outside party as proof of the original sender's intent without revealing their own identity.</t>

</section>
</section>
</section>
<section anchor="draft-messages"><name>Draft Messages</name>

<t>When composing a message, most MUAs will save a copy of the as-yet-unsent message to a "Drafts" folder.
If that folder is itself stored somewhere not under the user's control (e.g., an IMAP mailbox), it would be a mistake to store the draft message in the clear, because its contents could leak.</t>

<t>This is the case even if the message is ultimately sent deliberately in the clear.
During message composition, the MUA does not know whether the message is intended to be sent encrypted or not.
For example, just before sending, the sender could decide to encrypt the message, and the MUA would have had no way of knowing.</t>

<t>The MUA <bcp14>SHOULD</bcp14> encrypt all draft messages, unless it has explicit knowledge that the message will not be encrypted when sent, or that the Drafts folder cannot be read by an attacker.
For example, if end-to-end confidentiality is desired, then storing a cleartext draft in an IMAP folder where a potentially adversarial server can read it defeats the purpose.</t>

<t>Furthermore, when encrypting a draft message, the message draft <bcp14>MUST</bcp14> only be encrypted to the user's own certificate, or to some equivalent secret key that only the user possesses.
A draft message encrypted in this way can be decrypted when the user wants to resume composing the message, but cannot be read by anyone else, including a potential intended recipient.
Note that a draft message encrypted in this way will only be resumable by another MUA attached to the same mailbox if that other MUA has access to the user's decryption-capable secret key.
This shared access to key material is also likely necessary for useful interoperability, but is beyond the scope of this document (see <xref target="cross-mua-local-keys"/>).</t>

<t>A conformant MUA <bcp14>MUST NOT</bcp14> sign a message draft with the user's normal signing key.
If draft signing is intended for cryptographic coordination between multiple MUAs of the same user, it should be negotiated with a different key (but see <xref target="cross-mua-local-keys"/>).</t>

<t>The message should only be encrypted to its recipients upon actually sending the message.
No reasonable user expects their message's intended recipients to be able to read a message that is not yet complete.</t>

</section>
<section anchor="mixed-recipients"><name>Composing a Message to Heterogeneous Recipients</name>

<t>When sending a message that the user intends to be encrypted, it's possible that some recipients will be unable to receive an encrypted copy.
For example, when Carol composes a message to Alice and Bob, Carol's MUA may be able to find a valid encryption-capable certificate for Alice, but none for Bob.</t>

<t>In this situation, there are four possible strategies, each of which has a negative impact on the experience of using encrypted mail.
Carol's MUA can:</t>

<t><list style="numbers">
  <t>send encrypted to Alice and Bob, knowing that Bob will be unable to read the message.</t>
  <t>send encrypted to Alice only, dropping Bob from the message recipient list.</t>
  <t>send the message in the clear to both Alice and Bob.</t>
  <t>send an encrypted copy of the message to Alice, and a cleartext copy to Bob.</t>
</list></t>

<t>Each of these strategies has different drawbacks.</t>

<t>The problem with approach 1 is that Bob will receive unreadable mail.</t>

<t>The problem with approach 2 is that Carol's MUA will not send the message to Bob, despite Carol asking it to.</t>

<t>The problem with approach 3 is that Carol's MUA will not encrypt the message, despite Carol asking it to.</t>

<t>Approach 4 has two problems:</t>

<t><list style="symbols">
  <t>Carol's MUA will release a cleartext copy of the message, despite Carol asking it to send the message encrypted.</t>
  <t>If Alice wants to "reply all" to the message, she may not be able to find an encryption-capable certificate for Bob either.
This puts Alice in an awkward and confusing position, one that users are unlikely to understand.
In particular, if Alice's MUA is following the guidance about replies to encrypted messages in <xref target="composing-reply"/>, having received an encrypted copy will make Alice's Reply buffer behave in an unusual fashion.</t>
</list></t>

<t>This is particularly problematic when the second recipient is not "Bob" but in fact a public mailing list or other visible archive, where messages are simply never encrypted.</t>

<t>Carol is unlikely to understand the subtleties and negative downstream interactions involved with approaches 1 and 4, so presenting the user with those choices is not advised.</t>

<t>The most understandable approach for an MUA with an active user is to ask the user (when they hit "send") to choose between approach 2 and approach 3.
If the user declines to choose between 2 and 3, the MUA can drop them back to their message composition window and let them make alternate adjustments.</t>

<t>See also further discussion of these scenarios in <xref target="I-D.dkg-mail-cleartext-copy"/>.</t>

</section>
<section anchor="proxy-dangers"><name>Message Transport Protocol Proxy: A Dangerous Implementation Choice</name>

<t>An implementer of end-to-end cryptographic protections may be tempted by a simple software design that piggybacks off of a mail protocol like SMTP Submission (<xref target="RFC6409"/>), IMAP (<xref target="RFC9051"/>), or JMAP (<xref target="RFC8621"/>) to handle message assembly and interpretation.
In such an architecture, a naive MUA speaks something like a "standard" protocol like SMTP, IMAP, or JMAP to a local proxy, and the proxy handles signing and encryption (outbound), and decryption and verification (inbound) internally on behalf of the user.
While such a "pluggable" architecture has the advantage that it is likely to be easy to apply to any mail user agent, it is problematic for the goals of end-to-end communication, especially in an existing cleartext ecosystem like e-mail, where any given message might be unsigned or signed, cleartext or encrypted.
In particular:</t>

<t><list style="symbols">
  <t>the user cannot easily and safely identify what protections any particular message has (including messages currently being composed), and</t>
  <t>the proxy itself is unaware of subtle nuances about the message that the MUA actually knows.</t>
</list></t>

<t>With a trustworthy and well-synchronized sidechannel or protocol extension between the MUA and the proxy, it is possible to deploy such an implementation safely, but the requirement for the sidechannel or extension eliminates the universal-deployability advantage of the scheme.</t>

<t>Similar concerns apply to any implementation bound by an API which operates on message objects alone, without any additional contextual parameters.</t>

<t>This section attempts to document some of the inherent risks involved with such an architecture.</t>

<section anchor="proxy-for-message-composition"><name>Dangers of a Submission Proxy for Message Composition</name>

<t>When composing and sending a message, the act of applying cryptographic protections has subtleties that cannot be directly expressed in the SMTP protocol used by Submission <xref target="RFC6409"/>, or in any other simple protocol that hands off a cleartext message for further processing.</t>

<t>For example, the sender cannot indicate via SMTP whether or not a given message <em>should</em> be encrypted (some messages, like those sent to a publicly archived mailing list, are pointless to encrypt), or select among multiple certificates for a recipient, if they exist (see <xref target="peer-cert-selection"/>).</t>

<t>Likewise, because such a proxy only interacts with the message when it is ready to be sent, it cannot indicate back to the user <em>during message composition</em> whether or not the message is able to be encrypted (that is, whether a valid certificate is available for each intended recipient).
A message author may write an entirely different message if they know that it will be protected end-to-end; but without this knowledge, the author is obliged either to write text that they presume will be intercepted, or to risk revealing sensitive content.</t>

<t>Even without encryption, deciding whether to sign or not (and which certificate to sign with, if more than one exists) is another choice that the proxy is ill-equipped to make.
The common message-signing techniques either render a message unreadable by any non-cryptographic MUA (i.e., PKCS7 signed-data), or appear as an attachment that can cause confusion to a naive recipient using a non-cryptographic MUA (i.e., multipart/signed).
If the sender knows that the recipient will not check signatures, they may prefer to leave a cleartext message without a cryptographic signature at all.</t>

<t>Furthermore, handling encryption properly depends on the context of any given message, which cannot be expressed by the MUA to the Submission proxy.
For example, decisions about how to handle encryption and quoted or attributed text may depend on the cryptographic status of the message that is being replied to (see <xref target="composing-reply"/>).</t>

<t>Additionally, such a proxy would need to be capable of managing the user's own key and certificate (see <xref target="local-certificates"/>).
How will the implementation indicate to the user when their own certificate is near expiry, for example?
How will any other error conditions be handled when communication with the user is needed?</t>

<t>While an extension to SMTP might be able to express all the necessary semantics that would allow a generic MUA to compose messages with standard cryptographic protections via a proxy, such an extension is beyond the scope of this document.
See <xref target="I-D.ietf-jmap-smime-sender-extensions"/> for an example of how an MUA using a proxy protocol might indicate signing and encryption instructions to its proxy.</t>

</section>
<section anchor="dangers-of-an-imap-proxy-for-message-rendering"><name>Dangers of an IMAP Proxy for Message Rendering</name>

<t>When receiving and rendering a message, the process of indicating to the user the cryptographic status of a message requires subtleties that are difficult to offer from a straightforwad IMAP (or POP <xref target="RFC1939"/>, or JMAP) proxy.</t>

<t>One approach such a proxy could take is to remove all the Cryptographic Layers from a well-formed message, and to package a description of those layers into a special header field that the MUA can read.
But this merely raises the question: what semantics need to be represented?
For example:</t>

<t><list style="symbols">
  <t>Was the message signed?  If so, by whom?  When?</t>
  <t>Should the details of the cryptographic algorithms used in any signatures found be indicated as well?</t>
  <t>Was the message encrypted?  if so, to whom?  What key was used to decrypt it?</t>
  <t>If both signed and encrypted, was the signing outside the encryption or inside?</t>
  <t>How should errant Cryptographic Layers (see <xref target="errant-cryptographic-layers"/>) be dealt with?</t>
  <t>What cryptographic protections do the header fields of the message have? (see <xref target="I-D.ietf-lamps-header-protection"/>)</t>
  <t>How are any errors or surprises communicated to the user?</t>
</list></t>

<t>If the proxy passes any of this cryptographic status to the client in an added header field, it must also ensure that no such header field is present on the messages it receives before processing it.
If it were to allow such a header field through unmodified to any client that is willing to trust its contents, an attacker could spoof the field to make the user believe lies about the cryptographic status of the message.
In order for an MUA to be confident in such a header field, then, it needs a guarantee from the proxy that any header it produces will be safe.
How does the MUA reliably negotiate this guarantee with the proxy?
If the proxy can no longer offer this guarantee, how will the MUA know that things have changed?</t>

<t>If such an inbound proxy handles certificate discovery in inbound messages (see <xref target="peer-discovery-incoming"/>), it will also need to communicate the results of that discovery process to its corresponding outbound proxy for message composition (see <xref target="proxy-for-message-composition"/>).</t>

<t>While an extension to IMAP (or POP, or JMAP) might be able to express all the necessary semantics that would allow a generic MUA to indicate standardized cryptographic message status, such an extension is beyond the scope of this document.
<xref target="RFC9219"/> describes S/MIME signature verification status over JMAP, which is a subset of the cryptographic status information described here.</t>

</section>
<section anchor="who-controls-the-proxy"><name>Who Controls the Proxy?</name>

<t>Finally, consider that the naive proxy deployment approach is risky precisely because of its opacity to the end user.
Such a deployment could be placed anywhere in the stack, including on a machine that is not ultimately controlled by the end user, making it effectively a form of transport protection, rather than end-to-end protection.</t>

<t>An MUA explicitly under the control of the end user with thoughtful integration can offer UI/UX and security guarantees that a simple proxy cannot provide.
See also <xref target="proxy-extensions"/> for suggestions of future work that might augment a proxy to make it safer.</t>

</section>
</section>
<section anchor="intervening-mua"><name>Intervening MUAs Do Not Handle End-to-End Cryptographic Protections</name>

<t>Some Mail User Agents (MUAs) will resend a message in identical form (or very similar form) to the way that they received it.
For example, consider the following use cases:</t>

<t><list style="symbols">
  <t>A mail expander or mailing list that receives a message and re-sends it to all subscribers (see also <xref target="mailing-lists"/> for more discussion of mailing lists).</t>
  <t>An individual user who reintroduces a message they received into the mail transport system (see <xref section="3.6.6" sectionFormat="of" target="RFC5322"/>).</t>
  <t>An automated e-mail intake system that forwards a report to the mailboxes of responsible staffers.</t>
</list></t>

<t>These MUAs intervene in message transport by receiving and then re-injecting messages into the mail transport system.
In some cases, the original sender or final recipient of a message that has passed through such an MUA may be unaware of the intervention.
(Note that an MUA that forwards a received message as a attachment (MIME subpart) of type <spanx style="verb">message/rfc822</spanx> or <spanx style="verb">message/global</spanx> or "inline" in the body of a message is <em>not</em> acting as an intervening MUA in this sense, because the forwarded message is encapsulated within a visible outer message that is clearly from the MUA itself.)</t>

<t>An intervening MUA should be aware of end-to-end cryptographic protections that might already exist on messages that they re-send.
In particular, it is unclear what the "end-to-end" properties are of a message that has been handled by an intervening MUA.
For signed-only messages, if the intervening MUA makes any substantive modifications to the message as it passes it along, it may break the signature from the original sender.
In many cases, breaking the original signature is the appropriate result, since the original message has been modified, and the original sender has no control over the modifications made by the intervening MUA.
For encrypted-and-signed messages, if the intervening MUA is capable of decrypting the message, it must be careful when re-transmitting the message.
Will the new recipient be able to decrypt it?
If not, will the message be useful to the recipient?
If not, it may not make sense to re-send the message.</t>

<t>Beyond the act of re-sending, an intervening MUA should not itself try to apply end-to-end cryptographic protections on a message that it is resending unless directed otherwise by some future specification.
Additional layers of cryptographic protection added in an ad-hoc way by an intervening MUA are more likely to confuse the recipient and will not be interpretable as end-to-end protections as they do not originate with the original sender of the message.</t>

</section>
<section anchor="external-subresources"><name>External Subresources in MIME Parts Break Cryptographic Protections</name>

<t>A MIME part with a content type that can refer to external resources (like <spanx style="verb">text/html</spanx>) may itself have some sort of end-to-end cryptographic protections.
However, retrieving or rendering these external resources may violate the properties that users expect from cryptographic protection.</t>

<t>As a baseline, retrieving the external resource at the time a message is read can be used as a "web bug", leaking the activity and network location of the receiving user to the server hosting the external resource.
This privacy risk is present, of course, even for messages with no cryptographic protections, but may be even more surprising to users who are shown some level of security indicator about a given message.</t>

<t>Other problems with external resources are more specifically bound to cryptographic protections.</t>

<t>For example, an signed e-mail message with at <spanx style="verb">text/html</spanx> part that refers to an external image (i.e., via <spanx style="verb">&lt;img src="https://example.com/img.png"&gt;</spanx>) may render differently if the hosting webserver decides to serve different content at the source URL for the image.
This effectively breaks the goals of integrity and authenticity that the user should be able to rely on for signed messages, unless the external subresource has strict integrity guarantees (e.g., via <xref target="SRI"/>).</t>

<t>Likewise, fetching an external subresource for an encrypted-and-signed message effectively breaks goals of privacy and confidentiality for the user.</t>

<t>This is loosely analogous to security indicator problems that arose for web browsers as described in <xref target="mixed-content"/>.
However, while fetching the external subresource over https is sufficient to avoid a "mixed content" warning from most browsers, it is insufficicent for an MUA that wants to offer its users true end-to-end guarantees for e-mail messages.</t>

<t>A conformant sending MUA that applies signing-only cryptographic protection to a new e-mail message with an external subresource should take one of the following options:</t>

<t><list style="symbols">
  <t>pre-fetch the external subresource and include it in the message itself,</t>
  <t>use a strong integrity mechanism like Subresource Integrity (<xref target="SRI"/>) to guarantee the content of the subresource (though this does not fix the "web bug" privacy risk described above), or</t>
  <t>prompt the composing user to remove the subresource from the message.</t>
</list></t>

<t>A conformant sending MUA that applies encryption to a new e-mail message with an external resource cannot depend on subresource integrity to protect the privacy and confidentiality of the message, so it should either pre-fetch the external resource to include it in the message, or prompt the composing user to remove it before sending.</t>

<t>A conformant receiving MUA that encounters a message with end-to-end cryptographic protections that contain a subresource <bcp14>MUST</bcp14> either refuse to retrieve and render the external subresource, or it should decline to treat the message as having cryptographic protections.
For example, it could indicate in the Cryptographic Summary that the message is Unprotected.</t>

<t>Note that when composing a message reply with quoted text from the original message, if the original message did contain an external resource, the composing MUA <bcp14>SHOULD NOT</bcp14> fetch the external resource solely to include it in the reply message, as doing so would trigger the "web bug" at reply composition time.
Instead, the safest way to deal with quoted text that contains an external resource in an end-to-end encrypted reply is to strip any reference to the external resource during initial composition of the reply.</t>

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

<t>This document does not require anything from IANA.</t>

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

<t>This entire document addresses security considerations about end-to-end cryptographic protections for e-mail messages.</t>

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

<t>The set of constructs and recommendations in this document are derived from discussions with many different implementers, including
Bjarni Rúnar Einarsson,
Daniel Huigens,
David Bremner,
Deb Cooley,
Eliot Lear,
Fabian Ising,
Heiko Schaefer,
Holger Krekel,
Jameson Rollins,
John Levine,
Jonathan Hammell,
juga,
Patrick Brunschwig,
Paul Kyzivat,
Pete Resnick,
Roman Danyliw,
Santosh Chokhani,
Stephen Farrell, and
Vincent Breitmoser.</t>

</section>


  </middle>

  <back>


    <references title='Normative References'>



<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='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='RFC4289'>
  <front>
    <title>Multipurpose Internet Mail Extensions (MIME) Part Four: Registration Procedures</title>
    <author fullname='N. Freed' initials='N.' surname='Freed'/>
    <author fullname='J. Klensin' initials='J.' surname='Klensin'/>
    <date month='December' year='2005'/>
    <abstract>
      <t>This document specifies IANA registration procedures for MIME external body access types and content-transfer-encodings. 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='13'/>
  <seriesInfo name='RFC' value='4289'/>
  <seriesInfo name='DOI' value='10.17487/RFC4289'/>
</reference>

<reference anchor='RFC2119'>
  <front>
    <title>Key words for use in RFCs to Indicate Requirement Levels</title>
    <author fullname='S. Bradner' initials='S.' surname='Bradner'/>
    <date month='March' year='1997'/>
    <abstract>
      <t>In many standards track documents several words are used to signify the requirements in the specification. These words are often capitalized. This document defines these words as they should be interpreted in IETF documents. This document specifies an Internet Best Current Practices for the Internet Community, and requests discussion and suggestions for improvements.</t>
    </abstract>
  </front>
  <seriesInfo name='BCP' value='14'/>
  <seriesInfo name='RFC' value='2119'/>
  <seriesInfo name='DOI' value='10.17487/RFC2119'/>
</reference>

<reference anchor='RFC8174'>
  <front>
    <title>Ambiguity of Uppercase vs Lowercase in RFC 2119 Key Words</title>
    <author fullname='B. Leiba' initials='B.' surname='Leiba'/>
    <date month='May' year='2017'/>
    <abstract>
      <t>RFC 2119 specifies common key words that may be used in protocol specifications. This document aims to reduce the ambiguity by clarifying that only UPPERCASE usage of the key words have the defined special meanings.</t>
    </abstract>
  </front>
  <seriesInfo name='BCP' value='14'/>
  <seriesInfo name='RFC' value='8174'/>
  <seriesInfo name='DOI' value='10.17487/RFC8174'/>
</reference>

<reference anchor='RFC5890'>
  <front>
    <title>Internationalized Domain Names for Applications (IDNA): Definitions and Document Framework</title>
    <author fullname='J. Klensin' initials='J.' surname='Klensin'/>
    <date month='August' year='2010'/>
    <abstract>
      <t>This document is one of a collection that, together, describe the protocol and usage context for a revision of Internationalized Domain Names for Applications (IDNA), superseding the earlier version. It describes the document collection and provides definitions and other material that are common to the set. [STANDARDS-TRACK]</t>
    </abstract>
  </front>
  <seriesInfo name='RFC' value='5890'/>
  <seriesInfo name='DOI' value='10.17487/RFC5890'/>
</reference>


<reference anchor='I-D.ietf-lamps-header-protection'>
   <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 Project</organization>
      </author>
      <author fullname='Alexey Melnikov' initials='A.' surname='Melnikov'>
         <organization>Isode Ltd</organization>
      </author>
      <date day='1' month='March' year='2024'/>
      <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 ([RFC8551]) 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-20'/>
   
</reference>




    </references>

    <references title='Informative References'>

<reference anchor="AUTOCRYPT" target="https://autocrypt.org/">
  <front>
    <title>Autocrypt - Convenient End-to-End Encryption for E-Mail</title>
    <author initials="V." surname="Breitmoser" fullname="Vincent Breitmoser">
      <organization></organization>
    </author>
    <author initials="H." surname="Krekel" fullname="Holger Krekel">
      <organization></organization>
    </author>
    <author initials="D. K." surname="Gillmor" fullname="Daniel Kahn Gillmor">
      <organization></organization>
    </author>
    <date year="2018" month="July"/>
  </front>
</reference>
<reference anchor="chrome-indicators" target="https://blog.chromium.org/2018/05/evolving-chromes-security-indicators.html">
  <front>
    <title>Evolving Chrome's security indicators</title>
    <author initials="E." surname="Schechter" fullname="Emily Schechter">
      <organization></organization>
    </author>
    <date year="2018" month="May"/>
  </front>
</reference>
<reference anchor="EFAIL" target="https://efail.de">
  <front>
    <title>Efail: breaking S/MIME and OpenPGP email encryption using exfiltration channels</title>
    <author initials="D." surname="Poddebniak" fullname="Damian Poddebniak">
      <organization></organization>
    </author>
    <author initials="C." surname="Dresen" fullname="Christian Dresen">
      <organization></organization>
    </author>
    <author initials="J." surname="Müller" fullname="Jens Müller">
      <organization></organization>
    </author>
    <author initials="F." surname="Ising" fullname="Fabian Ising">
      <organization></organization>
    </author>
    <author initials="S." surname="Schinzel" fullname="Sebastian Schinzel">
      <organization></organization>
    </author>
    <author initials="S." surname="Friedberger" fullname="Simon Friedberger">
      <organization></organization>
    </author>
    <author initials="J." surname="Somorovsky" fullname="Juraj Somorovsky">
      <organization></organization>
    </author>
    <author initials="J." surname="Schwenk" fullname="Jörg Schwenk">
      <organization></organization>
    </author>
    <date year="2018" month="August"/>
  </front>
</reference>
<reference anchor="mixed-content" target="https://www.w3.org/TR/mixed-content/">
  <front>
    <title>Mixed Content</title>
    <author >
      <organization></organization>
    </author>
    <date year="2023" month="February"/>
  </front>
</reference>
<reference anchor="ORACLE" target="https://www.usenix.org/conference/usenixsecurity23/presentation/ising">
  <front>
    <title>Content-Type: multipart/oracle Tapping into Format Oracles in Email End-to-End Encryption</title>
    <author initials="F." surname="Ising" fullname="Fabian Ising">
      <organization></organization>
    </author>
    <author initials="D." surname="Poddebniak" fullname="Damian Poddebniak">
      <organization></organization>
    </author>
    <author initials="T." surname="Kappert" fullname="Tobias Kappert">
      <organization></organization>
    </author>
    <author initials="C." surname="Saatjohann" fullname="Christoph Saatjohann">
      <organization></organization>
    </author>
    <author initials="S." surname="Schinzel" fullname="Sebastian Schinzel">
      <organization></organization>
    </author>
    <date year="2023" month="August"/>
  </front>
</reference>
<reference anchor="SRI" target="https://www.w3.org/TR/SRI/">
  <front>
    <title>Subresource Integrity</title>
    <author >
      <organization></organization>
    </author>
    <date year="2016" month="June"/>
  </front>
</reference>
<reference anchor="PKCS11" target="https://docs.oasis-open.org/pkcs11/pkcs11-spec/v3.1/os/pkcs11-spec-v3.1-os.html">
  <front>
    <title>PKCS</title>
    <author initials="D." surname="Bong" fullname="Dieter Bong">
      <organization></organization>
    </author>
    <author initials="T." surname="Cox" fullname="Tony Cox">
      <organization></organization>
    </author>
    <date year="2023" month="July" day="23"/>
  </front>
</reference>
<reference anchor="DROWN" target="https://drownattack.com/">
  <front>
    <title>DROWN: Breaking TLS using SSLv2</title>
    <author initials="N." surname="Aviram" fullname="Nimrod Aviram">
      <organization></organization>
    </author>
    <author initials="S." surname="Schinzel" fullname="Sebastian Schinzel">
      <organization></organization>
    </author>
    <author initials="J." surname="Somorovsky" fullname="Juraj Somorovsky">
      <organization></organization>
    </author>
    <author initials="N." surname="Heninger" fullname="Nadia Heninger">
      <organization></organization>
    </author>
    <author initials="M." surname="Dankel" fullname="Maik Dankel">
      <organization></organization>
    </author>
    <author initials="J." surname="Steube" fullname="Jens Steube">
      <organization></organization>
    </author>
    <author initials="L." surname="Valenta" fullname="Luke Valenta">
      <organization></organization>
    </author>
    <author initials="D." surname="Adrian" fullname="David Adrian">
      <organization></organization>
    </author>
    <author initials="J. A." surname="Halderman" fullname="J. Alex Halderman">
      <organization></organization>
    </author>
    <author initials="V." surname="Dukhovni" fullname="Viktor Dukhovni">
      <organization></organization>
    </author>
    <author initials="E." surname="Käsper" fullname="Emilia Käsper">
      <organization></organization>
    </author>
    <author initials="S." surname="Cohney" fullname="Shaanan Cohney">
      <organization></organization>
    </author>
    <author initials="S." surname="Engels" fullname="Susanne Engels">
      <organization></organization>
    </author>
    <author initials="C." surname="Paar" fullname="Christof Paar">
      <organization></organization>
    </author>
    <author initials="Y." surname="Shavitt" fullname="Yuval Shavitt">
      <organization></organization>
    </author>
    <date year="2016" month="March"/>
  </front>
</reference>
<reference anchor="IKE" target="https://www.usenix.org/system/files/conference/usenixsecurity18/sec18-felsch.pdf">
  <front>
    <title>The Dangers of Key Reuse: Practical Attacks on IPsec IKE</title>
    <author initials="D." surname="Felsch" fullname="Dennis Felsch">
      <organization></organization>
    </author>
    <author initials="M." surname="Grothe" fullname="Martin Grothe">
      <organization></organization>
    </author>
    <author initials="J." surname="Schwenk" fullname="Jörg Schwenk">
      <organization></organization>
    </author>
    <author initials="A." surname="Czubak" fullname="Adam Czubak">
      <organization></organization>
    </author>
    <author initials="M." surname="Szymane" fullname="Marcin Szymane">
      <organization></organization>
    </author>
    <date year="2018" month="August"/>
  </front>
</reference>


<reference anchor='REPLY'>
  <front>
    <title>Re: What’s Up Johnny?: Covert Content Attacks on Email End-to-End Encryption</title>
    <author fullname='Jens Müller' initials='J.' surname='Müller'>
      <organization/>
    </author>
    <author fullname='Marcus Brinkmann' initials='M.' surname='Brinkmann'>
      <organization/>
    </author>
    <author fullname='Damian Poddebniak' initials='D.' surname='Poddebniak'>
      <organization/>
    </author>
    <author fullname='Sebastian Schinzel' initials='S.' surname='Schinzel'>
      <organization/>
    </author>
    <author fullname='Jörg Schwenk' initials='J.' surname='Schwenk'>
      <organization/>
    </author>
    <date year='2019'/>
  </front>
  <seriesInfo name='Applied Cryptography and Network Security' value='pp. 24-42'/>
  <seriesInfo name='DOI' value='10.1007/978-3-030-21568-2_2'/>
</reference>


<reference anchor="SPOOFING" target="https://www.usenix.org/system/files/sec19-muller.pdf">
  <front>
    <title>“Johnny, you are fired!” – Spoofing OpenPGP and S/MIME Signatures in Emails</title>
    <author initials="J." surname="Müller" fullname="Jens Müller">
      <organization></organization>
    </author>
    <author initials="M." surname="Brinkmann" fullname="Marcus Brinkmann">
      <organization></organization>
    </author>
    <author initials="D." surname="Poddebniak" fullname="Damian Poddebniak">
      <organization></organization>
    </author>
    <author initials="H." surname="Böck" fullname="Hanno Böck">
      <organization></organization>
    </author>
    <author initials="S." surname="Schinzel" fullname="Sebastian Schinzel">
      <organization></organization>
    </author>
    <author initials="J." surname="Somorovsky" fullname="Juraj Somorovsky">
      <organization></organization>
    </author>
    <author initials="J." surname="Schwenk" fullname="Jörg Schwenk">
      <organization></organization>
    </author>
    <date year="2019" month="August"/>
  </front>
</reference>


<reference anchor='RFC2045'>
  <front>
    <title>Multipurpose Internet Mail Extensions (MIME) Part One: Format of Internet Message Bodies</title>
    <author fullname='N. Freed' initials='N.' surname='Freed'/>
    <author fullname='N. Borenstein' initials='N.' surname='Borenstein'/>
    <date month='November' year='1996'/>
    <abstract>
      <t>This initial document specifies the various headers used to describe the structure of MIME messages. [STANDARDS-TRACK]</t>
    </abstract>
  </front>
  <seriesInfo name='RFC' value='2045'/>
  <seriesInfo name='DOI' value='10.17487/RFC2045'/>
</reference>

<reference anchor='RFC3207'>
  <front>
    <title>SMTP Service Extension for Secure SMTP over Transport Layer Security</title>
    <author fullname='P. Hoffman' initials='P.' surname='Hoffman'/>
    <date month='February' year='2002'/>
    <abstract>
      <t>This document describes an extension to the SMTP (Simple Mail Transfer Protocol) service that allows an SMTP server and client to use TLS (Transport Layer Security) to provide private, authenticated communication over the Internet. This gives SMTP agents the ability to protect some or all of their communications from eavesdroppers and attackers. [STANDARDS-TRACK]</t>
    </abstract>
  </front>
  <seriesInfo name='RFC' value='3207'/>
  <seriesInfo name='DOI' value='10.17487/RFC3207'/>
</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='RFC7435'>
  <front>
    <title>Opportunistic Security: Some Protection Most of the Time</title>
    <author fullname='V. Dukhovni' initials='V.' surname='Dukhovni'/>
    <date month='December' year='2014'/>
    <abstract>
      <t>This document defines the concept "Opportunistic Security" in the context of communications protocols. Protocol designs based on Opportunistic Security use encryption even when authentication is not available, and use authentication when possible, thereby removing barriers to the widespread use of encryption on the Internet.</t>
    </abstract>
  </front>
  <seriesInfo name='RFC' value='7435'/>
  <seriesInfo name='DOI' value='10.17487/RFC7435'/>
</reference>

<reference anchor='RFC3274'>
  <front>
    <title>Compressed Data Content Type for Cryptographic Message Syntax (CMS)</title>
    <author fullname='P. Gutmann' initials='P.' surname='Gutmann'/>
    <date month='June' year='2002'/>
    <abstract>
      <t>This document defines a format for using compressed data as a Cryptographic Message Syntax (CMS) content type. Compressing data before transmission provides a number of advantages, including the elimination of data redundancy which could help an attacker, speeding up processing by reducing the amount of data to be processed by later steps (such as signing or encryption), and reducing overall message size. Although there have been proposals for adding compression at other levels (for example at the MIME or SSL level), these don't address the problem of compression of CMS content unless the compression is supplied by an external means (for example by intermixing MIME and CMS). [STANDARDS-TRACK]</t>
    </abstract>
  </front>
  <seriesInfo name='RFC' value='3274'/>
  <seriesInfo name='DOI' value='10.17487/RFC3274'/>
</reference>


<reference anchor='I-D.ietf-openpgp-crypto-refresh-13'>
   <front>
      <title>OpenPGP</title>
      <author fullname='Paul Wouters' initials='P.' surname='Wouters'>
         <organization>Aiven</organization>
      </author>
      <author fullname='Daniel Huigens' initials='D.' surname='Huigens'>
         <organization>Proton AG</organization>
      </author>
      <author fullname='Justus Winter' initials='J.' surname='Winter'>
         <organization>Sequoia-PGP</organization>
      </author>
      <author fullname='Niibe Yutaka' initials='N.' surname='Yutaka'>
         <organization>FSIJ</organization>
      </author>
      <date day='4' month='January' year='2024'/>
      <abstract>
	 <t>   This document specifies the message formats used in OpenPGP.  OpenPGP
   provides encryption with public-key or symmetric cryptographic
   algorithms, digital signatures, compression and key management.

   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.

   This document obsoletes: RFC 4880 (OpenPGP), RFC 5581 (Camellia in
   OpenPGP) and RFC 6637 (Elliptic Curves in OpenPGP).

	 </t>
      </abstract>
   </front>
   <seriesInfo name='Internet-Draft' value='draft-ietf-openpgp-crypto-refresh-13'/>
   
</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='RFC5355'>
  <front>
    <title>Threats Introduced by Reliable Server Pooling (RSerPool) and Requirements for Security in Response to Threats</title>
    <author fullname='M. Stillman' initials='M.' role='editor' surname='Stillman'/>
    <author fullname='R. Gopal' initials='R.' surname='Gopal'/>
    <author fullname='E. Guttman' initials='E.' surname='Guttman'/>
    <author fullname='S. Sengodan' initials='S.' surname='Sengodan'/>
    <author fullname='M. Holdrege' initials='M.' surname='Holdrege'/>
    <date month='September' year='2008'/>
    <abstract>
      <t>Reliable Server Pooling (RSerPool) is an architecture and set of protocols for the management and access to server pools supporting highly reliable applications and for client access mechanisms to a server pool. This document describes security threats to the RSerPool architecture and presents requirements for security to thwart these threats. This memo provides information for the Internet community.</t>
    </abstract>
  </front>
  <seriesInfo name='RFC' value='5355'/>
  <seriesInfo name='DOI' value='10.17487/RFC5355'/>
</reference>

<reference anchor='RFC3370'>
  <front>
    <title>Cryptographic Message Syntax (CMS) Algorithms</title>
    <author fullname='R. Housley' initials='R.' surname='Housley'/>
    <date month='August' year='2002'/>
  </front>
  <seriesInfo name='RFC' value='3370'/>
  <seriesInfo name='DOI' value='10.17487/RFC3370'/>
</reference>

<reference anchor='RFC7292'>
  <front>
    <title>PKCS #12: Personal Information Exchange Syntax v1.1</title>
    <author fullname='K. Moriarty' initials='K.' role='editor' surname='Moriarty'/>
    <author fullname='M. Nystrom' initials='M.' surname='Nystrom'/>
    <author fullname='S. Parkinson' initials='S.' surname='Parkinson'/>
    <author fullname='A. Rusch' initials='A.' surname='Rusch'/>
    <author fullname='M. Scott' initials='M.' surname='Scott'/>
    <date month='July' year='2014'/>
    <abstract>
      <t>PKCS #12 v1.1 describes a transfer syntax for personal identity information, including private keys, certificates, miscellaneous secrets, and extensions. Machines, applications, browsers, Internet kiosks, and so on, that support this standard will allow a user to import, export, and exercise a single set of personal identity information. This standard supports direct transfer of personal information under several privacy and integrity modes.</t>
      <t>This document represents a republication of PKCS #12 v1.1 from RSA Laboratories' Public Key Cryptography Standard (PKCS) series. By publishing this RFC, change control is transferred to the IETF.</t>
    </abstract>
  </front>
  <seriesInfo name='RFC' value='7292'/>
  <seriesInfo name='DOI' value='10.17487/RFC7292'/>
</reference>

<reference anchor='RFC8823'>
  <front>
    <title>Extensions to Automatic Certificate Management Environment for End-User S/MIME Certificates</title>
    <author fullname='A. Melnikov' initials='A.' surname='Melnikov'/>
    <date month='April' year='2021'/>
    <abstract>
      <t>This document specifies identifiers and challenges required to enable the Automated Certificate Management Environment (ACME) to issue certificates for use by email users that want to use S/MIME.</t>
    </abstract>
  </front>
  <seriesInfo name='RFC' value='8823'/>
  <seriesInfo name='DOI' value='10.17487/RFC8823'/>
</reference>


<reference anchor='I-D.woodhouse-cert-best-practice'>
   <front>
      <title>Recommendations for applications using X.509 client certificates</title>
      <author fullname='David Woodhouse' initials='D.' surname='Woodhouse'>
         <organization>Amazon Web Services</organization>
      </author>
      <author fullname='Nikos Mavrogiannopoulos' initials='N.' surname='Mavrogiannopoulos'>
         </author>
      <date day='25' month='July' year='2023'/>
      <abstract>
	 <t>   X.509 certificates are widely used for client authentication in many
   protocols, especially in conjunction with Transport Layer Security
   ([RFC5246]) and Datagram Transport Layer Security ([RFC6347].  There
   exist a multitude of forms in which certificates and especially their
   corresponding private keys may be stored or referenced.

   Applications have historically been massively inconsistent in which
   subset of these forms have been supported, and what knowledge is
   demanded of the user.  This memo sets out best practice for
   applications in the interest of usability and consistency.

	 </t>
      </abstract>
   </front>
   <seriesInfo name='Internet-Draft' value='draft-woodhouse-cert-best-practice-01'/>
   
</reference>


<reference anchor='I-D.dkg-mail-cleartext-copy'>
   <front>
      <title>Encrypted E-mail with Cleartext Copies</title>
      <author fullname='Daniel Kahn Gillmor' initials='D. K.' surname='Gillmor'>
         </author>
      <date day='21' month='February' year='2023'/>
      <abstract>
	 <t>   When an e-mail program generates an encrypted message to multiple
   recipients, it is possible that it has no encryption capability for
   at least one of the recipients.

   In this circumstance, an e-mail program may choose to send the
   message in cleartext to the recipient it cannot encrypt to.

   This draft currently offers several possible approaches when such a
   choice is made by the sender, so that the recipient can reason about
   and act on the cryptographic status of the message responsibly.

	 </t>
      </abstract>
   </front>
   <seriesInfo name='Internet-Draft' value='draft-dkg-mail-cleartext-copy-01'/>
   
</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='RFC9051'>
  <front>
    <title>Internet Message Access Protocol (IMAP) - Version 4rev2</title>
    <author fullname='A. Melnikov' initials='A.' role='editor' surname='Melnikov'/>
    <author fullname='B. Leiba' initials='B.' role='editor' surname='Leiba'/>
    <date month='August' year='2021'/>
    <abstract>
      <t>The Internet Message Access Protocol Version 4rev2 (IMAP4rev2) allows a client to access and manipulate electronic mail messages on a server. IMAP4rev2 permits manipulation of mailboxes (remote message folders) in a way that is functionally equivalent to local folders. IMAP4rev2 also provides the capability for an offline client to resynchronize with the server.</t>
      <t>IMAP4rev2 includes operations for creating, deleting, and renaming mailboxes; checking for new messages; removing messages permanently; setting and clearing flags; parsing per RFCs 5322, 2045, and 2231; searching; and selective fetching of message attributes, texts, and portions thereof. Messages in IMAP4rev2 are accessed by the use of numbers. These numbers are either message sequence numbers or unique identifiers.</t>
      <t>IMAP4rev2 does not specify a means of posting mail; this function is handled by a mail submission protocol such as the one specified in RFC 6409.</t>
    </abstract>
  </front>
  <seriesInfo name='RFC' value='9051'/>
  <seriesInfo name='DOI' value='10.17487/RFC9051'/>
</reference>

<reference anchor='RFC8621'>
  <front>
    <title>The JSON Meta Application Protocol (JMAP) for Mail</title>
    <author fullname='N. Jenkins' initials='N.' surname='Jenkins'/>
    <author fullname='C. Newman' initials='C.' surname='Newman'/>
    <date month='August' year='2019'/>
    <abstract>
      <t>This document specifies a data model for synchronising email data with a server using the JSON Meta Application Protocol (JMAP). Clients can use this to efficiently search, access, organise, and send messages, and to get push notifications for fast resynchronisation when new messages are delivered or a change is made in another client.</t>
    </abstract>
  </front>
  <seriesInfo name='RFC' value='8621'/>
  <seriesInfo name='DOI' value='10.17487/RFC8621'/>
</reference>


<reference anchor='I-D.ietf-jmap-smime-sender-extensions'>
   <front>
      <title>JMAP extension for S/MIME signing and encryption</title>
      <author fullname='Alexey Melnikov' initials='A.' surname='Melnikov'>
         <organization>Isode Ltd</organization>
      </author>
      <date day='3' month='August' year='2023'/>
      <abstract>
	 <t>   This document specifies an extension to JMAP for sending S/MIME
   signed and/or S/MIME encrypted messages, as well as automatic
   decryption of received S/MIME messages.

	 </t>
      </abstract>
   </front>
   <seriesInfo name='Internet-Draft' value='draft-ietf-jmap-smime-sender-extensions-04'/>
   
</reference>

<reference anchor='RFC1939'>
  <front>
    <title>Post Office Protocol - Version 3</title>
    <author fullname='J. Myers' initials='J.' surname='Myers'/>
    <author fullname='M. Rose' initials='M.' surname='Rose'/>
    <date month='May' year='1996'/>
    <abstract>
      <t>The Post Office Protocol - Version 3 (POP3) is intended to permit a workstation to dynamically access a maildrop on a server host in a useful fashion. [STANDARDS-TRACK]</t>
    </abstract>
  </front>
  <seriesInfo name='STD' value='53'/>
  <seriesInfo name='RFC' value='1939'/>
  <seriesInfo name='DOI' value='10.17487/RFC1939'/>
</reference>

<reference anchor='RFC9219'>
  <front>
    <title>S/MIME Signature Verification Extension to the JSON Meta Application Protocol (JMAP)</title>
    <author fullname='A. Melnikov' initials='A.' surname='Melnikov'/>
    <date month='April' year='2022'/>
    <abstract>
      <t>This document specifies an extension to "The JSON Meta Application Protocol (JMAP) for Mail" (RFC 8621) for returning the S/MIME signature verification status.</t>
    </abstract>
  </front>
  <seriesInfo name='RFC' value='9219'/>
  <seriesInfo name='DOI' value='10.17487/RFC9219'/>
</reference>

<reference anchor='RFC9216'>
  <front>
    <title>S/MIME Example Keys and Certificates</title>
    <author fullname='D. K. Gillmor' initials='D. K.' role='editor' surname='Gillmor'/>
    <date month='April' year='2022'/>
    <abstract>
      <t>The S/MIME development community benefits from sharing samples of signed or encrypted data. This document facilitates such collaboration by defining a small set of X.509v3 certificates and keys for use when generating such samples.</t>
    </abstract>
  </front>
  <seriesInfo name='RFC' value='9216'/>
  <seriesInfo name='DOI' value='10.17487/RFC9216'/>
</reference>

<reference anchor='RFC4511'>
  <front>
    <title>Lightweight Directory Access Protocol (LDAP): The Protocol</title>
    <author fullname='J. Sermersheim' initials='J.' role='editor' surname='Sermersheim'/>
    <date month='June' year='2006'/>
    <abstract>
      <t>This document describes the protocol elements, along with their semantics and encodings, of the Lightweight Directory Access Protocol (LDAP). LDAP provides access to distributed directory services that act in accordance with X.500 data and service models. These protocol elements are based on those described in the X.500 Directory Access Protocol (DAP). [STANDARDS-TRACK]</t>
    </abstract>
  </front>
  <seriesInfo name='RFC' value='4511'/>
  <seriesInfo name='DOI' value='10.17487/RFC4511'/>
</reference>


<reference anchor='I-D.koch-openpgp-webkey-service'>
   <front>
      <title>OpenPGP Web Key Directory</title>
      <author fullname='Werner Koch' initials='W.' surname='Koch'>
         <organization>g10 Code GmbH</organization>
      </author>
      <date day='18' month='December' year='2023'/>
      <abstract>
	 <t>   This specification describes a service to locate OpenPGP keys by mail
   address using a Web service and the HTTPS protocol.  It also provides
   a method for secure communication between the key owner and the mail
   provider to publish and revoke the public key.

	 </t>
      </abstract>
   </front>
   <seriesInfo name='Internet-Draft' value='draft-koch-openpgp-webkey-service-17'/>
   
</reference>

<reference anchor='RFC8162'>
  <front>
    <title>Using Secure DNS to Associate Certificates with Domain Names for S/MIME</title>
    <author fullname='P. Hoffman' initials='P.' surname='Hoffman'/>
    <author fullname='J. Schlyter' initials='J.' surname='Schlyter'/>
    <date month='May' year='2017'/>
    <abstract>
      <t>This document describes how to use secure DNS to associate an S/MIME user's certificate with the intended domain name, similar to the way that DNS-Based Authentication of Named Entities (DANE), RFC 6698, does for TLS.</t>
    </abstract>
  </front>
  <seriesInfo name='RFC' value='8162'/>
  <seriesInfo name='DOI' value='10.17487/RFC8162'/>
</reference>

<reference anchor='RFC7929'>
  <front>
    <title>DNS-Based Authentication of Named Entities (DANE) Bindings for OpenPGP</title>
    <author fullname='P. Wouters' initials='P.' surname='Wouters'/>
    <date month='August' year='2016'/>
    <abstract>
      <t>OpenPGP is a message format for email (and file) encryption that lacks a standardized lookup mechanism to securely obtain OpenPGP public keys. DNS-Based Authentication of Named Entities (DANE) is a method for publishing public keys in DNS. This document specifies a DANE method for publishing and locating OpenPGP public keys in DNS for a specific email address using a new OPENPGPKEY DNS resource record. Security is provided via Secure DNS, however the OPENPGPKEY record is not a replacement for verification of authenticity via the "web of trust" or manual verification. The OPENPGPKEY record can be used to encrypt an email that would otherwise have to be sent unencrypted.</t>
    </abstract>
  </front>
  <seriesInfo name='RFC' value='7929'/>
  <seriesInfo name='DOI' value='10.17487/RFC7929'/>
</reference>


<reference anchor='I-D.wussler-openpgp-forwarding'>
   <front>
      <title>Automatic Forwarding for ECDH Curve25519 OpenPGP messages</title>
      <author fullname='Aron Wussler' initials='A.' surname='Wussler'>
         <organization>Proton AG</organization>
      </author>
      <date day='10' month='July' year='2023'/>
      <abstract>
	 <t>   An OpenPGP user may want to request their email provider to
   automatically forward some or all of the messages they receive to a
   third party.  Given that messages are encrypted, this requires
   transforming them into ciphertexts decryptable by the intended
   forwarded parties, while maintaining confidentiality and
   authentication.  This can be achieved using Proxy transformations on
   the Curve25519 elliptic curve field with minimal changes to the
   OpenPGP protocol, in particular no change is required on the sender
   side.  In this document we implement the forwarding scheme described
   in [FORWARDING].

	 </t>
      </abstract>
   </front>
   <seriesInfo name='Internet-Draft' value='draft-wussler-openpgp-forwarding-00'/>
   
</reference>




    </references>


<section anchor="future-work"><name>Future Work</name>

<t>This document contains useful guidance for MUA implementers, but it cannot contain all possible guidance.
Future revisions to this document may want to further explore the following topics, which are out of scope for this version.</t>

<section anchor="webmail-threat-model"><name>Webmail Threat Model</name>

<t>The webmail threat model for end-to-end cryptographic protections is significantly more complex than the traditional MUA model.
For example, the web server hosting the webmail interface could be a potential adversary.
If the user treats the web server as a trusted party, but the web server violates that trust, the end-to-end cryptographic protections do not hold.</t>

<t>A future version of this document could include more detailed discussion of an adversarial threat model for end-to-end cryptographic protections in a webmail context.</t>

</section>
<section anchor="test-vectors"><name>Test Vectors</name>

<t>A future version of this document (or a companion document) could contain examples of well-formed and malformed messages using cryptographic key material and certificates from <xref target="I-D.ietf-openpgp-crypto-refresh-13"/> and <xref target="RFC9216"/>.</t>

<t>It may also include example renderings of these messages.</t>

</section>
<section anchor="more-peer-certs"><name>Further Guidance on Peer Certificates</name>

<section anchor="peer-discovery-incoming"><name>Certificate Discovery from Incoming Messages</name>

<t>As described in <xref target="sending-certificates"/>, an incoming e-mail message may have one or more certificates embedded in it.
This document currently acknowledges that receiving MUA should assemble a cache of certificates for future use, but providing more detailed guidance for how to assemble and manage that cache is currently out of scope.</t>

<t>Existing recommendations like <xref target="AUTOCRYPT"/> provide some guidance for handling incoming certificates about peers, but only in certain contexts.
A future version of this document may describe in more detail how these incoming certs should be handled.</t>

</section>
<section anchor="peer-discovery--directory"><name>Certificate Directories</name>

<t>Some MUAs may have the capability to look up peer certificates in a directory, for example via LDAP <xref target="RFC4511"/>, WKD <xref target="I-D.koch-openpgp-webkey-service"/>, or the DNS (e.g., SMIMEA <xref target="RFC8162"/> or OPENPGPKEY <xref target="RFC7929"/> resource records).</t>

<t>A future version of this document may describe in more detail what sources an MUA should consider when searching for a peer's certificates, and what to do with the certificates found by various methods.</t>

</section>
<section anchor="cert-revocation"><name>Checking for Certificate Revocation</name>

<t>A future version of this document could discuss how/when to check for revocation of peer certificates, or of the user's own certificate.</t>

<t>Such discussion should address privacy concerns: what information leaks to whom when checking peer cert revocations?</t>

</section>
<section anchor="more-peer-cert-selection"><name>Further Peer Certificate Selection</name>

<t>A future version of this document may describe more prescriptions for deciding whether a peer certificate is acceptable for encrypting a message.
For example, if the SPKI is an EC Public Key and the keyUsage extension is absent, what should the encrypting MUA do?</t>

<t>A future version of this document might also provide guidance on what to do if multiple certificates are all acceptable for encrypting to a given recipient.
For example, the sender could select among them in some deterministic way; it could encrypt to all of them; or it could present them to the user to let the user select any or all of them.</t>

</section>
<section anchor="display-names"><name>Human-readable Names in Peer Certificates, Header Fields, and Addressbooks</name>

<t>In header fields like <spanx style="verb">From:</spanx> that may contain a <spanx style="verb">display-name</spanx> as described in <xref section="3.4" sectionFormat="of" target="RFC5322"/>, a malicious sender (or interfering adversary) may populate the <spanx style="verb">display-name</spanx> part with a human-readable name that does not at all match the actual name of the participant.
<xref target="peer-cert-selection"/> describes some matching rules relating peer certificates to e-mail addresses (the <spanx style="verb">addr-spec</spanx> part of these e-mail header fields), but does not contemplate matching <spanx style="verb">display-name</spanx>s or other or similar user-visible data elements.
<xref target="signature-failures"/> describes how signature validation should confirm a binding between the <spanx style="verb">addr-spec</spanx> and the certificate itself, but also does not contemplate matching <spanx style="verb">display-name</spanx>s or other similar user-visible data elements.
Depending on how the receiving MUA renders the <spanx style="verb">display-name</spanx> in a message's header field, that unvalidated field may present a risk of user confusion which could break the intended end-to-end assurances.
Yet both X.509 and OpenPGP certificate formats offer ways to provide cryptographically certified (though possibly not unique) comparable human-readable names.
Additionally, many MUAs also include an addressbook or comparable feature which can make substantive connections between user-relevant identity labels and e-mail addresses.</t>

<t>A human-readable name like a <spanx style="verb">display-name</spanx> does not have the property of global uniqueness that an <spanx style="verb">addr-spec</spanx> does, so reasoning about human-readable names and rendering them to the user as an element in a system providing end-to-end cryptographic assurance requires additional deliberate analysis.</t>

<t>A future version of this document might offer strategies for associating human-readable names from certificates (and features like addressbooks) to the rendering of header fields that include <spanx style="verb">display-name</spanx>.
Such guidance should be paired with an analysis of specific usability and security risks associated with these human-readable fields, as well as a description of how the recommended guidance mitigates those risks.</t>

</section>
</section>
<section anchor="more-local-certs"><name>Further Guidance on Local Certificates and Secret Keys</name>

<section anchor="cross-mua-local-keys"><name>Cross-MUA sharing of Local Certificates and Secret Keys</name>

<t>Many users today use more than one MUA to access the same mailbox (for example, one MUA on a mobile device, and another MUA on a desktop computer).</t>

<t>A future version of this document might offer guidance on how multiple MUAs attached to the same mailbox can efficiently and securely share the user's own secret key material and certificates between each other.
This guidance should include suggestions on how to maintain the user's keys (e.g., avoiding certificate expiration) and safe secret key transmission.</t>

</section>
<section anchor="smartcards"><name>Use of Smartcards or Other Portable Secret Key Mechanisms</name>

<t>Rather than having to transfer secret key material between clients, some users may prefer to rely on portable hardware-backed secret keys in the form of smartcards, USB tokens or other comparable form factors.
These secret keys sometimes require direct user interaction for each use, which can complicate the usability of any MUA that uses them to decrypt a large number of messages.</t>

<t>Guidance on the use of this kind of secret key management are beyond the scope of this document, but future revisions may bring them into scope.</t>

</section>
<section anchor="more-local-cert-maintenance"><name>Active Local Certificate Maintenance</name>

<t><xref target="local-cert-maintenance"/> describes conditions where the MUA <bcp14>SHOULD</bcp14> warn the user that something is going wrong with their certificate.</t>

<t>A future version of this document might outline how an MUA could actively avoid these warning situations, for example, by automatically updating the certificate or prompting the user to take specific action.</t>

</section>
</section>
<section anchor="cert-authorities"><name>Certification Authorities</name>

<t>A future document could offer guidance on how an MUA should select and manage root certification authorities (CAs).</t>

<t>For example:</t>

<t><list style="symbols">
  <t>Should the MUA cache intermediate CAs?</t>
  <t>Should the MUA share such a cache with other PKI clients (e.g., web browsers)?</t>
  <t>What distinctions are there between a CA for S/MIME and a CA for the web?</t>
</list></t>

</section>
<section anchor="indexing-and-search"><name>Indexing and Search of Encrypted Messages</name>

<t>A common use case for MUAs is search of existing messages by keyword or topic.
This is done most efficiently for large mailboxes by assembling an index of message content, rather than by a linear scan of all message content.</t>

<t>When message contents and header fields are encrypted, search by index is complicated.
If the cleartext is not indexed, then messages cannot be found by search.
On the other hand, if the cleartext is indexed, then the index effectively contains the sensitive contents of the message, and needs to be protected.</t>

<t>Detailed guidance on the tradeoff here, including choices about remote search vs local search, are beyond the scope of this document, but a future version of the document may bring them into scope.</t>

</section>
<section anchor="cached-sigs"><name>Cached Signature Validation</name>

<t>Asymmetric signature validation can be computationally expensive, and the results can also potentially vary over time (e.g., if a signing certificate is discovered to be revoked).
In some cases, the user may care about the signature validation that they saw when they first read or received the message, not only about the status of the signature verification at the current time.</t>

<t>So, for both performance reasons and historical perspective, it may be useful for an MUA to cache signature validation results in a way that they can be easily retrieved and compared.
Documenting how and when to cache signature validation, as well as how to indicate it to the user, is beyond the scope of this document, but a future version of the document may bring these topics into scope.</t>

</section>
<section anchor="aggregate-cryptographic-status"><name>Aggregate Cryptographic Status</name>

<t>This document limits itself to consideration of the cryptographic status of single messages as a baseline concept that can be clearly and simply communicated to the user.
However, some users and some MUAs may find it useful to contemplate even higher-level views of cryptographic status which are not considered directly here.</t>

<t>For example, a future version of the document may also consider how to indicate a simple cryptographic status of message threads (groups of explicitly related messages), conversations (groups of messages with shared sets of participants), peers, or other perspectives that an MUA can provide.</t>

</section>
<section anchor="expect-e2e"><name>Expectations of Cryptographic Protection</name>

<t>As mentioned in <xref target="security-indicators"/>, the types of security indicators displayed to the user may well vary based on the expectations of the user for a given communication.
At present, there is no widely shared method for the MUA to establish and maintain reasonable expectations about whether a specific received message should have cryptographic protections.</t>

<t>If such a standard is developed, a future version of this document should reference it and encourage the deployment of clearer and simpler security indicators.</t>

</section>
<section anchor="secure-deletion"><name>Secure Deletion</name>

<t>One feature many users desire from a secure communications medium is the ability to reliably destroy a message such that it cannot be recovered even by a determined adversary.
In other contexts, a similar desired property is called "forward secrecy".
Doing this with standard e-mail mechanisms like S/MIME and PGP/MIME is challenging because of two interrelated factors:</t>

<t><list style="symbols">
  <t>A copy of of an e-mail message may be retained by any of the mail transport agents that handle it during delivery, and</t>
  <t>The secret key used to decrypt an encrypted e-mail message is typically retained indefinitely.</t>
</list></t>

<t>This means that an adversary aiming to recover the cleartext contents of a deleted message can do so by getting access to a copy of the encrypted message and the long-term secret key material.</t>

<t>Some mitigation measures may be available to make it possible to delete some encrypted messages securely, but this document considers this use case out of scope.
A future version of the document may elaborate on secure message deleton in more detail.</t>

</section>
<section anchor="interaction-with-opportunistic-encryption"><name>Interaction with Opportunistic Encryption</name>

<t>This document focuses on guidance for strong, user-comprehensible end-to-end cryptographic protections for e-mail.
Other approaches are possible, including various forms of opportunistic and transport encryption, which are out of scope for this document.</t>

<t>A future version of this document could describe the interaction between this guidance and more opportunistic forms of encryption, for example some of the scenarios contemplated in <xref target="I-D.dkg-mail-cleartext-copy"/>.</t>

</section>
<section anchor="split-attachments"><name>Split Attachments</name>

<t>As noted in <xref target="attachments"/>, the standard form for encrypted e-mail messages is a single cryptographic envelope.
In a scenario where multiple user agents are drafting a single encrypted message over low-bandwidth links, this can create a poor user experience, as each MUA has to retrieve the full message, including attachments, to modify the draft.
Similarly, when retrieving a message with a large attachment, the receiving MUA might want to only render the main body part, and will have a significant delay in doing so if required to process the full message before handling.</t>

<t>Future work might include an attempt to standardize a mechanism that eases this use case, potentially at the risk of additional metadata leakage about the message (e.g., the size and number of message parts).
Any such work should explicitly try to minimize the risks and concerns described in <xref target="attachments"/>.</t>

</section>
<section anchor="proxy-extensions"><name>Proxy Extensions</name>

<t>As noted in <xref target="proxy-dangers"/>, a proxy-based implementation can be a tempting approach.
But its naive form is likely to be insufficient to provide safe end-to-end encrypted e-mail.</t>

<t>A future version of this document, or a separate but related document, could try to outline the specific additional information, state, and network API surface that would be needed to allow an MUA to be safely integrated with an encryption provider.
Any such work should try to address the potential problems described in <xref target="proxy-dangers"/>.</t>

</section>
<section anchor="mailing-lists"><name>Mailing Lists</name>

<t>Mailing lists offer challenging complications to any notion of end-to-end cryptographic protections.
By default, there is some sort of intervening MUA (see <xref target="intervening-mua"/>), but more than that, user expectations about cryptographic protections might differ from normal messages, at least insofar as they understand they are writing to a mailing list.
A particular challenge to the notion of end-to-end cryptographic security with mailing lists is that a subscriber to a mailing list often does not know who else is subscribed to the mailing list.
Another challenge is that for some mailing lists, some subscribers might not have a valid, non-expired certificate.</t>

<t>Encryption can interact with mailing lists in different ways, depending on the use case of the list.
It's not clear that there are any useful motivations for sending encrypted mail to a publicly archived mailing list.
But an unarchived mailing list might want to provide confidentiality between all recipients, even if the recipients don't know for certain who all the other participants are.
Or, a mailing list with private archives might well decide that two "hops" of encryption (between the sender and the mailing list, and the mailing list and all the subscribers) are a useful confidentiality measure even though they are not "end-to-end" in the sense of the sender directly to all recipients.</t>

<t>Similarly, cryptographic signatures may play different roles in a mailing list, depending on the list's communication goals.
The mailing list itself might want to verify that an incoming message is cryptographically signed by an authorized sender before redistribution to the list subscribers.
It might also want to pass along the sender's signature in a way that the subscribers can all verify it.
Alternately, the mailing list might want to sign each redistributed message itself, and change the message so it appears to come from the list rather than the original sender.</t>

<t>Yet another design for a mailing list with end-to-end cryptographic protections might involve redistributing shared secret keys to all recipients, or using some sort of proxied re-encryption scheme, similar to <xref target="I-D.wussler-openpgp-forwarding"/>.</t>

<t>A future version of this document or a separate but related document might describe some of these tradeoffs and provide guidance for safely meeting common requirements or use cases when combining end-to-end cryptographic protections with mailing lists.</t>

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

<section anchor="substantive-changes-from-draft-ietf-15-to-draft-ietf-16"><name>Substantive changes from draft-ietf-...-15 to draft-ietf-...-16</name>

<t><list style="symbols">
  <t>Address feedback from Last Call and IESG review:</t>
  <t>Add "Weak Encryption" section</t>
  <t>Add Future Work subsection on mailing lists</t>
  <t>Mention possible user control over stripping quoted text in cleartext reply to encrypted message</t>
  <t>Simplify Bcc guidance about certificate inclusion</t>
</list></t>

</section>
<section anchor="substantive-changes-from-draft-ietf-14-to-draft-ietf-15"><name>Substantive changes from draft-ietf-...-14 to draft-ietf-...-15</name>

<t><list style="symbols">
  <t>update IMAP reference to RFC 9051</t>
  <t>add webmail concerns as part of Future Work</t>
</list></t>

</section>
<section anchor="substantive-changes-from-draft-ietf-13-to-draft-ietf-14"><name>Substantive changes from draft-ietf-...-13 to draft-ietf-...-14</name>

<t><list style="symbols">
  <t>Responded to SEC AD Review, including:</t>
  <t>clarify "conformant" vs "legacy" vs "non-cryptographic" MUA categories</t>
  <t>tighten up MUSTs for conformant MUAs</t>
  <t>explicitly recommend encrypting drafts</t>
  <t>clarify debugging as a use case for showing invalid signatures</t>
  <t>clarify "Headers" to "Header Fields"</t>
  <t>3 states for sending, 4 for receiving</t>
</list></t>

</section>
<section anchor="substantive-changes-from-draft-ietf-12-to-draft-ietf-13"><name>Substantive changes from draft-ietf-...-12 to draft-ietf-...-13</name>

<t><list style="symbols">
  <t>clarify RFC 2119 guidance about not rendering cryptographic layers other than message cryptographic status</t>
</list></t>

</section>
<section anchor="substantive-changes-from-draft-ietf-11-to-draft-ietf-12"><name>Substantive changes from draft-ietf-...-11 to draft-ietf-...-12</name>

<t><list style="symbols">
  <t>More nuance (and future work) around split attachments</t>
  <t>More nuance (and future work) around proxy-style design</t>
  <t>Clearer caveats about external resources in text/html parts</t>
</list></t>

</section>
<section anchor="substantive-changes-from-draft-ietf-10-to-draft-ietf-11"><name>Substantive changes from draft-ietf-...-10 to draft-ietf-...-11</name>

<t><list style="symbols">
  <t>Mention List-* and Archived-At message header fields</t>
  <t>Add additional references to papers that describe flaws in e2e e-mail</t>
</list></t>

</section>
<section anchor="substantive-changes-from-draft-ietf-09-to-draft-ietf-10"><name>Substantive changes from draft-ietf-...-09 to draft-ietf-...-10</name>

<t><list style="symbols">
  <t>Introduction: describe one major theme of Future Work</t>
</list></t>

</section>
<section anchor="substantive-changes-from-draft-ietf-08-to-draft-ietf-09"><name>Substantive changes from draft-ietf-...-08 to draft-ietf-...-09</name>

<t><list style="symbols">
  <t>Clarify goals of document</t>
  <t>Identify cross-protocol attacks in more detail to justify prescription against key reuse</t>
  <t>Add informative references to Opportunistic Encryption RFC and Certificate Best Practice draft</t>
  <t>Add "Reading Encrypted Messages after Certificate Expiration" section to Common Pitfalls and Guidelines</t>
  <t>Clean up nits identified by Stephen Farrell and Eliot Lear</t>
</list></t>

</section>
<section anchor="substantive-changes-from-draft-ietf-07-to-draft-ietf-08"><name>Substantive changes from draft-ietf-...-07 to draft-ietf-...-08</name>

<t><list style="symbols">
  <t>Add guidance about importing and exporting secret key material</t>
  <t>More explanation about "encryption outside, signature inside"</t>
  <t>Guidance about Intervening (resending) MUAs</t>
  <t>Include Sender and Resent-* as user-facing header fields</t>
  <t>Guidance about external subresources for cryptographically protected messages</t>
  <t>Relax "user-facing" definition to be more advisory</t>
</list></t>

</section>
<section anchor="substantive-changes-from-draft-ietf-06-to-draft-ietf-07"><name>Substantive changes from draft-ietf-...-06 to draft-ietf-...-07</name>

<t><list style="symbols">
  <t>Add Bernie Hoeneisen and Alexey Melnikov as editors</t>
  <t>Explicitly avoid requiring anything from IANA</t>
  <t>Simplify description of "attachments"</t>
  <t>Add concrete detail on how to compare e-mail addresses</t>
  <t>Explicitly define "Cryptographic Summary"</t>
</list></t>

</section>
<section anchor="substantive-changes-from-draft-ietf-05-to-draft-ietf-06"><name>Substantive changes from draft-ietf-...-05 to draft-ietf-...-06</name>

<t><list style="symbols">
  <t>Expand proxy implementation warning to comparable APIs</t>
  <t>Move many marked TODO and FIXME items to "Future Work"</t>
  <t>More detailed guidance on local certificates</t>
  <t>Provide guidance on encrypting draft messages</t>
  <t>More detailed guidanc eon shipping certificates in outbound messages</t>
  <t>Recommend implementing header protection</t>
  <t>Added "Future Work" subsection about interactions with opportunistic approaches</t>
</list></t>

</section>
<section anchor="substantive-changes-from-draft-ietf-04-to-draft-ietf-05"><name>Substantive changes from draft-ietf-...-04 to draft-ietf-...-05</name>

<t><list style="symbols">
  <t>Adopt and update text about Bcc from draft-ietf-lamps-header-protection</t>
  <t>Add section about the dangers of an implementation based on a network protocol proxy</t>
</list></t>

</section>
<section anchor="substantive-changes-from-draft-ietf-03-to-draft-ietf-04"><name>Substantive changes from draft-ietf-...-03 to draft-ietf-...-04</name>

<t><list style="symbols">
  <t>Added reference to <spanx style="verb">multipart/oracle</spanx> attacks</t>
  <t>Clarified that "Structural Header fields" are the same as RFC2045's "MIME Headers"</t>
</list></t>

</section>
<section anchor="substantive-changes-from-draft-ietf-02-to-draft-ietf-03"><name>Substantive changes from draft-ietf-...-02 to draft-ietf-...-03</name>

<t><list style="symbols">
  <t>Added section about mixed recipients</t>
  <t>Noted SMIMEA and OPENPGPKEY DNS RR cert discovery mechanisms</t>
  <t>Added more notes about simplified mental models</t>
  <t>More clarification on one-status-per-message</t>
  <t>Added guidance to defend against EFAIL</t>
</list></t>

</section>
<section anchor="substantive-changes-from-draft-ietf-01-to-draft-ietf-02"><name>Substantive changes from draft-ietf-...-01 to draft-ietf-...-02</name>

<t><list style="symbols">
  <t>Added definition of "user-facing" header fields</t>
</list></t>

</section>
<section anchor="substantive-changes-from-draft-ietf-00-to-draft-ietf-01"><name>Substantive changes from draft-ietf-...-00 to draft-ietf-...-01</name>

<t><list style="symbols">
  <t>Added section about distinguishing Main Body Parts and Attachments</t>
  <t>Updated document considerations section, including reference to auto-built editor's copy</t>
</list></t>

</section>
<section anchor="substantive-changes-from-draft-dkg-01-to-draft-ietf-00"><name>Substantive changes from draft-dkg-...-01 to draft-ietf-...-00</name>

<t><list style="symbols">
  <t>WG adopted draft</t>
  <t>moved Document History and Document Considerations sections to end of appendix, to avoid section renumbering when removed</t>
</list></t>

</section>
<section anchor="substantive-changes-from-draft-dkg-00-to-draft-dkg-01"><name>Substantive changes from draft-dkg-...-00 to draft-dkg-...-01</name>

<t><list style="symbols">
  <t>consideration of success/failure indicators for usability</t>
  <t>clarify extendedKeyUsage and keyUsage algorithm-specific details</t>
  <t>initial section on certificate management</t>
  <t>added more TODO items</t>
</list></t>

</section>
</section>


  </back>

<!-- ##markdown-source:
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
/4Bo39IBAA==

-->

</rfc>

