Codificador e Decodificador Base64

Converta texto e arquivos para Base64 e vice-versa. Lida corretamente com Unicode, suporta base64url (seguro para URLs) e explica exatamente por que uma entrada inválida falha.

Roda no seu navegadorSem cadastroNada é enviado

Saída Base64

Como usar: Base64 Encode / Decode

  1. Escolha Codificar ou Decodificar.
  2. Digite ou cole sua entrada. O resultado é atualizado enquanto você digita.
  3. Para URLs, JWTs e nomes de arquivo, marque Seguro para URL para usar - e _ e, se quiser, remova o padding =.
  4. Para incorporar uma imagem ou fonte, clique em Codificar arquivo e mantenha Saída como data URI marcado.
  5. Copie o resultado ou use Inverter para mandá-lo de volta na direção oposta.

Como o Base64 funciona

O Base64 representa dados binários usando 64 caracteres ASCII imprimíveis: A-Z, a-z, 0-9, + e /. Cada 3 bytes de entrada viram 4 caracteres, então os dados codificados ficam cerca de 33% maiores. Quando o tamanho da entrada não é múltiplo de 3, um ou dois sinais = completam a saída (padding). Base64 é uma codificação, não criptografia: qualquer pessoa pode decodificá-lo.

Base64 padrão vs. base64url

Os caracteres + e / têm significado especial em URLs e caminhos de arquivo. O alfabeto seguro para URLs da RFC 4648 §5 os substitui por - e _ e geralmente omite o padding. JWTs, muitos parâmetros OAuth e algumas APIs de nuvem usam base64url. O decodificador aqui aceita os dois alfabetos automaticamente.

Unicode e a armadilha do btoa()

Nos navegadores, btoa("café") funciona, mas btoa("日本") lança um erro, porque btoa só aceita Latin-1. O jeito certo é primeiro codificar o texto em bytes UTF-8, que é o que esta ferramenta faz. Em JavaScript: btoa(String.fromCharCode(...new TextEncoder().encode(text))), ou Buffer.from(text).toString('base64') no Node.js.

Usos comuns

  • Data URIs para imagens pequenas e fontes em CSS ou HTML
  • Cabeçalhos de autenticação HTTP Basic (user:password codificado)
  • Anexos binários em payloads JSON e em e-mails (MIME)
  • Secrets do Kubernetes, que armazenam valores em Base64

Perguntas frequentes

Base64 é criptografia?
Não. Base64 é uma codificação reversível, sem chave. Qualquer pessoa pode decodificá-lo, então nunca o use para esconder senhas ou segredos.
Por que meu Base64 não decodifica?
As causas mais comuns são caracteres fora do alfabeto (muitas vezes uma aspa ou quebra de linha que veio junto ao copiar), uma string truncada ou texto misturado que não é Base64. A mensagem de erro mostra a posição do primeiro problema.
A saída decodificada parece lixo. Por quê?
Os dados provavelmente são binários, por exemplo uma imagem, um arquivo compactado ou bytes criptografados, e não texto. A ferramenta detecta isso, mostra um hex dump e permite baixar os bytes brutos.
Preciso do padding =?
Muitos decodificadores, incluindo este, funcionam sem ele, porque o tamanho indica quantos bytes faltam. Alguns decodificadores mais rígidos exigem o padding. JWTs e a maioria dos usos de base64url omitem o padding.
Meus arquivos são enviados para algum lugar?
Não. Os arquivos são lidos e codificados localmente com a File API do navegador. Nada é enviado a um servidor.

Ferramentas relacionadas