[RFC Home] [TEXT|PDF|HTML] [Tracker] [IPR] [Errata] [Info page]
PROPOSED STANDARD
Errata ExistInternet Engineering Task Force (IETF) J. Yao
Request for Comments: 6531 W. Mao
Obsoletes: 5336 CNNIC
Category: Standards Track February 2012
ISSN: 2070-1721
SMTP Extension for Internationalized Email
Abstract
This document specifies an SMTP extension for transport and delivery
of email messages with internationalized email addresses or header
information.
Status of This Memo
This is an Internet Standards Track document.
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 5741.
Information about the current status of this document, any errata,
and how to provide feedback on it may be obtained at
http://www.rfc-editor.org/info/rfc6531.
Copyright Notice
Copyright (c) 2012 IETF Trust and the persons identified as the
document authors. All rights reserved.
This document is subject to BCP 78 and the IETF Trust's Legal
Provisions Relating to IETF Documents
(http://trustee.ietf.org/license-info) 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.
This document may contain material from IETF Documents or IETF
Contributions published or made publicly available before November
10, 2008. The person(s) controlling the copyright in some of this
material may not have granted the IETF Trust the right to allow
Yao & Mao Standards Track [Page 1]
RFC 6531 SMTP Extension for SMTPUTF8 February 2012
modifications of such material outside the IETF Standards Process.
Without obtaining an adequate license from the person(s) controlling
the copyright in such materials, this document may not be modified
outside the IETF Standards Process, and derivative works of it may
not be created outside the IETF Standards Process, except to format
it for publication as an RFC or to translate it into languages other
than English.
Table of Contents
1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . 3
1.1. Terminology . . . . . . . . . . . . . . . . . . . . . . . 3
1.2. Changes Made to Other Specifications . . . . . . . . . . . 3
2. Overview of Operation . . . . . . . . . . . . . . . . . . . . 4
3. Mail Transport-Level Protocol . . . . . . . . . . . . . . . . 4
3.1. Framework for the Internationalization Extension . . . . . 4
3.2. The SMTPUTF8 Extension . . . . . . . . . . . . . . . . . . 5
3.3. Extended Mailbox Address Syntax . . . . . . . . . . . . . 7
3.4. MAIL Command Parameter Usage . . . . . . . . . . . . . . . 8
3.5. Non-ASCII Addresses and Reply-Codes . . . . . . . . . . . 9
3.6. Body Parts and SMTP Extensions . . . . . . . . . . . . . . 9
3.7. Additional ESMTP Changes and Clarifications . . . . . . . 10
3.7.1. The Initial SMTP Exchange . . . . . . . . . . . . . . 10
3.7.2. Mail eXchangers . . . . . . . . . . . . . . . . . . . 10
3.7.3. Trace Information . . . . . . . . . . . . . . . . . . 11
3.7.4. UTF-8 Strings in Replies . . . . . . . . . . . . . . . 11
4. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 13
4.1. SMTP Service Extensions Registry . . . . . . . . . . . . . 13
4.2. SMTP Enhanced Status Code Registry . . . . . . . . . . . . 13
4.3. WITH Protocol Types Sub-Registry of the Mail
Transmission Types Registry . . . . . . . . . . . . . . . 15
5. Security Considerations . . . . . . . . . . . . . . . . . . . 15
6. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . . 16
7. References . . . . . . . . . . . . . . . . . . . . . . . . . . 16
7.1. Normative References . . . . . . . . . . . . . . . . . . . 16
7.2. Informative References . . . . . . . . . . . . . . . . . . 18
Yao & Mao Standards Track [Page 2]
RFC 6531 SMTP Extension for SMTPUTF8 February 2012
1. Introduction
The document defines a Simple Mail Transfer Protocol [RFC5321]
extension so servers can advertise the ability to accept and process
internationalized email addresses (see Section 1.1) and
internationalized email headers [RFC6532].
An extended overview of the extension model for internationalized
email addresses and the email header appears in RFC 6530 [RFC6530],
referred to as "the framework document" in this specification. A
thorough understanding of the information in that document and in the
base Internet email specifications [RFC5321] [RFC5322] is necessary
to understand and implement this specification.
1.1. Terminology
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 RFC 2119 [RFC2119].
The terms "UTF-8 string" or "UTF-8 character" are used to refer to
Unicode characters, which may or may not be members of the ASCII
subset, in UTF-8 [RFC3629], a standard Unicode Encoding Form. All
other specialized terms used in this specification are defined in the
framework document or in the base Internet email specifications. In
particular, the terms "ASCII address", "internationalized email
address", "non-ASCII address", "SMTPUTF8", "internationalized
message", and "message" are used in this document according to the
definitions in the framework document [RFC6530].
Strings referred to in this document, including ASCII strings, MUST
be expressed in UTF-8.
This specification uses Augmented BNF (ABNF) rules [RFC5234]. Some
basic rules in this document are identified in Section 3.3 as being
defined (under the same names) in RFC 5234 [RFC5234], RFC 5321
[RFC5321], RFC 5890 [RFC5890], or RFC 6532 [RFC6532].
1.2. Changes Made to Other Specifications
This specification extends some syntax rules defined in RFC 5321 and
permits internationalized email addresses in the envelope and in
trace fields, but it does not modify RFC 5321. It permits data
formats defined in RFC 6532 [RFC6532], but it does not modify RFC
5322. It does require that the 8BITMIME extension [RFC6152] be
announced by the SMTPUTF8-aware SMTP server and used with
"BODY=8BITMIME" by the SMTPUTF8-aware SMTP client, but it does not
modify the 8BITMIME specification in any way.
Yao & Mao Standards Track [Page 3]
RFC 6531 SMTP Extension for SMTPUTF8 February 2012
This specification replaces an earlier, experimental, approach to the
same problem [RFC5336]. Section 6 of RFC 6530 [RFC6530] describes
the changes in approach between RFC 5336 [RFC5336] and this
specification. Anyone trying to convert an implementation from the
experimental specification to the specification in this document will
need to review those changes carefully.
2. Overview of Operation
This document specifies an element of the email internationalization
work, specifically the definition of an SMTP extension for
internationalized email. The extension is identified with the token
"SMTPUTF8".
The internationalized email headers specification [RFC6532] provides
the details of email header features enabled by this extension.
3. Mail Transport-Level Protocol
3.1. Framework for the Internationalization Extension
The following service extension is defined:
1. The name of the SMTP service extension is "Internationalized
Email".
2. The EHLO keyword value associated with this extension is
"SMTPUTF8".
3. No parameter values are defined for this EHLO keyword value. In
order to permit future (although unanticipated) extensions, the
EHLO response MUST NOT contain any parameters for this keyword.
The SMTPUTF8-aware SMTP client MUST ignore any parameters if
they appear for this keyword; that is, the SMTPUTF8-aware SMTP
client MUST behave as if the parameters do not appear. If an
SMTP server includes SMTPUTF8 in its EHLO response, it MUST be
fully compliant with this version of this specification.
4. One OPTIONAL parameter, SMTPUTF8, is added to the MAIL command.
The parameter does not accept a value. If this parameter is set
in the MAIL command, it indicates that the SMTP client is
SMTPUTF8-aware. Its presence also asserts that the envelope
includes the non-ASCII address, the message being sent is an
internationalized message, or the message being sent needs the
SMTPUTF8 support.
Yao & Mao Standards Track [Page 4]
RFC 6531 SMTP Extension for SMTPUTF8 February 2012
5. The maximum length of a MAIL command line is increased by 10
characters to accommodate the possible addition of the SMTPUTF8
parameter.
6. One OPTIONAL parameter, SMTPUTF8, is added to the VERIFY (VRFY)
and EXPAND (EXPN) commands. The SMTPUTF8 parameter does not
accept a value. The parameter indicates that the SMTP client
can accept Unicode characters in UTF-8 encoding in replies from
the VRFY and EXPN commands.
7. No additional SMTP verbs are defined by this extension.
8. Servers offering this extension MUST provide support for, and
announce, the 8BITMIME extension [RFC6152].
9. The reverse-path and forward-path of the SMTP MAIL and RCPT
commands are extended to allow Unicode characters encoded in
UTF-8 in mailbox names (addresses).
10. The mail message body is extended as specified in RFC 6532
[RFC6532].
11. The SMTPUTF8 extension is valid on the submission port
[RFC6409]. It may also be used with the Local Mail Transfer
Protocol (LMTP) [RFC2033]. When these protocols are used, their
use should be reflected in the trace field WITH keywords as
appropriate [RFC3848].
3.2. The SMTPUTF8 Extension
An SMTP server that announces the SMTPUTF8 extension MUST be prepared
to accept a UTF-8 string [RFC3629] in any position in which RFC 5321
specifies that a <mailbox> can appear. Although the characters in
the <local-part> are permitted to contain non-ASCII characters, the
actual parsing of the <local-part> and the delimiters used are
unchanged from the base email specification [RFC5321]. Any domain
name to be looked up in the DNS MUST conform to and be processed as
specified for Internationalizing Domain Names in Applications (IDNA)
[RFC5890]. When doing lookups, the SMTPUTF8-aware SMTP client or
server MUST either use a Unicode-aware DNS library, or transform the
internationalized domain name to A-label form (i.e., a fully-
qualified domain name that contains one or more A-labels but no
U-labels) as specified in RFC 5890 [RFC5890].
An SMTP client that receives the SMTPUTF8 extension keyword in
response to the EHLO command MAY transmit mailbox names within SMTP
commands as internationalized strings in UTF-8 form. It MAY send a
UTF-8 header [RFC6532] (which may also include mailbox names in
Yao & Mao Standards Track [Page 5]
RFC 6531 SMTP Extension for SMTPUTF8 February 2012
UTF-8). It MAY transmit the domain parts of mailbox names within
SMTP commands or the message header as A-labels or U-labels
[RFC5890]. The presence of the SMTPUTF8 extension does not change
the server-relaying behaviors described in RFC 5321.
If the SMTPUTF8 SMTP extension is not offered by the SMTP server, the
SMTPUTF8-aware SMTP client MUST NOT transmit an internationalized
email address and MUST NOT transmit a mail message containing
internationalized mail headers as described in RFC 6532 [RFC6532] at
any level within its MIME structure [RFC2045]. (For this paragraph,
the internationalized domain name in A-label form as specified in
IDNA definitions [RFC5890] is not considered to be
"internationalized".) Instead, if an SMTPUTF8-aware SMTP client
(sender) attempts to transfer an internationalized message and
encounters an SMTP server that does not support the extension, the
best action for it to take depends on other conditions. In
particular:
o If it is a Message Submission Agent (MSA) [RFC6409] [RFC5598], it
MAY choose its own way to deal with this scenario using the wide
discretion for changing addresses or otherwise fixing up and
transforming messages allowed by RFC 6409. As long as the
resulting message conforms to the requirements of RFC 5321 (i.e.,
without the SMTPUTF8 extension), the details of that
transformation are outside the scope of this document.
o If it is not an MSA or is an MSA and does not choose to transform
the message to one that does not require the SMTPUTF8 extension,
it SHOULD reject the message. As usual, this can be done either
by generating an appropriate reply during the SMTP transaction or
by accepting the message and then generating and transmitting a
non-delivery notification. If the latter choice is made, the
notification process MUST conform to the requirements of RFC 5321,
RFC 3464 [RFC3464], and RFC 6533 [RFC6533].
o As specified in Section 2.2.3 of RFC 5321, an SMTP client with
additional information and/or knowledge of special circumstances
MAY choose to requeue the message and try later and/or try an
alternate MX host as specified in that section.
This document applies when an SMTPUTF8-aware SMTP client or server
supports the SMTPUTF8 extension. For all other cases, and for
addresses and messages that do not require an SMTPUTF8 extension,
SMTPUTF8-aware SMTP clients and servers do not change the behavior
specified in RFC 5321 [RFC5321].
Yao & Mao Standards Track [Page 6]
RFC 6531 SMTP Extension for SMTPUTF8 February 2012
If an SMTPUTF8-aware SMTP server advertises the Delivery Status
Notification (DSN) [RFC3461] extension, it MUST implement RFC 6533
[RFC6533].
3.3. Extended Mailbox Address Syntax
RFC 5321, Section 4.1.2, defines the syntax of a <Mailbox> entirely
in terms of ASCII characters. This document extends <Mailbox> to add
support of non-ASCII characters.
The key changes made by this specification include:
o The <Mailbox> ABNF rule is imported from RFC 5321 and updated in
order to support the internationalized email address. Other
related rules are imported from RFC 5321, RFC 5234, RFC 5890, and
RFC 6532, or are extended in this document.
o The definition of <sub-domain> is extended to permit both the RFC
5321 definition and a UTF-8 string in a DNS label that conforms
with IDNA definitions [RFC5890].
o The definition of <atext> is extended to permit both the RFC 5321
definition and a UTF-8 string. That string MUST NOT contain any
of the ASCII graphics or control characters.
The following ABNF rules imported from RFC 5321, Section 4.1.2, are
updated directly or indirectly by this document:
o <Mailbox>
o <Local-part>
o <Dot-string>
o <Quoted-string>
o <QcontentSMTP>
o <Domain>
o <Atom>
The following ABNF rule will be imported from RFC 6532, Section 3.1,
directly:
o <UTF8-non-ascii>
Yao & Mao Standards Track [Page 7]
RFC 6531 SMTP Extension for SMTPUTF8 February 2012
The following ABNF rule will be imported from RFC 5234, Appendix B.1,
directly:
o <DQUOTE>
The following ABNF rule will be imported from RFC 5890, Section
2.3.2.1, directly:
o <U-label>
The following rules are extended in ABNF [RFC5234] as follows.
sub-domain =/ U-label
; extend the definition of sub-domain in RFC 5321, Section 4.1.2
atext =/ UTF8-non-ascii
; extend the implicit definition of atext in
; RFC 5321, Section 4.1.2, which ultimately points to
; the actual definition in RFC 5322, Section 3.2.3
qtextSMTP =/ UTF8-non-ascii
; extend the definition of qtextSMTP in RFC 5321, Section 4.1.2
esmtp-value =/ UTF8-non-ascii
; extend the definition of esmtp-value in RFC 5321, Section 4.1.2
3.4. MAIL Command Parameter Usage
If the envelope or message being sent requires the capabilities of
the SMTPUTF8 extension, the SMTPUTF8-aware SMTP client MUST supply
the SMTPUTF8 parameter with the MAIL command. If this parameter is
provided, it MUST not accept a value. If the SMTPUTF8-aware SMTP
client is aware that neither the envelope nor the message being sent
requires any of the SMTPUTF8 extension capabilities, it SHOULD NOT
supply the SMTPUTF8 parameter with the MAIL command.
Because there is no guarantee that a next-hop SMTP server will
support the SMTPUTF8 extension, use of the SMTPUTF8 extension always
carries a risk of transmission failure. In fact, during the early
stages of deployment for the SMTPUTF8 extension, the risk will be
quite high. Hence, there is a distinct near-term advantage for
ASCII-only messages to be sent without using this extension. The
long-term advantage of casting ASCII [ASCII] characters (0x7f and
below) as UTF-8 form is that it permits pure-Unicode environments.
Yao & Mao Standards Track [Page 8]
RFC 6531 SMTP Extension for SMTPUTF8 February 2012
3.5. Non-ASCII Addresses and Reply-Codes
An SMTPUTF8-aware SMTP client MUST NOT send an internationalized
message to an SMTP server that does not support SMTPUTF8. If the
SMTP server does not support this option, then the SMTPUTF8-aware
SMTP client has three choices according to Section 3.2 of this
specification.
The three-digit reply-codes used in this section are based on their
meanings as defined in RFC 5321.
When messages are rejected because the RCPT command requires an ASCII
address, the reply-code 553 is returned with the meaning "mailbox
name not allowed". When messages are rejected because the MAIL
command requires an ASCII address, the reply-code 550 is returned
with the meaning "mailbox unavailable". When the SMTPUTF8-aware SMTP
server supports enhanced mail system status codes [RFC3463], reply-
code "X.6.7" [RFC5248] (see Section 4) is used, meaning "Non-ASCII
addresses not permitted for that sender/recipient".
When messages are rejected for other reasons, the server follows the
model of the base email specification in RFC 5321; this extension
does not change those circumstances or reply messages.
If a message is rejected after the final "." of the DATA command
because one or more recipients are unable to accept and process a
message with internationalized email headers, the reply-code "554" is
used with the meaning "Transaction failed". If the SMTPUTF8-aware
SMTP server supports enhanced mail system status codes [RFC3463],
reply code "X.6.9" [RFC5248] (see Section 4) is used to indicate this
condition, meaning "UTF-8 header message cannot be transmitted to one
or more recipients, so the message must be rejected".
The SMTPUTF8-aware SMTP servers are encouraged to detect that
recipients cannot accept internationalized messages and generate an
error after the RCPT command rather than waiting until after the DATA
command to issue an error.
3.6. Body Parts and SMTP Extensions
The MAIL command parameter SMTPUTF8 asserts that a message is an
internationalized message or the message being sent needs the
SMTPUTF8 support. There is still a chance that a message being sent
via the MAIL command with the SMTPUTF8 parameter is not an
internationalized message. An SMTPUTF8-aware SMTP client or server
that requires accurate knowledge of whether a message is
internationalized needs to parse all message header fields and MIME
Yao & Mao Standards Track [Page 9]
RFC 6531 SMTP Extension for SMTPUTF8 February 2012
header fields [RFC2045] in the message body. However, this
specification does not require that the SMTPUTF8-aware SMTP client or
server inspects the message.
Although this specification requires that SMTPUTF8-aware SMTP servers
support the 8BITMIME extension [RFC6152] to ensure that servers have
adequate handling capability for 8-bit data, it does not require non-
ASCII body parts in the MIME message as specified in RFC 2045. The
SMTPUTF8 extension MAY be used as follows (assuming it is appropriate
given the body content):
- with the BODY=8BITMIME parameter [RFC6152], or
- with the BODY=BINARYMIME parameter, if the SMTP server advertises
BINARYMIME [RFC3030].
3.7. Additional ESMTP Changes and Clarifications
The information carried in the mail transport process involves
addresses ("mailboxes") and domain names in various contexts in
addition to the MAIL and RCPT commands and extended alternatives to
them. In general, the rule is that, when RFC 5321 specifies a
mailbox, this SMTP extension requires UTF-8 form to be used for the
entire string. When RFC 5321 specifies a domain name, the
internationalized domain name SHOULD be in U-label form if the
SMTPUTF8 extension is supported; otherwise, it SHOULD be in A-label
form.
The following subsections list and discuss all of the relevant cases.
3.7.1. The Initial SMTP Exchange
When an SMTP connection is opened, the SMTP server sends a "greeting"
response consisting of the 220 reply-code and some information. The
SMTP client then sends the EHLO command. Since the SMTP client
cannot know whether the SMTP server supports SMTPUTF8 until after it
receives the response to the EHLO, the SMTPUTF8-aware SMTP client
MUST send only ASCII (LDH label or A-label [RFC5890]) domains in the
EHLO command. If the SMTPUTF8-aware SMTP server provides domain
names in the EHLO response, they MUST be in the form of LDH labels or
A-labels.
3.7.2. Mail eXchangers
If multiple DNS MX records are used to specify multiple servers for a
domain (as described in Section 5 of RFC 5321 [RFC5321]), it is
strongly advised that all or none of them SHOULD support the SMTPUTF8
Yao & Mao Standards Track [Page 10]
RFC 6531 SMTP Extension for SMTPUTF8 February 2012
extension. Otherwise, unexpected rejections can happen during
temporary or permanent failures, which users might perceive as
serious reliability issues.
3.7.3. Trace Information
The trace information <Return-path-line>, <Time-stamp-line>, and
their related rules are defined in Section 4.4 of RFC 5321 [RFC5321].
This document updates <Mailbox> and <Domain> to support non-ASCII
characters. When the SMTPUTF8 extension is used, the 'Reverse-path'
clause of the Return-path-line may include an internationalized
domain name that uses the U-label form. Also, the 'Stamp' clause of
the Time-stamp-line may include an internationalized domain name that
uses the U-label form.
If the messages that include trace fields are sent by an SMTPUTF8-
aware SMTP client or relay server without the SMTPUTF8 parameter
included in the MAIL commands, trace field values must conform to RFC
5321 regardless of the SMTP server's capability.
When an SMTPUTF8-aware SMTP server adds a trace field to a message
that was or will be transmitted with the SMTPUTF8 parameter included
in the MAIL commands, that server SHOULD use the U-label form for
internationalized domain names in the new trace field.
The protocol value of the 'WITH' clause when this extension is used
is one of the SMTPUTF8 values specified in the "IANA Considerations"
section of this document.
3.7.4. UTF-8 Strings in Replies
3.7.4.1. MAIL Command
If an SMTP client follows this specification and sends any MAIL
commands containing the SMTPUTF8 parameter, the SMTPUTF8-aware SMTP
server is permitted to use UTF-8 characters in the email address
associated with 251 and 551 reply-codes, and the SMTP client MUST be
able to accept and process them. If a given MAIL command does not
include the SMTPUTF8 parameter, the SMTPUTF8-aware SMTP server MUST
NOT return a 251 or 551 response containing a non-ASCII mailbox.
Instead, it MUST transform such responses into 250 or 550 responses
that do not contain non-ASCII addresses.
3.7.4.2. VRFY and EXPN Commands and the SMTPUTF8 Parameter
If the SMTPUTF8 parameter is transmitted with the VRFY and EXPN
commands, it indicates that the SMTP client can accept UTF-8 strings
in replies to those commands. The parameter with the VRFY and EXPN
Yao & Mao Standards Track [Page 11]
RFC 6531 SMTP Extension for SMTPUTF8 February 2012
commands SHOULD only be used after the SMTP client sees the EHLO
response with the SMTPUTF8 keyword. This allows an SMTPUTF8-aware
SMTP server to use UTF-8 strings in mailbox names and full names that
occur in replies, without concern that the SMTP client might be
confused by them. An SMTP client that conforms to this specification
MUST accept and correctly process replies to the VRFY and EXPN
commands that contain UTF-8 strings. However, an SMTPUTF8-aware SMTP
server MUST NOT use UTF-8 strings in replies if the SMTP client does
not specifically allow such replies by transmitting this parameter
with the VRFY and EXPN commands.
Most replies do not require that a mailbox name be included in the
returned text, and therefore a UTF-8 string is not needed in them.
Some replies, notably those resulting from successful execution of
the VRFY and EXPN commands, do include the mailbox.
VERIFY (VRFY) and EXPAND (EXPN) command syntaxes are changed to:
vrfy = "VRFY" SP String
[ SP "SMTPUTF8" ] CRLF
; String may include Non-ASCII characters
expn = "EXPN" SP String
[ SP "SMTPUTF8" ] CRLF
; String may include Non-ASCII characters
The SMTPUTF8 parameter does not accept a value. If the reply to a
VRFY or EXPN command requires a UTF-8 string, but the SMTP client did
not use the SMTPUTF8 parameter, then the SMTPUTF8-aware SMTP server
MUST use either the reply-code 252 or 550. Reply-code 252, defined
in RFC 5321 [RFC5321], means "Cannot VRFY user, but will accept the
message and attempt the delivery". Reply-code 550, also defined in
RFC 5321 [RFC5321], means "Requested action not taken: mailbox
unavailable". When the SMTPUTF8-aware SMTP server supports enhanced
mail system status codes [RFC3463], the enhanced reply-code as
specified below is used. Using the SMTPUTF8 parameter with a VRFY or
EXPN command enables UTF-8 replies for that command only.
If a normal success response (i.e., 250) is returned, the response
MAY include the full name of the user and MUST include the mailbox of
the user. It MUST be in either of the following forms:
User Name <Mailbox>
; Mailbox is defined in Section 3.3 of this document.
; User Name can contain non-ASCII characters.
Mailbox
; Mailbox is defined in Section 3.3 of this document.
Yao & Mao Standards Track [Page 12]
RFC 6531 SMTP Extension for SMTPUTF8 February 2012
If the SMTP reply requires UTF-8 strings, but a UTF-8 string is not
allowed in the reply, and the SMTPUTF8-aware SMTP server supports
enhanced mail system status codes [RFC3463], the enhanced reply-code
is "X.6.8" [RFC5248] (see Section 4), meaning "A reply containing a
UTF-8 string is required to show the mailbox name, but that form of
response is not permitted by the SMTP client".
If the SMTP client does not support the SMTPUTF8 extension, but
receives a UTF-8 string in a reply, it may not be able to properly
report the reply to the user, and some clients might mishandle that
reply. Internationalized messages in replies are only allowed in the
commands under the situations described above.
Although UTF-8 strings are needed to represent email addresses in
responses under the rules specified in this section, this extension
does not permit the use of UTF-8 strings for any other purposes.
SMTPUTF8-aware SMTP servers MUST NOT include non-ASCII characters in
replies except in the limited cases specifically permitted in this
section.
4. IANA Considerations
4.1. SMTP Service Extensions Registry
IANA has added a new value "SMTPUTF8" to the "SMTP Service Extension"
registry of the "Mail Parameters" registry, according to the
following data:
+----------+---------------------------------+-----------+
| Keywords | Description | Reference |
+----------+---------------------------------+-----------+
| SMTPUTF8 | Internationalized email address | [RFC6531] |
+----------+---------------------------------+-----------+
4.2. SMTP Enhanced Status Code Registry
The code definitions in this document replace those specified in RFC
5336, following the guidance in Sections 3.5 and 3.7.4.2 of this
document, and based on RFC 5248 [RFC5248]. IANA has updated the
"Simple Mail Transfer Protocol (SMTP) Enhanced Status Code Registry"
with the following data:
Yao & Mao Standards Track [Page 13]
RFC 6531 SMTP Extension for SMTPUTF8 February 2012
Code: X.6.7
Sample Text: Non-ASCII addresses not permitted for that
sender/recipient
Associated basic status code: 550, 553
Description: This indicates the reception of a MAIL or RCPT command
that non-ASCII addresses are not permitted.
Defined: RFC 6531 (Standards Track)
Submitter: Jiankang YAO
Change controller: ima@ietf.org
Code: X.6.8
Sample Text: UTF-8 string reply is required, but not permitted by
the SMTP client
Associated basic status code: 252, 550, 553
Description: This indicates that a reply containing a UTF-8 string
is required to show the mailbox name, but that form of
response is not permitted by the SMTP client.
Defined: RFC 6531 (Standards Track)
Submitter: Jiankang YAO
Change controller: ima@ietf.org
Code: X.6.9
Sample Text: UTF-8 header message cannot be transferred to one or
more recipients, so the message must be rejected
Associated basic status code: 550
Description: This indicates that transaction failed after the
final "." of the DATA command.
Defined: RFC 6531 (Standards Track)
Submitter: Jiankang YAO
Change controller: ima@ietf.org
Code: X.6.10
Description: This is a duplicate of X.6.8 and is thus deprecated.
Yao & Mao Standards Track [Page 14]
RFC 6531 SMTP Extension for SMTPUTF8 February 2012
4.3. WITH Protocol Types Sub-Registry of the Mail Transmission Types
Registry
IANA has modified or added the following entries in the "WITH
protocol types" sub-registry under the "Mail Transmission Types"
registry.
+--------------+------------------------------+---------------------+
| WITH | Description | Reference |
| protocol | | |
| types | | |
+--------------+------------------------------+---------------------+
| UTF8SMTP | ESMTP with SMTPUTF8 | [RFC6531] |
| UTF8SMTPA | ESMTP with SMTPUTF8 and AUTH | [RFC4954] [RFC6531] |
| UTF8SMTPS | ESMTP with SMTPUTF8 and | [RFC3207] [RFC6531] |
| | STARTTLS | |
| UTF8SMTPSA | ESMTP with SMTPUTF8 and both | [RFC3207] [RFC4954] |
| | STARTTLS and AUTH | [RFC6531] |
| UTF8LMTP | LMTP with SMTPUTF8 | [RFC6531] |
| UTF8LMTPA | LMTP with SMTPUTF8 and AUTH | [RFC4954] [RFC6531] |
| UTF8LMTPS | LMTP with SMTPUTF8 and | [RFC3207] [RFC6531] |
| | STARTTLS | |
| UTF8LMTPSA | LMTP with SMTPUTF8 and both | [RFC3207] [RFC4954] |
| | STARTTLS and AUTH | [RFC6531] |
+--------------+------------------------------+---------------------+
5. Security Considerations
The extended security considerations discussion in the framework
document [RFC6530] applies here.
More security considerations are discussed below:
Beyond the use inside the email global system (in SMTP envelopes and
message headers), internationalized email addresses will also show up
inside other cases, in particular:
o the logging systems of SMTP transactions and other logs to monitor
the email systems;
o the trouble ticket systems used by security teams to manage
security incidents, when an email address is involved;
In order to avoid problems that could cause loss of data, this will
likely require extending these systems to support full UTF-8, or
require providing an adequate mechanism for mapping non-ASCII strings
to ASCII.
Yao & Mao Standards Track [Page 15]
RFC 6531 SMTP Extension for SMTPUTF8 February 2012
Another security aspect to be considered is related to the ability by
security team members to quickly understand, read, and identify email
addresses from the logs, when they are tracking an incident.
Mechanisms to automatically and quickly provide the origin or
ownership of an internationalized email address SHALL be implemented
for use by log readers that cannot easily read non-ASCII information.
The SMTP commands VRFY and EXPN are sometimes used in SMTP
transactions where there is no message to transfer (by tools used to
take automated actions in case potential spam messages are
identified). Sections 3.5 and 7.3 of RFC 5321 give detailed
descriptions of use and possible behaviors. Implementation of
internationalized addresses can also affect logs and actions by these
tools.
6. Acknowledgements
This document revises RFC 5336 [RFC5336] based on the result of the
Email Address Internationalization (EAI) working group's discussion.
Many EAI working group members did tests and implementations to move
this document to the Standards Track. Significant comments and
suggestions were received from Xiaodong LEE, Nai-Wen HSU, Yangwoo KO,
Yoshiro YONEYA, and other members of JET and were incorporated into
the specification. Additional important comments and suggestions,
and often specific text, were contributed by many members of the
working group and design team. Those contributions include material
from John C. Klensin, Charles Lindsey, Dave Crocker, Harald Tveit
Alvestrand, Marcos Sanz, Chris Newman, Martin Duerst, Edmon Chung,
Tony Finch, Kari Hurtta, Randall Gellens, Frank Ellermann, Alexey
Melnikov, Pete Resnick, S. Moonesamy, Soobok Lee, Shawn Steele,
Alfred Hoenes, Miguel Garcia, Magnus Westerlund, Joseph Yee, and Lars
Eggert. Of course, none of the individuals are necessarily
responsible for the combination of ideas represented here.
Thanks a lot to Dave Crocker for his comments and helping with ABNF
refinement.
7. References
7.1. Normative References
[ASCII] American National Standards Institute (formerly United
States of America Standards Institute), "USA Code for
Information Interchange", ANSI X3.4-1968, 1968.
[RFC2119] Bradner, S., "Key words for use in RFCs to Indicate
Requirement Levels", BCP 14, RFC 2119, March 1997.
Yao & Mao Standards Track [Page 16]
RFC 6531 SMTP Extension for SMTPUTF8 February 2012
[RFC3461] Moore, K., "Simple Mail Transfer Protocol (SMTP) Service
Extension for Delivery Status Notifications (DSNs)",
RFC 3461, January 2003.
[RFC3463] Vaudreuil, G., "Enhanced Mail System Status Codes",
RFC 3463, January 2003.
[RFC3464] Moore, K. and G. Vaudreuil, "An Extensible Message Format
for Delivery Status Notifications", RFC 3464,
January 2003.
[RFC3629] Yergeau, F., "UTF-8, a transformation format of ISO
10646", RFC 3629, November 2003.
[RFC3848] Newman, C., "ESMTP and LMTP Transmission Types
Registration", RFC 3848, July 2004.
[RFC5234] Crocker, D. and P. Overell, "Augmented BNF for Syntax
Specifications: ABNF", STD 68, RFC 5234, January 2008.
[RFC5248] Hansen, T. and J. Klensin, "A Registry for SMTP Enhanced
Mail System Status Codes", RFC 5248, June 2008.
[RFC5321] Klensin, J., "Simple Mail Transfer Protocol", RFC 5321,
October 2008.
[RFC5322] Resnick, P., Ed., "Internet Message Format", RFC 5322,
October 2008.
[RFC5890] Klensin, J., "Internationalizing Domain Names in
Applications (IDNA definitions)", RFC 5890, June 2010.
[RFC6152] Klensin, J., Freed, N., Rose, M., and D. Crocker, "SMTP
Service Extension for 8-bit MIME Transport", STD 71,
RFC 6152, March 2011.
[RFC6409] Gellens, R. and J. Klensin, "Message Submission for Mail",
STD 72, RFC 6409, November 2011.
[RFC6530] Klensin, J. and Y. Ko, "Overview and Framework for
Internationalized Email", RFC 6530, February 2012.
[RFC6532] Yang, A., Steele, S., and N. Freed, "Internationalized
Email Headers", RFC 6532, February 2012.
[RFC6533] Hansen, T., Ed., Newman, C., and A. Melnikov, Ed.,
"Internationalized Delivery Status and Disposition
Notifications", RFC RFC6533, February 2012.
Yao & Mao Standards Track [Page 17]
RFC 6531 SMTP Extension for SMTPUTF8 February 2012
7.2. Informative References
[RFC2033] Myers, J., "Local Mail Transfer Protocol", RFC 2033,
October 1996.
[RFC2045] Freed, N. and N. Borenstein, "Multipurpose Internet Mail
Extensions (MIME) Part One: Format of Internet Message
Bodies", RFC 2045, November 1996.
[RFC3030] Vaudreuil, G., "SMTP Service Extensions for Transmission
of Large and Binary MIME Messages", RFC 3030,
December 2000.
[RFC3207] Hoffman, P., "SMTP Service Extension for Secure SMTP over
Transport Layer Security", RFC 3207, February 2002.
[RFC4954] Siemborski, R. and A. Melnikov, "SMTP Service Extension
for Authentication", RFC 4954, July 2007.
[RFC5336] Yao, J. and W. Mao, "SMTP Extension for Internationalized
Email Addresses", RFC 5336, September 2008.
[RFC5598] Crocker, D., "Internet Mail Architecture", RFC 5598,
July 2009.
Authors' Addresses
Jiankang YAO
CNNIC
No.4 South 4th Street, Zhongguancun
Beijing
China
Phone: +86 10 58813007
EMail: yaojk@cnnic.cn
Wei MAO
CNNIC
No.4 South 4th Street, Zhongguancun
Beijing
China
Phone: +86 10 58812230
EMail: maowei_ietf@cnnic.cn
Yao & Mao Standards Track [Page 18]