IDN - Internationalized Domain Names

Nomi a dominio con accenti e dieresi

I nomi a dominio con estensione .ch e .li possono anche contenere caratteri non ASCII, come gli umlaut e gli accenti. Tali nomi a dominio che contengono umlaut, altri caratteri diacritici o lettere di alfabeti diversi da quello latino sono definiti Internationalized Domain Names (IDN). I caratteri ammessi per i nomi a dominio .ch e .li sono elencati negli allegati 1 e 2 delle Condizioni generali.

Stringa ACE

In linea di massima vi erano due possibilità diverse per introdurre gli IDN. La prima consisteva nel rendere direttamente utilizzabili i caratteri Unicode nel DNS. Ma questo intervento era troppo drastico. Pertanto, si è optato per la seconda possibilità, ovvero la definizione di un algoritmo per trasformare una stringa Unicode in un nome a dominio ASCII ammissibile. Questa stringa ACE (ACE significa ASCII Compatible Encoding) viene poi riportata nel DNS. Dopo l'introduzione degli IDN, per la prima volta la registrazione nel DNS non è più identica al nome a dominio.

Name Preparation, Punycode

Affinché una stringa Unicode possa essere convertita in una stringa ACE, occorre soddisfare determinati presupposti. Ciò viene fatto mediante la procedura "Nameprep". Essa verifica se vi sono caratteri non ammessi. Le dieresi composte da due caratteri devono essere sostituite da un carattere, per esempio a + ¨ = ä. Questa procedura è denominata "Normalization". Inoltre, le lettere latine maiuscole vengono sempre trasformata in lettere minuscole, il che viene definito come "Case Mapping" o "Case Folding".

Se, a "Name Preparation" avvenuta, la stringa contiene caratteri estranei al codice ASCII, il sistema contrassegna questa stringa con il prefisso xn--. Punycode rimuove dal nome a dominio i caratteri estranei al codice ASCII, ricorda la posizione di questi caratteri e li riaggiunge alla fine, in forma codificata e separati da un ulteriore trattino.

Un esempio

Conseguenze

Per IDN, il nome a dominio e la registrazione DNS non sono identici.

età.ch è il nome a dominio,
xn--et-kia.ch è la stringa ACE e viene registrata nel DNS.

La stringa di caratteri risultante dall'elaborazione algoritmica è più lunga del nome a dominio stesso per motivi tecnici. Il nome a dominio "età.ch" ha una lunghezza di 3 caratteri. Tuttavia, la stringa ACE ha una lunghezza di 10 caratteri. La lunghezza della stringa ACE è determinante per la lunghezza massima consentita di un nome a dominio.

età.ch = nome a dominio: deve contenere almeno 3 caratteri,
xn--et-kia.ch = stringa ACE/registrazione DNS: può contenere un massimo di 63 caratteri (senza TLD).

Standard IETF

  • RFC 3492 Encoding Scheme (Punycode)
  • RFC 5890 IDNA (Internationalized Domain Names for Applications): Framework
  • RFC 5891 IDNA: Protocol
  • RFC 5892 IDNA: Unicode Code Points
  • RFC 5893 IDNA: Right-to-Left Scripts
  • RFC 5894 IDNA: Background, Explanations, and Rationale

Gli attuali browser e programmi di e-mail supportano gli IDN. Tuttavia, si raccomanda di non affidarsi esclusivamente a un IDN per le applicazioni importanti.

Switch non garantisce l'idoneità di nomi a dominio con dieresi e accenti ai sensi dell'allegato 2 delle CG in collegamento con programmi come browser e programmi di e-mail e non si assume alcuna responsabilità a questo riguardo.