draft-ietf-lamps-eai-addresses-12.txt   draft-ietf-lamps-eai-addresses-13.txt 
LAMPS A. Melnikov, Ed. LAMPS A. Melnikov, Ed.
Internet-Draft Isode Ltd Internet-Draft Isode Ltd
Intended status: Standards Track W. Chuang, Ed. Intended status: Standards Track W. Chuang, Ed.
Expires: December 31, 2017 Google, Inc. Expires: March 3, 2018 Google, Inc.
June 29, 2017 August 30, 2017
Internationalized Email Addresses in X.509 certificates Internationalized Email Addresses in X.509 certificates
draft-ietf-lamps-eai-addresses-12 draft-ietf-lamps-eai-addresses-13
Abstract Abstract
This document defines a new name form for inclusion in the otherName This document defines a new name form for inclusion in the otherName
field of an X.509 Subject Alternative Name and Issuer Alternative field of an X.509 Subject Alternative Name and Issuer Alternative
Name extension that allows a certificate subject to be associated Name extension that allows a certificate subject to be associated
with an Internationalized Email Address. with an Internationalized Email Address.
Status of This Memo Status of This Memo
skipping to change at page 1, line 34 skipping to change at page 1, line 34
Internet-Drafts are working documents of the Internet Engineering Internet-Drafts are working documents of the Internet Engineering
Task Force (IETF). Note that other groups may also distribute Task Force (IETF). Note that other groups may also distribute
working documents as Internet-Drafts. The list of current Internet- working documents as Internet-Drafts. The list of current Internet-
Drafts is at http://datatracker.ietf.org/drafts/current/. Drafts is at http://datatracker.ietf.org/drafts/current/.
Internet-Drafts are draft documents valid for a maximum of six months Internet-Drafts are draft documents valid for a maximum of six months
and may be updated, replaced, or obsoleted by other documents at any and may be updated, replaced, or obsoleted by other documents at any
time. It is inappropriate to use Internet-Drafts as reference time. It is inappropriate to use Internet-Drafts as reference
material or to cite them other than as "work in progress." material or to cite them other than as "work in progress."
This Internet-Draft will expire on December 31, 2017. This Internet-Draft will expire on March 3, 2018.
Copyright Notice Copyright Notice
Copyright (c) 2017 IETF Trust and the persons identified as the Copyright (c) 2017 IETF Trust and the persons identified as the
document authors. All rights reserved. document authors. All rights reserved.
This document is subject to BCP 78 and the IETF Trust's Legal This document is subject to BCP 78 and the IETF Trust's Legal
Provisions Relating to IETF Documents Provisions Relating to IETF Documents
(http://trustee.ietf.org/license-info) in effect on the date of (http://trustee.ietf.org/license-info) in effect on the date of
publication of this document. Please review these documents publication of this document. Please review these documents
skipping to change at page 2, line 30 skipping to change at page 2, line 30
Appendix B. Example of SmtpUTF8Name . . . . . . . . . . . . . . 10 Appendix B. Example of SmtpUTF8Name . . . . . . . . . . . . . . 10
Appendix C. Acknowledgements . . . . . . . . . . . . . . . . . . 11 Appendix C. Acknowledgements . . . . . . . . . . . . . . . . . . 11
Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 11 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 11
1. Introduction 1. Introduction
[RFC5280] defines the rfc822Name subjectAltName name type for [RFC5280] defines the rfc822Name subjectAltName name type for
representing [RFC5321] email addresses. The syntax of rfc822Name is representing [RFC5321] email addresses. The syntax of rfc822Name is
restricted to a subset of US-ASCII characters and thus can't be used restricted to a subset of US-ASCII characters and thus can't be used
to represent Internationalized Email addresses [RFC6531]. This to represent Internationalized Email addresses [RFC6531]. This
document calls for a new otherName variant to represent document defines a new otherName variant to represent
Internationalized Email addresses. In addition this document calls Internationalized Email addresses. In addition this document
for all email address domains in X.509 certificates to conform to requires all email address domains in X.509 certificates to conform
IDNA2008 [RFC5890]. to IDNA2008 [RFC5890].
2. Conventions Used in This Document 2. Conventions Used in This Document
The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
"SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this
document are to be interpreted as described in [RFC2119]. document are to be interpreted as described in [RFC2119].
The formal syntax use the Augmented Backus-Naur Form (ABNF) [RFC5234] The formal syntax uses the Augmented Backus-Naur Form (ABNF)
notation. [RFC5234] notation.
3. Name Definitions 3. Name Definitions
The GeneralName structure is defined in [RFC5280], and supports many The GeneralName structure is defined in [RFC5280], and supports many
different name forms including otherName for extensibility. This different name forms including otherName for extensibility. This
section specifies the SmtpUTF8Name name form of otherName, so that section specifies the SmtpUTF8Name name form of otherName, so that
Internationalized Email addresses can appear in the subjectAltName of Internationalized Email addresses can appear in the subjectAltName of
a certificate, the issuerAltName of a certificate, or anywhere else a certificate, the issuerAltName of a certificate, or anywhere else
that GeneralName is used. that GeneralName is used.
id-on-SmtpUTF8Name OBJECT IDENTIFIER ::= { id-on 9 } id-on-SmtpUTF8Name OBJECT IDENTIFIER ::= { id-on 9 }
SmtpUTF8Name ::= UTF8String (SIZE (1..MAX)) SmtpUTF8Name ::= UTF8String (SIZE (1..MAX))
-- SmtpUTF8Name conforms to Mailbox as specified
-- in Section 3.3 of RFC 6531.
When the subjectAltName (or issuerAltName) extension contains an When the subjectAltName (or issuerAltName) extension contains an
Internationalized Email address with a non-ASCII local-part, the Internationalized Email address with a non-ASCII local-part, the
address MUST be stored in the SmtpUTF8Name name form of otherName. address MUST be stored in the SmtpUTF8Name name form of otherName.
The format of SmtpUTF8Name is defined as the ABNF rule The format of SmtpUTF8Name is defined as the ABNF rule
SmtpUTF8Mailbox. SmtpUTF8Mailbox is a modified version of the SmtpUTF8Mailbox. SmtpUTF8Mailbox is a modified version of the
Internationalized Mailbox which was defined in Section 3.3 of Internationalized Mailbox which was defined in Section 3.3 of
[RFC6531] which was itself derived from SMTP Mailbox from [RFC6531] which was itself derived from SMTP Mailbox from
Section 4.1.2 of [RFC5321]. [RFC6531] defines the following ABNF Section 4.1.2 of [RFC5321]. [RFC6531] defines the following ABNF
rules for Mailbox whose parts are modified for internationalization: rules for Mailbox whose parts are modified for internationalization:
<Local-part>, <Dot-string>, <Quoted- string>, <QcontentSMTP>, <Local-part>, <Dot-string>, <Quoted-string>, <QcontentSMTP>,
<Domain>, and <Atom>. In particular, <Local- part> was updated to <Domain>, and <Atom>. In particular, <Local-part> was updated to
also support UTF8-non-ascii. UTF8-non-ascii was described by also support UTF8-non-ascii. UTF8-non-ascii was described by
Section 3.1 of [RFC6532]. Also, domain was extended to support Section 3.1 of [RFC6532]. Also, domain was extended to support
U-label, as defined in [RFC5890]. U-labels, as defined in [RFC5890].
This document further refines Internationalized [RFC6531] Mailbox This document further refines Internationalized [RFC6531] Mailbox
ABNF rules and calls this SmtpUTF8Mailbox. In SmtpUTF8Mailbox, ABNF rules and calls this SmtpUTF8Mailbox. In SmtpUTF8Mailbox,
labels that include non-ASCII characters MUST be stored in U-label labels that include non-ASCII characters MUST be stored in U-label
(rather than A-label) [RFC5890] form. This restriction removes the (rather than A-label) [RFC5890] form. This restriction removes the
need to determine which label encoding A- or U-label is present in need to determine which label encoding A- or U-label is present in
the Domain. As per Section 2.3.2.1 of [RFC5890], U-label are encoded the Domain. As per Section 2.3.2.1 of [RFC5890], U-label are encoded
as UTF-8 [RFC3629] in Normalization Form C and other properties as UTF-8 [RFC3629] in Normalization Form C and other properties
specified there. In SmtpUTF8Mailbox, domain labels that solely use specified there. In SmtpUTF8Mailbox, domain labels that solely use
ASCII characters (meaning not A- nor U-labels) SHALL use NR-LDH ASCII characters (meaning not A- nor U-labels) SHALL use NR-LDH
restrictions as specified by Section 2.3.1 of [RFC5890] and SHALL be restrictions as specified by Section 2.3.1 of [RFC5890] and SHALL be
restricted to lower case letters. NR-LDH stands for "Non-Reserved restricted to lower case letters. NR-LDH stands for "Non-Reserved
Letters Digits Hyphen" and is the set LDH labels that do not have Letters Digits Hyphen" and is the set of LDH labels that do not have
"--" characters in the third and forth character position, which "--" characters in the third and forth character position, which
excludes "tagged domain names" such as A-labels. Consistent with the excludes "tagged domain names" such as A-labels. Consistent with the
treatment of rfc822Name in [RFC5280], SmtpUTF8Name is an envelope treatment of rfc822Name in [RFC5280], SmtpUTF8Name is an envelope
<Mailbox> and has no phrase (such as a common name) before it, has no <Mailbox> and has no phrase (such as a common name) before it, has no
comment (text surrounded in parentheses) after it, and is not comment (text surrounded in parentheses) after it, and is not
surrounded by "<" and ">". surrounded by "<" and ">".
Due to operational reasons to be described shortly and name Due to operational reasons to be described shortly and name
constraint compatibility reasons described in Section 6, SmtpUTF8Name constraint compatibility reasons described in Section 6, SmtpUTF8Name
subjectAltName MUST only be used when the local part of the email subjectAltName MUST only be used when the local part of the email
skipping to change at page 4, line 25 skipping to change at page 4, line 25
conversion errors between alternate forms. This applies to conversion errors between alternate forms. This applies to
SmtpUTF8Name and rfc822Name in subjectAltName, issuerAltName and SmtpUTF8Name and rfc822Name in subjectAltName, issuerAltName and
anywhere else that these are used. anywhere else that these are used.
5. Matching of Internationalized Email Addresses in X.509 certificates 5. Matching of Internationalized Email Addresses in X.509 certificates
In equivalence comparison with SmtpUTF8Name, there may be some setup In equivalence comparison with SmtpUTF8Name, there may be some setup
work on one or both inputs depending of whether the input is already work on one or both inputs depending of whether the input is already
in comparison form. Comparing SmtpUTF8Names consists of a domain in comparison form. Comparing SmtpUTF8Names consists of a domain
part step and a local-part step. The comparison form for local-parts part step and a local-part step. The comparison form for local-parts
always is UTF-8. The comparison form for domain parts depends on is always UTF-8. The comparison form for domain parts depends on
context. While some contexts such as certificate path validation in context. While some contexts such as certificate path validation in
[RFC5280] specify transforming domain to A-label (Section 7.5 and 7.2 [RFC5280] specify transforming domain to A-label (Section 7.5 and 7.2
in [RFC5280] as updated by [ID-lamps-rfc5280-i18n-update]), this in [RFC5280] as updated by [ID-lamps-rfc5280-i18n-update]), this
document RECOMMENDS transforming to UTF-8 U-label instead. This document RECOMMENDS transforming to UTF-8 U-label instead. This
reduces the likelihood of errors by reducing conversions as more reduces the likelihood of errors by reducing conversions as more
implementations natively support U- label domains. implementations natively support U-label domains.
Comparison of two SmtpUTF8Name is straightforward with no setup work Comparison of two SmtpUTF8Name is straightforward with no setup work
needed. They are considered equivalent if there is an exact octet- needed. They are considered equivalent if there is an exact octet-
for-octet match. Comparison with email addresses such as for-octet match. Comparison with email addresses such as
Internationalized email address or rfc822Name requires additional Internationalized email address or rfc822Name requires additional
setup steps for domain part and local-part. The initial preparation setup steps for domain part and local-part. The initial preparation
for the email addresses is to remove any phrases or comments, as well for the email addresses is to remove any phrases or comments, as well
as "<" and ">" present. This document calls for comparison of domain as "<" and ">" present. This document calls for comparison of domain
labels that include non-ASCII characters be tranformed to U-label if labels that include non-ASCII characters be transformed to U-label if
not already in that form. The first step is to detect use of the not already in that form. The first step is to detect use of the
A-label by using Section 5.1 of [RFC5891]. Next if necessary, A-label by using Section 5.1 of [RFC5891]. Next if necessary,
transform any A-labels to U-labels Unicode as specified in transform any A-labels to U-labels Unicode as specified in
Section 5.2 of [RFC5891]. Finally if necessary convert the Unicode Section 5.2 of [RFC5891]. Finally if necessary convert the Unicode
to UTF-8 as specified in Section 3 of [RFC3629]. For ASCII NR-LDH to UTF-8 as specified in Section 3 of [RFC3629]. For ASCII NR-LDH
labels, upper case letters are converted to lower case letters. In labels, upper case letters are converted to lower case letters. In
setup for SmtpUTF8Mailbox, the email address local-part MUST conform setup for SmtpUTF8Mailbox, the email address local-part MUST conform
to the requirements of [RFC6530] and [RFC6531], including being a to the requirements of [RFC6530] and [RFC6531], including being a
string in UTF-8 form. In particular, the local-part MUST NOT be string in UTF-8 form. In particular, the local-part MUST NOT be
transformed in any way, such as by doing case folding or transformed in any way, such as by doing case folding or
skipping to change at page 7, line 39 skipping to change at page 7, line 39
+-------------------------------------------------------------------+ +-------------------------------------------------------------------+
Name constraints with SmtpUTF8Name and rfc822Name Name constraints with SmtpUTF8Name and rfc822Name
Figure 1 Figure 1
7. Security Considerations 7. Security Considerations
Use of SmtpUTF8Name for certificate subjectAltName (and Use of SmtpUTF8Name for certificate subjectAltName (and
issuerAltName) will incur many of the same security considerations as issuerAltName) will incur many of the same security considerations as
in Section 8 in [RFC5280] , but introduces a new issue by permitting in Section 8 in [RFC5280], but introduces a new issue by permitting
non-ASCII characters in the email address local-part. This issue, as non-ASCII characters in the email address local-part. This issue, as
mentioned in Section 4.4 of [RFC5890] and in Section 4 of [RFC6532], mentioned in Section 4.4 of [RFC5890] and in Section 4 of [RFC6532],
is that use of Unicode introduces the risk of visually similar and is that use of Unicode introduces the risk of visually similar and
identical characters which can be exploited to deceive the recipient. identical characters which can be exploited to deceive the recipient.
The former document references some means to mitigate against these The former document references some means to mitigate against these
attacks. attacks.
8. IANA Considerations 8. IANA Considerations
In Section 3 and the ASN.1 module identifier defined in Appendix A. In Section 3 and the ASN.1 module identifier defined in Appendix A.
skipping to change at page 8, line 22 skipping to change at page 8, line 22
9.1. Normative References 9.1. Normative References
[ID-lamps-rfc5280-i18n-update] [ID-lamps-rfc5280-i18n-update]
Housley, R., "Internationalization Updates to RFC 5280", Housley, R., "Internationalization Updates to RFC 5280",
June 2017, <https://datatracker.ietf.org/doc/draft- June 2017, <https://datatracker.ietf.org/doc/draft-
housley-rfc5280-i18n-update/>. housley-rfc5280-i18n-update/>.
[RFC2119] Bradner, S., "Key words for use in RFCs to Indicate [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate
Requirement Levels", BCP 14, RFC 2119, Requirement Levels", BCP 14, RFC 2119,
DOI 10.17487/RFC2119, March 1997, DOI 10.17487/RFC2119, March 1997, <https://www.rfc-
<http://www.rfc-editor.org/info/rfc2119>. editor.org/info/rfc2119>.
[RFC3629] Yergeau, F., "UTF-8, a transformation format of ISO [RFC3629] Yergeau, F., "UTF-8, a transformation format of ISO
10646", STD 63, RFC 3629, DOI 10.17487/RFC3629, November 10646", STD 63, RFC 3629, DOI 10.17487/RFC3629, November
2003, <http://www.rfc-editor.org/info/rfc3629>. 2003, <https://www.rfc-editor.org/info/rfc3629>.
[RFC5234] Crocker, D., Ed. and P. Overell, "Augmented BNF for Syntax [RFC5234] Crocker, D., Ed. and P. Overell, "Augmented BNF for Syntax
Specifications: ABNF", STD 68, RFC 5234, Specifications: ABNF", STD 68, RFC 5234,
DOI 10.17487/RFC5234, January 2008, DOI 10.17487/RFC5234, January 2008, <https://www.rfc-
<http://www.rfc-editor.org/info/rfc5234>. editor.org/info/rfc5234>.
[RFC5280] Cooper, D., Santesson, S., Farrell, S., Boeyen, S., [RFC5280] Cooper, D., Santesson, S., Farrell, S., Boeyen, S.,
Housley, R., and W. Polk, "Internet X.509 Public Key Housley, R., and W. Polk, "Internet X.509 Public Key
Infrastructure Certificate and Certificate Revocation List Infrastructure Certificate and Certificate Revocation List
(CRL) Profile", RFC 5280, DOI 10.17487/RFC5280, May 2008, (CRL) Profile", RFC 5280, DOI 10.17487/RFC5280, May 2008,
<http://www.rfc-editor.org/info/rfc5280>. <https://www.rfc-editor.org/info/rfc5280>.
[RFC5321] Klensin, J., "Simple Mail Transfer Protocol", RFC 5321, [RFC5321] Klensin, J., "Simple Mail Transfer Protocol", RFC 5321,
DOI 10.17487/RFC5321, October 2008, DOI 10.17487/RFC5321, October 2008, <https://www.rfc-
<http://www.rfc-editor.org/info/rfc5321>. editor.org/info/rfc5321>.
[RFC5890] Klensin, J., "Internationalized Domain Names for [RFC5890] Klensin, J., "Internationalized Domain Names for
Applications (IDNA): Definitions and Document Framework", Applications (IDNA): Definitions and Document Framework",
RFC 5890, DOI 10.17487/RFC5890, August 2010, RFC 5890, DOI 10.17487/RFC5890, August 2010,
<http://www.rfc-editor.org/info/rfc5890>. <https://www.rfc-editor.org/info/rfc5890>.
[RFC5891] Klensin, J., "Internationalized Domain Names in [RFC5891] Klensin, J., "Internationalized Domain Names in
Applications (IDNA): Protocol", RFC 5891, Applications (IDNA): Protocol", RFC 5891,
DOI 10.17487/RFC5891, August 2010, DOI 10.17487/RFC5891, August 2010, <https://www.rfc-
<http://www.rfc-editor.org/info/rfc5891>. editor.org/info/rfc5891>.
[RFC6530] Klensin, J. and Y. Ko, "Overview and Framework for [RFC6530] Klensin, J. and Y. Ko, "Overview and Framework for
Internationalized Email", RFC 6530, DOI 10.17487/RFC6530, Internationalized Email", RFC 6530, DOI 10.17487/RFC6530,
February 2012, <http://www.rfc-editor.org/info/rfc6530>. February 2012, <https://www.rfc-editor.org/info/rfc6530>.
[RFC6531] Yao, J. and W. Mao, "SMTP Extension for Internationalized [RFC6531] Yao, J. and W. Mao, "SMTP Extension for Internationalized
Email", RFC 6531, DOI 10.17487/RFC6531, February 2012, Email", RFC 6531, DOI 10.17487/RFC6531, February 2012,
<http://www.rfc-editor.org/info/rfc6531>. <https://www.rfc-editor.org/info/rfc6531>.
[RFC6532] Yang, A., Steele, S., and N. Freed, "Internationalized [RFC6532] Yang, A., Steele, S., and N. Freed, "Internationalized
Email Headers", RFC 6532, DOI 10.17487/RFC6532, February Email Headers", RFC 6532, DOI 10.17487/RFC6532, February
2012, <http://www.rfc-editor.org/info/rfc6532>. 2012, <https://www.rfc-editor.org/info/rfc6532>.
9.2. Informative References 9.2. Informative References
[RFC5912] Hoffman, P. and J. Schaad, "New ASN.1 Modules for the [RFC5912] Hoffman, P. and J. Schaad, "New ASN.1 Modules for the
Public Key Infrastructure Using X.509 (PKIX)", RFC 5912, Public Key Infrastructure Using X.509 (PKIX)", RFC 5912,
DOI 10.17487/RFC5912, June 2010, DOI 10.17487/RFC5912, June 2010, <https://www.rfc-
<http://www.rfc-editor.org/info/rfc5912>. editor.org/info/rfc5912>.
Appendix A. ASN.1 Module Appendix A. ASN.1 Module
The following ASN.1 module normatively specifies the SmtpUTF8Name The following ASN.1 module normatively specifies the SmtpUTF8Name
structure. This specification uses the ASN.1 definitions from structure. This specification uses the ASN.1 definitions from
[RFC5912] with the 2002 ASN.1 notation used in that document. [RFC5912] with the 2002 ASN.1 notation used in that document.
[RFC5912] updates normative documents using older ASN.1 notation. [RFC5912] updates normative documents using older ASN.1 notation.
LAMPS-EaiAddresses-2016 LAMPS-EaiAddresses-2016
{ iso(1) identified-organization(3) dod(6) { iso(1) identified-organization(3) dod(6)
 End of changes. 24 change blocks. 
34 lines changed or deleted 36 lines changed or added

This html diff was produced by rfcdiff 1.45. The latest version is available from http://tools.ietf.org/tools/rfcdiff/