Allowed characterset?


Reading another one of the threads it sounded like ENS names would be limited to ASCII-7 alpha-numeric? Is this true? If so, I would like to lobby for supporting the full UTF-8 character set (effectively unrestricted).

Skip the following if full UTF-8 will be supported.

I recognize that there are name collisions in terms of similar looking glyphs, but I feel like that is a problem that should be solved by user interfaces, not by the name system. Saying that no Chinese person can have an ENS for their name, and most of the world has to “romanize” their names in some way feels incredibly restrictive and culturally insensitive/self-centered. Also, I want to be able to register the ☃︎☃︎☃︎.eth domain.

There are already glyph collisions within ASCII-7 including lI1 and O0 so the argument that it prevents glyph collision attacks falls short IMO and feels instead just like people not recognizing that there is a whole world full of people that use more than ASCII-7 in their daily lives.

/rant-over… for now


@MicahZoltu That sounds fun. Hashing to glyph sets. I am still holding out for B.eth and S.eth


No, ENS already supports unicode. Names have to be passed through nameprep for normalisation first, but anything that passes that is allowed. In addition, we have guidelines for implementers on handling homographs, and MyCrypto have a library that implements these recommendations.