< draft-ietf-idnabis-defs-12.txt   draft-ietf-idnabis-defs-13.txt >
Network Working Group J. Klensin Network Working Group J. Klensin
Internet-Draft October 25, 2009 Internet-Draft January 7, 2010
Obsoletes: 3490 (if approved) Obsoletes: 3490 (if approved)
Intended status: Standards Track Intended status: Standards Track
Expires: April 28, 2010 Expires: July 11, 2010
Internationalized Domain Names for Applications (IDNA): Definitions and Internationalized Domain Names for Applications (IDNA): Definitions and
Document Framework Document Framework
draft-ietf-idnabis-defs-12.txt draft-ietf-idnabis-defs-13.txt
Abstract
This document is one of a collection that, together, describe the
protocol and usage context for a revision of Internationalized Domain
Names for Applications (IDNA), superseding the earlier version. It
describes the document collection and provides definitions and other
material that are common to the set.
Status of this Memo Status of this Memo
This Internet-Draft is submitted to IETF in full conformance with the This Internet-Draft is submitted to IETF in full conformance with the
provisions of BCP 78 and BCP 79. This document may contain material provisions of BCP 78 and BCP 79.
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 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.
Internet-Drafts are working documents of the Internet Engineering Internet-Drafts are working documents of the Internet Engineering
Task Force (IETF), its areas, and its working groups. Note that Task Force (IETF), its areas, and its working groups. Note that
other groups may also distribute working documents as Internet- other groups may also distribute working documents as Internet-
Drafts. Drafts.
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."
The list of current Internet-Drafts can be accessed at The list of current Internet-Drafts can be accessed at
http://www.ietf.org/ietf/1id-abstracts.txt. http://www.ietf.org/ietf/1id-abstracts.txt.
The list of Internet-Draft Shadow Directories can be accessed at The list of Internet-Draft Shadow Directories can be accessed at
http://www.ietf.org/shadow.html. http://www.ietf.org/shadow.html.
This Internet-Draft will expire on April 28, 2010. This Internet-Draft will expire on July 11, 2010.
Copyright Notice Copyright Notice
Copyright (c) 2009 IETF Trust and the persons identified as the Copyright (c) 2010 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 in effect on the date of Provisions Relating to IETF Documents
publication of this document (http://trustee.ietf.org/license-info). (http://trustee.ietf.org/license-info) in effect on the date of
Please review these documents carefully, as they describe your rights publication of this document. Please review these documents
and restrictions with respect to this document. carefully, as they describe your rights and restrictions with respect
to this document. Code Components extracted from this document must
Abstract 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 BSD License.
This document is one of a collection that, together, describe the This document may contain material from IETF Documents or IETF
protocol and usage context for a revision of Internationalized Domain Contributions published or made publicly available before November
Names for Applications (IDNA), superseding the earlier version. It 10, 2008. The person(s) controlling the copyright in some of this
describes the document collection and provides definitions and other material may not have granted the IETF Trust the right to allow
material that are common to the set. 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 Table of Contents
1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . 4 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . 4
1.1. IDNA2008 . . . . . . . . . . . . . . . . . . . . . . . . . 4 1.1. IDNA2008 . . . . . . . . . . . . . . . . . . . . . . . . . 4
1.1.1. Audiences . . . . . . . . . . . . . . . . . . . . . . 4 1.1.1. Audiences . . . . . . . . . . . . . . . . . . . . . . 4
1.1.2. Normative Language . . . . . . . . . . . . . . . . . . 5 1.1.2. Normative Language . . . . . . . . . . . . . . . . . . 5
1.2. Discussion Forum . . . . . . . . . . . . . . . . . . . . . 5 1.2. Discussion Forum . . . . . . . . . . . . . . . . . . . . . 5
1.3. Roadmap of IDNA2008 Documents . . . . . . . . . . . . . . 5 1.3. Roadmap of IDNA2008 Documents . . . . . . . . . . . . . . 5
2. Definitions and Terminology . . . . . . . . . . . . . . . . . 6 2. Definitions and Terminology . . . . . . . . . . . . . . . . . 6
skipping to change at page 3, line 4 skipping to change at page 3, line 38
4. Security Considerations . . . . . . . . . . . . . . . . . . . 16 4. Security Considerations . . . . . . . . . . . . . . . . . . . 16
4.1. General Issues . . . . . . . . . . . . . . . . . . . . . . 16 4.1. General Issues . . . . . . . . . . . . . . . . . . . . . . 16
4.2. U-label Lengths . . . . . . . . . . . . . . . . . . . . . 16 4.2. U-label Lengths . . . . . . . . . . . . . . . . . . . . . 16
4.3. Local Character Set Issues . . . . . . . . . . . . . . . . 17 4.3. Local Character Set Issues . . . . . . . . . . . . . . . . 17
4.4. Visually Similar Characters . . . . . . . . . . . . . . . 17 4.4. Visually Similar Characters . . . . . . . . . . . . . . . 17
4.5. IDNA Lookup, Registration, and the Base DNS 4.5. IDNA Lookup, Registration, and the Base DNS
Specifications . . . . . . . . . . . . . . . . . . . . . . 18 Specifications . . . . . . . . . . . . . . . . . . . . . . 18
4.6. Legacy IDN Label Strings . . . . . . . . . . . . . . . . . 18 4.6. Legacy IDN Label Strings . . . . . . . . . . . . . . . . . 18
4.7. Security Differences from IDNA2003 . . . . . . . . . . . . 19 4.7. Security Differences from IDNA2003 . . . . . . . . . . . . 19
4.8. Summary . . . . . . . . . . . . . . . . . . . . . . . . . 19 4.8. Summary . . . . . . . . . . . . . . . . . . . . . . . . . 19
5. Acknowledgments . . . . . . . . . . . . . . . . . . . . . . . 20 5. Acknowledgments . . . . . . . . . . . . . . . . . . . . . . . 20
6. References . . . . . . . . . . . . . . . . . . . . . . . . . . 20 6. References . . . . . . . . . . . . . . . . . . . . . . . . . . 20
6.1. Normative References . . . . . . . . . . . . . . . . . . . 20 6.1. Normative References . . . . . . . . . . . . . . . . . . . 20
6.2. Informative References . . . . . . . . . . . . . . . . . . 21 6.2. Informative References . . . . . . . . . . . . . . . . . . 21
Appendix A. Change Log . . . . . . . . . . . . . . . . . . . . . 22 Appendix A. Change Log . . . . . . . . . . . . . . . . . . . . . 22
A.1. Version -00 . . . . . . . . . . . . . . . . . . . . . . . 23 A.1. Version -00 . . . . . . . . . . . . . . . . . . . . . . . 23
A.2. Version -01 . . . . . . . . . . . . . . . . . . . . . . . 23 A.2. Version -01 . . . . . . . . . . . . . . . . . . . . . . . 23
A.3. Version -02 . . . . . . . . . . . . . . . . . . . . . . . 23 A.3. Version -02 . . . . . . . . . . . . . . . . . . . . . . . 23
A.4. Version -03 . . . . . . . . . . . . . . . . . . . . . . . 23 A.4. Version -03 . . . . . . . . . . . . . . . . . . . . . . . 23
A.5. Version -04 . . . . . . . . . . . . . . . . . . . . . . . 23 A.5. Version -04 . . . . . . . . . . . . . . . . . . . . . . . 23
A.6. Version -05 . . . . . . . . . . . . . . . . . . . . . . . 24 A.6. Version -05 . . . . . . . . . . . . . . . . . . . . . . . 24
A.7. Version -06 . . . . . . . . . . . . . . . . . . . . . . . 24 A.7. Version -06 . . . . . . . . . . . . . . . . . . . . . . . 24
A.8. Version -07 . . . . . . . . . . . . . . . . . . . . . . . 24 A.8. Version -07 . . . . . . . . . . . . . . . . . . . . . . . 24
A.9. Version -08 . . . . . . . . . . . . . . . . . . . . . . . 24 A.9. Version -08 . . . . . . . . . . . . . . . . . . . . . . . 24
A.10. Version -09 . . . . . . . . . . . . . . . . . . . . . . . 25 A.10. Version -09 . . . . . . . . . . . . . . . . . . . . . . . 25
A.11. Version -10 . . . . . . . . . . . . . . . . . . . . . . . 25 A.11. Version -10 . . . . . . . . . . . . . . . . . . . . . . . 25
A.12. Version -11 . . . . . . . . . . . . . . . . . . . . . . . 25 A.12. Version -11 . . . . . . . . . . . . . . . . . . . . . . . 25
A.13. Version -12 . . . . . . . . . . . . . . . . . . . . . . . 26 A.13. Version -12 . . . . . . . . . . . . . . . . . . . . . . . 26
A.14. Version -13 . . . . . . . . . . . . . . . . . . . . . . . 26
Author's Address . . . . . . . . . . . . . . . . . . . . . . . . . 26 Author's Address . . . . . . . . . . . . . . . . . . . . . . . . . 26
1. Introduction 1. Introduction
1.1. IDNA2008 1.1. IDNA2008
This document is one of a collection that, together, describe the This document is one of a collection that, together, describe the
protocol and usage context for a revision of Internationalized Domain protocol and usage context for a revision of Internationalized Domain
Names for Applications (IDNA) that was largely completed in 2008, Names for Applications (IDNA) that was largely completed in 2008,
known within the series and elsewhere as IDNA2008. The series known within the series and elsewhere as IDNA2008. The series
skipping to change at page 5, line 48 skipping to change at page 6, line 48
replaces RFC 3490. It is referred to informally in other replaces RFC 3490. It is referred to informally in other
documents in the set as "Protocol". documents in the set as "Protocol".
o A document [IDNA2008-Bidi] that specifies special rules ("Bidi") o A document [IDNA2008-Bidi] that specifies special rules ("Bidi")
for labels that contain characters that are written from right to for labels that contain characters that are written from right to
left. left.
o A specification [IDNA2008-Tables] of the categories and rules that o A specification [IDNA2008-Tables] of the categories and rules that
identify the code points allowed in a label written in native identify the code points allowed in a label written in native
character form (defined more specifically as a "U-label" in character form (defined more specifically as a "U-label" in
Section 2.3.2.1 below), based on Unicode 5.1 [Unicode51] code Section 2.3.2.1 below), based on Unicode 5.2 [Unicode52] code
point assignments and additional rules unique to IDNA2008. The point assignments and additional rules unique to IDNA2008. The
Unicode-based rules are expected to be stable across Unicode Unicode-based rules are expected to be stable across Unicode
updates and hence independent of Unicode versions. That updates and hence independent of Unicode versions. That
specification obsoletes RFC 3941 and IDN use of the tables to specification obsoletes RFC 3941 and IDN use of the tables to
which it refers. It is referred to informally in other documents which it refers. It is referred to informally in other documents
in the set as "Tables". in the set as "Tables".
o A document [IDNA2008-Mapping] that discusses the issue of mapping o A document [IDNA2008-Mapping] that discusses the issue of mapping
characters into other characters and that provides guidance for characters into other characters and that provides guidance for
doing so when that is appropriate. This document provides advice; doing so when that is appropriate. This document provides advice;
it is not a required part of IDNA. it is not a required part of IDNA.
2. Definitions and Terminology 2. Definitions and Terminology
2.1. Characters and Character Sets 2.1. Characters and Character Sets
A code point is an integer value in the codespace of a coded A code point is an integer value in the codespace of a coded
character set. In Unicode, these are integers from 0 to 0x10FFFF. character set. In Unicode, these are integers from 0 to 0x10FFFF.
Unicode [Unicode51] is a coded character set with about 100,000 Unicode [Unicode52] is a coded character set with about 100,000
characters assigned to code points as of version 5.1. A single characters assigned to code points as of version 5.1. A single
Unicode code point is denoted in these documents by "U+" followed by Unicode code point is denoted in these documents by "U+" followed by
four to six hexadecimal digits, while a range of Unicode code points four to six hexadecimal digits, while a range of Unicode code points
is denoted by two four to six digit hexadecimal numbers separated by is denoted by two four to six digit hexadecimal numbers separated by
"..", with no prefixes. "..", with no prefixes.
ASCII means US-ASCII [ASCII], a coded character set containing 128 ASCII means US-ASCII [ASCII], a coded character set containing 128
characters associated with code points in the range 0000..007F. characters associated with code points in the range 0000..007F.
Unicode is a superset of ASCII and may be thought of as a Unicode is a superset of ASCII and may be thought of as a
generalization of it; it includes all the ASCII characters and generalization of it; it includes all the ASCII characters and
associates them with equivalent code points. associates them with equivalent code points.
"Letters" are, informally, generalizations from the ASCII and common- "Letters" are, informally, generalizations from the ASCII and common-
sense understanding of that term, i.e., characters that are used to sense understanding of that term, i.e., characters that are used to
write text that are not digits, symbols, or punctuation. Formally, write text that are not digits, symbols, or punctuation. Formally,
they are characters with a Unicode General Category value starting in they are characters with a Unicode General Category value starting in
"L" (see Section 4.5 of [Unicode51]). "L" (see Section 4.5 of [Unicode52]).
2.2. DNS-related Terminology 2.2. DNS-related Terminology
When discussing the DNS, this document generally assumes the When discussing the DNS, this document generally assumes the
terminology used in the DNS specifications [RFC1034] [RFC1035] as terminology used in the DNS specifications [RFC1034] [RFC1035] as
modified by [RFC1123] and [RFC2181]. The term "lookup" is used to modified by [RFC1123] and [RFC2181]. The term "lookup" is used to
describe the combination of operations performed by the IDNA2008 describe the combination of operations performed by the IDNA2008
protocol and those actually performed by a DNS resolver. The process protocol and those actually performed by a DNS resolver. The process
of placing an entry into the DNS is referred to as "registration", of placing an entry into the DNS is referred to as "registration",
similar to common contemporary usage in other contexts. similar to common contemporary usage in other contexts.
skipping to change at page 8, line 33 skipping to change at page 9, line 33
Punycode algorithm RFC 3492 [RFC3492] and those that are not (see Punycode algorithm RFC 3492 [RFC3492] and those that are not (see
below). The XN-labels that are valid Punycode output are known as below). The XN-labels that are valid Punycode output are known as
"A-labels" if they also meet the other criteria for IDNA-validity "A-labels" if they also meet the other criteria for IDNA-validity
described below. Because LDH-labels (and, indeed, any DNS label) described below. Because LDH-labels (and, indeed, any DNS label)
must not be more than 63 octets in length, the Punycode-algorithm- must not be more than 63 octets in length, the Punycode-algorithm-
derived portion of XN-labels is limited to no more than 59 ASCII derived portion of XN-labels is limited to no more than 59 ASCII
characters. Non-reserved LDH labels are the set of valid LDH labels characters. Non-reserved LDH labels are the set of valid LDH labels
that do not have "--" in the third and fourth positions. that do not have "--" in the third and fourth positions.
A consequence of the restrictions on valid characters in the native A consequence of the restrictions on valid characters in the native
Unicode character form (see U-labels turns out to be that mixed-case Unicode character form (see U-labels) turns out to be that mixed-case
annotation, of the sort outlined in RFC 3492 Appendix A [RFC3492], is annotation, of the sort outlined in RFC 3492 Appendix A [RFC3492], is
never useful. Therefore, since a valid A-label is the result of never useful. Therefore, since a valid A-label is the result of
Punycode encoding of a U-label, A-labels should be produced only in Punycode encoding of a U-label, A-labels should be produced only in
lower case, despite matching other (mixed- or upper-case) potential lower case, despite matching other (mixed- or upper-case) potential
labels in the DNS. labels in the DNS.
Some labels that are prefixed with "xn--" may not be the output of Some labels that are prefixed with "xn--" may not be the output of
the Punycode algorithm, or may fail the other tests outlined below or the Punycode algorithm, or may fail the other tests outlined below or
violate other IDNA restrictions and thus are also not valid IDNA- violate other IDNA restrictions and thus are also not valid IDNA-
labels. They are called "Fake A-Labels" for convenience. labels. They are called "Fake A-Labels" for convenience.
skipping to change at page 20, line 48 skipping to change at page 21, line 48
and Support", STD 3, RFC 1123, October 1989. and Support", STD 3, RFC 1123, October 1989.
[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, March 1997. Requirement Levels", BCP 14, RFC 2119, March 1997.
[Unicode-UAX15] [Unicode-UAX15]
The Unicode Consortium, "Unicode Standard Annex #15: The Unicode Consortium, "Unicode Standard Annex #15:
Unicode Normalization Forms", March 2008, Unicode Normalization Forms", March 2008,
<http://www.unicode.org/reports/tr15/>. <http://www.unicode.org/reports/tr15/>.
[Unicode51] [Unicode52]
The Unicode Consortium, "The Unicode Standard, Version The Unicode Consortium, "The Unicode Standard, Version
5.1.0", 2008. 5.2.0", 2009.
defined by: The Unicode Standard, Version 5.0, Boston, MA, defined by: The Unicode Standard, Version 5.0, Boston, MA,
Addison-Wesley, 2007, ISBN 0-321-48091-0, as amended by Addison-Wesley, 2007, ISBN 0-321-48091-0, as amended by
Unicode 5.1.0 Unicode 5.1.0 (2008)
(http://www.unicode.org/versions/Unicode5.1.0/). (http://www.unicode.org/versions/Unicode5.1.0/) and
Unicode 5.2.0 (2009)
(http://www.unicode.org/versions/Unicode5.2.0/).
6.2. Informative References 6.2. Informative References
[IDNA2008-Bidi] [IDNA2008-Bidi]
Alvestrand, H. and C. Karp, "An updated IDNA criterion for Alvestrand, H. and C. Karp, "An updated IDNA criterion for
right to left scripts", August 2009, <https:// right to left scripts", August 2009, <https://
datatracker.ietf.org/drafts/draft-ietf-idnabis-bidi/>. datatracker.ietf.org/drafts/draft-ietf-idnabis-bidi/>.
[IDNA2008-Mapping] [IDNA2008-Mapping]
Resnick, P. and P. Hoffman, "Mapping Characters in IDNA", Resnick, P. and P. Hoffman, "Mapping Characters in IDNA",
skipping to change at page 26, line 36 skipping to change at page 27, line 36
o Made another round of patches to the case-sensitivity of A-labels. o Made another round of patches to the case-sensitivity of A-labels.
(James Mitchell, 20091014) (James Mitchell, 20091014)
o Removed the "selected protocols" handwaving from Section 2.3.2.1. o Removed the "selected protocols" handwaving from Section 2.3.2.1.
(Peter Saint-Andre, 20091019) (Peter Saint-Andre, 20091019)
o Some minor corrections requested by Suresh Krishnan in the Gen-ART o Some minor corrections requested by Suresh Krishnan in the Gen-ART
review of 20091016. review of 20091016.
A.14. Version -13
Version incorporating IESG post-Last-Call review and evaluation
comments.
o Editorial and reference corrections, including bringing Unicode
reference to 5.2.
Author's Address Author's Address
John C Klensin John C Klensin
1770 Massachusetts Ave, Ste 322 1770 Massachusetts Ave, Ste 322
Cambridge, MA 02140 Cambridge, MA 02140
USA USA
Phone: +1 617 245 1457 Phone: +1 617 245 1457
Email: john+ietf@jck.com Email: john+ietf@jck.com
 End of changes. 18 change blocks. 
36 lines changed or deleted 52 lines changed or added

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