<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE rfc SYSTEM "rfc2629.dtd">
<?rfc toc="yes"?>
<?rfc compact="yes"?>
<?rfc subcompact="no"?>
<?rfc strict="yes"?>
<?rfc symrefs="yes"?>
<?rfc linkmailto="no"?>
<rfc ipr="trust200902" category="std" 
     updates="1939, 2595, 3464, 3501, 5068, 6186, 6409"
     docName="draft-ietf-uta-email-deep-12">
<front>
<title abbrev="Use of TLS for Email Submission/Access">Cleartext Considered Obsolete: Use of TLS for Email Submission and Access</title>
<author fullname="Keith Moore" initials="K" surname="Moore">
  <organization>Windrock, Inc.</organization>
  <address>
    <postal>
      <street>PO Box 1934</street>
      <city>Knoxville</city>
      <region>TN</region>
      <country>US</country>
      <code>37901</code>
    </postal>
    <email>moore@network-heretics.com</email>
  </address>
</author>
<author initials="C." surname="Newman" fullname="Chris Newman">
 <organization>Oracle</organization>
 <address>
  <postal>
   <street>440 E. Huntington Dr., Suite 400</street>
   <city>Arcadia</city>
   <region>CA</region>
   <code>91006</code>
   <country>US</country>
  </postal>
  <email>chris.newman@oracle.com</email>
 </address>
</author>
<date month="December" year="2017" />
<area>Applications</area>
<keyword>I-D</keyword>
<keyword>Internet-Draft</keyword>
<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 or mail
access server. 
</t></abstract>
</front>
<middle>
<section title="Introduction">

<t>
Software that provides email service via Internet Message Access
Protocol (IMAP) <xref target="RFC3501"/>, Post Office Protocol (POP)
<xref target="RFC1939"/> and/or Simple Mail Transfer Protocol (SMTP)
Submission <xref target="RFC6409"/> usually has Transport Layer
Security (TLS) <xref target="RFC5246"/> support but often does not use
it in a way that maximizes end-user confidentiality. This
specification describes current recommendations for the use of TLS in
interactions between Mail User Agents and Mail Access Services, and
between Mail User Agents and Mail Submission Services.
</t>

<t>In brief, this memo now recommends that:
<list style="symbols">

  <t>TLS version 1.2 or greater be used for all traffic between mail
  user agents (MUAs) and mail submission servers, and also between
  MUAs and mail access servers.</t>

  <t>MUAs and mail service providers discourage use of cleartext
  protocols for mail access and mail submission, and deprecate use of
  cleartext protocols for these purposes as soon as practicable.</t>
  
  <t>Use of "Implicit TLS" on ports reserved for that purpose, in
  preference to STARTTLS on a port that otherwise supports
  cleartext.</t>

</list>
</t>

<t>This memo does not address use of TLS with SMTP for message relay
(where <xref target="RFC6409">Message Submission</xref> does not
apply).  Improved use of TLS with SMTP for message relay requires a
different approach. One approach to address that topic is described in
<xref target="RFC7672"/>; another is in 
<xref target="I-D.ietf-uta-mta-sts"/>.</t>

<t>The recommendations in this memo do not replace the functionality
of, and are not intended as a substitute for, end-to-end encryption of
electronic mail.</t>

</section>

<section title="Conventions and Terminology Used in This Document">
  
<!--
<t>The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
"SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this
document are to be interpreted as described in
<xref target="RFC2119"/>.</t>
-->
<t>
The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
"SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY", and
"OPTIONAL" 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>

<t>The term "Implicit TLS" refers to the automatic negotiation of TLS
whenever a TCP connection is made on a particular TCP port that is
used exclusively by that server for TLS connections.  The term
"Implicit TLS" is intended to contrast with use of STARTTLS and
similar commands in POP, IMAP, SMTP message submission, and other
protocols, that are used by client and server to explicitly negotiate
TLS on an established cleartext TCP connection.</t>

<t>The term "Mail Access Services" includes POP, IMAP and any other
protocol used to access or modify received messages, or to access or
modify a mail user's account configuration.</t>

<t>"Mail Submission Service" refers to the use of the protocol
specified in <xref target="RFC6409" /> (or one of its predecessors or
successors) for submission of outgoing messages for delivery to
recipients.</t>

<t>The term "Mail Service Provider" (MSP) refers to a provider of Mail
Access Services and/or Mail Submission Services.</t>

<t>The term "Mail Account" refers to a user's identity with a Mail
Service Provider, that user's authentication credentials, any user
email that is stored by the MSP, and any other per-user configuration
information maintained by the MSP (for example, spam filtering
instructions).  Most Mail User Agents (MUAs) support the ability to
access multiple Mail Accounts.</t>

<t>For each account that an MUA accesses on its user's behalf, it must
have the server names, ports, authentication credentials, and other
configuration information specified by the user.  This information
which is used by the MUA is referred to as "Mail Account
Configuration"</t>

<t>This specification expresses syntax using the Augmented Backus-Naur
Form (ABNF) as described in <xref target="RFC5234"/>, including the
core rules in Appendix B and rules from <xref target="RFC5322"/>.</t>

<!--
<t>In examples, "C:" and "S:" indicate lines sent by the client and
server respectively. If a single "C:" or "S:" label applies to multiple
lines, then the line breaks between those lines are for editorial
clarity only and are not part of the actual protocol exchange.</t>
-->
</section>

<section anchor="tls-implicit" title="Implicit TLS">
<t>
Previous standards for use of email protocols with TLS used the
STARTTLS mechanism: <xref target="RFC2595"/>, <xref
target="RFC3207"/>, and <xref target="RFC3501"/>. With STARTTLS, the
client establishes a cleartext application session and determines
whether to issue a STARTTLS command based on server capabilities and
client configuration. If the client issues a STARTTLS command, a TLS
handshake follows that can upgrade the connection. While this
mechanism has been deployed, an alternate mechanism where TLS is
negotiated immediately at connection start on a separate port
(referred to in this document as "Implicit TLS") has been deployed
more successfully.  To encourage more widespread use of TLS, and to
encourage a greater consistency for how TLS is used, this
specification now recommends use of Implicit TLS for POP, IMAP, SMTP
Submission, and all other protocols used between a Mail User Agent and
a mail service.
</t>
<section title="Implicit TLS for POP">
<t>
When a TCP connection is established for the "pop3s" service (default
port 995), a TLS handshake begins immediately.  Clients MUST implement
the certificate validation mechanism described in <xref
target="RFC7817"/>.  Once the TLS session is established, POP3 <xref
target="RFC1939"/> protocol messages are exchanged as TLS application
data for the remainder of the TCP connection.  After the server sends
a +OK greeting, the server and client MUST enter AUTHORIZATION state,
even if a client certificate was supplied during the TLS handshake.
</t>
<t>
See <xref target="mua-clientcert"/> and <xref
target="server-clientcert"/> for additional information on client
certificate authentication. See <xref target="iana-pop3s"/> for port
registration information.
</t>
</section>
<section title="Implicit TLS for IMAP">
<t>
When a TCP connection is established for the "imaps" service (default
port 993), a TLS handshake begins immediately.  Clients MUST implement
the certificate validation mechanism described in 
<xref target="RFC7817"/>.  Once the TLS session
is established, IMAP <xref target="RFC3501"/> protocol messages are
exchanged as TLS application data for the remainder of the TCP
connection. If a client certificate was provided during the TLS
handshake that the server finds acceptable, the server MAY issue a
PREAUTH greeting in which case both the server and client enter
AUTHENTICATED state. If the server issues an OK greeting then both
server and client enter NOT AUTHENTICATED state.
</t>
<t>
See <xref target="mua-clientcert"/> and <xref
target="server-clientcert"/> for additional information on client
certificate authentication.
See <xref target="iana-pop3s"/> and <xref target="iana-imaps"/> for port
registration information.
</t>
</section>
<section title="Implicit TLS for SMTP Submission">
<t>
When a TCP connection is established for the "submissions" service
(default port 465), a TLS handshake begins immediately.  Clients MUST
implement the certificate validation mechanism described in <xref
target="RFC7817"/>.  Once a TLS session is established, message
submission protocol data <xref target="RFC6409"/> is exchanged as TLS
application data for the remainder of the TCP connection.  (Note: the
"submissions" service name is defined in section 10.3 of this
document, and follows the usual convention that the name of a service
layered on top of Implicit TLS consists of the name of the service as
used without TLS, with an "s" appended.)
</t>
<t>The STARTTLS mechanism on port 587 is relatively widely deployed due
to the situation with port 465 (discussed in <xref
target="iana-submissions"/>). This differs from IMAP and POP services
where Implicit TLS is more widely deployed on servers than STARTTLS. It
is desirable to migrate core protocols used by MUA software to Implicit
TLS over time for consistency as well as the additional reasons
discussed in <xref target="design"/>. However, to maximize use of
encryption for submission it is desirable to support both mechanisms for
Message Submission over TLS for a transition period of several years. As
a result, clients and servers SHOULD implement both STARTTLS on port 587
and Implicit TLS on port 465 for this transition period. Note that there
is no significant difference between the security properties of STARTTLS
on port 587 and Implicit TLS on port 465 if the implementations are
correct and both client and server are configured to require successful
negotiation of TLS prior to message submission.
<!-- XXX (as required in <xref target="all-security"/>). --></t>
<t>Note that the "submissions" port provides access to a Mail Submission
Agent (MSA) as defined in <xref target="RFC6409"/> so requirements
and recommendations for MSAs in that document apply to the
submissions port, including the requirement to implement SMTP AUTH
<xref target="RFC4954"/>.</t>
<t>
See <xref target="mua-clientcert"/> and <xref
target="server-clientcert"/> for additional information on client
certificate authentication.
See <xref target="iana-submissions"/> for port
registration information.
</t>
</section>
<section title="Implicit TLS Connection Closure for POP, IMAP and SMTP
                Submission">
<t>
When a client or server wishes to close the connection, it SHOULD
initiate the exchange of TLS close alerts before TCP connection
termination. The client MAY, after sending a TLS close alert,
gracefully close the TCP connection (e.g. call the close() function on
the TCP socket or otherwise issue a TCP CLOSE (<xref target="RFC0793"/>
section 3.5) without waiting for a TLS response from 
the server.
</t>
</section>
</section>

<section title="Use of TLS by Mail Access
                Services and Message Submission Services">
  <t>
    The following requirements and recommendations apply to Mail
    Access Services and Mail Submission Services:
    <list style="symbols">

      <t>Mail Service Providers (MSPs) that support POP, IMAP, and/or
      Message Submission, MUST support TLS access for those
      services.</t>

      <t>Other services than POP, IMAP and/or Message Submission
      provided by MSPs SHOULD support TLS access, and MUST support TLS
      access for those services which support authentication via
      username and password.</t>

      <t>MSPs that support POP, IMAP, and/or
      Message Submission, SHOULD provide and support instances of
      those services which use Implicit TLS. (See <xref
      target="tls-implicit" />.)</t>

      <t>For compatibility with existing MUAs and existing MUA
      configurations, MSPs SHOULD also, in the near term, provide
      instances of these services which support STARTTLS.  This will
      permit legacy MUAs to discover new availability of TLS
      capability on servers, and may increase use of TLS by such MUAs.
      However, servers SHOULD NOT advertise STARTTLS if use of the
      STARTTLS command by a client is likely to fail (for example, if
      the server has no server certificate configured.)</t>

      <t>MSPs SHOULD advertise their Mail Access Services and Mail
      Submission Services using DNS SRV records according to <xref
      target="RFC6186" />.  (In addition to making correct
      configuration easier for MUAs, this provides a way by which MUAs
      can discover when an MSP begins to offer TLS-based services.)
      Services supporting TLS SHOULD be advertised in preference to
      cleartext services (if offered).  In addition, services using
      Implicit TLS SHOULD be advertised in preference to services
      supporting STARTTLS (if offered). (See also <xref
      target="msp-dns"/>.)</t>

      <t>MSPs SHOULD deprecate use of cleartext Mail Access Services and
      Mail Submission Services as soon as practicable.
      (See <xref target="cleartext-dep" />.)</t>

      <!--
      <t>MSPs that provide mail submission as a service, SHOULD
      support Mail Submission services using Implicit TLS.</t>
      -->
      
      <t>MSPs currently supporting such use of cleartext SMTP (on port
      25) as a means of message submission by their users (whether or
      not requiring authentication) SHOULD transition their users to
      using TLS (either Implicit TLS or STARTTLS) as soon as
      practicable.</t>

      <t>Mail services MUST support TLS 1.2 or later.</t>

      <t>All Mail services SHOULD implement the recommended TLS cipher
      suites described in <xref target="RFC7525"/> or a future BCP or
      standards track revision of that document.</t>
      
      <t>Mail services currently supporting SSL 2.x, SSL 3.0, or TLS 1.0
      SHOULD transition their users to later versions of TLS, and
      discontinue support for those versions of SSL and TLS, as soon as
      practicable.</t>

      <t>Mail Submission Servers accepting mail using TLS SHOULD
      include the TLS ciphersuite of the session in which the mail was
      received, in the Received field of the outgoing message.  (See
      <xref target="tls-received"/>.)</t>

      <t>All Mail services implementing TLS SHOULD log TLS cipher
      information along with any connection or authentication logs
      that they maintain.</t>

  </list>
  Additional considerations and details appear below.
</t>

  <section title="Deprecation of Services Using Cleartext and TLS Versions &lt; 1.1" 
           anchor="cleartext-dep">
    <t>The specific means employed for deprecation of cleartext Mail
    Access Services and Mail Submission Services MAY vary from
    one MSP to the next in light of their user communities' needs and
    constraints.  For example, an MSP MAY implement a gradual
    transition in which, over time, more and more users are forbidden
    to authenticate to cleartext instances of these services, thus
    encouraging those users to migrate to Implicit TLS.  Access to
    cleartext services should eventually be either disabled, or
    limited strictly for use by legacy systems which cannot be
    upgraded.</t>

    <t>After a user's ability to authenticate to a service using
    cleartext is revoked, the server denying such access MUST NOT
    provide any indication over a cleartext channel of whether the
    user's authentication credentials were valid.  An attempt to
    authenticate as such a user using either invalid credentials or
    valid credentials MUST both result in the same indication of
    access being denied.</t>

    <t>Also, users previously authenticating with passwords sent as
    cleartext SHOULD be required to change those passwords when
    migrating to TLS, if the old passwords were likely to have been
    compromised.  (For any large community of users using public
    Internet to access mail without encryption, compromise of at least
    some of those passwords should be assumed.)</t>

    <t>Transition of users from SSL or TLS 1.0 to later versions of
    TLS MAY be accomplished by a means similar to that described
    above.  There are multiple ways to accomplish this.  One way is
    for the server to refuse a ClientHello message from any client
    sending a ClientHello.version field corresponding to any version
    of SSL or TLS 1.0.  Another way is for the server to accept
    ClientHello messages from some client versions that it does not
    wish to support, but later refuse to allow the user to
    authenticate.  The latter method may provide a better indication
    to the user of the reason for the failure but (depending on the
    protocol and method of authentication used) may also risk exposure
    of the user's password over an channel which is known to not
    provide adequate confidentiality.</t>

    <t>It is RECOMMENDED that new users be required to use TLS version
    1.1 or greater from the start.  However an MSP may find it
    necessary to make exceptions to accommodate some legacy systems
    which support only earlier versions of TLS, or only cleartext.</t>

  </section>
  
  <section anchor="server-clientcert" 
           title="Mail Server Use of Client Certificate Authentication">
    <t>Mail servers MAY implement client certificate authentication on
    the Implicit TLS port. Servers MUST NOT request a client
    certificate during the TLS handshake unless the server is
    configured to accept some client certificates as sufficient for
    authentication and the server has the ability to determine a mail
    server authorization identity matching such certificates. How to
    make this determination is presently implementation specific.</t>

    <t>If the server accepts the client's certificate as sufficient
    for authorization, it MUST enable the SASL EXTERNAL <xref
    target="RFC4422"/> mechanism. An IMAPS server MAY issue a PREAUTH
    greeting instead of enabling SASL EXTERNAL.</t>
  </section>

  <section anchor="tls-received" title="Recording TLS Cipher Suite in Received Header">
    <t>
      The ESMTPS transmission type <xref target="RFC3848"/> provides
      trace information that can indicate TLS was used when
      transferring mail.  However, TLS usage by itself is not a
      guarantee of confidentiality or security. The TLS cipher suite
      provides additional information about the level of security made
      available for a connection. This defines a new SMTP "tls"
      Received header additional-registered-clause that is used to
      record the TLS cipher suite that was negotiated for the
      connection. This clause SHOULD be included whenever a Submission
      server generates a Received header field for a message received
      via TLS.  The value included in this additional clause SHOULD be
      the registered cipher suite name (e.g.,
      TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) included in the TLS
      cipher suite registry. In the event the implementation does not
      know the name of the cipher suite (a situation that should be
      remedied promptly), a four-digit hexadecimal cipher suite
      identifier MAY be used.  In addition, the Diffie-Hellman group
      name associated with the ciphersuite MAY be included (when
      applicable and known) following the ciphersuite name.  The ABNF
      for the field follows:
      <figure>
        <artwork type="abnf">
tls-cipher-clause  =  CFWS "tls" FWS tls-cipher [ CFWS "group" FWS dh-group ]

tls-cipher         =  tls-cipher-name / tls-cipher-hex

tls-cipher-name    =  ALPHA *(ALPHA / DIGIT / "_")
; as registered in IANA cipher suite registry

tls-cipher-hex     =  "0x" 4HEXDIG

dh-group           = ALPHA *(ALPHA / DIGIT / "_" / "-")
; as registered in IANA TLS Supported Groups Registry
</artwork>
      </figure>
    </t>
  </section>
  <section title="TLS Server Certificate Requirements">
    <t>MSPs MUST maintain valid server certificates for all servers.
    See <xref target="RFC7817"/> for the
    recommendations and requirements necessary to achieve this.</t>
    <!--
    <t>A single certificate MAY be used for multiple electronic
    mail protocol servers (including webmail) which all providing
    service for a particular mail domain, but use of the same
    certificate for services other than electronic mail is
    discouraged.</t>
    -->
    <t>If a protocol server provides service for more than one
    mail domain, it MAY use a separate IP address for each domain
    and/or a server certificate that advertises multiple
    domains. This will generally be necessary unless and until it
    is acceptable to impose the constraint that the server and all
    clients support the Server Name Indication extension to
    TLS <xref target="RFC6066"/>.
    Mail servers supporting SNI need to support the post-SRV hostname to
    interoperate with MUAs that have not implemented RFC 6186.
    For more discussion of this problem,
    see section 5.1 of <xref target="RFC7817"/>.
    </t>
  </section>
  <section title="Recommended DNS records for mail protocol servers"
           anchor="msp-dns">
    <t>This section discusses not only the DNS records that are
    recommended, but also implications of DNS records for server
    configuration and TLS server certificates.</t>
    <section title="MX records">
      <t>It is recommended that MSPs advertise MX records
      for handling of inbound mail (instead of relying entirely on
      A or AAAA records), and that those MX records be signed
      using DNSSEC <xref target="RFC4033"/>.  
      This is mentioned here only for completeness,
      as handling of inbound mail is out of scope for this
      document.</t>
    </section>
    <section title="SRV records">
      <t>MSPs SHOULD advertise SRV records to aid MUAs in
      determination of proper configuration of servers, per the
      instructions in <xref target="RFC6186"/>.</t>
      <t>MSPs SHOULD advertise servers that support Implicit TLS
      in preference to those which support cleartext and/or
      STARTTLS operation.</t>
    </section>
    <section title="DNSSEC">
      <t>All DNS records advertised by an MSP as a means of aiding
      clients in communicating with the MSP's servers, SHOULD be
      signed using DNSSEC if and when the parent DNS zone supports
      doing so.</t>
    </section>
    <section title="TLSA records">
      <t>MSPs SHOULD advertise TLSA records to provide an
      additional trust anchor for public keys used in TLS server
      certificates.  However, TLSA records MUST NOT be advertised
      unless they are signed using DNSSEC.</t>
    </section>
  </section>
  <section title="Changes to Internet Facing Servers">
    <t>When an MSP changes the Internet Facing Servers providing mail
    access and mail submission services, including SMTP-based
    spam/virus filters, it is generally necessary to support the same
    and/or a newer version of TLS and the same security directives
    that were previously advertised.</t>
  </section>

</section>

<section title="Use of TLS by Mail User Agents">
<t>
  The following requirements and recommendations apply to Mail User Agents:
  <list style="symbols">

    <t>MUAs SHOULD be capable of using DNS SRV records to discover
    Mail Access Services and Mail Submission Services that are
    advertised by a MSP for an account being configured.  Other means
    of discovering server configuration information (e.g. a database
    maintained by the MUA vendor) MAY also be supported.  
    (See <xref target="dns-srv" /> for more information.)</t>

    <t>MUAs SHOULD be configurable to require a minimum level of
    confidentiality for any particular Mail Account, and refuse to
    exchange information via any service associated with that Mail
    Account if the session does not provide that minimum level of
    confidentiality.  (See <xref target="min-confidentiality" />.)</t>

    <t>MUAs MUST NOT treat a session as meeting a minimum level of
    confidentiality if the server's TLS certificate cannot be
    validated.  (See <xref target="cert-validation" />.)</t>

    <t>MUAs MAY impose other minimum confidentiality requirements in
    the future, e.g. in order to discourage use of TLS versions or
    cryptographic algorithms in which weaknesses have been discovered.</t>

    <t>MUAs SHOULD provide a prominent indication of the level of
    confidentiality associated with an account configuration that is
    appropriate for the user interface (for example, a "lock" icon or
    changed background color for a visual interface, or some sort of
    audible indication for an audio user interface), at appropriate
    times and/or locations in order to inform the user of the
    confidentiality of the communications associated with that
    account.  For example, this might be done whenever (a) prompting
    the user for authentication credentials, (b) the user is composing
    mail that will be sent to a particular submission server, (c) a
    list of accounts is displayed (particularly if the user can select
    from that list to read mail), or (d) the user is requesting to
    view or update any configuration data that will be stored on a
    remote server.  If, however, an MUA provides such an indication,
    it MUST NOT indicate confidentiality for any connection that does
    not at least use TLS 1.1 with certificate verification and also
    meet the minimum confidentiality requirements associated with that
    account.</t>

    <t>MUAs MUST implement TLS 1.2 <xref target="RFC5246"/> or later.
    Earlier TLS and SSL versions MAY also be supported so long as the
    MUA requires at least TLS 1.1 <xref target="RFC4346"/> when
    accessing accounts that are configured to impose minimum
    confidentiality requirements.  <!-- Per <xref target="RFC7525"/>, TLS
    1.1 (or earlier) SHOULD NOT be used unless no higher version is
    available during TLS protocol negotiation. --></t>

    <t>All MUAs SHOULD implement the recommended TLS cipher suites
    described in <xref target="RFC7525"/> or a future BCP or standards track
    revision of that document.</t>
    
    <t>MUAs that are configured to not require minimum confidentiality
    for one or more accounts SHOULD detect when TLS becomes available
    on those accounts (using <xref target="RFC6186"/> or other means),
    and offer to upgrade the account to require TLS.</t>

  </list>
  Additional considerations and details appear below.
</t>
  <section title="Use of SRV records in Establishing Configuration"
           anchor="dns-srv">
    <t>This section updates <xref target="RFC6186"/> by changing the
    preference rules and adding a new SRV service label _submissions._tcp to
    refer to Message Submission with Implicit TLS.</t>

    <t>User-configurable MUAs SHOULD support use of <xref
    target="RFC6186" /> for account setup. However, when using
    configuration information obtained by this method, MUAs SHOULD
    ignore advertised services that do not satisfy minimum
    confidentiality requirements, unless the user has explicitly
    requested reduced confidentiality. This will have the effect of
    causing the MUA to default to ignoring advertised configurations
    that do not support TLS, even when those advertised configurations
    have a higher priority than other advertised configurations.</t>
    
    <t>When using <xref target="RFC6186"/> configuration information, Mail
    User Agents SHOULD NOT automatically establish new configurations that
    do not require TLS for all servers, unless there are no advertised
    configurations using TLS. If such a configuration is chosen, prior to
    attempting to authenticate to the server or use the server for message
    submission, the MUA SHOULD warn the user that traffic to that server
    will not be encrypted and that it will therefore likely be intercepted
    by unauthorized parties. The specific wording is to be determined by the
    implementation, but it should adequately capture the sense of risk given
    the widespread incidence of mass surveillance of email traffic.
    </t>

    <t>Similarly, a MUA MUST NOT attempt to "test" a particular mail
    account configuration by submitting the user's authentication
    credentials to a server, unless a TLS session meeting minimum
    confidentiality levels has been established with that server.  If
    minimum confidentiality requirements have not been satisfied, the
    MUA must explicitly warn the user that his password may be exposed
    to attackers before testing the new configuration.</t>
    
    <!--
    <t>When establishing a new configuration for connecting to an
    IMAP, POP, or SMTP Submission server, an MUA SHOULD NOT blindly
    trust SRV records unless they are signed by DNSSEC and have a
    valid signature. Instead, the MUA SHOULD warn the user that the
    DNS-advertised mechanism for connecting to the server is not
    authenticated, and request the user to manually verify the
    connection details by reference to his or her mail service
    provider's documentation.</t>
    -->

    <t>When establishing a new configuration for connecting to an IMAP,
    POP, or SMTP submission server, based on SRV records, an MUA
    SHOULD either verify that the SRV records are signed 
    using DNSSEC, or that the target FQDN of the SRV record matches
    the original server FQDN for which the SRV queries were made.  If
    the target FQDN is not in the queried domain, the MUA SHOULD
    verify with the user that the SRV target FQDN is suitable for use,
    before executing any connections to the host.   (See 
    <xref target="RFC6186"/> section 6).</t>
    
    <t>An MUA MUST NOT consult SRV records to determine which
    servers to use on every connection attempt, unless those SRV records are
    signed by DNSSEC and have a valid signature. However, an MUA MAY
    consult SRV records from time to time to determine if an MSP's server
    configuration has changed, and alert the user if it appears that this
    has happened. This can also serve as a means to encourage users to
    upgrade their configurations to require TLS if and when their MSPs
    support it.</t>
  </section>
  
  <section title="Minimum Confidentiality Level" anchor="min-confidentiality">
    <t>MUAs SHOULD, by default, require a minimum level of
    confidentiality for services accessed by each account.  For MUAs
    supporting the ability to access multiple mail accounts, this
    requirement SHOULD be configurable on a per-account basis.</t>

    <t>The default minimum expected level of confidentiality for all
    new accounts MUST require successful validation of the server's
    certificate and SHOULD require negotiation of TLS version 1.1 or
    greater.  (Future revisions to this specification may raise these
    requirements or impose additional requirements to address
    newly-discovered weaknesses in protocols or cryptographic
    algorithms.)</t>

    <t>MUAs MAY permit the user to disable this minimum
    confidentiality requirement during initial account configuration,
    or subsequently editing an account configuration, but MUST warn
    users that such a configuration will not assure privacy for either
    passwords or messages.</t>

    <t>An MUA which is configured to require a minimum level of
    confidentiality for a mail account MUST NOT attempt to perform any
    operation other than capability discovery, or STARTTLS for servers
    not using Implicit TLS, unless the minimum level of confidentiality
    is provided by that connection.</t>

    <t>MUAs SHOULD NOT allow users to easily access or
    send mail via an connection, or authenticate to any service
    using a password, if that account is configured to impose minimum
    confidentiality requirements and that connection does not meet all
    of those requirements.  An example of "easily access" would be to
    display a dialog informing the user that the security requirements
    of the account were not met by the connection, but allowing the
    user to "click through" to send mail or access the service anyway.
    Experience indicates that users presented
    with such an option often "click through" without understanding
    the risks that they're accepting by doing so.   Furthermore, users
    who frequently find the need to "click through" to use an insecure
    connection may become conditioned to do so as a matter of habit,
    before considering whether the risks are reasonable in each
    specific instance.</t>

    <t>An MUA which is not configured to require a minimum level of
    confidentiality for a mail account SHOULD still attempt to connect
    to the services associated with that account using the most secure
    means available, e.g. by using Implicit TLS or STARTTLS.</t>

  </section>

  <section title="Certificiate Validation" anchor="cert-validation">
    <t>MUAs MUST validate TLS server certificates according to <xref
    target="RFC7817" /> and PKIX <xref target="RFC5280" />.</t>
    
    <t>MUAs MAY also support DANE <xref target="RFC6698"/> as a means
    of validating server certificates in order to meet minimum
    confidentiality requirements. <!-- XXX does DANE require DNSSEC?
    --> </t>

    <t>MUAs MAY support use of certificate pinning but MUST NOT
    consider a connection in which the server's authenticity relies on
    certificate pinning, as providing the minimum level of
    confidentiality. (See <xref target="certificate-pinning" />.)</t>
  </section>
  
  <section title="Certificate Pinning" anchor="certificate-pinning">
    <t>During account setup, the MUA will identify servers that
    provide account services such as mail access and mail submission
    (the previous section describes one way to do this). The
    certificates for these servers are verified using the rules
    described in <xref target="RFC7817"/> and PKIX <xref
    target="RFC5280"/>. In the event the certificate does not validate
    due to an expired certificate, lack of appropriate chain of trust,
    or lack of identifier match, the MUA MAY offer to create a
    persistent binding between that certificate and the saved host
    name for the server, for use when accessing that account's
    servers. This is called certificate pinning.</t>

    <t>(Note: This use of the term "certificate pinning" means
    something subtly different than "HTTP Public Key Pinning" 
    <xref target="RFC7469"/>.  The dual use of the same term is 
    confusing, but unfortunately both uses are well-established.)</t>

    <t>Certificate pinning is only appropriate during mail account
    setup and MUST NOT be offered as an option in response to a failed
    certificate validation for an existing mail account. An MUA that
    allows certificate pinning MUST NOT allow a certificate pinned for
    one account to validate connections for other accounts.  An MUA
    that allows certificate pinning MUST also allow a user to undo the
    pinning, i.e. to revoke trust in a certificate that has previously
    been pinned.
    </t>

    <t>A pinned certificate is subject to a man-in-the-middle attack
    at account setup time, and typically lacks a mechanism to automatically
    revoke or securely refresh the certificate.  Note also that a 
    man-in-the-middle
    attack at account setup time will expose the user's password to
    the attacker (if a password is used).  Therefore use of a pinned
    certificate does not meet the requirement for a minimum
    confidentiality level, and an MUA MUST NOT indicate to the user
    that the such confidentiality is provided. Additional advice on
    certificate pinning is present in <xref target="RFC6125"/>.
    </t>
  </section>

  <section anchor="mua-clientcert" title="Client Certificate Authentication">
    <t>MUAs MAY implement client certificate authentication on the
    Implicit TLS port.  An MUA MUST NOT provide a client certificate
    during the TLS handshake unless the server requests one and the
    MUA has been authorized to use that client certificate with that
    account.  Having the end-user explicitly configure a client
    certificate for use with a given account is sufficient to meet
    this requirement.  However, installing a client certificate for
    use with one account MUST NOT automatically authorize use of that
    certificate with other accounts.  This is not intended to prohibit
    site-specific authorization mechanisms, such as a
    site-administrator-controlled mechanism to authorize use of a
    client certificate with a given account, or a domain-name matching
    mechanism.</t> 

    <t>Note: The requirement that the server request a certificate is
    just a restatement of the TLS protocol rules, e.g.  <xref
    target="RFC5246"/> section 7.4.6.  The requirement that the client
    not send a certificate not known to be acceptable to the server is
    pragmatic in multiple ways: the current TLS protocol provides no
    way for the client to know which of potentially multiple
    certificates it should use; also, when the client sends a
    certificate it is potentially disclosing its identity (or its
    user's identity) to both the server and to any party with access
    to the transmission medium, perhaps unnecessarily and for no
    useful purpose.</t>

    <t>A client supporting client certificate authentication with
    Implicit TLS MUST implement the SASL EXTERNAL <xref
    target="RFC4422"/> mechanism using the appropriate authentication
    command (AUTH for POP3 <xref target="RFC5034"/>, AUTH for SMTP
    Submission <xref target="RFC4954"/>, AUTHENTICATE for IMAP <xref
    target="RFC3501"/>).</t>
</section>
</section>

<section title="Considerations related to Anti-Virus/Anti-Spam Software and Services">
  <t>There are multiple ways to connect an Anti-Virus and/or Anti-Spam
  (AVAS) service to a mail server. Some mechanisms, such as the de-facto
  milter protocol, are out of scope for this specification. However,
  some services use an SMTP relay proxy that intercepts mail at the
  application layer to perform a scan and proxy or forward to another
  MTA.  Deploying AVAS services in this way can cause many problems <xref
  target="RFC2979"/> including direct interference with this
  specification, and other forms of confidentiality or security
  reduction.  An AVAS product or service is considered compatible with
  this specification if all IMAP, POP and SMTP-related software
  (including proxies) it includes are compliant with this specification.
  </t>

  <t>Note that end-to-end email encryption prevents AVAS software and
  services from using email content as part of a spam or virus
  assessment.  Furthermore, while a minimum confidentiality level can
  prevent a man-in-the-middle from introducing spam or virus content
  between the MUA and Submission server, it does not prevent other
  forms of client or account compromise.  Use of AVAS services for
  submitted email therefore remains necessary.</t>
</section>

<section anchor="iana" title="IANA Considerations">

  <section anchor="iana-pop3s" title="POP3S Port Registration Update">
    <t>
      IANA is asked to update the registration of the TCP well-known
      port 995 using the following template (<xref target="RFC6335"/>):
      <figure>
        <artwork>
  Service Name: pop3s
  Transport Protocol: TCP
  Assignee: IETF &lt;iesg@ietf.org&gt;
  Contact: IESG &lt;iesg@ietf.org&gt;
  Description: POP3 over TLS protocol
  Reference: RFC XXXX (this document once published) <!-- &rfc.number; -->
  Port Number: 995
</artwork></figure>
    </t>
  </section>                    <!--iana-pop3s-->

  <section anchor="iana-imaps" title="IMAPS Port Registration Update">
    <t>
      IANA is asked to update the registration of the TCP well-known
      port 993 using the following templates (<xref target="RFC6335"/>):
      <figure>
        <artwork>
  Service Name: imaps
  Transport Protocol: TCP
  Assignee: IETF &lt;iesg@ietf.org&gt;
  Contact: IESG &lt;iesg@ietf.org&gt;
  Description: IMAP over TLS protocol
  Reference: RFC XXXX (this document once published) <!-- &rfc.number; -->
  Port Number: 993
</artwork></figure>
    </t>
    <t>
      No changes to existing UDP port assignments for pop3s or imaps
      are being requested.
    </t>
  </section>                    <!--iana-imaps-->

  <section anchor="iana-submissions" title="Submissions Port Registration">
    <t>
      IANA is asked to assign an alternate usage of TCP port 465 in
      addition to the current assignment using the following template
      (<xref target="RFC6335"/>):
      <figure>
        <artwork>
  Service Name: submissions
  Transport Protocol: TCP
  Assignee: IETF &lt;iesg@ietf.org&gt;
  Contact: IESG &lt;iesg@ietf.org&gt;
  Description: Message Submission over TLS protocol
  Reference: RFC XXXX (this document once published) <!-- &rfc.number; -->
  Port Number: 465
</artwork></figure>
    </t>
    <t>
      This is a one-time procedural exception to the rules in RFC
      6335. This requires explicit IESG approval and does not set a
      precedent.  Note: Since the purpose of this alternate usage
      assignment is to align with widespread existing practice, and
      there is no known usage of UDP port 465 for message submission
      over TLS, IANA is not being asked to assign an alternate usage
      of UDP port 465.
    </t>
    <t>Historically, port 465 was briefly registered as the "smtps"
    port. This registration made no sense as the SMTP transport MX
    infrastructure has no way to specify a port, so port 25 is always
    used. As a result, the registration was revoked and was
    subsequently reassigned to a different service. In hindsight, the
    "smtps" registration should have been renamed or reserved rather
    than revoked. Unfortunately, some widely deployed mail software
    interpreted "smtps" as "submissions" <xref target="RFC6409"/> and
    used that port for email submission by default when an end-user
    requests security during account setup. If a new port is assigned
    for the submissions service, email software will either continue
    with unregistered use of port 465 (leaving the port registry
    inaccurate relative to de-facto practice and wasting a well-known
    port), or confusion between the de-facto and registered ports will
    cause harmful interoperability problems that will deter use of TLS
    for message submission. The authors believe both of these outcomes
    are less desirable than a wart in the registry documenting
    real-world usage of a port for two purposes. Although
    STARTTLS-on-port-587 has deployed, it has not replaced deployed
    use of Implicit TLS submission on port 465.
    </t>
  </section>                    <!--iana-submissions-->

  <section title="Additional registered clauses for Received fields">
    <t>Per the provisions in <xref target="RFC5321"/>, IANA is
    requested to add two additional-registered-clauses for Received
    fields as defined in <xref target="tls-received"/> of this
    document: 
    <list style="symbols">
    <t>"tls" indicating the TLS cipher used (if applicable), and</t> 
    <t>"group" indicating the Diffie-Hellman group used with the TLS
    cipher (if applicable)</t>
    </list>
    The descriptions and syntax of these additional clauses
    are in <xref target="tls-received"/> of this document.
    </t>
  </section>
</section>                      <!--iana-->

<section title="Security Considerations">
<t>
This entire document is about security considerations. In general, this
is targeted to improve mail confidentiality and to mitigate threats external to
the email system such as network-level snooping or interception; this is
not intended to mitigate active attackers who have compromised service
provider systems.
</t>
<t>
Implementers should be aware that use of client certificates with TLS
1.2 reveals the user's identity to any party with ability to read
packets from the transmission medium, and therefore may compromise the
user's privacy.  There seems to be no easy fix with TLS 1.2 or earlier
versions other than to avoid presenting client certificates except
when there is explicit authorization to do so.   TLS 1.3
<xref target="I-D.ietf-tls-tls13"/> appears to reduce the privacy risk
somewhat.
</t>
</section>

</middle>
<back>
<references title="Normative References">
<?rfc include="reference.RFC.0793"?>  <!-- TCP -->
<?rfc include="reference.RFC.1939"?> <!-- POP3 -->
<?rfc include="reference.RFC.2119"?> <!-- Key words -->
<!-- <?rfc include="reference.RFC.2449"?>  POP3 CAPA -->
<!-- <?rfc include="reference.RFC.2818"?>  https -->
<!-- <?rfc include="reference.RFC.2971"?>  IMAP ID -->
<?rfc include="reference.RFC.3207"?> <!-- SMTP STARTTLS -->
<?rfc include="reference.RFC.3501"?> <!-- IMAP -->
<?rfc include="reference.RFC.4033"?> <!-- DNSSEC -->
<?rfc include="reference.RFC.5034"?> <!-- POP3 AUTH -->
<?rfc include="reference.RFC.5068"?> <!-- Submission Operations BCP -->
<?rfc include="reference.RFC.5234"?> <!-- ABNF -->
<?rfc include="reference.RFC.5246"?> <!-- TLS 1.2 -->
<!-- <?rfc include="reference.RFC.5226"?> IANA Process -->
<?rfc include="reference.RFC.5280"?> <!-- PKIX -->
<!-- <?rfc include="reference.RFC.5321"?> SMTP -->
<?rfc include="reference.RFC.5322"?> <!-- Message Format -->
<?rfc include="reference.RFC.6186"?> <!-- SRV for email -->
<?rfc include="reference.RFC.6409"?> <!-- Message Submission -->
<?rfc include="reference.RFC.6698"?> <!-- DANE TLSA -->
<!-- <?rfc include="reference.RFC.6797"?> HSTS -->
<!-- <?rfc include="reference.RFC.7230"?> HTTP ABNF -->
<?rfc include="reference.RFC.7525"?> <!-- TLS BCP -->
<?rfc include="reference.RFC.7672"?> <!-- SMTP DANE -->
<?rfc include="reference.RFC.7817"?> <!-- email certs -->
</references>
<references title="Informative References">
<?rfc include="reference.RFC.2595"?> <!-- STARTTLS for IMAP and POP -->
<?rfc include="reference.RFC.2979"?> <!-- Firewall Requirements -->
<?rfc include="reference.RFC.3848"?> <!-- ESMTP and LMTP transmission types -->
<!-- <?rfc include="reference.RFC.3887"?> MTQP -->
<?rfc include="reference.RFC.4346"?> <!-- TLS 1.1 -->
<?rfc include="reference.RFC.4422"?> <!-- SASL EXTERNAL -->
<?rfc include="reference.RFC.4954"?> <!-- SMTP AUTH -->
<?rfc include="reference.RFC.5321"?> 
<!-- <?rfc include="reference.RFC.5598"?> Mail architecture -->
<!-- <?rfc include="reference.RFC.5804"?> Manage Sieve -->
<?rfc include="reference.RFC.6066"?> <!-- TLS Extensions; SNI -->
<?rfc include="reference.RFC.6125"?> <!-- Cert validation -->
<?rfc include="reference.RFC.6335"?> <!-- TCP Port Registration -->
<?rfc include="reference.RFC.7469"?> <!-- HPKP -->
<?rfc include="reference.RFC.8174"?> <!-- -->
<?rfc include="reference.I-D.draft-ietf-uta-mta-sts-09.xml"?>
<?rfc include="reference.I-D.draft-ietf-tls-tls13-21.xml"?>

</references>
<section anchor="design" title="Design Considerations">
<t>
This section is not normative.
</t>
<t>
The first version of this was written independently from
draft-moore-email-tls-00.txt; subsequent versions merge ideas from both
drafts.
</t>
<t>
One author of this document was also the author of RFC 2595 that
became the standard for TLS usage with POP and IMAP, and the other
author was perhaps the first to propose that idea. In hindsight both
authors now believe that that approach was a mistake. At this point
the authors believe that while anything that makes it easier to deploy
TLS is good, the desirable end state is that these protocols always
use TLS, leaving no need for a separate port for cleartext operation
except to support legacy clients while they continue to be used. The
separate port model for TLS is inherently simpler to implement, debug
and deploy. It also enables a "generic TLS load-balancer" that accepts
secure client connections for arbitrary foo-over-TLS protocols and
forwards them to a server that may or may not support TLS. Such
load-balancers cause many problems because they violate the end-to-end
principle and the server loses the ability to log security-relevant
information about the client unless the protocol is designed to
forward that information (as this specification does for the cipher
suite). However, they can result in TLS deployment where it would not
otherwise happen which is a sufficiently important goal that it
overrides the problems.
</t>
<t>
Although STARTTLS appears only slightly more complex than separate-port
TLS, we again learned the lesson that complexity is the enemy of
security in the form of the STARTTLS command injection vulnerability
(CERT vulnerability ID #555316). Although there's nothing inherently
wrong with STARTTLS, the fact it resulted in a common implementation
error (made independently by multiple implementers) suggests it is a
less secure architecture than Implicit TLS.
</t>
<t>
Section 7 of RFC 2595 critiques the separate-port approach to TLS. The
first bullet was a correct critique. There are proposals in the http
community to address that, and use of SRV records as described in RFC
6186 resolves that critique for email. The second bullet is correct as
well, but not very important because useful deployment of security
layers other than TLS in email is small enough to be effectively
irrelevant.  (Also it's less correct than it used to be because "export"
ciphersuites are no longer supported in modern versions of TLS.)  The
third bullet is incorrect because it misses the desirable option of
"use and latch-on TLS if available". The fourth bullet may be correct,
but is not a problem yet with current port consumption rates. The
fundamental error was prioritizing a perceived better design based on
a mostly valid critique over real-world deployability. But getting
security and confidentiality facilities actually deployed is so
important it should trump design purity considerations.
</t>
<t>
Port 465 is presently used for two purposes: for submissions by a large
number of clients and service providers and for the "urd" protocol by
one vendor. Actually documenting this current state is controversial as
discussed in the IANA considerations section. However, there is no good
alternative. Registering a new port for submissions when port 465 is
widely used for that purpose already will just create interoperability
problems. Registering a port that's only used if advertised by an SRV
record (RFC 6186) would not create interoperability problems but would
require all client and server deployments and software to change
significantly which is contrary to the goal of promoting more TLS use.
Encouraging use of STARTTLS on port 587 would not create
interoperability problems, but is unlikely to have impact on current
undocumented use of port 465 and makes the guidance in this document
less consistent. The remaining option is to document the current
state of the world and support future use of port 465 for submission
as this increases consistency and ease-of-deployment for TLS email
submission.
</t>
</section>
<section title="Change Log">
  <t>Changes since draft-ietf-uta-email-deep-07:
  <list style="symbols">
    <t>After discussion with the WG in Prague, removed BCP language
    and once again made unambiguous that this is intended as a
    standards-track document.
    </t>
    <t>Server implementations now MUST implement TLS 1.2, consistent
    with RFC 7525.  MUAs may still consider a TLS 1.1 session as
    meeting minimum confidentiality requirements.
    </t>
    <t>MSPs now MUST support TLS for POP, IMAP, Submission, and any
    other services that use username/password authentication.
    </t>
    <t>Added text to clarify the purpose of recommending that MSPs use
    DNS SRV records to advertise services.
    </t>
    <t>Changed text about MUAs not blindly trusting unsigned SRV
    records, to instead restate RFC 6186 requirements.</t>
  </list>
  </t>
  <t>Changes since draft-ietf-uta-email-deep-06:
  <list style="symbols">
    <t>On the recommendation of one of the co-chairs and some working
    group members, rewrote document with the intended status of BCP.
    This involved removing a great deal of text that consisted
    essentially of new protocol specification, especially the STS
    features, on the theory that a BCP should base its recommendations
    on current practice, and that new protocol features should be
    subject to the interoperability test requirements associated with
    normal standards-track documents.</t>
  </list>
  </t>
  <t>Changes since draft-ietf-uta-email-deep-05:
  <list style="symbols">
    <t>Clarify throughout that the confidentiality assurance level
    associated with a mail account is a minimum level; attempt to
    distinguish this from the current confidentiality level provided
    by a connection between client and server.</t>
    <t>Change naming for confidentiality assurance levels: instead of
    "high" or "no" confidence, assign numbers 1 and 0 to them
    respectively.  This because it seems likely that in the
    not-too-distant future, what was defined in -05 as "high"
    confidence will be considered insufficient, and calling that
    "high" confidence will become misleading.  For example, relying
    entirely on a list of trusted CAs to validate server certificates
    from arbitrary parties, appears to be less and less reliable in
    practice at thwarting MITM attacks.</t>
    <t>Clarify that if some services associated with a mail account
    don't meet the minimum confidentiality assurance level assigned
    to that account, other services that do meet that minimum
    confidentiality assurance level may continue to be used.</t>
    <t>Clarify that successful negotiation of at least TLS version 1.1
    is required as a condition of meeting confidentiality assurance
    level 1.</t>
    <t>Clarify that validation of a server certificate using either
    DANE or PKIX is sufficient to meet the certificate validation
    requirement of confidentiality assurance level 1.</t>
    <t>Clarify that minimum confidentiality assurance levels are
    separate from security directives, and that the requirements of
    both mechanisms must be met.</t>
    <t>Explicitly cite an example that a security directive of
    tls-version=1.2 won't be saved if the currently negotiated
    tls-version is 1.1. (This example already appeared a bit later in
    the text, but for author KM it seemed to make the mechanism
    clearer to use this example earlier.)</t>
    <t>Clarify some protocol examples as to whether PKIX or DANE was
    used to verify a server's certificate.</t>
    <t>Remove most references to DEEP as the conversion from DEEP to
    MUA-STS seemed incomplete, but kept the DEEP command for use in
    POP3 on the assumption that author CN wanted it that way.</t>
    <t>Removed most references to "latch" and derivative words.</t>
    <t>Added pkix+dane as a value for the tls-cert directive, to
    indicate (from a server) that both PKIX and DANE validation will
    be supported, or (from a client) that both PKIX and DANE were used
    to validate a certificate.   Also clarified what each of any,
    pkix, dane, and pkix+dane mean when advertised by a server and in
    particular that tls-cert=any provides no assurance of future
    PKIX verifiability in contrast to tls-cert=pkix or
    tls-cert=pkix+dane.  It seemed important to support the ability to
    evolve to using multiple trust anchors for certificate validation,
    but also to allow servers to have the option to migrate from PKIX
    to DANE if that made sense for them.  This change seemed less
    disruptive than either defining additional directives, or allowing
    multiple instances of the same directive with different values to
    appear in the same advertisement. </t>
    <t>Clarify interaction of this specification with anti-virus /
    anti-spam mechanisms.</t>
  </list>
  </t>
<t>Changes since draft-ietf-uta-email-deep-04:
<list style="symbols">
<t>Swap sections 5.1 and 5.3 ("Email Security Tags" and "Server DEEP Status") as that order may aid understanding of the model. Also rewrote parts of these two sections to try to make the model clearer.</t>
<t>Add text about versioning of security tags to make the model clearer.</t>
<t>Add example of security tag upgrade.</t>
<t>Convert remaining mention of TLS 1.0 to TLS 1.1.</t>
<t>Change document title from DEEP to MUA STS to align with SMTP relay STS.
<list style="symbols">
<t>Slight updates to abstract and introductions.</t>
<t>Rename security latches/tags to security directives.</t>
<t>Rename server DEEP status to STS policy.</t>
<t>Change syntax to use directive-style HSTS syntax.</t>
</list>
</t>
<t>Make HSTS reference normative.</t>
<t>Remove SMTP DSN header as that belongs in SMTP relay STS document.</t>
</list></t>
<t>Changes since draft-ietf-uta-email-deep-03:
<list style="symbols">
<t>Add more references to ietf-uta-email-tls-certs in implementation requirements section.</t>
<t>Replace primary reference to RFC 6125 with ietf-uta-email-tls-certs, so move RFC 6125 to informative list for this specification.</t>
</list></t>
<t>Changes since draft-ietf-uta-email-deep-02:
<list style="symbols">
<t>Make reference to design considerations explicit rather than "elsewhere in this document".</t>
<t>Change provider requirement so SMTP submission services are separate from SMTP MTA services as opposed to the previous phrasing that required the servers be separate (which is too restrictive).</t>
<t>Update DANE SMTP reference</t>
</list></t>
<t>Changes since draft-ietf-uta-email-deep-01:
<list style="symbols">
<t>Change text in tls11 and tls12 registrations to clarify
certificate rules, including additional PKIX and DANE references.</t>
<t>Change from tls10 to tls11 (including reference) as the minimum.</t>
<t>Fix typo in example 5.</t>
<t>Remove open issues section; enough time has passed so not worth waiting for more input.</t>
</list></t>
<t>Changes since draft-ietf-uta-email-deep-00:
<list style="symbols">
<t>Update and clarify abstract</t>
<t>use term confidentiality instead of privacy in most cases.</t>
<t>update open issues to request input for missing text.</t>
<t>move certificate pinning sub-section to account setup section and attempt to define it more precisely.</t>
<t>Add note about end-to-end encryption in AVAS section.</t>
<t>swap order of DNSSEC and TLSA sub-sections.</t>
<t>change meaning of 'tls10' and 'tls12' latches to require certificate validation.</t>
<t>Replace cipher suite advice with reference to RFC 7525. Change examples to use TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 as cipher suite.</t>
<t>Add text to update IMAP, POP3 and Message Submission standards with
newer TLS advice.</t>
<t>Add clearer text in introduction that this does not cover SMTP relay.</t>
<t>Update references to uta-tls-certs.</t>
<t>Add paragraph to Implicit TLS for SMTP Submission section recommending that STARTTLS also be implemented.</t>
</list></t>
<t>Changes since draft-newman-email-deep-02:
<list style="symbols">
<t>Changed "privacy assurance" to "confidentiality assurance"</t>
<t>Changed "low privacy assurance" to "no confidentiality assurance"</t>
<t>Attempt to improve definition of confidentiality assurance level.</t>
<t>Add SHOULD indicate when MUA is showing list of mail accounts.</t>
<t>Add SHOULD NOT latch tls10, tls12 tags until TLS negotiated.</t>
<t>Removed sentence about deleting and re-creating the account in latch failure section.</t>
<t>Remove use of word "fallback" with respect to TLS version negotiation.</t>
<t>Added bullet about changes to Internet facing servers to MSP section.</t>
<t>minor wording improvements based on feedback</t>
</list></t>
<t>Changes since -01:
<list style="symbols">
<t>Updated abstract, introduction and document structure to focus more on mail user agent privacy assurance.</t>
<t>Added email account privacy section, also moving section on account
setup using SRV records to that section.</t>
<t>Finished writing IANA considerations section</t>
<t>Remove provisional concept and instead have server explicitly list
security tags clients should latch.</t>
<t>Added note that rules for the submissions port follow the same
rules as those for the submit port.</t>
<t>Reference and update advice in <xref target="RFC5068"/>.</t>
<t>Fixed typo in Client Certificate Authentication section.</t>
<t>Removed tls-pfs security latch and all mention of perfect forward
secrecy as it was controversial.</t>
<t>Added reference to HSTS.</t>
</list>
</t>
<t>Changes since -00:
<list style="symbols">
<t>Rewrote introduction to merge ideas from draft-moore-email-tls-00.</t>
<t>Added Implicit TLS section, Account configuration section and IANA port registration updates based on draft-moore-email-tls-00.</t>
<t>Add protocol details necessary to standardize implicit TLS for POP/IMAP/submission, using ideas from draft-melnikov-pop3-over-tls.</t>
<t>Reduce initial set of security tags based on feedback.</t>
<t>Add deep status concept to allow a window for software updates to be backed out before latches make that problematic, as well as to provide service providers with a mechanism they can use to assist customers in the event of a privacy failure.</t>
<t>Add DNS SRV section from draft-moore-email-tls-00.</t>
<t>Write most of the missing IANA considerations section.</t>
<t>Rewrite most of implementation requirements section based more on
draft-moore-email-tls-00. Remove new cipher requirements for now
because those may be dealt with elsewhere.</t>
</list>
</t>
</section>
<section title="Acknowledgements">
<t>Thanks to Ned Freed for discussion of the initial latch concepts
in this document. Thanks to Alexey Melnikov for
draft-melnikov-pop3-over-tls-02, which was the basis of the POP3
Implicit TLS text. Thanks to Russ Housley, Alexey Melnikov and Dan
Newman for review feedback. Thanks to Paul Hoffman for interesting
feedback in initial conversations about this idea.</t>
</section>
</back>
</rfc>

<!--  LocalWords:  MUA STS TLS IMAP SMTP MUAs cleartext STARTTLS TCP
-->
<!--  LocalWords:  MSP Naur ABNF imaps PREAUTH MSA MSAs AUTH MSPs DNS
-->
<!--  LocalWords:  SRV BCP SSL ciphersuite ClientHello SASL ESMTPS IP
-->
<!--  LocalWords:  tls ECDHE RSA AES GCM SHA CFWS FWS IANA HEXDIG MX
-->
<!--  LocalWords:  webmail AAAA DNSSEC MSP's TLSA cryptographic tcp
-->
<!--  LocalWords:  PKIX ACAP pre API AVAS de facto milter MTA sts url
-->
<!--  LocalWords:  https pkix dane Assignee IETF IESG XXXX smtps txt
-->
<!--  LocalWords:  interoperability moore balancer balancers http urd
-->
<!--  LocalWords:  implementers deployability ietf uta CAs MITM CN dh
-->
<!--  LocalWords:  minimium verifiability versioning HSTS DSN newman
-->
<!--  LocalWords:  pfs melnikov Alexey Housley Windrock username SNI
-->
<!--  LocalWords:  Diffie hostname interoperate FQDN UDP CAPA MTQP WG
-->
<!--  LocalWords:  ciphersuites
-->
