Como usar
- Escolha Codificar ou Decodificar.
- Cole o texto ou o Base64 na caixa de entrada. O resultado se atualiza enquanto você digita.
- Para links, nomes de arquivo ou tokens no estilo JWT, ative URL-safe (vale para a codificação; ao decodificar, os dois alfabetos são aceitos automaticamente).
- Copie o resultado.
Como funciona
Primeiro o texto é transformado em bytes com UTF-8. Cada grupo de 3 bytes (24 bits) é dividido em quatro partes de 6 bits, e cada parte escolhe um caractere do alfabeto A–Z a–z 0–9 + /. Quando o último grupo tem só 1 ou 2 bytes, a saída é completada com dois ou um sinal =.
Na decodificação o caminho é o inverso: espaços e quebras de linha são descartados, - e _ são lidos como + e /, o = final é opcional, e os bytes resultantes precisam formar texto UTF-8 válido.
Exemplo
foobar são os bytes 66 6F 6F 62 61 72 e vira Zm9vYmFy. Já fo tem só dois bytes, então vira Zm8=; com URL-safe ligado, o = some e fica Zm8.
Com acentos: São Paulo tem 9 letras, mas 10 bytes em UTF-8, porque o ã ocupa dois (C3 A3). Sobram 10 − 9 = 1 byte no último grupo, por isso o resultado termina com dois sinais de igual: U8OjbyBQYXVsbw==. Em URL-safe ele aparece como U8OjbyBQYXVsbw.
Dicas e erros comuns
- Codificar
édáw6k=, porque em UTF-8 ele ocupa dois bytes (C3 A9). Ferramentas que usam Latin-1 (ISO-8859-1) geram um resultado diferente e mais curto, e o texto decodificado aparece com caracteres estranhos no lugar dos acentos. - Um texto que termina em
=ou==é Base64 com preenchimento; o URL-safe normalmente não tem preenchimento, e este decodificador aceita os dois. - Se o Base64 for de um arquivo ou imagem, a decodificação avisa que os bytes não são texto. Para arquivos, use uma ferramenta que trate os dados como bytes, não como texto.
- Base64 não protege nada: quem receber o texto consegue ler o conteúdo original em segundos.