Skip to main content
CheckTown
Conversores

Conversor Punycode: Nomes de domínio internacionalizados

Publicado 5 min de leitura
Neste artigo

O que e Punycode?

Punycode e uma sintaxe de codificação definida no RFC 3492 que converte caracteres Unicode num conjunto limitado de caracteres ASCII usado pelo Sistema de Nomes de Dominio (DNS). Permite nomes de dominio internacionalizados (IDN) — nomes de dominio com caracteres não-ASCII — funcionar na infraestrutura DNS baseada em ASCII.

Um dominio codificado em Punycode tem o prefixo xn-- (o prefixo ACE) para sinalizar que contem Unicode codificado. Um conversor Punycode traduz entre a forma Unicode legivel e a forma ASCII compativel com DNS.

Como funciona a codificação Punycode

O Punycode usa um algoritmo bootstring para representar code points Unicode como uma sequência de caracteres ASCII basicos.

  • Separacao Unicode — o codificador identifica quais caracteres sao ASCII basico (passam sem alteração) e quais sao não-ASCII (precisam de codificação)
  • Codificação delta — os caracteres não-ASCII sao codificados como deltas numericos representando a sua posição e code point
  • Prefixo ACE — a string codificada final recebe o prefixo xn-- para a marcar como Punycode

Experimente gratuitamente — sem cadastro

Converter Punycode →

Quando usar Punycode

A conversão Punycode e necessaria ao trabalhar com nomes de dominio internacionalizados em sistemas que so suportam ASCII.

  • Registo de dominios — os registradores requerem a forma Punycode para registar dominios IDN
  • Email com dominios internacionais — endereços com dominios não-ASCII devem ser convertidos para a forma xn-- para entrega SMTP
  • Configuração DNS — ficheiros de zona DNS usam a forma Punycode para qualquer rotulo de dominio com caracteres não-ASCII

Perguntas frequentes

Punycode e o mesmo que codificação URL?

Não. A codificação URL converte caracteres em sequências hex %XX para caminhos URL. O Punycode codifica especificamente rotulos de dominio Unicode em ASCII para DNS. Resolvem problemas diferentes.

O Punycode pode ser usado para phishing?

Sim, isto e conhecido como ataque homografo IDN. Os atacantes registam dominios com caracteres Unicode identicos a letras latinas. Os navegadores modernos mostram a forma xn-- para dominios suspeitos.

Todos os navegadores suportam nomes de dominio internacionalizados?

Sim. Todos os navegadores modernos convertem automaticamente dominios IDN para Punycode para resolução DNS e mostram a forma Unicode na barra de endereço.

Ferramentas relacionadas