Convertitore IDN Punycode

Converti facilmente un IDN in Punycode e viceversa.

5 di 2 valutazioni
Convertitore IDN Punycode

Il Convertitore IDN Punycode è uno strumento gratuito che converte i nomi di dominio internazionalizzati in formato ASCII Punycode e riconverte il Punycode in testo Unicode leggibile.

Che cos'è il Punycode e perché esiste?

Il Punycode fa parte della conversione IDNA dalle etichette Unicode U-label alle etichette ASCII A-label. Consente ai nomi che contengono lettere come ü, é o 漢 di essere gestiti da sistemi originariamente progettati per lettere latine di base, cifre e trattini.

Una A-label IDNA inizia con xn--. Il prefisso indica alle applicazioni compatibili con IDNA che i caratteri restanti rappresentano una U-label codificata in Punycode. I punti restano separatori, quindi ogni parte del dominio viene convertita separatamente.

Il Punycode viene utilizzato nell'ambito dell'Internationalised Domain Names in Applications, generalmente abbreviato in IDNA. IDNA gestisce anche la convalida e il trattamento dei caratteri, mentre Punycode fornisce la rappresentazione ASCII di un'etichetta Unicode idonea.

Il Punycode è una codifica, non una crittografia. Chiunque può riconvertire la forma ASCII in Unicode, quindi non offre alcuna riservatezza e non deve mai essere usato per nascondere informazioni.

Schema: il testo passa attraverso lo strumento Convertitore IDN Punycode in entrambe le direzioni

Come si converte un nome di dominio internazionalizzato?

Inserisci il testo Unicode in Converti in Punycode/ASCII oppure le A-label ASCII in Converti in IDN/Testo. Il risultato corrispondente viene visualizzato in Punycode/ASCII o IDN/Text.

  1. Copia solo il nome di dominio o l'etichetta da convertire, senza virgolette intorno.
  2. Usa Converti in Punycode/ASCII per il testo Unicode che contiene caratteri accentati o non latini.
  3. Usa Converti in IDN/Testo per le A-label ASCII.
  4. Controlla ogni etichetta convertita prima di inserirla nel DNS, nelle impostazioni email o nella configurazione di un'applicazione.
Lo strumento Convertitore IDN Punycode su digily.link, con il suo modulo di inserimento

Il convertitore utilizza le funzioni PHP idn_to_ascii e idn_to_utf8. L'elaborazione avviene sul server. I dati inseriti vengono inviati al server tramite HTTPS e non sono memorizzati.

Esempi pratici di conversione dei domini

Un semplice esempio mostra il rapporto tra il nome visualizzato e la forma compatibile con il DNS.

Input münchen.de

Output xn--mnchen-3ya.de

Convertendo il risultato nella direzione opposta si ottiene münchen.de. L'etichetta de, composta solo da caratteri ASCII, non richiede alcuna conversione, mentre quella che contiene ü diventa un'etichetta xn--.

L'input deve essere un nome di dominio valido. Il formato sottostante gestisce i casi più comuni nel modo seguente:

  • Lettere accentate e non latine: le etichette Unicode idonee vengono rappresentate in ASCII tramite IDNA e Punycode.
  • Punti: ogni punto separa due etichette. Un dominio può quindi contenere sia normali etichette ASCII sia etichette codificate.
  • Numeri e trattini comuni: sono già caratteri ASCII e in genere restano leggibili, nel rispetto delle regole sintattiche dei nomi di dominio.
  • Spazi: gli spazi non sono validi nelle normali etichette host DNS. Se ne hai inserito uno per errore, rimuovilo invece di aspettarti che Punycode lo conservi come parte del dominio.
  • Punteggiatura: il punto separa le etichette, mentre i caratteri appartenenti al percorso, alla porta o alla stringa di query di un URL non fanno parte del nome host.
  • Input vuoto o molto lungo: un valore vuoto non contiene alcun dominio da convertire. Il DNS limita inoltre ogni etichetta codificata a 63 ottetti, quindi un'etichetta Unicode visivamente breve può diventare troppo lunga dopo la conversione.
Esempio di risultato prodotto dallo strumento Convertitore IDN Punycode

Perché la conversione Punycode non riesce o restituisce testo inatteso?

Di solito la conversione non riesce perché l'input non è un testo IDN valido, contiene una A-label non corretta oppure è già stato sottoposto a un'altra codifica. Durante la conversione in IDN/Text, un normale input ASCII che non è una A-label può semplicemente restare invariato. Prima di modificare manualmente i caratteri, controlla se l'origine contiene U-label Unicode, A-label ASCII o un nome host con codifica URL.

  • A-label non valide o codifica errata: un'etichetta xn-- non corretta può impedire la conversione. Base64, il testo esadecimale e gli URL con codifica percentuale non sono Punycode.
  • Caratteri non supportati: Punycode può rappresentare valori Unicode, ma le regole IDNA e i registri dei domini possono rifiutare determinati caratteri, combinazioni o sistemi di scrittura.
  • Etichetta troppo lunga: il DNS limita ogni etichetta codificata a 63 ottetti, quindi un'etichetta Unicode può diventare troppo lunga dopo la conversione.
  • Input parziale: copiare insieme al nome host parentesi, un numero di porta o parte di un attributo HTML può rendere il valore non valido.
  • Input con doppia codifica: se i caratteri di un dominio Punycode sono stati codificati in percentuale in modo esplicito o non canonico, possono comparire come sequenze percentuali. Decodifica prima quel livello dell'URL con il Decodificatore URL, quindi converti il dominio ottenuto.
  • Dati binari anziché testuali: la conversione IDN funziona con il testo Unicode dei nomi di dominio. Byte arbitrari di un file possono non superare la convalida o produrre caratteri privi di significato se vengono interpretati come testo.

Dove si incontra il Punycode?

Il Punycode si incontra soprattutto nei nomi di dominio, nei record DNS, nella gestione degli indirizzi da parte dei browser e nei sistemi che memorizzano i nomi host come ASCII. Un browser può mostrare il nome internazionalizzato leggibile oppure mantenere la forma xn--, a seconda delle proprie regole di sicurezza e dei caratteri presenti.

Negli indirizzi email è possibile usare Punycode nel dominio dopo il segno @. Non codifica il nome della casella prima del segno @. I payload JSON e le stringhe di query possono contenere Punycode quando includono un nome host, ma la sintassi JSON e quella delle stringhe di query non richiedono Punycode per il testo generico.

Gli URI di dati usano normalmente la codifica percentuale o Base64 per il proprio contenuto. Il Punycode compare solo se il testo incluso contiene un nome host internazionalizzato. Allo stesso modo, usa il Codificatore URL per i valori del percorso o della query e Punycode per il nome host.

Domande frequenti

Posso incollare un URL completo in un convertitore IDN?

È più sicuro estrarre il nome host e convertire soltanto quella parte. Lo schema, la porta, il percorso, il frammento e la query seguono regole sintattiche distinte, e i caratteri presenti in queste sezioni possono richiedere la codifica URL anziché Punycode.

Un dominio con un'etichetta xn-- indica che il sito non è sicuro?

No. Molti domini internazionalizzati legittimi usano etichette xn--. Tuttavia, caratteri visivamente simili appartenenti a sistemi di scrittura diversi possono essere usati per creare nomi ingannevoli. Prima di inserire password o dati di pagamento, controlla quindi l'ortografia decodificata e verifica che corrisponda all'organizzazione prevista.

Si possono usare emoji in un dominio Punycode?

Le emoji non sono consentite nelle etichette di dominio IDNA, anche se l'algoritmo Punycode può codificarne i punti di codice. Le politiche dei registri dei domini possono imporre ulteriori restrizioni sui sistemi di scrittura e sui simboli ammessi.

Perché il browser mostra Punycode invece di Unicode?

I browser possono mantenere la forma ASCII quando un'etichetta combina sistemi di scrittura diversi, contiene caratteri associati a tentativi di impersonificazione o non rispetta i criteri di visualizzazione. È una misura di sicurezza relativa alla visualizzazione, non la prova che la conversione sia errata.

Un nome convertito funzionerà sicuramente nel DNS?

No. Una conversione riuscita non dimostra che il dominio sia registrato, disponibile o consentito dal registro competente. Prima di usare il risultato, verifica la lunghezza dell'etichetta, controlla l'ortografia leggibile e accertati che il registro accetti i caratteri presenti.

Strumenti popolari