Convertisseur Punycode en Ligne
Convertis les noms de domaine internationalises entre Punycode et Unicode, directement dans le navigateur.
.pdf · jusqu'à 2 Go
A quoi ca sert
Convertisseur Punycode pour les domaines IDN
Tous les scripts Unicode
Supporte les domaines en chinois, arabe, cyrillique, devanagari, hebreu, japonais et n'importe quel script Unicode.
100% prive
La conversion Punycode se fait entierement dans ton navigateur grace a l'API native. Aucun serveur implique.
Detection d'homographes
Revele les caracteres Unicode caches dans les domaines suspects. Identifie les tentatives de phishing potentielles.
Instantane
Conversion bidirectionnelle en temps reel. Sans inscription, sans attente, conforme RFC 3492.
Comment ça marche
Trois étapes, sans complications
Saisis le domaine
Tape ou colle un domaine en Unicode (comme cafe.com ou un domaine chinois) ou en Punycode (comme xn--caf-dma.com). L'outil detecte le format automatiquement.
Conversion instantanee
Le domaine est converti entre sa representation Unicode lisible et sa representation ASCII Punycode (xn--...) en utilisant le standard RFC 3492.
Verifie et copie
Copie le resultat pour l'utiliser dans des configurations DNS, des enregistrements de domaine, ou pour verifier si un domaine suspect utilise des caracteres homographes.
FAQ
Des questions ?
Punycode est un algorithme d'encodage defini dans le RFC 3492 (publie en 2003) par l'IETF, concu pour representer les noms de domaine internationalises (IDN) en utilisant uniquement des caracteres ASCII. Le systeme DNS a ete concu a l'origine uniquement pour les caracteres ASCII (lettres a-z, chiffres 0-9 et tiret), ce qui excluait les langues utilisant des accents ou des caracteres non latins (chinois, arabe, cyrillique, etc.). Punycode resout ce probleme en encodant les caracteres Unicode sous forme d'une chaine ASCII commencant par le prefixe xn--. Par exemple, munchen.de devient xn--mnchen-3ya.de.
Le prefixe xn-- est le prefixe ACE (ASCII Compatible Encoding) defini dans le standard IDNA (Internationalizing Domain Names in Applications). Il indique que l'etiquette de domaine qui suit est une representation Punycode de caracteres Unicode. Le prefixe xn-- apparait dans chaque etiquette (partie separee par des points) du domaine qui contient des caracteres non-ASCII. Si l'ensemble du domaine est en Unicode, toutes les etiquettes auront le prefixe. Par exemple, bucher.de a l'etiquette bucher qui en Punycode donne xn--bcher-kva, ce qui produit xn--bcher-kva.de. Le TLD (.de, .com) a rarement besoin d'etre encode.
Une attaque par homographes IDN (aussi appelee attaque par homophones ou usurpation Unicode) se produit quand un attaquant enregistre un domaine qui ressemble visuellement a un domaine legitime mais utilise des caracteres d'un alphabet different. Par exemple, la lettre latine a (U+0061) est visuellement identique a la lettre cyrillique a (U+0430). Un domaine avec un a cyrillique est different du meme domaine avec un a latin, mais ils semblent identiques. Cet outil te permet de verifier si un domaine suspect utilise des caracteres non-ASCII en revelant sa representation Punycode.
L'ICANN (Internet Corporation for Assigned Names and Numbers) a approuve les IDN ccTLDs (noms de domaine de pays internationalises) en 2009 et les IDN gTLDs generiques a partir de 2012. Les premiers IDN ccTLDs a etre actives etaient en arabe (Egypte, Arabie saoudite) et en cyrillique (Russie) en 2010. Aujourd'hui, il existe des TLDs entierement en chinois, arabe, devanagari, hebreu et d'autres scripts. L'ICANN dispose de politiques de securite pour prevenir les attaques par homographes : les bureaux d'enregistrement doivent valider que les domaines ne melangent pas des scripts de langues differentes dans la meme etiquette.
Il existe plusieurs facon de verifier si un domaine utilise Punycode : 1) Utilise cet outil : colle le domaine et tu verras s'il contient des caracteres Unicode caches. 2) Inspecte la barre d'adresse du navigateur : Chrome et Firefox affichent le Punycode (xn--...) dans la barre d'adresse quand ils detectent des attaques par homographes potentielles. 3) Execute dans le terminal : python3 -c "import idna; print(idna.encode('domain.com'))" ou en Node.js : require('punycode').toASCII('domain.com'). 4) Interroge le registre DNS avec nslookup ou dig : le nom affiche peut reveler le Punycode.
Histoire des IDN (ICANN 2003), prevention du domain spoofing et internationalisation du web
L'histoire des noms de domaine internationalises (IDN) commence par la reconnaissance que le DNS, concu dans les annees 1980 par Paul Mockapetris, ne supportait que l'ASCII, excluant les langues de la grande majorite de la population mondiale. Les premiers efforts de standardisation ont debute dans les annees 1990. Le RFC 3492 (Punycode) a ete publie en mars 2003, et le standard IDNA (RFC 3490) la meme annee. L'ICANN a approuve le support des IDN ccTLDs en octobre 2009 apres des annees de debat, et les premiers domaines entierement en arabe ont ete actives en 2010.
Le domain spoofing via des homographes Unicode est une vraie menace de securite. Le cas le plus celebre a ete demontre par Evgeniy Gabrilovich et Alex Gontmakher en 2001, quand ils ont enregistre paypal.com avec un a cyrillique. En 2017, le chercheur Xudong Zheng a demontre qu'il etait possible d'enregistrer un domaine imitant apple.com (en utilisant des caracteres cyrilliques ressemblant a des lettres latines) et d'obtenir un certificat TLS valide, rendant l'attaque pratiquement indiscernable. Les navigateurs modernes ont repondu en affichant le Punycode dans la barre d'adresse quand ils detectent un melange de scripts ou des caracteres de scripts peu courants.
L'internationalisation du web (i18n) va au-dela des domaines. Unicode, developpe depuis 1991 par le Consortium Unicode, definit plus de 140 000 caracteres provenant de pratiquement tous les systemes d'ecriture du monde. L'encodage UTF-8, qui represente Unicode sous forme d'octets compatibles ASCII, est aujourd'hui le standard universel pour le web (plus de 98% des pages web utilisent UTF-8 selon W3Techs). Le support des noms de domaine internationalises complete l'internationalisation de la couche transport : avec les IDN, des URL completes dans des langues natives sont possibles. Le standard WHATWG URL (implemente dans les navigateurs) utilise Punycode en interne pour traiter les domaines Unicode dans les URL.