Codificador e Decodificador de Base64

Codifique texto em Base64 e decodifique de volta — seguro para UTF-8, inteiramente no seu navegador.

Como usar

  1. Cole seu texto — texto comum para codificar, ou uma string Base64 para decodificar.
  2. Clique em "Codificar" ou "Decodificar". Acentos, emojis e qualquer texto Unicode são tratados corretamente (seguro para UTF-8).
  3. Copie ou baixe o resultado. A conversão acontece localmente — nada é enviado a servidor algum.

Sobre esta ferramenta

Base64 representa dados binários usando 64 caracteres imprimíveis (A–Z, a–z, 0–9, + e /), para que possam viajar com segurança por canais feitos para texto: payloads JSON, cabeçalhos HTTP, data URIs, anexos de e-mail, autenticação básica. Cada 3 bytes de entrada viram 4 caracteres de saída, e é por isso que o Base64 é cerca de 33% maior que os dados originais.

As funções clássicas de JavaScript btoa e atob são anteriores às strings com suporte a Unicode e corrompem qualquer caractere fora do Latin-1 — o famoso erro "Character Out Of Range" com acentos ou emojis. Esta ferramenta evita isso por completo convertendo o texto com TextEncoder e TextDecoder, então "coração" e "🚀" codificam e decodificam exatamente como bytes UTF-8, o comportamento que toda API moderna espera.

Uma coisa que Base64 não é: criptografia. Codificar é uma representação reversível, não um segredo — qualquer um pode decodificar. Use para transportar dados intactos, nunca para protegê-los. Sua entrada aqui nunca sai da página, o que torna a ferramenta segura até para tokens e chaves que você está depurando.

A fórmula

Cada grupo de 3 bytes (24 bits) é dividido em quatro valores de 6 bits, cada um mapeado para um dos 64 caracteres. Entradas não divisíveis por 3 recebem "=" de preenchimento — por isso strings Base64 costumam terminar com = ou ==.

Perguntas frequentes

Base64 é criptografia?

Não. É uma codificação reversível que qualquer um pode decodificar. Ela protege a integridade dos dados no transporte, não a confidencialidade.

Por que a saída termina com "="?

Preenchimento (padding). O Base64 processa a entrada em grupos de 3 bytes; quando o comprimento não é múltiplo de 3, um ou dois "=" completam o grupo final.

Por que acentos quebram com btoa em JavaScript?

btoa só aceita caracteres Latin-1. O texto precisa antes ser convertido em bytes UTF-8 (TextEncoder) — exatamente o que esta ferramenta faz por você.

Meu texto é enviado para algum servidor?

Não. A codificação e a decodificação rodam inteiramente no seu navegador. A página não faz nenhuma requisição de rede com os seus dados.

Ferramentas relacionadas

Links longos? Encurte de graça

O Vai.la transforma qualquer URL em um link curto com estatísticas de cliques, QR Code e seu próprio biolink.

O Vai.la não se responsabiliza pelo uso das ferramentas nem por decisões tomadas com base nos seus resultados.