<?xml version='1.0' encoding='utf-8'?>
<rfc xmlns:xi="http://www.w3.org/2001/XInclude" version="3" category="std" consensus="true" docName="draft-ietf-uta-smtp-require-tls-09" indexInclude="true" ipr="trust200902" number="8689" prepTime="2019-11-27T11:49:55" scripts="Common,Latin" sortRefs="true" submissionType="IETF" symRefs="true" tocDepth="3" tocInclude="true" xml:lang="en">
  <link href="https://datatracker.ietf.org/doc/draft-ietf-uta-smtp-require-tls-09" rel="prev"/>
  <link href="https://dx.doi.org/10.17487/rfc8689" rel="alternate"/>
  <link href="urn:issn:2070-1721" rel="alternate"/>
  <front>
    <title>SMTP Require TLS Option</title>
    <seriesInfo name="RFC" value="8689" stream="IETF"/>
    <author fullname="Jim Fenton" initials="J." surname="Fenton">
      <organization showOnFrontPage="true">Altmode Networks</organization>
      <address>
        <postal>
          <street></street>
          <city>Los Altos</city>
          <region>California</region>
          <code>94024</code>
          <country>United States of America</country>
        </postal>
        <email>fenton@bluepopcorn.net</email>
      </address>
    </author>
    <date month="11" year="2019"/>
    <area>General</area>
    <workgroup>Internet Engineering Task Force</workgroup>
    <keyword>SMTP</keyword>
    <abstract pn="section-abstract">
      <t pn="section-abstract-1">The SMTP STARTTLS option, used in negotiating transport-level
     encryption of SMTP connections, is not as useful from a security
     standpoint as it might be because of its opportunistic nature;
     message delivery is, by default, prioritized over security. This
     document describes an SMTP service extension, REQUIRETLS, and
     a message header field, TLS-Required. If the REQUIRETLS option or
     TLS-Required message header field is used when sending a message,
     it asserts a request on the part of the message sender to
     override the default negotiation of TLS, either by requiring that
     TLS be negotiated when the message is relayed or by requesting
     that recipient-side policy mechanisms such as MTA-STS and DNS-Based
     Authentication of Named Entities (DANE) be
     ignored when relaying a message for which security is
     unimportant.</t>
    </abstract>
    <boilerplate>
      <section anchor="status-of-memo" numbered="false" removeInRFC="false" toc="exclude" pn="section-boilerplate.1">
        <name slugifiedName="name-status-of-this-memo">Status of This Memo</name>
        <t pn="section-boilerplate.1-1">
            This is an Internet Standards Track document.
        </t>
        <t pn="section-boilerplate.1-2">
            This document is a product of the Internet Engineering Task Force
            (IETF).  It represents the consensus of the IETF community.  It has
            received public review and has been approved for publication by
            the Internet Engineering Steering Group (IESG).  Further
            information on Internet Standards is available in Section 2 of 
            RFC 7841.
        </t>
        <t pn="section-boilerplate.1-3">
            Information about the current status of this document, any
            errata, and how to provide feedback on it may be obtained at
            <eref target="https://www.rfc-editor.org/info/rfc8689" brackets="none"/>.
        </t>
      </section>
      <section anchor="copyright" numbered="false" removeInRFC="false" toc="exclude" pn="section-boilerplate.2">
        <name slugifiedName="name-copyright-notice">Copyright Notice</name>
        <t pn="section-boilerplate.2-1">
            Copyright (c) 2019 IETF Trust and the persons identified as the
            document authors. All rights reserved.
        </t>
        <t pn="section-boilerplate.2-2">
            This document is subject to BCP 78 and the IETF Trust's Legal
            Provisions Relating to IETF Documents
            (<eref target="https://trustee.ietf.org/license-info" brackets="none"/>) in effect on the date of
            publication of this document. Please review these documents
            carefully, as they describe your rights and restrictions with
            respect to this document. Code Components extracted from this
            document must include Simplified BSD License text as described in
            Section 4.e of the Trust Legal Provisions and are provided without
            warranty as described in the Simplified BSD License.
        </t>
      </section>
    </boilerplate>
    <toc>
      <section anchor="toc" numbered="false" removeInRFC="false" toc="exclude" pn="section-toc.1">
        <name slugifiedName="name-table-of-contents">Table of Contents</name>
        <ul bare="true" empty="true" indent="2" spacing="compact" pn="section-toc.1-1">
          <li pn="section-toc.1-1.1">
            <t keepWithNext="true" pn="section-toc.1-1.1.1"><xref derivedContent="1" format="counter" sectionFormat="of" target="section-1"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-introduction">Introduction</xref></t>
            <ul bare="true" empty="true" indent="2" spacing="compact" pn="section-toc.1-1.1.2">
              <li pn="section-toc.1-1.1.2.1">
                <t keepWithNext="true" pn="section-toc.1-1.1.2.1.1"><xref derivedContent="1.1" format="counter" sectionFormat="of" target="section-1.1"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-requirements-language">Requirements Language</xref></t>
              </li>
            </ul>
          </li>
          <li pn="section-toc.1-1.2">
            <t keepWithNext="true" pn="section-toc.1-1.2.1"><xref derivedContent="2" format="counter" sectionFormat="of" target="section-2"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-the-requiretls-service-exte">The REQUIRETLS Service Extension</xref></t>
          </li>
          <li pn="section-toc.1-1.3">
            <t keepWithNext="true" pn="section-toc.1-1.3.1"><xref derivedContent="3" format="counter" sectionFormat="of" target="section-3"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-the-tls-required-header-fie">The TLS-Required Header Field</xref></t>
          </li>
          <li pn="section-toc.1-1.4">
            <t keepWithNext="true" pn="section-toc.1-1.4.1"><xref derivedContent="4" format="counter" sectionFormat="of" target="section-4"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-requiretls-semantics">REQUIRETLS Semantics</xref></t>
            <ul bare="true" empty="true" indent="2" spacing="compact" pn="section-toc.1-1.4.2">
              <li pn="section-toc.1-1.4.2.1">
                <t keepWithNext="true" pn="section-toc.1-1.4.2.1.1"><xref derivedContent="4.1" format="counter" sectionFormat="of" target="section-4.1"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-requiretls-receipt-requirem">REQUIRETLS Receipt Requirements</xref></t>
              </li>
              <li pn="section-toc.1-1.4.2.2">
                <t keepWithNext="true" pn="section-toc.1-1.4.2.2.1"><xref derivedContent="4.2" format="counter" sectionFormat="of" target="section-4.2"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-requiretls-sender-requireme">REQUIRETLS Sender Requirements</xref></t>
                <ul bare="true" empty="true" indent="2" spacing="compact" pn="section-toc.1-1.4.2.2.2">
                  <li pn="section-toc.1-1.4.2.2.2.1">
                    <t keepWithNext="true" pn="section-toc.1-1.4.2.2.2.1.1"><xref derivedContent="4.2.1" format="counter" sectionFormat="of" target="section-4.2.1"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-sending-with-tls-required">Sending with TLS Required</xref></t>
                  </li>
                  <li pn="section-toc.1-1.4.2.2.2.2">
                    <t keepWithNext="true" pn="section-toc.1-1.4.2.2.2.2.1"><xref derivedContent="4.2.2" format="counter" sectionFormat="of" target="section-4.2.2"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-sending-with-tls-optional">Sending with TLS Optional</xref></t>
                  </li>
                </ul>
              </li>
              <li pn="section-toc.1-1.4.2.3">
                <t keepWithNext="true" pn="section-toc.1-1.4.2.3.1"><xref derivedContent="4.3" format="counter" sectionFormat="of" target="section-4.3"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-requiretls-submission">REQUIRETLS Submission</xref></t>
              </li>
              <li pn="section-toc.1-1.4.2.4">
                <t keepWithNext="true" pn="section-toc.1-1.4.2.4.1"><xref derivedContent="4.4" format="counter" sectionFormat="of" target="section-4.4"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-delivery-of-requiretls-mess">Delivery of REQUIRETLS messages</xref></t>
              </li>
            </ul>
          </li>
          <li pn="section-toc.1-1.5">
            <t keepWithNext="true" pn="section-toc.1-1.5.1"><xref derivedContent="5" format="counter" sectionFormat="of" target="section-5"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-non-delivery-message-handli">Non-delivery Message Handling</xref></t>
          </li>
          <li pn="section-toc.1-1.6">
            <t keepWithNext="true" pn="section-toc.1-1.6.1"><xref derivedContent="6" format="counter" sectionFormat="of" target="section-6"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-reorigination-consideration">Reorigination Considerations</xref></t>
          </li>
          <li pn="section-toc.1-1.7">
            <t keepWithNext="true" pn="section-toc.1-1.7.1"><xref derivedContent="7" format="counter" sectionFormat="of" target="section-7"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-iana-considerations">IANA Considerations</xref></t>
          </li>
          <li pn="section-toc.1-1.8">
            <t keepWithNext="true" pn="section-toc.1-1.8.1"><xref derivedContent="8" format="counter" sectionFormat="of" target="section-8"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-security-considerations">Security Considerations</xref></t>
            <ul bare="true" empty="true" indent="2" spacing="compact" pn="section-toc.1-1.8.2">
              <li pn="section-toc.1-1.8.2.1">
                <t keepWithNext="true" pn="section-toc.1-1.8.2.1.1"><xref derivedContent="8.1" format="counter" sectionFormat="of" target="section-8.1"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-passive-attacks">Passive Attacks</xref></t>
              </li>
              <li pn="section-toc.1-1.8.2.2">
                <t keepWithNext="true" pn="section-toc.1-1.8.2.2.1"><xref derivedContent="8.2" format="counter" sectionFormat="of" target="section-8.2"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-active-attacks">Active Attacks</xref></t>
              </li>
              <li pn="section-toc.1-1.8.2.3">
                <t keepWithNext="true" pn="section-toc.1-1.8.2.3.1"><xref derivedContent="8.3" format="counter" sectionFormat="of" target="section-8.3"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-bad-actor-mtas">Bad-Actor MTAs</xref></t>
              </li>
              <li pn="section-toc.1-1.8.2.4">
                <t keepWithNext="true" pn="section-toc.1-1.8.2.4.1"><xref derivedContent="8.4" format="counter" sectionFormat="of" target="section-8.4"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-policy-conflicts">Policy Conflicts</xref></t>
              </li>
            </ul>
          </li>
          <li pn="section-toc.1-1.9">
            <t keepWithNext="true" pn="section-toc.1-1.9.1"><xref derivedContent="9" format="counter" sectionFormat="of" target="section-9"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-references">References</xref></t>
            <ul bare="true" empty="true" indent="2" spacing="compact" pn="section-toc.1-1.9.2">
              <li pn="section-toc.1-1.9.2.1">
                <t keepWithNext="true" pn="section-toc.1-1.9.2.1.1"><xref derivedContent="9.1" format="counter" sectionFormat="of" target="section-9.1"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-normative-references">Normative References</xref></t>
              </li>
              <li pn="section-toc.1-1.9.2.2">
                <t keepWithNext="true" pn="section-toc.1-1.9.2.2.1"><xref derivedContent="9.2" format="counter" sectionFormat="of" target="section-9.2"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-informative-references">Informative References</xref></t>
              </li>
            </ul>
          </li>
          <li pn="section-toc.1-1.10">
            <t keepWithNext="true" pn="section-toc.1-1.10.1"><xref derivedContent="Appendix A" format="default" sectionFormat="of" target="section-appendix.a"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-examples">Examples</xref></t>
            <ul bare="true" empty="true" indent="2" spacing="compact" pn="section-toc.1-1.10.2">
              <li pn="section-toc.1-1.10.2.1">
                <t keepWithNext="true" pn="section-toc.1-1.10.2.1.1"><xref derivedContent="A.1" format="counter" sectionFormat="of" target="section-a.1"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-requiretls-smtp-option">REQUIRETLS SMTP Option</xref></t>
              </li>
              <li pn="section-toc.1-1.10.2.2">
                <t keepWithNext="true" pn="section-toc.1-1.10.2.2.1"><xref derivedContent="A.2" format="counter" sectionFormat="of" target="section-a.2"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-tls-required-header-field">TLS-Required Header Field</xref></t>
              </li>
            </ul>
          </li>
          <li pn="section-toc.1-1.11">
            <t keepWithNext="true" pn="section-toc.1-1.11.1"><xref derivedContent="" format="none" sectionFormat="of" target="section-appendix.b"/><xref derivedContent="" format="title" sectionFormat="of" target="name-acknowledgements">Acknowledgements</xref></t>
          </li>
          <li pn="section-toc.1-1.12">
            <t keepWithNext="true" pn="section-toc.1-1.12.1"><xref derivedContent="" format="none" sectionFormat="of" target="section-appendix.c"/><xref derivedContent="" format="title" sectionFormat="of" target="name-authors-address">Author's Address</xref></t>
          </li>
        </ul>
      </section>
    </toc>
  </front>
  <middle>
    <section numbered="true" toc="include" removeInRFC="false" pn="section-1">
      <name slugifiedName="name-introduction">Introduction</name>
      <t pn="section-1-1">The <xref target="RFC5321" format="default" sectionFormat="of" derivedContent="RFC5321">SMTP</xref> <xref target="RFC3207" format="default" sectionFormat="of" derivedContent="RFC3207">STARTTLS service extension</xref> provides a
     means by which an SMTP server and client can establish a
     Transport Layer Security (TLS) protected session for the
     transmission of email messages. By default, TLS is used only upon
     mutual agreement (successful negotiation) of STARTTLS between the
     client and server; if this is not possible, the message is sent
     without transport encryption. Furthermore, it is common practice
     for the client to negotiate TLS even if the SMTP server's
     certificate is invalid.</t>
      <t pn="section-1-2">Policy mechanisms such as <xref target="RFC7672" format="default" sectionFormat="of" derivedContent="RFC7672">DANE</xref>
     and <xref target="RFC8461" format="default" sectionFormat="of" derivedContent="RFC8461">MTA-STS</xref> may
     impose requirements for the use of TLS for email destined for
     some domains. However, such policies do not allow the sender to
     specify which messages are more sensitive and require
     transport-level encryption and which ones are less sensitive and
     ought to be relayed even if TLS cannot be negotiated
     successfully.</t>
      <t pn="section-1-3">The default opportunistic nature of SMTP TLS enables several
     on-the-wire attacks on SMTP security between MTAs. These
     include passive eavesdropping on connections for which TLS is not
     used, interference in the SMTP protocol to prevent TLS from being
     negotiated (presumably accompanied by eavesdropping), and insertion
     of a man-in-the-middle attacker exploiting the lack of
     server authentication by the client. Attacks are described
     in more detail in the <xref target="Security" format="title" sectionFormat="of" derivedContent="Security Considerations"/> section
     of this
     document.</t>
      <t pn="section-1-4">REQUIRETLS consists of two mechanisms: an SMTP service
     extension and a message header field. The service extension is
     used to specify that a given message sent during a particular session
     <bcp14>MUST</bcp14> be sent over a TLS-protected session with specified security
     characteristics. It also requires that the SMTP server advertise
     that it supports REQUIRETLS, in effect promising that it
     will honor the requirement to enforce TLS transmission and
     REQUIRETLS support for onward transmission of those messages.</t>
      <t pn="section-1-5">The TLS-Required message header field is used to convey a
     request to ignore recipient-side policy mechanisms such as
     MTA-STS and DANE, thereby prioritizing delivery over ability to
     negotiate TLS. Unlike the service extension, the TLS-Required
     header field allows the message to transit through one or more
     MTAs that do not support REQUIRETLS.</t>
      <section numbered="true" toc="include" removeInRFC="false" pn="section-1.1">
        <name slugifiedName="name-requirements-language">Requirements Language</name>
        <t pn="section-1.1-1">
    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" format="default" sectionFormat="of" derivedContent="RFC2119"/>
          <xref target="RFC8174" format="default" sectionFormat="of" derivedContent="RFC8174"/> when, and only when, they appear in all capitals,
    as shown here.
        </t>
        <t pn="section-1.1-2">The formal syntax uses the Augmented Backus-Naur Form (ABNF)
       <xref target="RFC5234" format="default" sectionFormat="of" derivedContent="RFC5234"/>, including the core rules defined in
       Appendix B of that document.</t>
      </section>
    </section>
    <section anchor="service_extension" numbered="true" toc="include" removeInRFC="false" pn="section-2">
      <name slugifiedName="name-the-requiretls-service-exte">The REQUIRETLS Service Extension</name>
      <t pn="section-2-1">The REQUIRETLS SMTP service extension has the following characteristics:</t>
      <ol spacing="normal" type="1" start="1" pn="section-2-2">
        <li pn="section-2-2.1" derivedCounter="1.">The textual name of the extension is "Require TLS".</li>
        <li pn="section-2-2.2" derivedCounter="2.">The EHLO keyword value associated with this extension is
       "REQUIRETLS".</li>
        <li pn="section-2-2.3" derivedCounter="3.">No additional SMTP verbs are defined by this extension.</li>
        <li pn="section-2-2.4" derivedCounter="4.">One optional parameter ("REQUIRETLS") is added to the MAIL
       FROM command by this extension. No value is associated with
       this parameter.</li>
        <li pn="section-2-2.5" derivedCounter="5.">The maximum length of a MAIL FROM command line is increased
       by 11 octets by the possible addition of a space and the
       REQUIRETLS keyword.</li>
        <li pn="section-2-2.6" derivedCounter="6.">One new SMTP status code is defined by this extension to
       convey an error condition resulting from failure of the client to
       send data to a server that does not also support
       the REQUIRETLS extension.</li>
        <li pn="section-2-2.7" derivedCounter="7.">The REQUIRETLS extension is valid for message relay <xref target="RFC5321" format="default" sectionFormat="of" derivedContent="RFC5321"/>, submission <xref target="RFC6409" format="default" sectionFormat="of" derivedContent="RFC6409"/>, and the Local Mail Transfer Protocol
       (LMTP) <xref target="RFC2033" format="default" sectionFormat="of" derivedContent="RFC2033"/>.</li>
        <li pn="section-2-2.8" derivedCounter="8.">
          <t pn="section-2-2.8.1">The ABNF syntax for the MAIL FROM parameter is as follows:
          </t>
          <sourcecode type="abnf" markers="false" pn="section-2-2.8.2">
requiretls-param  = "REQUIRETLS"
                ; where requiretls-param is an instance of an
                ; esmtp-param used in Mail-parameters in
                ; RFC 5321, Section 4.1.2. There is no esmtp-value
                ; associated with requiretls-param. </sourcecode>
        </li>
      </ol>
      <t pn="section-2-3">In order to specify REQUIRETLS treatment for a given message,
     the REQUIRETLS option is specified in the MAIL FROM command when
     that message is transmitted. This option <bcp14>MUST</bcp14> only be specified in the
     context of an SMTP session meeting the security requirements of
     REQUIRETLS:
      </t>
      <ul spacing="normal" bare="false" empty="false" pn="section-2-4">
        <li pn="section-2-4.1">The session itself <bcp14>MUST</bcp14> employ TLS transmission.</li>
        <li pn="section-2-4.2">If the SMTP server to which the message is being transmitted
       is identified through an MX record lookup, its name
       <bcp14>MUST</bcp14> be validated via a DNSSEC signature on the recipient
       domain's MX record, or the MX hostname <bcp14>MUST</bcp14> be
       validated by an MTA-STS policy as described in <xref target="RFC8461" sectionFormat="of" section="4.1" format="default" derivedLink="https://rfc-editor.org/rfc/rfc8461#section-4.1" derivedContent="RFC8461"/>. DNSSEC is defined
       in <xref target="RFC4033" format="default" sectionFormat="of" derivedContent="RFC4033"/>,
       <xref target="RFC4034" format="default" sectionFormat="of" derivedContent="RFC4034"/>, and
       <xref target="RFC4035" format="default" sectionFormat="of" derivedContent="RFC4035"/>.</li>
        <li pn="section-2-4.3">The certificate presented by the SMTP server either <bcp14>MUST</bcp14>
       be verified successfully by a trust chain leading to a certificate
       trusted by the SMTP client, or it <bcp14>MUST</bcp14> be verified successfully using
       DANE, as specified in <xref target="RFC7672" format="default" sectionFormat="of" derivedContent="RFC7672"/>. For trust chains, the
       choice of trusted (root) certificates is at the discretion of
       the SMTP client.</li>
        <li pn="section-2-4.4">Following the negotiation of STARTTLS, the SMTP server <bcp14>MUST</bcp14>
       advertise in the subsequent EHLO response that it supports REQUIRETLS.</li>
      </ul>
    </section>
    <section anchor="header_field" numbered="true" toc="include" removeInRFC="false" pn="section-3">
      <name slugifiedName="name-the-tls-required-header-fie">The TLS-Required Header Field</name>
      <t pn="section-3-1">One new message header field <xref target="RFC5322" format="default" sectionFormat="of" derivedContent="RFC5322"/>,
     TLS-Required, is defined by this
     specification. It is used for messages for which the originator
     requests that the recipient
     TLS policy (including <xref target="RFC8461" format="default" sectionFormat="of" derivedContent="RFC8461">MTA-STS</xref> and
     <xref target="RFC7672" format="default" sectionFormat="of" derivedContent="RFC7672">DANE</xref>) be ignored. This might be
     done, for example, to report a misconfigured mail server, such as
     an expired TLS certificate.</t>
      <t pn="section-3-2">The TLS-Required header field has a single <bcp14>REQUIRED</bcp14> parameter:</t>
      <ul spacing="normal" bare="false" empty="false" pn="section-3-3">
        <li pn="section-3-3.1">No - The SMTP client <bcp14>SHOULD</bcp14> attempt to send the message
      regardless of its ability to negotiate STARTTLS with the SMTP
      server, ignoring policy-based mechanisms (including MTA-STS and
      DANE), if any, asserted by
      the recipient domain. Nevertheless, the client <bcp14>SHOULD</bcp14> negotiate
      STARTTLS with the server if available.</li>
      </ul>
      <t pn="section-3-4">More than one instance of the TLS-Required header field <bcp14>MUST NOT</bcp14> appear in a given message.</t>
      <t pn="section-3-5">The ABNF syntax for the TLS-Required header field is as
     follows:</t>
      <sourcecode type="abnf" markers="false" pn="section-3-6">
requiretls-field = "TLS-Required:" [FWS] "No" CRLF
        ; where requiretls-field in an instance of an
        ; optional-field defined in RFC 5322, Section 3.6.8.
FWS = &lt;as defined in RFC 5322&gt;
CRLF = &lt;as defined in RFC 5234&gt; </sourcecode>
    </section>
    <section anchor="semantics" numbered="true" toc="include" removeInRFC="false" pn="section-4">
      <name slugifiedName="name-requiretls-semantics">REQUIRETLS Semantics</name>
      <section anchor="receipt" numbered="true" toc="include" removeInRFC="false" pn="section-4.1">
        <name slugifiedName="name-requiretls-receipt-requirem">REQUIRETLS Receipt Requirements</name>
        <t pn="section-4.1-1">Upon receipt of the REQUIRETLS option on a MAIL FROM command
       during the receipt of a message, an SMTP server <bcp14>MUST</bcp14> tag that
       message as needing REQUIRETLS handling.</t>
        <t pn="section-4.1-2">Upon receipt of a message not specifying the REQUIRETLS
       option on its MAIL FROM command but containing the TLS-Required
       header field in its message header, an SMTP server implementing
       this specification <bcp14>MUST</bcp14> tag that message with the option
       specified in the TLS-Required header field. If the REQUIRETLS
       MAIL FROM parameter is specified, the TLS-Required header field
       <bcp14>MUST</bcp14> be ignored but <bcp14>MAY</bcp14> be included in the onward relay of the
       message.</t>
        <t pn="section-4.1-3">The manner in which the above tagging takes place is
       implementation dependent. If the message is being locally
       aliased and redistributed to multiple addresses, all instances
       of the message <bcp14>MUST</bcp14> be tagged in the same manner.</t>
      </section>
      <section anchor="sender" numbered="true" toc="include" removeInRFC="false" pn="section-4.2">
        <name slugifiedName="name-requiretls-sender-requireme">REQUIRETLS Sender Requirements</name>
        <section anchor="yestls" numbered="true" toc="include" removeInRFC="false" pn="section-4.2.1">
          <name slugifiedName="name-sending-with-tls-required">Sending with TLS Required</name>
          <t pn="section-4.2.1-1">When sending a message tagged as requiring TLS for which the
       MAIL FROM return-path is not empty (an empty MAIL FROM
       return-path indicating a bounce message), the sending
       (client) MTA <bcp14>MUST</bcp14>:

          </t>
          <ol spacing="normal" type="1" start="1" pn="section-4.2.1-2">
            <li pn="section-4.2.1-2.1" derivedCounter="1.">Look up the SMTP server to which the message is to be sent,
	 as described in <xref target="RFC5321" sectionFormat="comma" section="5.1" format="default" derivedLink="https://rfc-editor.org/rfc/rfc5321#section-5.1" derivedContent="RFC5321"/>.</li>
            <li pn="section-4.2.1-2.2" derivedCounter="2.">If the server lookup is accomplished via the recipient
	 domain's MX record (the usual case) and is not accompanied by a valid
	 DNSSEC signature, the client <bcp14>MUST</bcp14> also validate the SMTP
	 server name using MTA-STS, as described in
         <xref target="RFC8461" sectionFormat="comma" section="4.1" format="default" derivedLink="https://rfc-editor.org/rfc/rfc8461#section-4.1" derivedContent="RFC8461"/>.</li>
            <li pn="section-4.2.1-2.3" derivedCounter="3.">Open an SMTP session with the peer SMTP server using the
	 EHLO verb.</li>
            <li pn="section-4.2.1-2.4" derivedCounter="4.">Establish a TLS-protected SMTP session with its peer SMTP
	 server and authenticate the server's certificate as specified
	 in <xref target="RFC6125" format="default" sectionFormat="of" derivedContent="RFC6125"/> or <xref target="RFC7672" format="default" sectionFormat="of" derivedContent="RFC7672"/>, as applicable. The hostname from the 
   MX record lookup (or the domain name in the absence of an MX
   record where an A record is used directly) <bcp14>MUST</bcp14> match the DNS-ID
   or CN-ID of the certificate presented by the server.</li>
            <li pn="section-4.2.1-2.5" derivedCounter="5.">Ensure that the response to the subsequent EHLO following
	 establishment of the TLS protection advertises the REQUIRETLS
	 capability.</li>
          </ol>
          <t pn="section-4.2.1-3">The SMTP client <bcp14>SHOULD</bcp14> follow the recommendations in <xref target="RFC7525" format="default" sectionFormat="of" derivedContent="RFC7525"/> or its successor with respect to
       negotiation of the TLS session.</t>
          <t pn="section-4.2.1-4">If any of the above steps fail, the client <bcp14>MUST</bcp14> issue a QUIT
       to the server and repeat steps 2-5 with each host on the
       recipient domain's list of MX hosts in an attempt to find a
       mail path that meets the sender's requirements. The client <bcp14>MAY</bcp14>
       send other, unprotected messages to that server if it has any
       such messages prior to issuing the QUIT. If there are no more MX hosts, the
       client <bcp14>MUST NOT</bcp14> transmit the message to the domain. </t>
          <t pn="section-4.2.1-5">Following such a failure, the SMTP client <bcp14>MUST</bcp14> send a
       non-delivery notification to the reverse-path of the failed
       message, as described in <xref target="RFC5321" sectionFormat="of" section="3.6" format="default" derivedLink="https://rfc-editor.org/rfc/rfc5321#section-3.6" derivedContent="RFC5321"/>. The
       following <xref target="RFC5248" format="default" sectionFormat="of" derivedContent="RFC5248">status codes</xref> <bcp14>SHOULD</bcp14> be used:
          </t>
          <ul spacing="normal" bare="false" empty="false" pn="section-4.2.1-6">
            <li pn="section-4.2.1-6.1">REQUIRETLS not supported by server: 5.7.30 REQUIRETLS
	 support required</li>
            <li pn="section-4.2.1-6.2">Unable to establish TLS-protected SMTP session: 5.7.10
	 Encryption needed</li>
          </ul>
          <t pn="section-4.2.1-7">Refer to <xref target="errors" format="default" sectionFormat="of" derivedContent="Section 5"/> for further requirements regarding
       non-delivery messages.</t>
          <t pn="section-4.2.1-8">If all REQUIRETLS requirements have been met, transmit the
       message, issuing the REQUIRETLS option on the MAIL FROM command
       with the required option(s), if any.</t>
        </section>
        <section anchor="maytls" numbered="true" toc="include" removeInRFC="false" pn="section-4.2.2">
          <name slugifiedName="name-sending-with-tls-optional">Sending with TLS Optional</name>
          <t pn="section-4.2.2-1">Messages tagged "TLS-Required: No" are handled as
	 follows. When sending such a message, the sending (client)
	 MTA <bcp14>MUST</bcp14>:
          </t>
          <ul spacing="normal" bare="false" empty="false" pn="section-4.2.2-2">
            <li pn="section-4.2.2-2.1">Look up the SMTP server to which the message is to be
	   sent, as described in <xref target="RFC5321" sectionFormat="comma" section="5.1" format="default" derivedLink="https://rfc-editor.org/rfc/rfc5321#section-5.1" derivedContent="RFC5321"/>.</li>
            <li pn="section-4.2.2-2.2">Open an SMTP session with the peer SMTP server using the
	   EHLO verb. Attempt to negotiate STARTTLS if possible, and
	   follow any policy published by the recipient domain, but do
	   not fail if this is unsuccessful.</li>
          </ul>
          <t pn="section-4.2.2-3">Some SMTP servers may be configured to require STARTTLS
	 connections as a matter of policy and not accept messages in
	 the absence of STARTTLS. A non-delivery notification <bcp14>MUST</bcp14> be
	 returned to the sender if message relay fails due to an
	 inability to negotiate STARTTLS when required by the
	 server.</t>
          <t pn="section-4.2.2-4">Since messages tagged with "TLS-Required: No" will sometimes
	 be sent to SMTP servers not supporting REQUIRETLS, that
	 option will not be uniformly observed by all SMTP relay
	 hops.</t>
        </section>
      </section>
      <section anchor="submission" numbered="true" toc="include" removeInRFC="false" pn="section-4.3">
        <name slugifiedName="name-requiretls-submission">REQUIRETLS Submission</name>
        <t pn="section-4.3-1">A Mail User Agent (MUA) or other agent making the initial introduction of a
       message has the option to decide whether to require TLS. If
       TLS is to be required, it <bcp14>MUST</bcp14> do so by negotiating STARTTLS
       and REQUIRETLS and including the REQUIRETLS option on the MAIL
       FROM command, as is done for message relay.</t>
        <t pn="section-4.3-2">When TLS is not to be required, the sender <bcp14>MUST</bcp14> include the
       TLS-Required header field in the message. SMTP servers
       implementing this specification <bcp14>MUST</bcp14> interpret this header
       field as described in <xref target="receipt" format="default" sectionFormat="of" derivedContent="Section 4.1"/>.</t>
        <t pn="section-4.3-3">In either case, the decision whether to specify REQUIRETLS
       <bcp14>MAY</bcp14> be done based on a user interface selection or based on a
       ruleset or other policy. The manner in which the decision to
       require TLS is made is implementation dependent and is beyond
       the scope of this specification.</t>
      </section>
      <section anchor="delivery" numbered="true" toc="include" removeInRFC="false" pn="section-4.4">
        <name slugifiedName="name-delivery-of-requiretls-mess">Delivery of REQUIRETLS messages</name>
        <t pn="section-4.4-1">Messages are usually retrieved by end users using protocols
       other than SMTP such as <xref target="RFC3501" format="default" sectionFormat="of" derivedContent="RFC3501">IMAP</xref>,
       <xref target="RFC1939" format="default" sectionFormat="of" derivedContent="RFC1939">POP</xref>, or Web mail systems. Mail
       delivery agents supporting the REQUIRETLS SMTP option <bcp14>SHOULD</bcp14>
       observe the guidelines in <xref target="RFC8314" format="default" sectionFormat="of" derivedContent="RFC8314"/>.</t>
      </section>
    </section>
    <section anchor="errors" numbered="true" toc="include" removeInRFC="false" pn="section-5">
      <name slugifiedName="name-non-delivery-message-handli">Non-delivery Message Handling</name>
      <t pn="section-5-1">Non-delivery ("bounce") messages usually contain important
       metadata about the message to which they refer, including the
       original message header. They therefore <bcp14>MUST</bcp14> be protected in
       the same manner as the original message. 
   All non-delivery messages resulting from messages with the REQUIRETLS SMTP
   option, whether resulting from a REQUIRETLS error or some other issue, <bcp14>MUST</bcp14>
   also specify the REQUIRETLS SMTP option unless redacted as described below.
</t>
      <t pn="section-5-2">The path from the origination of an error bounce message
       back to the MAIL FROM address may not share the same REQUIRETLS
       support as the forward path. Therefore, users requiring TLS are
       advised to make sure that they are capable of receiving mail
       using REQUIRETLS as well. Otherwise, such non-delivery messages
       will be lost.</t>
      <t pn="section-5-3">If a REQUIRETLS message is bounced, the server <bcp14>MUST</bcp14> behave
       as if RET=HDRS was present, as described in <xref target="RFC3461" format="default" sectionFormat="of" derivedContent="RFC3461"/>. If both RET=FULL and REQUIRETLS are
       present, the RET=FULL <bcp14>MUST</bcp14> be disregarded. The SMTP client for a
       REQUIRETLS bounce message uses an empty MAIL FROM
       return-path, as required by <xref target="RFC5321" format="default" sectionFormat="of" derivedContent="RFC5321"/>. When
       the MAIL FROM return-path is empty, the REQUIRETLS parameter
       <bcp14>SHOULD NOT</bcp14> cause a bounce message to be discarded even if the
       next-hop relay does not advertise REQUIRETLS.</t>
      <t pn="section-5-4">Senders of messages requiring TLS are advised to consider
       the possibility that bounce messages will be lost as a result
       of REQUIRETLS return path failure and that some information
       could be leaked if a bounce message is not able to be
       transmitted with REQUIRETLS.</t>
    </section>
    <section anchor="reorigination" numbered="true" toc="include" removeInRFC="false" pn="section-6">
      <name slugifiedName="name-reorigination-consideration">Reorigination Considerations</name>
      <t pn="section-6-1">In a number of situations, a <xref target="RFC5598" format="default" sectionFormat="of" derivedContent="RFC5598">mediator</xref>
      originates a new message as a result of an incoming message. These
      situations include but are not limited to mailing lists (including
      administrative traffic such as message approval requests),
      <xref target="RFC5228" format="default" sectionFormat="of" derivedContent="RFC5228">Sieve</xref>, "vacation" responders, and other
      filters to which incoming
      messages may be piped. These newly originated messages may essentially
      be copies of the incoming message, such as with a forwarding service
      or a mailing list expander.  In other cases, such as with a vacation
      message or a delivery notification, they will be different but might
      contain parts of the original message or other information for which
      the original message sender wants to influence the requirement to use
      TLS transmission.</t>
      <t pn="section-6-2">Mediators that reoriginate messages should apply REQUIRETLS requirements
      in incoming messages (both requiring TLS transmission and requesting
      that TLS not be required) to the reoriginated messages to the extent
      feasible.  A limitation to this might be that for a message requiring
      TLS, redistribution to multiple addresses while retaining the TLS
      requirement could result in the message not being delivered to some of
      the intended recipients.</t>
      <t pn="section-6-3">User-side mediators (such as use of Sieve rules on a user agent)
      typically do not have access to the SMTP details and therefore may
      not be aware of the REQUIRETLS requirement on a delivered message.
      Recipients that expect sensitive traffic should avoid the use of
      user-side mediators. Alternatively, if operationally feasible (such as when
      forwarding to a specific, known address), they should apply REQUIRETLS 
      to all reoriginated messages that do not contain the "TLS-Required: No" header
      field.</t>
    </section>
    <section anchor="IANA" numbered="true" toc="include" removeInRFC="false" pn="section-7">
      <name slugifiedName="name-iana-considerations">IANA Considerations</name>
      <t pn="section-7-1">Per this document, IANA has added
     the following keyword to the "SMTP Service Extensions" subregistry of the
      <xref target="MailParams" format="default" sectionFormat="of" derivedContent="MailParams">"Mail Parameters" registry</xref>:</t>
      <ul empty="true" bare="false" spacing="normal" pn="section-7-2">
        <li pn="section-7-2.1">
          <dl newline="false" spacing="compact" indent="30" pn="section-7-2.1.1">
            <dt pn="section-7-2.1.1.1">EHLO Keyword:</dt>
            <dd pn="section-7-2.1.1.2">REQUIRETLS</dd>
            <dt pn="section-7-2.1.1.3">Description:</dt>
            <dd pn="section-7-2.1.1.4">Require TLS</dd>
            <dt pn="section-7-2.1.1.5">Syntax and parameters:</dt>
            <dd pn="section-7-2.1.1.6">(no parameters)</dd>
            <dt pn="section-7-2.1.1.7">Additional SMTP verbs:</dt>
            <dd pn="section-7-2.1.1.8">none</dd>
            <dt pn="section-7-2.1.1.9">MAIL and RCPT parameters:</dt>
            <dd pn="section-7-2.1.1.10">REQUIRETLS parameter on MAIL</dd>
            <dt pn="section-7-2.1.1.11">Behavior:</dt>
            <dd pn="section-7-2.1.1.12">Use of the REQUIRETLS parameter on the MAIL verb causes
that message to require the use of TLS and tagging with REQUIRETLS for all onward relay.</dd>
            <dt pn="section-7-2.1.1.13">Command length increment:</dt>
            <dd pn="section-7-2.1.1.14">11 characters</dd>
          </dl>
        </li>
      </ul>
      <t pn="section-7-3">Per this document, IANA has added an
     entry to the "Enumerated Status Codes" subregistry of the <xref target="SMTPStatusCodes" format="default" sectionFormat="of" derivedContent="SMTPStatusCodes">"Simple Mail Transfer Protocol (SMTP) Enhanced Status
     Codes Registry"</xref>:</t>
      <ul empty="true" bare="false" spacing="normal" pn="section-7-4">
        <li pn="section-7-4.1">
          <dl newline="false" spacing="compact" indent="30" pn="section-7-4.1.1">
            <dt pn="section-7-4.1.1.1">Code:</dt>
            <dd pn="section-7-4.1.1.2">X.7.30</dd>
            <dt pn="section-7-4.1.1.3">Sample Text:</dt>
            <dd pn="section-7-4.1.1.4">REQUIRETLS support required</dd>
            <dt pn="section-7-4.1.1.5">Associated basic status code:</dt>
            <dd pn="section-7-4.1.1.6">550</dd>
            <dt pn="section-7-4.1.1.7">Description:</dt>
            <dd pn="section-7-4.1.1.8">This indicates that the message was not able to be
forwarded because it was received with a REQUIRETLS requirement and none of
the SMTP servers to which the message should be forwarded provide this support.</dd>
            <dt pn="section-7-4.1.1.9">Reference:</dt>
            <dd pn="section-7-4.1.1.10">RFC 8689</dd>
            <dt pn="section-7-4.1.1.11">Submitter:</dt>
            <dd pn="section-7-4.1.1.12">J. Fenton</dd>
            <dt pn="section-7-4.1.1.13">Change Controller:</dt>
            <dd pn="section-7-4.1.1.14">IESG</dd>
          </dl>
        </li>
      </ul>
      <t pn="section-7-5">Per this document, IANA has added
     an entry to the "Permanent Message Header Field
     Names" subregistry of the <xref target="MessageHeaders" format="default" sectionFormat="of" derivedContent="MessageHeaders">"Message Headers" registry</xref> as follows:</t>
      <ul empty="true" bare="false" spacing="normal" pn="section-7-6">
        <li pn="section-7-6.1">
          <dl newline="false" spacing="compact" indent="30" pn="section-7-6.1.1">
            <dt pn="section-7-6.1.1.1">Header field name:</dt>
            <dd pn="section-7-6.1.1.2">TLS-Required</dd>
            <dt pn="section-7-6.1.1.3">Applicable protocol:</dt>
            <dd pn="section-7-6.1.1.4">mail</dd>
            <dt pn="section-7-6.1.1.5">Status:</dt>
            <dd pn="section-7-6.1.1.6">standard</dd>
            <dt pn="section-7-6.1.1.7">Author/change controller:</dt>
            <dd pn="section-7-6.1.1.8">IETF</dd>
            <dt pn="section-7-6.1.1.9">Specification document:</dt>
            <dd pn="section-7-6.1.1.10">RFC 8689</dd>
          </dl>
        </li>
      </ul>
    </section>
    <section anchor="Security" numbered="true" toc="include" removeInRFC="false" pn="section-8">
      <name slugifiedName="name-security-considerations">Security Considerations</name>
      <t pn="section-8-1">The purpose of REQUIRETLS is to give the originator of a
     message control over the security of email they send, either by
     conveying an expectation that it will be transmitted in an
     encrypted form over the wire or explicitly indicating that transport
     encryption is not required if it cannot be successfully
     negotiated.</t>
      <t pn="section-8-2">The following considerations apply to the REQUIRETLS service
       extension but not the TLS-Required header field, since messages
       specifying the header field are less concerned with transport
       security.</t>
      <section anchor="Passive" numbered="true" toc="include" removeInRFC="false" pn="section-8.1">
        <name slugifiedName="name-passive-attacks">Passive Attacks</name>
        <t pn="section-8.1-1">REQUIRETLS is generally effective against passive
	 attackers who are merely trying to eavesdrop on an SMTP
	 exchange between an SMTP client and server. This assumes, of
	 course, the cryptographic integrity of the TLS connection
	 being used.</t>
      </section>
      <section anchor="Active" numbered="true" toc="include" removeInRFC="false" pn="section-8.2">
        <name slugifiedName="name-active-attacks">Active Attacks</name>
        <t pn="section-8.2-1">Active attacks against TLS-encrypted SMTP connections can
	 take many forms. One such attack is to interfere in the
	 negotiation by changing the STARTTLS command to something
	 illegal such as XXXXXXXX. This causes TLS negotiation to fail
	 and messages to be sent in the clear, where they can be
	 intercepted. REQUIRETLS detects the failure of STARTTLS and
	 declines to send the message rather than send it
	 insecurely.</t>
        <t pn="section-8.2-2">A second form of attack is a man-in-the-middle attack
	 where the attacker terminates the TLS connection rather than
	 the intended SMTP server. This is possible when, as is
	 commonly the case, the SMTP client either does not verify the
	 server's certificate or establishes the connection even when
	 the verification fails. REQUIRETLS requires successful
	 certificate validation before sending the message.</t>
        <t pn="section-8.2-3">Another active attack involves the spoofing of DNS MX
	 records of the recipient domain. An attacker with this
	 capability could potentially cause the message to be redirected to a mail
	 server under the attacker's own control, which would
	 presumably have a valid certificate. REQUIRETLS requires that
	 the recipient domain's MX record lookup be validated either
	 using DNSSEC or via a published MTA-STS policy that specifies
	 the acceptable SMTP server hostname(s) for the recipient domain.</t>
      </section>
      <section anchor="badactor" numbered="true" toc="include" removeInRFC="false" pn="section-8.3">
        <name slugifiedName="name-bad-actor-mtas">Bad-Actor MTAs</name>
        <t pn="section-8.3-1">A bad-actor MTA along the message transmission path could
	 misrepresent its support of REQUIRETLS and/or actively strip
	 REQUIRETLS tags from messages it handles. However, since
	 intermediate MTAs are already trusted with the cleartext of
	 messages they handle, and are not part of the threat model
	 for transport-layer security, they are also not part of the
	 threat model for REQUIRETLS.</t>
        <t pn="section-8.3-2">It should be reemphasized that since SMTP TLS is a
	 transport-layer security protocol, messages sent using
	 REQUIRETLS are not encrypted end-to-end and are visible to
	 MTAs that are part of the message delivery path. Messages
	 containing sensitive information that MTAs should not have
	 access to <bcp14>MUST</bcp14> be sent using end-to-end content encryption
	 such as <xref target="RFC4880" format="default" sectionFormat="of" derivedContent="RFC4880">OpenPGP</xref> or <xref target="RFC8551" format="default" sectionFormat="of" derivedContent="RFC8551">S/MIME</xref>.</t>
      </section>
      <section anchor="conflicts" numbered="true" toc="include" removeInRFC="false" pn="section-8.4">
        <name slugifiedName="name-policy-conflicts">Policy Conflicts</name>
        <t pn="section-8.4-1">In some cases, the use of the TLS-Required header field may conflict
with a recipient domain policy expressed through the <xref target="RFC7672" format="default" sectionFormat="of" derivedContent="RFC7672">DANE</xref> or <xref target="RFC8461" format="default" sectionFormat="of" derivedContent="RFC8461">MTA-STS</xref> protocols.
Although these protocols encourage the use of TLS transport by advertising
the availability of TLS, the use of the "TLS-Required: No" header field represents an
explicit decision on the part of the sender not to require the use of TLS, such
as to overcome a configuration error. The recipient domain has the ultimate
ability to require TLS by not accepting messages when STARTTLS has not been
negotiated; otherwise, "TLS-Required: No" is effectively directing the client
MTA to behave as if it does not support DANE or MTA-STS.</t>
      </section>
    </section>
  </middle>
  <back>
    <references pn="section-9">
      <name slugifiedName="name-references">References</name>
      <references pn="section-9.1">
        <name slugifiedName="name-normative-references">Normative References</name>
        <reference anchor="MailParams" target="http://www.iana.org/assignments/mail-parameters" quoteTitle="true" derivedAnchor="MailParams">
          <front>
            <title>Mail Parameters</title>
            <author>
              <organization showOnFrontPage="true">IANA</organization>
            </author>
          </front>
        </reference>
        <reference anchor="MessageHeaders" target="https://www.iana.org/assignments/message-headers" quoteTitle="true" derivedAnchor="MessageHeaders">
          <front>
            <title>Permanent Message Header Field Names</title>
            <author>
              <organization showOnFrontPage="true">IANA</organization>
            </author>
          </front>
        </reference>
        <reference anchor="RFC2119" target="https://www.rfc-editor.org/info/rfc2119" quoteTitle="true" derivedAnchor="RFC2119">
          <front>
            <title>Key words for use in RFCs to Indicate Requirement Levels</title>
            <author initials="S." surname="Bradner" fullname="S. Bradner">
              <organization showOnFrontPage="true"/>
            </author>
            <date year="1997" month="March"/>
            <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="RFC3207" target="https://www.rfc-editor.org/info/rfc3207" quoteTitle="true" derivedAnchor="RFC3207">
          <front>
            <title>SMTP Service Extension for Secure SMTP over Transport Layer Security</title>
            <author initials="P." surname="Hoffman" fullname="P. Hoffman">
              <organization showOnFrontPage="true"/>
            </author>
            <date year="2002" month="February"/>
            <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="RFC3461" target="https://www.rfc-editor.org/info/rfc3461" quoteTitle="true" derivedAnchor="RFC3461">
          <front>
            <title>Simple Mail Transfer Protocol (SMTP) Service Extension for Delivery Status Notifications (DSNs)</title>
            <author initials="K." surname="Moore" fullname="K. Moore">
              <organization showOnFrontPage="true"/>
            </author>
            <date year="2003" month="January"/>
            <abstract>
              <t>This memo defines an extension to the Simple Mail Transfer Protocol (SMTP) service, which allows an SMTP client to specify (a) that Delivery Status Notifications (DSNs) should be generated under certain conditions, (b) whether such notifications should return the contents of the message, and (c) additional information, to be returned with a DSN, that allows the sender to identify both the recipient(s) for which the DSN was issued, and the transaction in which the original message was sent.  [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="3461"/>
          <seriesInfo name="DOI" value="10.17487/RFC3461"/>
        </reference>
        <reference anchor="RFC4033" target="https://www.rfc-editor.org/info/rfc4033" quoteTitle="true" derivedAnchor="RFC4033">
          <front>
            <title>DNS Security Introduction and Requirements</title>
            <author initials="R." surname="Arends" fullname="R. Arends">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="R." surname="Austein" fullname="R. Austein">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="M." surname="Larson" fullname="M. Larson">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="D." surname="Massey" fullname="D. Massey">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="S." surname="Rose" fullname="S. Rose">
              <organization showOnFrontPage="true"/>
            </author>
            <date year="2005" month="March"/>
            <abstract>
              <t>The Domain Name System Security Extensions (DNSSEC) add data origin authentication and data integrity to the Domain Name System.  This document introduces these extensions and describes their capabilities and limitations.  This document also discusses the services that the DNS security extensions do and do not provide.  Last, this document describes the interrelationships between the documents that collectively describe DNSSEC.  [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="4033"/>
          <seriesInfo name="DOI" value="10.17487/RFC4033"/>
        </reference>
        <reference anchor="RFC4034" target="https://www.rfc-editor.org/info/rfc4034" quoteTitle="true" derivedAnchor="RFC4034">
          <front>
            <title>Resource Records for the DNS Security Extensions</title>
            <author initials="R." surname="Arends" fullname="R. Arends">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="R." surname="Austein" fullname="R. Austein">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="M." surname="Larson" fullname="M. Larson">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="D." surname="Massey" fullname="D. Massey">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="S." surname="Rose" fullname="S. Rose">
              <organization showOnFrontPage="true"/>
            </author>
            <date year="2005" month="March"/>
            <abstract>
              <t>This document is part of a family of documents that describe the DNS Security Extensions (DNSSEC).  The DNS Security Extensions are a collection of resource records and protocol modifications that provide source authentication for the DNS.  This document defines the public key (DNSKEY), delegation signer (DS), resource record digital signature (RRSIG), and authenticated denial of existence (NSEC) resource records.  The purpose and format of each resource record is described in detail, and an example of each resource record is given. </t>
              <t> This document obsoletes RFC 2535 and incorporates changes from all updates to RFC 2535.  [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="4034"/>
          <seriesInfo name="DOI" value="10.17487/RFC4034"/>
        </reference>
        <reference anchor="RFC4035" target="https://www.rfc-editor.org/info/rfc4035" quoteTitle="true" derivedAnchor="RFC4035">
          <front>
            <title>Protocol Modifications for the DNS Security Extensions</title>
            <author initials="R." surname="Arends" fullname="R. Arends">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="R." surname="Austein" fullname="R. Austein">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="M." surname="Larson" fullname="M. Larson">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="D." surname="Massey" fullname="D. Massey">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="S." surname="Rose" fullname="S. Rose">
              <organization showOnFrontPage="true"/>
            </author>
            <date year="2005" month="March"/>
            <abstract>
              <t>This document is part of a family of documents that describe the DNS Security Extensions (DNSSEC).  The DNS Security Extensions are a collection of new resource records and protocol modifications that add data origin authentication and data integrity to the DNS.  This document describes the DNSSEC protocol modifications.  This document defines the concept of a signed zone, along with the requirements for serving and resolving by using DNSSEC.  These techniques allow a security-aware resolver to authenticate both DNS resource records and authoritative DNS error indications. </t>
              <t> This document obsoletes RFC 2535 and incorporates changes from all updates to RFC 2535.  [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="4035"/>
          <seriesInfo name="DOI" value="10.17487/RFC4035"/>
        </reference>
        <reference anchor="RFC5234" target="https://www.rfc-editor.org/info/rfc5234" quoteTitle="true" derivedAnchor="RFC5234">
          <front>
            <title>Augmented BNF for Syntax Specifications: ABNF</title>
            <author initials="D." surname="Crocker" fullname="D. Crocker" role="editor">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="P." surname="Overell" fullname="P. Overell">
              <organization showOnFrontPage="true"/>
            </author>
            <date year="2008" month="January"/>
            <abstract>
              <t>Internet technical specifications often need to define a formal syntax.  Over the years, a modified version of Backus-Naur Form (BNF), called Augmented BNF (ABNF), has been popular among many Internet specifications.  The current specification documents ABNF. It balances compactness and simplicity with reasonable representational power.  The differences between standard BNF and ABNF involve naming rules, repetition, alternatives, order-independence, and value ranges.  This specification also supplies additional rule definitions and encoding for a core lexical analyzer of the type common to several Internet specifications.  [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="STD" value="68"/>
          <seriesInfo name="RFC" value="5234"/>
          <seriesInfo name="DOI" value="10.17487/RFC5234"/>
        </reference>
        <reference anchor="RFC5248" target="https://www.rfc-editor.org/info/rfc5248" quoteTitle="true" derivedAnchor="RFC5248">
          <front>
            <title>A Registry for SMTP Enhanced Mail System Status Codes</title>
            <author initials="T." surname="Hansen" fullname="T. Hansen">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="J." surname="Klensin" fullname="J. Klensin">
              <organization showOnFrontPage="true"/>
            </author>
            <date year="2008" month="June"/>
            <abstract>
              <t>The specification for enhanced mail system status codes, RFC 3463, establishes a new code model and lists a collection of status codes. While it anticipated that more codes would be added over time, it did not provide an explicit mechanism for registering and tracking those codes.  This document specifies an IANA registry for mail system enhanced status codes, and initializes that registry with the codes so far established in published standards-track documents, as well as other codes that have become established in the industry.  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="138"/>
          <seriesInfo name="RFC" value="5248"/>
          <seriesInfo name="DOI" value="10.17487/RFC5248"/>
        </reference>
        <reference anchor="RFC5321" target="https://www.rfc-editor.org/info/rfc5321" quoteTitle="true" derivedAnchor="RFC5321">
          <front>
            <title>Simple Mail Transfer Protocol</title>
            <author initials="J." surname="Klensin" fullname="J. Klensin">
              <organization showOnFrontPage="true"/>
            </author>
            <date year="2008" month="October"/>
            <abstract>
              <t>This document is a specification of the basic protocol for Internet electronic mail transport.  It consolidates, updates, and clarifies several previous documents, making all or parts of most of them obsolete.  It covers the SMTP extension mechanisms and best practices for the contemporary Internet, but does not provide details about particular extensions.  Although SMTP was designed as a mail transport and delivery protocol, this specification also contains information that is important to its use as a "mail submission" protocol for "split-UA" (User Agent) mail reading systems and mobile environments.  [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="5321"/>
          <seriesInfo name="DOI" value="10.17487/RFC5321"/>
        </reference>
        <reference anchor="RFC5322" target="https://www.rfc-editor.org/info/rfc5322" quoteTitle="true" derivedAnchor="RFC5322">
          <front>
            <title>Internet Message Format</title>
            <author initials="P." surname="Resnick" fullname="P. Resnick" role="editor">
              <organization showOnFrontPage="true"/>
            </author>
            <date year="2008" month="October"/>
            <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="RFC6125" target="https://www.rfc-editor.org/info/rfc6125" quoteTitle="true" derivedAnchor="RFC6125">
          <front>
            <title>Representation and Verification of Domain-Based Application Service Identity within Internet Public Key Infrastructure Using X.509 (PKIX) Certificates in the Context of Transport Layer Security (TLS)</title>
            <author initials="P." surname="Saint-Andre" fullname="P. Saint-Andre">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="J." surname="Hodges" fullname="J. Hodges">
              <organization showOnFrontPage="true"/>
            </author>
            <date year="2011" month="March"/>
            <abstract>
              <t>Many application technologies enable secure communication between two entities by means of Internet Public Key Infrastructure Using X.509 (PKIX) certificates in the context of Transport Layer Security (TLS). This document specifies procedures for representing and verifying the identity of application services in such interactions.   [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="6125"/>
          <seriesInfo name="DOI" value="10.17487/RFC6125"/>
        </reference>
        <reference anchor="RFC7525" target="https://www.rfc-editor.org/info/rfc7525" quoteTitle="true" derivedAnchor="RFC7525">
          <front>
            <title>Recommendations for Secure Use of Transport Layer Security (TLS) and Datagram Transport Layer Security (DTLS)</title>
            <author initials="Y." surname="Sheffer" fullname="Y. Sheffer">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="R." surname="Holz" fullname="R. Holz">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="P." surname="Saint-Andre" fullname="P. Saint-Andre">
              <organization showOnFrontPage="true"/>
            </author>
            <date year="2015" month="May"/>
            <abstract>
              <t>Transport Layer Security (TLS) and Datagram Transport Layer Security (DTLS) are widely used to protect data exchanged over application protocols such as HTTP, SMTP, IMAP, POP, SIP, and XMPP.  Over the last few years, several serious attacks on TLS have emerged, including attacks on its most commonly used cipher suites and their modes of operation.  This document provides recommendations for improving the security of deployed services that use TLS and DTLS. The recommendations are applicable to the majority of use cases.</t>
            </abstract>
          </front>
          <seriesInfo name="BCP" value="195"/>
          <seriesInfo name="RFC" value="7525"/>
          <seriesInfo name="DOI" value="10.17487/RFC7525"/>
        </reference>
        <reference anchor="RFC7672" target="https://www.rfc-editor.org/info/rfc7672" quoteTitle="true" derivedAnchor="RFC7672">
          <front>
            <title>SMTP Security via Opportunistic DNS-Based Authentication of Named Entities (DANE) Transport Layer Security (TLS)</title>
            <author initials="V." surname="Dukhovni" fullname="V. Dukhovni">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="W." surname="Hardaker" fullname="W. Hardaker">
              <organization showOnFrontPage="true"/>
            </author>
            <date year="2015" month="October"/>
            <abstract>
              <t>This memo describes a downgrade-resistant protocol for SMTP transport security between Message Transfer Agents (MTAs), based on the DNS-Based Authentication of Named Entities (DANE) TLSA DNS record. Adoption of this protocol enables an incremental transition of the Internet email backbone to one using encrypted and authenticated Transport Layer Security (TLS).</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="7672"/>
          <seriesInfo name="DOI" value="10.17487/RFC7672"/>
        </reference>
        <reference anchor="RFC8174" target="https://www.rfc-editor.org/info/rfc8174" quoteTitle="true" derivedAnchor="RFC8174">
          <front>
            <title>Ambiguity of Uppercase vs Lowercase in RFC 2119 Key Words</title>
            <author initials="B." surname="Leiba" fullname="B. Leiba">
              <organization showOnFrontPage="true"/>
            </author>
            <date year="2017" month="May"/>
            <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="RFC8314" target="https://www.rfc-editor.org/info/rfc8314" quoteTitle="true" derivedAnchor="RFC8314">
          <front>
            <title>Cleartext Considered Obsolete: Use of Transport Layer Security (TLS) for Email Submission and Access</title>
            <author initials="K." surname="Moore" fullname="K. Moore">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="C." surname="Newman" fullname="C. Newman">
              <organization showOnFrontPage="true"/>
            </author>
            <date year="2018" month="January"/>
            <abstract>
              <t>This specification outlines current recommendations for the use of Transport Layer Security (TLS) to provide confidentiality of email traffic between a Mail User Agent (MUA) and a Mail Submission Server or Mail Access Server.  This document updates RFCs 1939, 2595, 3501, 5068, 6186, and 6409.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8314"/>
          <seriesInfo name="DOI" value="10.17487/RFC8314"/>
        </reference>
        <reference anchor="RFC8461" target="https://www.rfc-editor.org/info/rfc8461" quoteTitle="true" derivedAnchor="RFC8461">
          <front>
            <title>SMTP MTA Strict Transport Security (MTA-STS)</title>
            <author initials="D." surname="Margolis" fullname="D. Margolis">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="M." surname="Risher" fullname="M. Risher">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="B." surname="Ramakrishnan" fullname="B. Ramakrishnan">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="A." surname="Brotman" fullname="A. Brotman">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="J." surname="Jones" fullname="J. Jones">
              <organization showOnFrontPage="true"/>
            </author>
            <date year="2018" month="September"/>
            <abstract>
              <t>SMTP MTA Strict Transport Security (MTA-STS) is a mechanism enabling mail service providers (SPs) to declare their ability to receive Transport Layer Security (TLS) secure SMTP connections and to specify whether sending SMTP servers should refuse to deliver to MX hosts that do not offer TLS with a trusted server certificate.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8461"/>
          <seriesInfo name="DOI" value="10.17487/RFC8461"/>
        </reference>
        <reference anchor="SMTPStatusCodes" target="https://www.iana.org/assignments/smtp-enhanced-status-codes" quoteTitle="true" derivedAnchor="SMTPStatusCodes">
          <front>
            <title>Simple Mail Transfer Protocol (SMTP) Enhanced Status Codes Registry</title>
            <author>
              <organization showOnFrontPage="true">IANA</organization>
            </author>
          </front>
        </reference>
      </references>
      <references pn="section-9.2">
        <name slugifiedName="name-informative-references">Informative References</name>
        <reference anchor="RFC1939" target="https://www.rfc-editor.org/info/rfc1939" quoteTitle="true" derivedAnchor="RFC1939">
          <front>
            <title>Post Office Protocol - Version 3</title>
            <author initials="J." surname="Myers" fullname="J. Myers">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="M." surname="Rose" fullname="M. Rose">
              <organization showOnFrontPage="true"/>
            </author>
            <date year="1996" month="May"/>
            <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="RFC2033" target="https://www.rfc-editor.org/info/rfc2033" quoteTitle="true" derivedAnchor="RFC2033">
          <front>
            <title>Local Mail Transfer Protocol</title>
            <author initials="J." surname="Myers" fullname="J. Myers">
              <organization showOnFrontPage="true"/>
            </author>
            <date year="1996" month="October"/>
            <abstract>
              <t>SMTP [SMTP] [HOST-REQ] and its service extensions [ESMTP] provide a mechanism for transferring mail reliably and efficiently.  The design of the SMTP protocol effectively requires the server to manage a mail delivery queue.  This memo provides information for the Internet community.  This memo does not specify an Internet standard of any kind.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="2033"/>
          <seriesInfo name="DOI" value="10.17487/RFC2033"/>
        </reference>
        <reference anchor="RFC3501" target="https://www.rfc-editor.org/info/rfc3501" quoteTitle="true" derivedAnchor="RFC3501">
          <front>
            <title>INTERNET MESSAGE ACCESS PROTOCOL - VERSION 4rev1</title>
            <author initials="M." surname="Crispin" fullname="M. Crispin">
              <organization showOnFrontPage="true"/>
            </author>
            <date year="2003" month="March"/>
            <abstract>
              <t>The Internet Message Access Protocol, Version 4rev1 (IMAP4rev1) allows a client to access and manipulate electronic mail messages on a server. IMAP4rev1 permits manipulation of mailboxes (remote message folders) in a way that is functionally equivalent to local folders.  IMAP4rev1 also provides the capability for an offline client to resynchronize with the server. IMAP4rev1 includes operations for creating, deleting, and renaming mailboxes, checking for new messages, permanently removing messages, setting and clearing flags, RFC 2822 and RFC 2045 parsing, searching, and selective fetching of message attributes, texts, and portions thereof.  Messages in IMAP4rev1 are accessed by the use of numbers. These numbers are either message sequence numbers or unique identifiers. IMAP4rev1 supports a single server.  A mechanism for accessing configuration information to support multiple IMAP4rev1 servers is discussed in RFC 2244. IMAP4rev1 does not specify a means of posting mail; this function is handled by a mail transfer protocol such as RFC 2821.  [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="3501"/>
          <seriesInfo name="DOI" value="10.17487/RFC3501"/>
        </reference>
        <reference anchor="RFC4880" target="https://www.rfc-editor.org/info/rfc4880" quoteTitle="true" derivedAnchor="RFC4880">
          <front>
            <title>OpenPGP Message Format</title>
            <author initials="J." surname="Callas" fullname="J. Callas">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="L." surname="Donnerhacke" fullname="L. Donnerhacke">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="H." surname="Finney" fullname="H. Finney">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="D." surname="Shaw" fullname="D. Shaw">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="R." surname="Thayer" fullname="R. Thayer">
              <organization showOnFrontPage="true"/>
            </author>
            <date year="2007" month="November"/>
            <abstract>
              <t>This document is maintained in order to publish all necessary information needed to develop interoperable applications based on the OpenPGP format.  It is not a step-by-step cookbook for writing an application.  It describes only the format and methods needed to read, check, generate, and write conforming packets crossing any network.  It does not deal with storage and implementation questions. It does, however, discuss implementation issues necessary to avoid security flaws.</t>
              <t>OpenPGP software uses a combination of strong public-key and symmetric cryptography to provide security services for electronic communications and data storage.  These services include confidentiality, key management, authentication, and digital signatures.  This document specifies the message formats used in OpenPGP.  [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="4880"/>
          <seriesInfo name="DOI" value="10.17487/RFC4880"/>
        </reference>
        <reference anchor="RFC5228" target="https://www.rfc-editor.org/info/rfc5228" quoteTitle="true" derivedAnchor="RFC5228">
          <front>
            <title>Sieve: An Email Filtering Language</title>
            <author initials="P." surname="Guenther" fullname="P. Guenther" role="editor">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="T." surname="Showalter" fullname="T. Showalter" role="editor">
              <organization showOnFrontPage="true"/>
            </author>
            <date year="2008" month="January"/>
            <abstract>
              <t>This document describes a language for filtering email messages at time of final delivery.  It is designed to be implementable on either a mail client or mail server.  It is meant to be extensible, simple, and independent of access protocol, mail architecture, and operating system.  It is suitable for running on a mail server where users may not be allowed to execute arbitrary programs, such as on black box Internet Message Access Protocol (IMAP) servers, as the base language has no variables, loops, or ability to shell out to external programs.  [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="5228"/>
          <seriesInfo name="DOI" value="10.17487/RFC5228"/>
        </reference>
        <reference anchor="RFC5598" target="https://www.rfc-editor.org/info/rfc5598" quoteTitle="true" derivedAnchor="RFC5598">
          <front>
            <title>Internet Mail Architecture</title>
            <author initials="D." surname="Crocker" fullname="D. Crocker">
              <organization showOnFrontPage="true"/>
            </author>
            <date year="2009" month="July"/>
            <abstract>
              <t>Over its thirty-five-year history, Internet Mail has changed significantly in scale and complexity, as it has become a global infrastructure service.  These changes have been evolutionary, rather than revolutionary, reflecting a strong desire to preserve both its installed base and its usefulness.  To collaborate productively on this large and complex system, all participants need to work from a common view of it and use a common language to describe its components and the interactions among them.  But the many differences in perspective currently make it difficult to know exactly what another participant means.  To serve as the necessary common frame of reference, this document describes the enhanced Internet Mail architecture, reflecting the current service.  This memo provides  information for the Internet community.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="5598"/>
          <seriesInfo name="DOI" value="10.17487/RFC5598"/>
        </reference>
        <reference anchor="RFC6409" target="https://www.rfc-editor.org/info/rfc6409" quoteTitle="true" derivedAnchor="RFC6409">
          <front>
            <title>Message Submission for Mail</title>
            <author initials="R." surname="Gellens" fullname="R. Gellens">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="J." surname="Klensin" fullname="J. Klensin">
              <organization showOnFrontPage="true"/>
            </author>
            <date year="2011" month="November"/>
            <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="RFC8551" target="https://www.rfc-editor.org/info/rfc8551" quoteTitle="true" derivedAnchor="RFC8551">
          <front>
            <title>Secure/Multipurpose Internet Mail Extensions (S/MIME) Version 4.0 Message Specification</title>
            <author initials="J." surname="Schaad" fullname="J. Schaad">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="B." surname="Ramsdell" fullname="B. Ramsdell">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="S." surname="Turner" fullname="S. Turner">
              <organization showOnFrontPage="true"/>
            </author>
            <date year="2019" month="April"/>
            <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>
      </references>
    </references>
    <section numbered="true" toc="include" removeInRFC="false" pn="section-appendix.a">
      <name slugifiedName="name-examples">Examples</name>
      <t pn="section-appendix.a-1">This section is informative.</t>
      <section numbered="true" toc="include" removeInRFC="false" pn="section-a.1">
        <name slugifiedName="name-requiretls-smtp-option">REQUIRETLS SMTP Option</name>
        <t pn="section-a.1-1">The TLS-Required SMTP option is used to express the intention of
       the sender to have the associated message relayed using TLS. In
       the following example, lines beginning with "C:" are transmitted
       from the SMTP client to the server, and lines beginning with "S:"
       are transmitted in the opposite direction.</t>
        <artwork name="" type="" align="left" alt="" pn="section-a.1-2">
 S: 220 mail.example.net ESMTP
 C: EHLO mail.example.org
 S: 250-mail.example.net Hello example.org [192.0.2.1]
 S: 250-SIZE 52428800
 S: 250-8BITMIME
 S: 250-PIPELINING
 S: 250-STARTTLS
 S: 250 HELP
 C: STARTTLS
 S: TLS go ahead
</artwork>
        <t pn="section-a.1-3">(at this point TLS negotiation takes place. The remainder of this
 session occurs within TLS.)</t>
        <artwork name="" type="" align="left" alt="" pn="section-a.1-4">
 S: 220 mail.example.net ESMTP
 C: EHLO mail.example.org
 S: 250-mail.example.net Hello example.org [192.0.2.1]
 S: 250-SIZE 52428800
 S: 250-8BITMIME
 S: 250-PIPELINING
 S: 250-REQUIRETLS
 S: 250 HELP
 C: MAIL FROM:&lt;roger@example.org&gt; REQUIRETLS
 S: 250 OK
 C: RCPT TO:&lt;editor@example.net&gt;
 S: 250 Accepted
 C: DATA
 S: 354 Enter message, ending with "." on a line by itself
</artwork>
        <t pn="section-a.1-5">(message follows)</t>
        <artwork name="" type="" align="left" alt="" pn="section-a.1-6">
 C: .
 S: 250 OK
 C: QUIT
</artwork>
      </section>
      <section numbered="true" toc="include" removeInRFC="false" pn="section-a.2">
        <name slugifiedName="name-tls-required-header-field">TLS-Required Header Field</name>
        <t pn="section-a.2-1">The TLS-Required header field is used when the sender requests
       that the mail system not heed a default policy of the recipient
       domain requiring TLS. It might be used, for example, to allow
       problems with the recipient domain's TLS certificate to be
       reported:</t>
        <artwork name="" type="" align="left" alt="" pn="section-a.2-2">
 From: Roger Reporter &lt;roger@example.org&gt;
 To: Andy Admin &lt;admin@example.com&gt;
 Subject: Certificate problem?
 TLS-Required: No
 Date: Fri, 18 Jan 2019 10:26:55 -0800
 Message-ID: &lt;5c421a6f79c0e_d153ff8286d45c468473@mail.example.org&gt;

 Andy, there seems to be a problem with the TLS certificate
 on your mail server. Are you aware of this?

 Roger         </artwork>
      </section>
    </section>
    <section anchor="acknowledgements" numbered="false" toc="include" removeInRFC="false" pn="section-appendix.b">
      <name slugifiedName="name-acknowledgements">Acknowledgements</name>
      <t pn="section-appendix.b-1">
   The author would like to acknowledge many helpful suggestions on the
   ietf-smtp and uta mailing lists, in particular those of Viktor Dukhovni,
   Tony Finch, Jeremy Harris, Arvel Hathcock, John Klensin, Barry Leiba, John
   Levine, Chris Newman, Rolf Sonneveld, and Per Thorsheim.
      </t>
    </section>
    <section anchor="authors-addresses" numbered="false" removeInRFC="false" toc="include" pn="section-appendix.c">
      <name slugifiedName="name-authors-address">Author's Address</name>
      <author fullname="Jim Fenton" initials="J." surname="Fenton">
        <organization showOnFrontPage="true">Altmode Networks</organization>
        <address>
          <postal>
            <street></street>
            <city>Los Altos</city>
            <region>California</region>
            <code>94024</code>
            <country>United States of America</country>
          </postal>
          <email>fenton@bluepopcorn.net</email>
        </address>
      </author>
    </section>
  </back>
</rfc>
