Subject: Re: [idn] ToUnicode output can be longer than input

From: "Adam M. Costello" <[email-masked]>
Date: Tue, 29 Apr 2003 22:47:04 +0000

Dan Oscarsson <[email-masked]> wrote:

> > The IDNA spec disagrees.  It says:
> >
> >    This document defines internationalized domain names (IDNs)...
> >
> >    If an application wants to use non-ASCII characters in domain
> >    names, IDNA is the only currently-defined option.
> >
> >    Applications can also define protocols and interfaces that
> >    support IDNs directly using non-ASCII representations.  IDNA does
> >    not prescribe any particular representation for new protocols,
> >    but it still defines which names are valid and how they are
> >    compared.
>
> Maybe IDNs, as that is a construct of IDNA, but not domain names in
> general.  Domain names in an international context is not defined by
> IDNA,

The *representation* of domain names in an international context is not
defined by IDNA, but IDNA does define a mechanism for deciding which
names are valid in that context, and does define a way to compare names
in that context.

The IETF could produce a second set of definitions in the future, but
until that happens, the IDNA definitions provide the only standard way
to use non-ASCII characters in domain names, even in an international
context.

> I can see no reason to limit the international world due to limits of
> ASCII and the solution selected by IDNA.

The reason is backward compatibility, so that all domain names can be
accessed by all protocols.  That was the primary motivation behind the
whole IDNA approach.  Even as new protocols are introduced that can
represent IDNs directly without using ACE, old protocols will continue
to be used, and it would be a mess if some names worked with some
protocols and not with other protocols.

AMC

---

From: "Jarrod Hollingworth" <[email-masked]>
Date: Wed, 30 Apr 2003 14:03:54 +1000

Will IDN's allow encoding of domain names with *any* ASCII character?

For example, let's say that I want to register the domain name
"this&that.com" or "100^10.com".

Will IDN allow this or does it only facilitate international languages?

Regards,
Jarrod Hollingworth

---

From: "Adam M. Costello" <[email-masked]>
Date: Wed, 30 Apr 2003 05:09:35 +0000

> Will IDN allow this or does it only facilitate international

IDNA allows the addition of non-ASCII characters to domain names.  For
ASCII characters, IDNA adds no new restrictions, but nor does it relax
the old restrictions.  The ASCII characters & and ^ (and every other
ASCII character besides letters, digits, and hyphen) are not allowed in
the "preferred syntax", which is used for domain names that name hosts
and mail exchangers.

It is not merely by fiat that IDNA keeps the old ASCII restrictions,
it follows from the technical details of the encoding.  In IDNA, every
non-ASCII domain label has an ASCII form, where the non-ASCII characters
are encoded using ASCII letters and digits.  But any ASCII characters
that occur in the non-ASCII label are represented literally, not
encoded.  For example, if we want to put an acute accent over the "a"
in this&that.com, the ASCII form will be xn--this&tht-fza.  As you can
see, IDNA does nothing to help you "sneak" the "&" into the name; it is
still there as "&", so you can't use such a name anywhere that "&" is
forbidden.

One thing that is by fiat is the restriction on initial and final
hyphens.  Technically, IDNA could have enabled one to sneak an initial
or final hyphen into a label where initial and final hyphens are
forbidden, but IDNA includes optional checks to prevent initial/final
hyphen from sneaking in where it's not allowed.

AMC