Hva er et internasjonalisert domenenavn (IDN)?
Ifølge Den internasjonale telekommunikasjonsunionen (ITU) bruker mer enn tre milliarder mennesker internett, og i stadig større grad på sitt morsmål. Denne endringen skyldes blant annet innføringen av internasjonale domenenavn i 2003. Vi skal forklare hvordan IDN-domener fungerer.
Hva er et internasjonalisert domenenavn (IDN)?
IETF (Internet Engineering Task Force) definerer IDN-er som domenenavn som inneholder spesialtegn som ikke inngår i det latinske alfabetet, for eksempel omlydstegn eller tegn fra andre alfabeter. DNS (Domain Name System), som har til oppgave å oversette URL-er til IP-adresser, kan imidlertid ikke tolke disse domenenavnene. DNS er basert på det begrensede standardtegnsettet ASCII.
For å gjøre IDN-er forståelige for både DNS og andre internettprotokoller ble internettstandarden «Internationalising Domain Names in Applications» (IDNA) utviklet i 2003. Denne standarden definerer en standardisert konvertering fra Unicode til ASCII, og muliggjør dermed bruk av ikke-ASCII-tegn i domenenavn.
Hvordan fungerer IDNA?
Mye av internettets infrastruktur støtter kun ASCII-tegnsettet. For å sikre at internasjonale domenenavn kan behandles, oversettes hvert IDN som er tilgjengelig i Unicode til en ASCII-kompatibel streng. Deretter vises nettadresser som inneholder tegn med aksenter eller omlyd. Serveren fortsetter derimot å behandle adressene som ASCII-kompatible. Denne prosedyren er spesifisert i internettstandarden IDNA2003 og i revisjonen IDNA2008, som ble godkjent i 2010. Oversettelsen fra Unicode til ASCII skjer på klientsiden (i nettleseren, e-postprogrammet osv.) og er basert på en standardisert kodingsprosess kalt Punycode.
Punycode
Punycode, som er standardisert i RFC 3492, ble utviklet for å vise Unicode-tegnstrenger tydelig som ASCII-tegn uten tap av kvalitet. Alle ikke-ASCII-tegn fjernes fra domenenavnet, kodes og skilles med en bindestrek. Denne kodestrengen inneholder informasjon om det aktuelle Unicode-tegnet samt dets plassering i domenenavnet. I tillegg merkes hver ACE-streng som opprettes på denne måten med prefikset xn–. Dette gjør det klart for leseren at tegnsekvensen er et IDN som er kodet i henhold til IDNA- og Punycode-standardene. Se vår artikkel om Punycode for en detaljert forklaring av kodingsprosessen samt noen eksempler.
Med en nettbasert IDN-domeneomformer kan du konvertere IDN-er til tilhørende ACE-strenger ved hjelp av Punycode.
Forskjeller mellom IDNA2003 og IDNA2008
I den opprinnelige prosedyren fra 2003 ble internasjonaliserte URL-adresser normalisert før Punycode-koding ved hjelp av nameprep-metoden. Denne metoden endret store bokstaver til små bokstaver, fjernet kontrolltegn og omformet tilsvarende tegn til en enhetlig form. Nameprep ble fjernet fra denne prosessen da IDNA2008 ble innført. I dag spesifiserer IDNA ingen normalisering. I stedet anbefaler den en algoritme som konverterer store bokstaver til små.
Denne tilpasningen ivaretar også brukere i den tyskspråklige verden, siden Unicode-tegnet «ß», som er vanlig i Tyskland, opprinnelig ble definert som ekvivalent til «ss» i henhold til IDNA2003. Domener som www.fußball-ergebnisse.de ble dermed automatisk normalisert til www.fussball-ergebnisse.de i nameprep-prosessen. Dette er ikke lenger tilfelle siden IDNA2008 trådte i kraft. Siden 2010 tolkes «ß» riktig som «latinsk liten bokstav skarp s» og kan registreres som en del av et IDN-domene.
I tillegg støttes ikke lenger rundt 8 000 tegn som var tillatt i domenenavn under IDNA2003, i henhold til IDNA2008. Fire tegn, deriblant «ß», tolkes annerledes etter at standarden ble revidert. For en detaljert gjennomgang av forskjellene mellom IDNA2003 og IDNA2008, se Unicode Technical Standard #46. Tabellen nedenfor gir en oversikt over de viktigste forskjellene:
| IDNA2003 | IDNA2008 |
|---|---|
| Nameprep-prosedyre kreves | Ingen normalisering angitt |
| Gjelder for Unicode 3.2 | Gjelder for Unicode-versjoner fra 5.2 og oppover |
| Strenge regler for skrifter som skrives fra høyre til venstre | Tydeligere regler for skrifter som skrives fra høyre til venstre |
| Store og små bokstaver regnes som separate tegn | Store bokstaver konverteres til små bokstaver |
| Mange symboler er forbudt, f.eks. grafiske symboler som ikke tilhører noen alfabeter, samt enkelte tegnsettingstegn | |
| «Omkartlegging» fjernet fra enkelte Unicode-tegn, da dette kan føre til uregelmessigheter |
Hvilke problemer er det med IDN-er?
I dag bør alle vanlige internettprogrammer kunne håndtere IDN. Imidlertid oppstår det av og til problemer med internasjonaliserte domenenavn fordi overgangen fra IDNA2003 til IDNA2008 ennå ikke er gjennomført på en enhetlig måte. Et eksempel som er problematisk for tysk, er den ulike tolkningen av «ß». Siden IDNA2003 obligatorisk konverterer «ß» til «ss», er spesielle ß-domener som kan registreres i henhold til IDNA2008 ofte ikke synlige for systemer som konverterer i henhold til den utdaterte standarden. I stedet blir brukerne sendt til det tilsvarende domenet som inneholder «ss». Dette problemet kan omgås ved at nettstedsoperatører registrerer begge variantene og omdirigerer det andre domenet til den prioriterte stavemåten ved hjelp av en domeneomdirigering.