EN FR DE ES PT

Conversor Punycode

Converta nomes de dominio internacionalizados (IDN) entre Unicode e Punycode. Codifique dominios com caracteres nao-ASCII para sua representacao xn--, ou decodifique dominios Punycode de volta para Unicode legivel. Usa uma implementacao pura em JavaScript do algoritmo bootstring RFC 3492 — nenhum dado sai do seu navegador.

Unicode para Punycode

Digite um nome de dominio internacionalizado para codifica-lo em Punycode.

Punycode para Unicode

Digite um nome de dominio Punycode para decodifica-lo de volta para Unicode.

Como Funciona

Punycode e definido na RFC 3492 e e a codificacao usada por Nomes de Dominio Internacionalizados em Aplicacoes (IDNA). Ele converte strings Unicode no conjunto limitado de caracteres ASCII permitidos em rotulos DNS (a-z, 0-9 e hifens).

O algoritmo funciona primeiro separando os caracteres ASCII basicos dos code points nao-ASCII. Os caracteres basicos sao copiados diretamente, seguidos por um delimitador (-). Os code points nao-ASCII sao entao codificados como uma serie de inteiros de comprimento variavel usando uma codificacao generalizada base-36 com bias adaptativo.

Para nomes de dominio, cada rotulo (parte entre pontos) e processado individualmente. Rotulos contendo caracteres nao-ASCII sao prefixados com xn-- para sinalizar que estao codificados em Punycode. Rotulos que ja sao ASCII puro permanecem inalterados.

Perguntas Frequentes

O que e Punycode?

Punycode e uma sintaxe de codificacao definida na RFC 3492 que representa strings Unicode usando apenas caracteres ASCII. E usado principalmente para codificar nomes de dominio internacionalizados (IDN) para que possam funcionar dentro do Sistema de Nomes de Dominio somente ASCII. Por exemplo, munchen.de se torna xn--mnchen-3ya.de.

O que significa o prefixo xn--?

O prefixo xn-- e o prefixo ACE (ASCII Compatible Encoding) especificado pelo padrao IDNA. Ele sinaliza para resolvedores DNS e aplicacoes que o rotulo do dominio esta codificado em Punycode e deve ser decodificado para exibir o texto Unicode original ao usuario.

Por que o Punycode e necessario para nomes de dominio?

O Sistema de Nomes de Dominio foi projetado para funcionar apenas com caracteres ASCII (letras a-z, digitos 0-9 e hifens). O Punycode supera essa limitacao codificando caracteres Unicode em ASCII, permitindo que pessoas registrem e usem nomes de dominio em scripts como arabe, chines, cirilico, devanagari e muitos outros.

A conversao e feita localmente?

Sim. Toda a codificacao e decodificacao e realizada inteiramente no seu navegador usando uma implementacao pura em JavaScript do algoritmo bootstring RFC 3492. Nenhum dado e enviado para qualquer servidor.

Ferramentas Relacionadas