Un dominio come perché.it non esiste nel DNS in questa forma: la «é» finale, come qualsiasi altro accento italiano, va sempre convertita in una stringa xn-- prima che la richiesta raggiunga i server DNS.
Accenti gravi e acuti: una particolarità italiana
L'italiano usa sia l'accento grave (à, è, ì, ò, ù) sia quello acuto (é, talvolta ó), a differenza di lingue come lo spagnolo che si affidano quasi solo alla dieresi sulla "ü" o alla tilde sulla "ñ". Per Punycode questo non cambia nulla dal punto di vista dell'algoritmo — ogni carattere accentato ha comunque un proprio code point Unicode univoco — ma significa che una parola come città o perché genera una codifica diversa a seconda di quale accento, grave o acuto, sia effettivamente presente.
Perché non si è semplicemente passati a UTF-8 nel DNS
Aggiornare il DNS per accettare UTF-8 in modo nativo avrebbe richiesto un aggiornamento sincronizzato di tutti i server dei nomi del pianeta. Punycode evita il problema: solo il browser e il registrar devono comprendere la codifica, mentre l'infrastruttura DNS sottostante continua a vedere solo ASCII.
Casi d'uso comuni
- Verificare quale dominio reale si nasconde dietro una stringa
xn--...ricevuta via email o link. - Convertire un dominio con accenti nella sua forma Punycode prima di configurarlo in un pannello DNS che accetta solo ASCII.
- Diagnosticare certificati o indirizzi email con IDN.
Il rischio degli omoglifi riguarda anche i marchi italiani
La «а» cirillica è indistinguibile dalla «a» latina nella maggior parte dei font, e questo permette di registrare domini come «аpple.com» con una lettera cirillica per imitare un marchio legittimo. Quando un'etichetta mescola alfabeti in modo sospetto, i browser moderni mostrano direttamente la forma xn-- invece di decodificarla, proprio per evitare questo tipo di inganno.