draft-ietf-idn-race-01.txt   draft-ietf-idn-race-02.txt 
Internet Draft Paul Hoffman Internet Draft Paul Hoffman
draft-ietf-idn-race-01.txt IMC & VPNC draft-ietf-idn-race-02.txt IMC & VPNC
August 31, 2000 October 16, 2000
Expires in six months Expires in six months
RACE: Row-based ASCII Compatible Encoding for IDN RACE: Row-based ASCII Compatible Encoding for IDN
Status of this memo Status of this memo
This document is an Internet-Draft and is in full conformance with all This document is an Internet-Draft and is in full conformance with all
provisions of Section 10 of RFC2026. provisions of Section 10 of RFC2026.
Internet-Drafts are working documents of the Internet Engineering Task Internet-Drafts are working documents of the Internet Engineering Task
skipping to change at line 126 skipping to change at line 126
- If the characters in the input all come from the same row, up to 35 - If the characters in the input all come from the same row, up to 35
characters per name part are allowed. characters per name part are allowed.
- If the characters in the input come from two or more rows, neither of - If the characters in the input come from two or more rows, neither of
which is row 0, up to 17 characters per name part are allowed. which is row 0, up to 17 characters per name part are allowed.
- If the characters in the input come from two rows, one of which is row - If the characters in the input come from two rows, one of which is row
0, between 17 and 33 characters per name part are allowed. 0, between 17 and 33 characters per name part are allowed.
1.3 Open issues
Is it OK in 2.3.2 to say "0 MAY be converted to O and that 1 MAY be
converted to l"?
Do we want to leave the unused characters 0, 1, 8, and 9 "reserved" in
Base32 instead of making them prohibited now? This allows creative
expansion in the future.
2. Host Part Transformation 2. Host Part Transformation
According to [STD13], host parts must be case-insensitive, start and According to [STD13], host parts must be case-insensitive, start and
end with a letter or digit, and contain only letters, digits, and the end with a letter or digit, and contain only letters, digits, and the
hyphen character ("-"). This, of course, excludes any internationalized hyphen character ("-"). This, of course, excludes any internationalized
characters, as well as many other characters in the ASCII character characters, as well as many other characters in the ASCII character
repertoire. Further, domain name parts must be 63 octets or shorter in repertoire. Further, domain name parts must be 63 octets or shorter in
length. length.
2.1 Name tagging 2.1 Name tagging
skipping to change at line 177 skipping to change at line 168
after converting the post-converted name part back to an after converting the post-converted name part back to an
internationalized name part, might reject the host name if it contains internationalized name part, might reject the host name if it contains
illegal characters. illegal characters.
2.2 Converting an internationalized name to an ACE name part 2.2 Converting an internationalized name to an ACE name part
To convert a string of internationalized characters into an ACE name To convert a string of internationalized characters into an ACE name
part, the following steps MUST be preformed in the exact order of the part, the following steps MUST be preformed in the exact order of the
subsections given here. subsections given here.
Note that if any checking for prohibited name parts (such as ones that If a name part consists exclusively of characters that conform to the
are already legal DNS name parts), prohibited characters, case-folding, host name requirements in [STD13], the name MUST NOT be converted to
or canonicalization is to be done, it MUST be done before doing the RACE. That is, a name part that can be represented without RACE MUST NOT
conversion to an ACE name part. (Previous versions of this draft be encoded using RACE. This absolute requirement prevents there from
specified these steps.) being two different encodings for a single DNS host name.
If any checking for prohibited name parts (such as ones that are
prohibited characters, case-folding, or canonicalization) is to be done,
it MUST be done before doing the conversion to an ACE name part.
The input name string consists of characters from the ISO 10646 The input name string consists of characters from the ISO 10646
character set in big-endian UTF-16 encoding. This is the pre-converted character set in big-endian UTF-16 encoding. This is the pre-converted
string. string.
Characters outside the first plane of characters (that is, outside the Characters outside the first plane of characters (that is, outside the
first 0xFFFF characters) MUST be represented using surrogates, as first 0xFFFF characters) MUST be represented using surrogates, as
described in the UTF-16 description in ISO 10646. described in the UTF-16 description in ISO 10646.
2.2.1 Compress the pre-converted string 2.2.1 Compress the pre-converted string
skipping to change at line 506 skipping to change at line 501
A. Acknowledgements A. Acknowledgements
Mark Davis contributed many ideas to the initial draft of this document. Mark Davis contributed many ideas to the initial draft of this document.
Graham Klyne and Martin Duerst offered technical comments on the Graham Klyne and Martin Duerst offered technical comments on the
algorithms used. GIM Gyeongseog and Pongtorn Jentaweepornkul helped fix algorithms used. GIM Gyeongseog and Pongtorn Jentaweepornkul helped fix
technical errors in early drafts. technical errors in early drafts.
Base32 is quite obviously inspired by the tried-and-true Base64 Base32 is quite obviously inspired by the tried-and-true Base64
Content-Transfer-Encoding from MIME. Content-Transfer-Encoding from MIME.
B. Changes from Versions -00 to -01 of this Draft B. Changes from Versions -01 to -02 of this Draft
Throughout: Changed "ra--" to "bq--".
Throughout: Fixed minor typos.
1: Fixed the lengths allowed.
1.3: Fixed the lengths allowed.
2.1: Added note about changing the actual prefix in future versions of
the draft.
2.4.1: Added first sentence. Changed steps that talked about characters Removed section 1.3 (open issues) because no one said anything
to instead use "pair of octets". Fixed problem with the steps which in support of either proposal.
caused bad output in some cases.
A: Added thanks to GIM Gyeongseog and Pongtorn Jentaweepornkul. Added the prohibition on encoding a string that is already in
STD13 format in section 2.2.
C. IANA Considerations C. IANA Considerations
There are no IANA considerations in this document. There are no IANA considerations in this document.
D. Author Contact Information D. Author Contact Information
Paul Hoffman Paul Hoffman
Internet Mail Consortium and VPN Consortium Internet Mail Consortium and VPN Consortium
127 Segre Place 127 Segre Place
 End of changes. 6 change blocks. 
32 lines changed or deleted 16 lines changed or added

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