IDN - Internationalized Domain Names

Noms de domaine avec accents et inflexions

Le lancement des noms de domaine .ch et .li avec accents et trémas (ce qu'on appelle des IDN) a eu lieu en mars 2004. L'abréviation IDN signifie Internationalized Domain Name et est utilisée pour les noms de domaine qui peuvent contenir des caractères non définis par le standard ASCII. Parmi ces caractères, on trouve notamment les lettres accentuées, ainsi que d'autres caractères n'appartenant pas à l'alphabet latin.

Les caractères supplémentaires

La base est le jeu de caractères de la table Unicode Latin-1 Supplement dont une partie a été admise à l'enregistrement. Il s'agit des caractères suivants:

outre les 37 caractères admis jusqu'alors du jeu de caractère ASCII:

En décembre 2005, le suivant caractère du jeu de caractères de la table Unicode Latin Extended-A a été introduit:

La question de savoir si une extension supplémentaire est nécessaire est en cours d'examen. Chez nous, le fonctionnement techniquement parfait de l'enregistrement et du DNS (Domain Name System) a priorité absolue. C'est pourquoi d'autres caractères que ceux déjà cités ne seront introduits que petit à petit.

Longueur possible: 63 caractères

Depuis mars 2004, un nom de domaine peut avoir 63 caractères au maximum (auparavant 24). Pour le calcul de la longueur d'un nom de domaine, on compte ce qu'il y a entre www. et .ch ou .li. Ce qui est déterminant, c'est la chaîne ACE du nom de domaine (vois plus bas), qui est de même longueur pour les noms sans accents ni lettres infléchies mais plus longue dans le cas contraire en raison de l'algorithme. Quelques exemples:

www.switch.ch a 6 caractères,
www.ethz.ch en a 4,
www.noël.ch n'en a en revanche pas 4 mais 11 étant donné que la chaîne ACE correspondante est xn--nol-kma.ch.

Chaîne ACE

Il y avait essentiellement deux possibilités d'introduire IDN. La première consistait à adapter les caractères DNS Unicode pour les rendre directement utilisables. Mais cela allait trop loin. Aussi a-t-on choisi la seconde possibilité, à savoir la fixation d'algorithmes pour la conversion d'une chaîne Unicode en un nom de domaine ASCII admissible. Cette chaîne ACE (ACE signifie ASCII Compatible Encoding) est alors enregistrée au DNS. Depuis l'introduction des IDN, l'entrée dans le DNS n'est pour la première fois pas identique au nom de domaine.

Name Preparation, Punycode

Pour qu'une chaîne Unicode puisse être convertie en chaîne ACE, certaines conditions doivent être remplies. Ceci est assuré par la procédure "Nameprep". Celle-ci contrôle qu'il n'y a pas de signes non admis. Les lettres accentuées composées de deux signes doivent être remplacés par un seul, par exemple a + ¨ = ä. Cette opération est appelée "Normalization". En outre, les lettres latines majuscules sont toujours converties en minuscules, c'est ce qu'on appelle le "Case Mapping" ou "Case Folding".

Si, une fois la "Name Preparation" effectuée, il y a encore des caractères non-ASCII dans la chaîne, le système marque la chaîne du préfixe xn--. Punycode ôte au nom de domaine proprement dit les caractères non-ASCII, note leur position et les met à la fin sous forme codée, avec séparation par un second trait d'union.

Un exemple

Conséquences

En IDN, le nom de domaine et l'enregistrement DNS sont deux choses différentes.

noël.ch est le nom de domaine,
xn--nol-kma.ch est la chaîne ACE enregistrée au DNS.

La chaîne de caractères résultant du traitement algorithmique est - pour des raisons techniques - plus longue de quelques caractères que le nom de domaine proprement dit. Le nom de domaine "www.noël.ch" a 4 caractères. La chaîne ACE en a en revanche 11.

noël.ch = nom de domaine = doit avoir au moins 3 caractères,
xn--nol-kma.ch = enregistrement DNS = doit avoir 63 caractères au maximum.

Standards de l'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

La compatibilité avec les noms de domaine IDN est courante dans les navigateurs et les programmes e-mail actuels. Il est toutefois toujours recommandé de ne pas s'appuyer uniquement sur un IDN pour les applications importantes.

SWITCH ne garantit pas la compatibilité des noms de domaine avec accents et lettres infléchies selon annexe 2 aux CG avec des programmes tels que navigateurs et programmes e-mail et n'assume aucune responsabilité en la matière.

Les nouveaux caractères ne sont pas tous disponibles au clavier. Rien qu'en Suisse, il y a quatre normes avec diverses attributions des touches. Il est cependant à supposer qu'un nom de domaine comportant des caractères suédois est enregistré par quelqu'un qui dispose d'un clavier correspondant. Cela vaut également par exemple pour les caractères espagnols ou allemands. Le tableau ci-dessous donne des explications et des aides d'entrée de tous les nouveaux caractères.

Sur un PC, tout caractère peut également être entré sous forme de Code ASCII sur le clavier décimal. Pour cela, activer "Num Lock", maintenir la touche "Alt" pressée et entrer par exemple "133". En lâchant la touche "Alt", on obtient le signe à. Pour un portable, actionner d'abord la touche "FN", puis "Num Lock" et de même avec la touche "Alt" pressée entrer "133" au bloc décimal.

Les utilisateurs de Macintosh ont à disposition le "Visualiseur de caractères" pour l'introduction des caractères de différents jeux de caractères.