Thomas Piart

Last article: IDN and browser supportSun Jan 05 2014

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 http://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:

And here is the result:

Chrome on Android

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

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