Internationalized domain name

Uit Wikipedia, de vrije encyclopedie
Ga naar: navigatie, zoeken
Voorbeeld van een IDN met (vereenvoudigde) Chinese karakters. Merk op dat de ccTLD eveneens uit Chinese karakters bestaat.

Een internationalized domain name (IDN) is een domeinnaam waar in minstens één label, één of meerdere niet-ASCII-tekens voorkomen. Deze tekens zijn bijvoorbeeld letters van het Latijns alfabet mét diakritische tekens of karakters van een ander schrift of alfabet, zoals Chinese karakters of Arabische letters.

Meer dan de helft van de 1,6 miljard internetgebruikers spreekt een taal met een niet-Latijns schrift.[1]

Internationalized Domain Names in Applications[bewerken]

Het Domain Name System (DNS)-protocol legt beperkingen op wat betreft de toegestane tekens in de labels van domeinnamen. Eén van deze beperkingen is de LDH-regel[2] die stelt dat een label alleen alfanumerieke tekens en het koppelteken uit de ASCII-tekenset mag bevatten. Bovendien mag het koppelteken niet vooraan of achteraan in een label voorkomen.[3]

Om te voorkomen dat de bestaande DNS-infrastructuur moet worden aangepast om niet-ASCII-tekens te ondersteunen, werd besloten om een systeem te ontwerpen waar webbrowsers (en andere gebruikerstoepassingen) de niet-ASCII-labels in een domeinnaam omzetten naar ASCII-labels. Internationalized Domain Names in Applications (IDNA) specificeert hoe deze omzetting dient te gebeuren.[4]

Voor de omzetting van een niet-ASCII-label naar een ASCII-label, wordt eerst gebruikgemaakt van het Nameprep-algoritme[5] . Nameprep voert verscheidene normalisaties uit zoals het omzetten van hoofdletters in kleine letters. Het resultaat van deze bewerking wordt vervolgens via Punycode[6] omgezet naar een ASCII-label. Nadien wordt het prefix xn-- toegevoegd. Het resultaat is de zgn. ASCII Compatible Encoding (ACE)-string.

Voorbeeld van IDNA-codering[bewerken]

IDNA-codering kan worden geïllustreerd aan de hand van de volgende domeinnaam: www.Café.eu Deze domeinnaam heeft drie labels, nl.: "www", "Café" en "eu". Het eerste en laatste label bestaan uitsluitend uit tekens uit de ASCII-tekenset en worden bijgevolg niet gewijzigd door IDNA. Het tweede label wordt eerst door Nameprep omgezet in "café" en vervolgens door Punycode omgezet in "caf-dma". Ten slotte wordt het prefix toegevoegd, met als resultaat de ACE-string "xn--caf-dma". Samengevat, de domeinnaam www.Café.eu wordt via IDNA omgezet in www.xn--caf-dma.eu

Voorbeelden van IDN-domeinnamen[bewerken]

Dit zijn enkele klikbare voorbeelden van IDN-domeinnamen:

Misbruik van IDN[bewerken]

In de Unicode-tekenset komen veel homogliefen voor. Een homoglief is een karakter dat (op het eerste gezicht) er identiek uitziet als één of meerdere andere karakters. Bijvoorbeeld, de Latijnse letter a (U+0061)[7] ziet er identiek uit als de Cyrillische letter а (U+0430).[8] Hoewel de karakters visueel niet te onderscheiden zijn, gaat het hier technisch wel degelijk om verschillende tekens in de Unicode-tekenset.

Oplichters kunnen hiervan misbruik maken door een domeinnaam te registreren die visueel niet te onderscheiden is van een andere bonafide domeinnaam. De malafide domeinnaam kan dan gebruikt worden in phishing-aanvallen om gevoelige data van nietsvermoedende gebruikers te ontfutselen.[9]

Merk op dat dit geen ontwerpfout is van IDN. Homogliefen kunnen ook voorkomen in ASCII-labels, bijvoorbeeld de letter O en het cijfer 0. Door het groot aantal tekens in de Unicode-tekenset, zijn er in IDN-domeinnamen meer potentiële homogliefen.

Onder meer daarom hebben sommige registrars van IDN-domeinnamen één of meer van de volgende maatregelen getroffen:

  • bundelen van visueel identieke of gelijkaardige domeinnamen[10]
  • niet toestaan om verschillende schriften in één domeinnaam te gebruiken[11]
  • alleen een beperkte (taaleigen) subset van de Unicode-tekenset toestaan[12]
  • voorlopig uitstellen van het implementeren van IDN[13]

IDN-topleveldomeinen[bewerken]

Tot op heden (15 november 2009), zijn er geen (niet-experimentele) topleveldomeinen die bestaan uit niet-ASCII-tekens. Zoals in bovenstaande voorbeelden te zien is, blijft het label van het topleveldomein bestaan uit ASCII-tekens. Het ICANN-bestuur heeft in december 2006 ingestemd met de oprichting van een werkgroep m.b.t. IDN-topleveldomeinen binnen de Country Code Names Supporting Organisation (ccNSO).[14]

Sinds 16 november 2009, kunnen landen (en gebieden) bij ICANN een aanvraag indienen voor IDN ccTLD's. Deze IDN ccTLD's zullen naar verwachting medio 2010 operationeel zijn.[15]

ICANN heeft 11 tijdelijke IDN-topleveldomeinen geactiveerd opdat professionelen en geïnteresseerden hiermee tests kunnen uitvoeren. De IDN-domeinnamen zijn in de vorm voorbeeld.test, in verscheidene talen en schriften.[16]

Hieronder staan enkele van deze voorbeeld.test-domeinnamen opgesomd:

Merk op dat voor de URL in het Arabisch schrift, het topleveldomein het label tussen "http://" en het puntje is, en dus niet het label rechts van het puntje. Het Arabisch schrift wordt immers van rechts naar links geschreven.

Browserondersteuning[bewerken]

IDN-domeinnamen worden onder meer ondersteund door volgende browsers[17]:

  • Internet Explorer 7+, Firefox 0.8+, Mozilla 1.4+, Netscape 7.1+, Opera 7.22+ en Safari 1.2+ voor MacOS X.

Firefox en Opera maken gebruik van een whitelist met topleveldomeinen van registrars die maatregelen nemen tegen homoglief-misbruiken. Standaard wordt in deze browsers een IDN URL als ACE-string weergegeven (o.a. in de adresbalk), alleen voor topleveldomeinen die in de whitelist voorkomen wordt de URL in Unicode weergegeven.[18]

In de Internet Explorer webbrowser kan de gebruiker instellen welke talen in Unicode moeten worden weergegeven. Wanneer er meerdere schriften in een domeinnaam voorkomen, wordt deze domeinnaam als ACE-string weergegeven. Er zijn wel uitzonderingen waardoor schriften soms toch als Unicode weergegeven worden als ze samen gebruikt worden.[19][20]

Aanbevolen literatuur[bewerken]

Bronnen
  1. Internet addresses set for change, BBC (30 oktober 2009)
  2. LDH staat in het Engels voor: "letter/digit/hyphen"
  3. RFC 3696, Application Techniques for Checking and Transformation of Names, 2. Restrictions on domain (DNS) names, J. Klensin, The Internet Society (Februari 2004)
  4. RFC 3490, Internationalizing Domain Names in Applications (IDNA), P. Faltstrom, P. Hoffman, A. Costello, The Internet Society (Maart 2003)
  5. RFC 3491, Nameprep: A Stringprep Profile for Internationalized Domain Names (IDN), P. Hoffman, M. Blanchet, The Internet Society (Maart 2003)
  6. RFC 3492, Punycode: A Bootstring encoding of Unicode for Internationalized Domain Names in Applications (IDNA), A. Costello, The Internet Society (Maart 2003)
  7. Unicode Character 'LATIN SMALL LETTER A', FileFormat.info
  8. Unicode Character 'CYRILLIC SMALL LETTER A', FileFormat.info
  9. The Homograph Attack, Evgeniy Gabrilovich & Alex Gontmakher, Communications of the ACM, 45(2):128 (februari 2002)
  10. Homoglief-bundeling, in het Engels "homoglyph bundling" of "IDN bundling", European Registry of Internet Domain Names (EURid)
  11. IDN-beleid voor .pl-domeinnamen Registering Internationalized Domain Names under .PL, Krzysztof Olesik & Andrzej Bartosiewicz, NASK (Juli 2007)
  12. IDN-beleid voor .cat-domeinnamen, Catalaanse registrar Fundacio puntCAT laat alleen een taaleigen subset van Unicode toe voor domeinnamen.
  13. Eindrapport Domeinnaamdebat 2006, SIDN heeft in 2006 beslist om IDN voorlopig niet te implementeren voor .nl-domeinnamen.
  14. ICANN Board resolution of 8 December 2006, ICANN
  15. IDN ccTLD Fast Track Process, ICANN
  16. IDN TLD evaluation gateway, ICANN
  17. Weergave van IDN-domeinnamen in browsers, Active 24
  18. Mozilla IDN-beleid, Mozilla
  19. International Domain Name Support in Internet Explorer 7, Microsoft
  20. Changes to IDN in IE7 to now allow mixing of scripts, Microsoft