Vad är Unicode?
Unicode är en universell datastandard för konsekvent kodning, representation och hantering av text i de flesta av världens skriftsystem. Inom domänbranschen möjliggör Unicode internationaliserade domännamn (IDN) som innehåller icke-latinska tecken, till exempel kinesiska, arabiska och kyrilliska tecken samt andra skriftsystem. Unicode tilldelar varje tecken en unik kodpunkt i alla språk, vilket säkerställer en enhetlig representation i olika system.Unicode i domännamn
IDN-stöd
Unicode möjliggör domäner som:
- 例え.jp (japanska)
- مثال.مصر (arabiska)
- пример.рф (rysk kyrilliska)
- 例子.中国 (kinesiska)
Punycode-konvertering
DNS använder ASCII, så Unicode-domäner konverteras till Punycode:
Unicode: münchen.de
Punycode: xn--mnchen-3ya.de
Unicode: 北京.中国
Punycode: xn--1lq90i.xn--fiqs8s
Unicode-kodpunkter
Struktur
Format: U+XXXX (hexadecimal)
Examples:
A = U+0041 (Latin A)
а = U+0430 (Cyrillic a)
中 = U+4E2D (Chinese character)
Teckenblock
| Block | Intervall | Skriftsystem |
|---|---|---|
| Basic Latin | U+0000-007F | Engelska/ASCII |
| Cyrillic | U+0400-04FF | Ryska med flera |
| Arabic | U+0600-06FF | Arabiska |
| CJK | U+4E00-9FFF | Kinesiska/japanska/koreanska |
Säkerhetsfrågor
Homoglyfangrepp
Liknande tecken från olika skriftsystem:
Latin 'a' (U+0061) vs Cyrillic 'а' (U+0430)
Latin 'o' (U+006F) vs Cyrillic 'о' (U+043E)
Attack: аpple.com (Cyrillic 'а') looks like apple.com
Webbläsarskydd
Webbläsare kan visa Punycode för misstänkta domäner med blandade skriftsystem.
Unicode-normalisering
Olika sätt att representera samma tecken:
é = U+00E9 (precomposed)
é = U+0065 + U+0301 (decomposed: e + combining accent)
Normalization forms: NFC, NFD, NFKC, NFKD
Unicode är grundläggande för ett globalt tillgängligt internet och gör det möjligt för användare över hela världen att registrera och besöka domännamn med sina egna skriftsystem och språk.