ñandú.com.arxn--and-6ma2c.com.armünchen.dexn--mnchen-3ya.decontacto@correo.españa.escontacto@correo.xn--espaa-rta.eshttps://日本語.jp/ページhttps://xn--wgv71a119e.jp/%E3%83%9A%E3%83%BC%E3%82%B8аррӏе.comxn--80ak6aa92e.comLa etiqueta está escrita entera con letras cirílicas o griegas que se ven iguales a letras latinas. Puede hacerse pasar por un dominio conocido: revisa la forma xn-- antes de confiar en el enlace.
Codifica o decodifica cualquier texto con el algoritmo Punycode puro, sin el prefijo xn-- ni la normalización de dominios. Sirve para depurar una implementación propia.
maana-ptaCómo funciona
El DNS solo acepta letras ASCII, dígitos y guiones, así que un dominio como ñandú.com.ar no puede viajar tal cual. Los dominios internacionalizados (IDN) lo resuelven con Punycode (RFC 3492): cada etiqueta que tiene caracteres fuera de ASCII se codifica con un algoritmo que conserva las letras comunes y añade al final la posición de las especiales, y se le antepone el prefijo xn--. Así, ñandú pasa a ser xn--and-6ma2c.
Antes de codificar, IDNA normaliza el nombre: lo pasa a minúsculas, unifica las formas Unicode y convierte puntos alternativos como el 。 japonés. Esta herramienta usa el mismo mapeo (UTS #46) que aplica el navegador al abrir una dirección, por lo que el resultado coincide con lo que acaba pidiendo al DNS. En los correos convierte solo el dominio y en las URL solo el host.
Además, desglosa cada etiqueta con su longitud y las escrituras que usa, y avisa cuando un dominio mezcla alfabetos o está escrito con letras cirílicas o griegas idénticas a las latinas: es la base de los ataques homógrafos, en los que un enlace aparenta ser de un sitio conocido.
Ejemplos
ñandú.com.arxn--and-6ma2c.com.arSolo cambia la etiqueta que tiene caracteres especiales; com y ar quedan igual. Es la forma que hay que introducir en el DNS y en los SAN de un certificado.faß.dexn--fa-hia.deCon IDNA2008 la ß alemana es una letra válida y se codifica. Con el estándar anterior se convertía en ss y apuntaba a fass.de, un dominio distinto: por eso algunos sistemas antiguos resuelven otra cosa.аррӏе.comxn--80ak6aa92e.comEl homógrafo que publicó Xudong Zheng en 2017: cinco letras cirílicas que se ven exactamente como apple. Desde entonces, Chrome y Firefox muestran este tipo de dominios en su forma xn--.пример.рфxn--e1afmkfd.xn--p1aiTambién los dominios de primer nivel pueden ser internacionales: .рф es el de Rusia en cirílico y en el DNS se escribe xn--p1ai.Casos de uso
- Obtener la forma xn-- de un dominio con tildes o eñe para crear registros en el DNS, en la configuración de nginx o Apache o en los SAN de un certificado.
- Entender qué dominio real hay detrás de un xn-- que aparece en un log, en un informe de phishing o en la barra del navegador.
- Revisar un enlace sospechoso para detectar letras cirílicas o griegas que imitan a las latinas.
- Convertir el dominio de una dirección de correo internacionalizada para un servidor que no admite SMTPUTF8.
- Comprobar que un dominio internacional no supere los 63 caracteres por etiqueta una vez codificado.
Preguntas frecuentes
¿Qué significa el prefijo xn--?
Es el prefijo ACE (ASCII Compatible Encoding) que indica que la etiqueta está en Punycode. Las etiquetas con guiones en la tercera y cuarta posición quedaron reservadas para esos prefijos, así que los registros no permiten crear un dominio que empiece por xn-- si no es un IDN válido.
¿Qué forma uso en el DNS, en el servidor web y en el certificado?
La forma ASCII, con xn--, en todos los sitios técnicos: registros DNS, server_name de nginx, ServerName de Apache, SAN del certificado y cabeceras Host. La forma Unicode es solo para mostrarla a las personas; los navegadores la convierten antes de hacer la consulta.
¿Qué es un ataque homógrafo?
Consiste en registrar un dominio que se ve igual a otro usando letras de otro alfabeto, como la a cirílica en lugar de la latina. Los navegadores muestran la forma xn-- cuando una etiqueta mezcla escrituras o se parece a un dominio conocido. Si un enlace se ve normal pero su forma ASCII empieza por xn--, desconfía.
¿Se pueden usar tildes en una dirección de correo?
En el dominio sí, y se puede convertir a xn-- para cualquier servidor. La parte anterior a la arroba es otra historia: con caracteres no ASCII necesita que todos los servidores del camino admitan SMTPUTF8 (RFC 6531), y no tiene una forma Punycode equivalente.
¿Por qué ha cambiado mi dominio con mayúsculas?
Los nombres de dominio no distinguen mayúsculas, e IDNA pasa todo a minúsculas antes de codificar: MÜNCHEN.de y münchen.de son el mismo dominio, xn--mnchen-3ya.de. Punycode puro sí conserva las mayúsculas; por eso el convertidor sin prefijo da resultados distintos.