This post is about IDN and browser support.

First of all, http does not support unicode :). To do unicode, they use a punycode to convert any domain name into it's ascii equivalent: for example, my domain tpî.eu is translated to https://xn--tp-rja.eu/.

I bought this IDN domain (tpî.eu), found this idea very clever until I found out that browser support wasn't so good. It goes from no support to little issues to perfect.

Those differences can be explained because IDN is new and viewed as a potential security threat.

For example, using similar characters in ascii and unicode, one could spoof the content of ebay.com and send you to еbay.com: You did not notice any differences? Have a better look: ebay.com and еbay.com . notice the difference between e and е: the last one is a Cyrillic character. (see wikipedia about that)

To avoid that, Registar are supposed to do some similarity check and reject possible spoof. Browser on the other side also have some kind of protection which varies from one browser to another. If the check fails, you'll see safe punycode.

Let's start:

Firefox 19

On Mac, .eu extension is not supposed to display IDN, so it's not part of a white list, so by default, you should see punycode. What I did was to add a key to about:config to add .eu to the white list:

Firefox Mac About Config

And here is the result:

Firefox Mac

Chrome on Android

On Android, with Chrome: it does not work and shows punycode:

chrome android

Note: I wrote this article one year ago (in March 2013) and never took time to publish it :(