Wat is Unicode?
Unicode is een universele computerstandaard voor het consistent coderen, weergeven en verwerken van tekst in de meeste schriftsystemen ter wereld. In de domeinindustrie maakt Unicode geïnternationaliseerde domeinnamen (IDN's) mogelijk met niet-Latijnse tekens, zoals Chinese, Arabische en Cyrillische tekens en andere schriften. Unicode kent aan elk teken in alle talen een uniek codepunt toe, zodat het in verschillende systemen consistent wordt weergegeven.Unicode in domeinnamen
Ondersteuning voor IDN's
Unicode maakt domeinen mogelijk zoals:
- 例え.jp (Japans)
- مثال.مصر (Arabisch)
- пример.рф (Russisch Cyrillisch)
- 例子.中国 (Chinees)
Punycode-conversie
DNS gebruikt ASCII, daarom worden Unicode-domeinen omgezet naar Punycode:
Unicode: münchen.de
Punycode: xn--mnchen-3ya.de
Unicode: 北京.中国
Punycode: xn--1lq90i.xn--fiqs8s
Unicode-codepunten
Structuur
Format: U+XXXX (hexadecimal)
Examples:
A = U+0041 (Latin A)
а = U+0430 (Cyrillic a)
中 = U+4E2D (Chinese character)
Tekenblokken
| Blok | Bereik | Schrift |
|---|---|---|
| Basic Latin | U+0000-007F | Engels/ASCII |
| Cyrillic | U+0400-04FF | Russisch enz. |
| Arabic | U+0600-06FF | Arabisch |
| CJK | U+4E00-9FFF | Chinees/Japans/Koreaans |
Beveiligingsrisico's
Homogliefaanvallen
Tekens uit verschillende schriften die op elkaar lijken:
Latin 'a' (U+0061) vs Cyrillic 'а' (U+0430)
Latin 'o' (U+006F) vs Cyrillic 'о' (U+043E)
Attack: аpple.com (Cyrillic 'а') looks like apple.com
Browserbeveiliging
Browsers kunnen Punycode weergeven voor verdachte domeinen met gemengde schriften.
Unicode-normalisatie
Verschillende manieren om hetzelfde teken weer te geven:
é = U+00E9 (precomposed)
é = U+0065 + U+0301 (decomposed: e + combining accent)
Normalization forms: NFC, NFD, NFKC, NFKD
Unicode is essentieel voor wereldwijde internettoegankelijkheid. Gebruikers overal ter wereld kunnen hiermee domeinnamen in hun eigen schrift en taal registreren en openen.