Caractères spéciaux et IDN
Module 2: Choisir un bon nom · Temps de lecture : 8 minutes
Objectif pédagogique : À l'issue de cette leçon, vous saurez expliquer comment fonctionnent les noms de domaine avec accents et trémas, lire un nom en punycode et juger quand il vaut mieux ne pas utiliser un tel nom.
Notions clés : IDN, punycode, xn--, IDNA2008, caractères autorisés par extension, e-mail et IDN, attaque homographique
Les noms avec accents existent
Le DNS a été conçu à l'origine pour les lettres de a à z, les chiffres et le tiret. Pourtant, vous voyez des noms de domaine contenant des lettres comme é, ü ou ß. Ces noms s'appellent des IDN : internationalized domain names (noms de domaine internationalisés). Ils permettent d'écrire un nom tel qu'il s'écrit dans votre propre langue, par exemple avec un tréma allemand ou un accent français.
La formation DNS évoque brièvement les IDN dans la leçon 1.2. Ici, vous les abordez en tant que personne qui choisit un nom : est-ce possible avec votre extension, à quoi ressemble un tel nom en coulisses, et est-ce judicieux ?
En coulisses : le punycode
Le DNS lui-même ne connaît toujours que les lettres de a à z, les chiffres et le tiret. Un nom contenant des caractères spéciaux est donc converti en une suite de caractères ordinaires précédée de xn--. Cette conversion s'appelle le punycode.
Elle fonctionne par label, c'est-à-dire par segment situé entre deux points. Seul le label contenant des caractères spéciaux est converti ; l'extension reste telle quelle. Un exemple de DNS Belgium : belgië.be devient xn--belgi-rsa.be dans le DNS. Et une boulangerie allemande nommée bäckerei.example s'appelle xn--bckerei-5wa.example dans le DNS.
Vous voyez le principe :
- Au début figure xn--. C'est le signe qu'un nom converti suit.
- Viennent ensuite les lettres ordinaires du nom, sans les caractères spéciaux : belgi, bckerei.
- Après le dernier tiret suit un court code qui indique quel caractère spécial se place à quel endroit.
Vous n'avez pas à calculer ce code vous-même. Les navigateurs, les logiciels de messagerie et les registrars s'en chargent pour vous. Si vous souhaitez le vérifier, utilisez un convertisseur punycode : il convertit un nom avec accents vers la forme xn--, et inversement. Si vous saisissez un nom xn-- dans votre navigateur, vous verrez souvent le nom avec ses caractères spéciaux dans la barre d'adresse.
Les règles correspondantes figurent dans IDNA2008, un ensemble de normes Internet (RFC 5890 à 5894). Le punycode lui-même est défini dans la RFC 3492. Ces règles entraînent aussi une conséquence visible pour les noms ordinaires : deux tirets en troisième et quatrième position d'un label sont réservés aux noms convertis. Si vous voyez un nom avec deux tirets à cet endroit, ce n'est donc pas un nom ordinaire. C'est pourquoi un registre comme DENIC n'accepte pas de tels noms en enregistrement ordinaire.
Quelles extensions acceptent quels caractères
La possibilité d'enregistrer un IDN dépend de l'extension. Chaque registre décide lui-même quels caractères sont autorisés.
| Extension | Caractères spéciaux ? |
|---|---|
| .nl | Non. Uniquement de a à z, les chiffres et le tiret |
| .de | Oui, une liste fixe, comme ä, ö, ü, ß et é |
| .be | Oui, notamment é, è, ë, ç, ä, ö, ü, ß et œ |
Pour les autres extensions, consultez le registre ou demandez à votre registrar ; pour l'extension française .fr, le registre est l'Afnic. Si Bakkerij Example souhaite utiliser son nom "Café Example" comme nom de domaine, ce n'est donc pas possible avec un é en .nl : le nom devient cafe sans accent.
Pourquoi rester prudent
Un IDN semble séduisant : le nom apparaît exactement comme vous l'écrivez. En pratique, il présente des inconvénients.
- La saisie. Beaucoup de personnes n'ont pas de é ou de ü sur leur clavier, ou ne savent pas comment les taper. Elles saisissent alors le nom sans accent et arrivent ailleurs.
- La transmission. Au téléphone, vous devez préciser : "avec un u tréma". Cela se passe souvent mal.
- L'e-mail. Une adresse e-mail sur un IDN ne fonctionne pas partout aussi bien. Tous les formulaires web et tous les logiciels de messagerie n'acceptent pas les caractères spéciaux dans une adresse. Votre client reçoit alors un message d'erreur ou saisit l'adresse autrement.
- L'affichage. Certains programmes affichent la forme xn-- au lieu du nom avec accents. Votre client voit alors quelque chose d'illisible là où il attend votre nom.
Le conseil est donc le suivant : utilisez un nom sans caractères spéciaux comme nom principal, y compris pour votre e-mail. Si votre nom contient un tréma ou un accent, enregistrez les deux formes et redirigez la forme IDN vers la forme ordinaire. Pour un ü, vous pouvez aussi penser à la forme avec ue, comme les Allemands en ont l'habitude.
L'attaque homographique
Les IDN ont aussi leur côté sombre. Certaines lettres d'autres alphabets ressemblent exactement à des lettres latines. Un а cyrillique a le même aspect qu'un a ordinaire, mais pour un ordinateur, c'est un autre caractère. Des criminels s'en servent pour créer un faux nom qui, à l'écran, ressemble à un vrai nom. C'est ce qu'on appelle une attaque homographique.
Si vous cliquez sur un lien contenant un tel nom, vous pensez être sur le site de votre banque ou de votre fournisseur, alors que vous êtes chez un escroc. C'est pourquoi les navigateurs affichent parfois un tel nom sous la forme xn--, afin que vous voyiez que quelque chose ne va pas. Si un nom xn-- apparaît de manière inattendue dans votre barre d'adresse pour un site que vous connaissez, soyez sur vos gardes.
Pour votre propre nom, cela signifie : vous ne pouvez pas empêcher quelqu'un d'enregistrer un nom qui lui ressemble, mais vous pouvez surveiller ce qui se passe autour de votre nom (leçon 7.2).
Résumé
- Un IDN est un nom de domaine contenant des caractères spéciaux ; dans le DNS, il est stocké en punycode précédé de xn--.
- Seul le label contenant des caractères spéciaux est converti ; l'extension reste telle quelle.
- .nl n'accepte pas les caractères spéciaux, .de et .be les acceptent (une liste fixe).
- Les IDN sont difficiles à saisir, à transmettre et à utiliser comme adresse e-mail : choisissez un nom ordinaire comme nom principal.
- Lors d'une attaque homographique, des lettres d'un autre alphabet ressemblent à des lettres ordinaires ; un nom xn-- inattendu est un signal d'alerte.
Quiz
Exercice
Exercice A2.4 : Lire le punycode (cas pratique). Un collègue de Bakkerij Example a trois questions sur les noms contenant des caractères spéciaux. Utilisez un convertisseur punycode ou les explications de cette leçon. Saisissez le nom complet, extension comprise.
- Punycode de café.example. Champ de saisie : écrivez le nom tel qu'il figure dans le DNS.
- Nom avec caractères spéciaux correspondant à xn--bcher-kva.example. Champ de saisie : écrivez le nom tel qu'un visiteur le lit.
- ab--cd.example est-il autorisé comme nom ordinaire (pas un IDN) ? Choix : oui ou non.
Le programme compare vos réponses à une clé fixe. Les trois réponses correctes donnent le vert.
