|
|
|
|
|
IETF RFC 8616
Last modified on Monday, July 1st, 2019
Permanent link to RFC 8616
Search GitHub Wiki for RFC 8616
Show other RFCs mentioning RFC 8616
Internet Engineering Task Force (IETF) J. Levine
Request for Comments: 8616 Taughannock Networks
Updates: 6376, 7208, 7489 June 2019
Category: Standards Track
ISSN: 2070-1721
Email Authentication for Internationalized Mail
Abstract
Sender Policy Framework (SPF) (RFC 7208), DomainKeys Identified Mail
(DKIM) (RFC 6376), and Domain-based Message Authentication,
Reporting, and Conformance (DMARC) (RFC 7489) enable a domain owner
to publish email authentication and policy information in the DNS.
In internationalized email, domain names can occur both as U-labels
and A-labels. This specification updates the SPF, DKIM, and DMARC
specifications to clarify which form of internationalized domain
names to use in those specifications.
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 7841.
Information about the current status of this document, any errata,
and how to provide feedback on it may be obtained at
https://www.rfc-editor.org/info/RFC 8616.
Copyright Notice
Copyright (c) 2019 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
(https://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.
Levine Standards Track PAGE 1
RFC 8616 EAI Authentication June 2019
Table of Contents
1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 2
2. Definitions . . . . . . . . . . . . . . . . . . . . . . . . . 2
3. General Principles . . . . . . . . . . . . . . . . . . . . . 3
4. SPF and Internationalized Mail . . . . . . . . . . . . . . . 3
5. DKIM and Internationalized Mail . . . . . . . . . . . . . . . 3
6. DMARC and Internationalized Mail . . . . . . . . . . . . . . 4
7. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 5
8. Security Considerations . . . . . . . . . . . . . . . . . . . 5
9. Normative References . . . . . . . . . . . . . . . . . . . . 5
Author's Address . . . . . . . . . . . . . . . . . . . . . . . . 6
1. Introduction
SPF [RFC 7208], DKIM [RFC 6376], and DMARC [RFC 7489] enable a domain
owner to publish email authentication and policy information in the
DNS. SPF primarily publishes information about what host addresses
are authorized to send mail for a domain. DKIM places cryptographic
signatures on email messages, with the validation keys published in
the DNS. DMARC publishes policy information related to the domain in
the From: header field of email messages.
In conventional email, all domain names are ASCII in all contexts, so
there is no question about the representation of the domain names.
All internationalized domain names are represented as A-labels
[RFC 5890] in message header fields, SMTP sessions, and the DNS.
Internationalized mail [RFC 6530] (generally called "EAI" for Email
Address Internationalization) allows U-labels in SMTP sessions
[RFC 6531] and message header fields [RFC 6532].
Every U-label is equivalent to an A-label, so in principle, the
choice of label format will not cause ambiguities. But in practice,
consistent use of label formats will make it more likely that code
for mail senders and receivers interoperates.
Internationalized mail also allows UTF-8-encoded Unicode characters
in the local parts of mailbox names, which were historically only
ASCII.
2. Definitions
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 [RFC 2119] [RFC 8174] when, and only when, they appear in all
capitals, as shown here.
Levine Standards Track PAGE 2
RFC 8616 EAI Authentication June 2019
The term "IDN", for Internationalized Domain Name, refers to a domain
name containing either U-labels or A-labels.
Since DMARC is not currently a Standards Track protocol, this
specification offers advice rather than requirements for DMARC.
3. General Principles
In headers in EAI mail messages, domain names that were restricted to
ASCII can be U-labels, and mailbox local parts can be UTF-8. Header
field names and other text intended primarily to be interpreted by
computers rather than read by people remains ASCII.
Strings stored in DNS records remain ASCII since there is no way to
tell whether a client retrieving a DNS record expects an EAI or an
ASCII result. When a domain name found in a mail header field
includes U-labels, those labels are translated to A-labels before
being looked up in the DNS, as described in [RFC 5891].
4. SPF and Internationalized Mail
SPF [RFC 7208] uses two identities from the SMTP session: the host
name in the EHLO command and the domain in the address in the MAIL
FROM command. Since the EHLO command precedes the server response
that tells whether the server supports the SMTPUTF8 extension, an IDN
host name MUST be represented as A-labels. An IDN in MAIL FROM can
be either U-labels or A-labels.
All U-labels MUST be converted to A-labels before being used for an
SPF validation. This includes both the labels in the name used for
the original DNS lookup, described in Section 3 of [RFC 7208], and
those used in the macro expansion of domain-spec, described in
Section 7. Section 4.3 of [RFC 7208] states that all IDNs in an SPF
DNS record MUST be A-labels; this rule is unchanged since any SPF
record can be used to authorize either EAI or conventional mail.
SPF macros %{s} and %{l} expand the local part of the sender's
mailbox. If the local part contains non-ASCII characters, terms that
include %{s} or %{l} do not match anything, because non-ASCII local
parts cannot be used as the DNS labels the macros are intended to
match. Since these macros are rarely used, this is unlikely to be an
issue in practice.
5. DKIM and Internationalized Mail
DKIM [RFC 6376] specifies a mail header field that contains a
cryptographic message signature and a DNS record that contains the
validation key.
Levine Standards Track PAGE 3
RFC 8616 EAI Authentication June 2019
Section 2.11 of [RFC 6376] defines dkim-quoted-printable. Its
definition is modified in messages with internationalized header
fields so that non-ASCII UTF-8 characters need not be quoted. The
ABNF [RFC 5234] for dkim-safe-char in those messages is replaced by
the following, adding non-ASCII UTF-8 characters from [RFC 3629]:
dkim-safe-char = %x21-3A / %x3C / %x3E-7E /
UTF8-2 / UTF8-3 / UTF8-4
; '!' - ':', '<', '>' - '~', non-ASCII
UTF8-2 = <Defined in Section 4 of RFC 3629>
UTF8-3 = <Defined in Section 4 of RFC 3629>
UTF8-4 = <Defined in Section 4 of RFC 3629>
Section 3.5 of [RFC 6376] states that IDNs in the d=, i=, and s= tags
of a DKIM-Signature header field MUST be encoded as A-labels. This
rule is relaxed only for internationalized message header fields
[RFC 6532], so IDNs SHOULD be represented as U-labels. This provides
improved consistency with other header fields. (A-labels remain
valid to allow a transition from older software.) The set of
allowable characters in the local part of an i= tag is extended in
the same fashion as local parts of email addresses as described in
Section 3.2 of [RFC 6532]. When computing or verifying the hash in a
DKIM signature as described in Section 3.7 of [RFC 6376], the hash
MUST use the domain name in the format it occurs in the header field.
Section 3.4.2 of [RFC 6376] describes relaxed header canonicalization.
Its first step converts all header field names from uppercase to
lowercase. Field names are restricted to printable ASCII (see
[RFC 5322], Section 3.6.8), so this case conversion remains ASCII case
conversion.
DKIM key records, described in Section 3.6.1 of [RFC 6376], do not
contain domain names, so there is no change to their specification.
6. DMARC and Internationalized Mail
DMARC [RFC 7489] defines a policy language that domain owners can
specify for the domain of the address in an RFC 5322.From header
field.
Section 6.6.1 of [RFC 7489] specifies, somewhat imprecisely, how IDNs
in the RFC 5322.From address domain are to be handled. That section
is updated to say that all U-labels in the domain are converted to
A-labels before further processing. Section 7.1 of [RFC 7489] is
Levine Standards Track PAGE 4
RFC 8616 EAI Authentication June 2019
similarly updated to say that all U-labels in domains being handled
are converted to A-labels before further processing.
DMARC policy records, described in Sections 6.3 and 7.1 of [RFC 7489],
can contain email addresses in the "rua" and "ruf" tags. Since a
policy record can be used for both internationalized and conventional
mail, those addresses still have to be conventional addresses, not
internationalized addresses.
7. IANA Considerations
This document has no IANA actions.
8. Security Considerations
Email is subject to a vast range of threats and abuses. This
document attempts to slightly mitigate some of them but does not, as
far as the author knows, add any new ones. The updates to SPF, DKIM,
and DMARC are intended to allow the respective specifications to work
as reliably on internationalized mail as they do on ASCII mail, so
that applications that use them, such as some kinds of mail filters
that catch spam and phish, can work more reliably on
internationalized mail.
9. Normative References
[RFC 2119] Bradner, S., "Key words for use in RFCs to Indicate
Requirement Levels", BCP 14, RFC 2119,
DOI 10.17487/RFC 2119, March 1997,
<https://www.rfc-editor.org/info/RFC 2119>.
[RFC 3629] Yergeau, F., "UTF-8, a transformation format of ISO
10646", STD 63, RFC 3629, DOI 10.17487/RFC 3629, November
2003, <https://www.rfc-editor.org/info/RFC 3629>.
[RFC 5234] Crocker, D., Ed. and P. Overell, "Augmented BNF for Syntax
Specifications: ABNF", STD 68, RFC 5234,
DOI 10.17487/RFC 5234, January 2008,
<https://www.rfc-editor.org/info/RFC 5234>.
[RFC 5322] Resnick, P., Ed., "Internet Message Format", RFC 5322,
DOI 10.17487/RFC 5322, October 2008,
<https://www.rfc-editor.org/info/RFC 5322>.
[RFC 5890] Klensin, J., "Internationalized Domain Names for
Applications (IDNA): Definitions and Document Framework",
RFC 5890, DOI 10.17487/RFC 5890, August 2010,
<https://www.rfc-editor.org/info/RFC 5890>.
Levine Standards Track PAGE 5
RFC 8616 EAI Authentication June 2019
[RFC 5891] Klensin, J., "Internationalized Domain Names in
Applications (IDNA): Protocol", RFC 5891,
DOI 10.17487/RFC 5891, August 2010,
<https://www.rfc-editor.org/info/RFC 5891>.
[RFC 6376] Crocker, D., Ed., Hansen, T., Ed., and M. Kucherawy, Ed.,
"DomainKeys Identified Mail (DKIM) Signatures", STD 76,
RFC 6376, DOI 10.17487/RFC 6376, September 2011,
<https://www.rfc-editor.org/info/RFC 6376>.
[RFC 6530] Klensin, J. and Y. Ko, "Overview and Framework for
Internationalized Email", RFC 6530, DOI 10.17487/RFC 6530,
February 2012, <https://www.rfc-editor.org/info/RFC 6530>.
[RFC 6531] Yao, J. and W. Mao, "SMTP Extension for Internationalized
Email", RFC 6531, DOI 10.17487/RFC 6531, February 2012,
<https://www.rfc-editor.org/info/RFC 6531>.
[RFC 6532] Yang, A., Steele, S., and N. Freed, "Internationalized
Email Headers", RFC 6532, DOI 10.17487/RFC 6532, February
2012, <https://www.rfc-editor.org/info/RFC 6532>.
[RFC 7208] Kitterman, S., "Sender Policy Framework (SPF) for
Authorizing Use of Domains in Email, Version 1", RFC 7208,
DOI 10.17487/RFC 7208, April 2014,
<https://www.rfc-editor.org/info/RFC 7208>.
[RFC 7489] Kucherawy, M., Ed. and E. Zwicky, Ed., "Domain-based
Message Authentication, Reporting, and Conformance
(DMARC)", RFC 7489, DOI 10.17487/RFC 7489, March 2015,
<https://www.rfc-editor.org/info/RFC 7489>.
[RFC 8174] Leiba, B., "Ambiguity of Uppercase vs Lowercase in RFC
2119 Key Words", BCP 14, RFC 8174, DOI 10.17487/RFC 8174,
May 2017, <https://www.rfc-editor.org/info/RFC 8174>.
Author's Address
John Levine
Taughannock Networks
PO Box 727
Trumansburg, NY 14886
United States of America
Email: standards@taugh.com
URI: http://jl.ly
Levine Standards Track PAGE 6
RFC TOTAL SIZE: 14338 bytes
PUBLICATION DATE: Monday, July 1st, 2019
LEGAL RIGHTS: The IETF Trust (see BCP 78)
|