Volgens de Internationale Telecommunicatie-Unie (ITU) maken meer dan drie miljard mensen gebruik van het wereldwijde web, en steeds vaker in hun moedertaal. Deze verandering is deels te danken aan de introductie van internationale domeinnamen in 2003. We leggen uit hoe IDN-domeinen werken.

Wat is een geïnternationaliseerde domeinnaam (IDN)?

De IETF (Internet Engineering Task Force) verwijst naar IDN’s als domeinnamen die speciale tekens bevatten die geen deel uitmaken van het Latijnse alfabet, zoals umlauten of tekens uit andere alfabetten. Het Domain Name System (DNS), dat verantwoordelijk is voor het vertalen van URL’s naar IP-adressen, kan deze domeinnamen echter niet begrijpen. Het DNS is gebaseerd op de beperkte standaardtekenset ASCII.

Om IDN’s begrijpelijk te maken voor zowel het DNS als andere internetprotocollen, werd in 2003 de internetstandaard Internationalising Domain Names in Applications (IDNA) gecreëerd. Deze standaard definieert een gestandaardiseerde vertaling van Unicode naar ASCII, waardoor het gebruik van niet-ASCII-tekens in domeinnamen mogelijk wordt.

Hoe werkt IDNA?

Een groot deel van de infrastructuur van het internet wordt alleen ondersteund door de ASCII-tekenset. Om ervoor te zorgen dat internationale domeinnamen kunnen worden verwerkt, wordt elke IDN die beschikbaar is in Unicode vertaald naar een ACE-string, die is gebaseerd op ASCII. Vervolgens worden URL’s met accenten of umlauten weergegeven. De server blijft de adressen echter als ASCII-compatibel verwerken. Deze procedure is vastgelegd in de internetstandaard IDNA2003 en in de herziening IDNA2008, die in 2010 is goedgekeurd. De vertaling van Unicode naar ASCII vindt plaats aan de kant van de client (in de browser, het e-mailprogramma, enz.) en is gebaseerd op een gestandaardiseerd coderingsproces dat Punycode wordt genoemd.

Punycode

De RFC 3492-gestandaardiseerde Punycode is ontwikkeld om Unicode-tekenreeksen duidelijk weer te geven als ASCII-symbolen zonder kwaliteitsverlies. Alle niet-ASCII-tekens worden uit de domeinnaam verwijderd, gecodeerd en gescheiden met een koppelteken. Deze codereeks bevat informatie over het betreffende Unicode-symbool en de positie ervan in de domeinnaam. Bovendien wordt elke ACE-reeks die op deze manier wordt aangemaakt, voorzien van het voorvoegsel xn–. Dit maakt voor de lezer duidelijk dat de tekenreeks een IDN is die is gecodeerd volgens de IDNA- en Punycode-normen. Zie ons artikel over Punycode voor een gedetailleerde uitleg van het coderingsproces en enkele voorbeelden.

Tip

Met een online IDN-domeincontroller kunt u IDN’s omzetten naar de bijbehorende ACE-strings met behulp van Punycode.

Verschillen tussen IDNA2003 en IDNA2008

Voor de oorspronkelijke procedure uit 2003 werden geïnternationaliseerde URL’s vóór de Punycode-codering genormaliseerd met behulp van de nameprep-methode. Deze methode veranderde hoofdletters in kleine letters, verwijderde controletekens en zette gelijkwaardige tekens om in een uniforme vorm. Nameprep werd uit dit proces verwijderd toen IDNA2008 werd geïntroduceerd. Nu specificeert IDNA geen normalisatie meer. In plaats daarvan wordt een algoritme aanbevolen dat hoofdletters omzet in kleine letters.

Deze aanpassing komt ook tegemoet aan gebruikers in het Duitstalige gebied, aangezien het Unicode-teken ‘ß’, dat veel voorkomt in Duitsland, oorspronkelijk volgens IDNA2003 werd gedefinieerd als het equivalent van ‘ss’. Domeinen zoals www.fußball-ergebnisse.de werden dus automatisch genormaliseerd naar www.fussball-ergebnisse.de in het nameprep-proces. Dit is niet langer het geval sinds IDNA2008 in beeld kwam. Sinds 2010 wordt de ‘ß’ correct geïnterpreteerd als ‘Latijnse kleine letter scherpe s’ en kan deze worden geregistreerd als onderdeel van een IDN-domein.

Bovendien worden ongeveer 8.000 tekens die onder IDNA2003 in domeinnamen mogelijk waren, onder IDNA2008 niet langer ondersteund. Vier tekens, waaronder ‘ß’, worden sinds de herziening van de norm anders geïnterpreteerd. Voor een gedetailleerde bespreking van de verschillen tussen IDNA2003 en IDNA2008, zie Unicode Technical Standard #46. De volgende tabel geeft een overzicht van de belangrijkste verschillen:

IDNA2003 IDNA2008
Nameprep-procedure vereist Geen normalisatie gespecificeerd
Geldig voor Unicode 3.2 Geldig voor Unicode-versies vanaf 5.2
Strikte regels voor rechts-naar-links-lettertypen Duidelijkere regels voor rechts-naar-links-lettertypen
Hoofdletters en kleine letters worden als afzonderlijke tekens beschouwd Hoofdletters worden omgezet in kleine letters
Veel symbolen zijn verboden, bijvoorbeeld grafische symbolen die niet tot een alfabet behoren, evenals sommige leestekens
‘Remapping’ verwijderd uit sommige Unicode-tekens, omdat dit tot onregelmatigheden zou kunnen leiden

Welke problemen zijn er met IDN’s?

Inmiddels zouden alle gangbare internetprogramma’s IDN moeten kunnen begrijpen. Er doen zich echter soms problemen voor met geïnternationaliseerde domeinnamen omdat de overstap van IDNA2003 naar IDNA2008 nog niet overal is doorgevoerd. Een voorbeeld dat voor het Duits problematisch is, is de verschillende interpretatie van ‘ß’. Aangezien IDNA2003 ‘ß’ verplicht omzet in ‘ss’, zijn speciale ß-domeinen die volgens IDNA2008 kunnen worden geregistreerd, vaak niet vindbaar voor systemen die volgens de verouderde standaard omzetten. In plaats daarvan worden gebruikers doorgestuurd naar het overeenkomstige domein met ‘ss’. Dit probleem kan worden omzeild door websitebeheerders die beide varianten registreren en het tweede domein door middel van een domeinomleiding doorverwijzen naar de geprioriteerde spelling.

Ga naar hoofdmenu