O que faz
É um códec bidirecional para cinco codificações de texto. Digite um texto e ele retorna, de uma vez, as formas Base64, Base64 seguro para URL, Base32, hexadecimal e codificação porcentual; cole uma string codificada e ele decodifica de volta para texto. A decodificação é tolerante: aceita preenchimento e espaços em branco ausentes, e quando o fluxo de bytes decodificado não é texto UTF-8 válido, o resultado é sinalizado como binário em vez de ser exibido como caracteres corrompidos. Tudo roda no seu navegador; nada é enviado.
As cinco codificações
Todas mapeiam entre texto (como bytes) e uma representação segura em ASCII, cada uma definida por um padrão:
- Base64 (RFC 4648, seção 4) usa o alfabeto
A-Z a-z 0-9 + /e completa com=. Aumenta os dados em cerca de um terço e é a codificação por trás das credenciais HTTP Basic,base64(usuário:senha), definida na RFC 7617. - Base64 seguro para URL (RFC 4648, seção 5) troca
+e/por-e_e geralmente descarta o preenchimento=, de modo que a string fica segura dentro de URLs e nomes de arquivo. É a codificação usada em cada segmento de um JWT. - Base32 (RFC 4648, seção 6) usa
A-Z 2-7e completa com=. Não diferencia maiúsculas de minúsculas e evita caracteres facilmente confundíveis, por isso aparece em lugares como segredos TOTP. - Hexadecimal (Base16) (RFC 4648, seção 8) usa
0-9 A-F, dois caracteres por byte. - Codificação porcentual (RFC 3986, seção 2) mantém o conjunto de caracteres não reservados (
A-Z a-z 0-9 - . _ ~) como está e codifica todos os outros bytes como%XX. É a codificação de URL.
Preenchimento, espaços e resultados binários
Base64 e Base32 normalmente são preenchidos com = até um número inteiro de blocos, mas strings do mundo real frequentemente chegam sem o preenchimento ou com quebras de linha inseridas, então o decodificador aceita ambos. Quando você decodifica um valor cujos bytes não formam texto UTF-8 válido (um blob comprimido, uma imagem, uma chave bruta), a ferramenta avisa que o resultado é binário em vez de exibi-lo como texto corrompido, para que você saiba que a decodificação funcionou mesmo que o conteúdo não seja legível.
Exemplos
- O texto
hellovira Base64aGVsbG8=, Base64 seguro para URLaGVsbG8, Base32NBSWY3DP, hex68656c6c6fe codificação porcentualhello(todos os seus caracteres são não reservados). - Decodificar o valor Base64
dXNlcjpwYXNz, uma credencial HTTP Basic típica, retornauser:pass.
Como usar
Digite um texto para ver as cinco codificações lado a lado, ou cole um valor codificado para decodificá-lo. Como o códec é uma função pura da entrada, o mesmo texto sempre produz o mesmo resultado.