Ferramentas de Desenvolvimento

Codificador / Decodificador Base64

Codifica texto em formato Base64 ou decodifica uma string Base64 em texto. Amplamente utilizado em anexos de e-mail, tokens JWT, URIs de dados e transferência de dados binários.


[[ labels.error_invalid ]]

Tips

  • O nome Base64 vem do uso de 64 caracteres ASCII imprimíveis (A–Z, a–z, 0–9, +, /). O = no final é um caractere de preenchimento para que o número de bytes seja múltiplo de 3.
  • JWT (JSON Web Token) usa Base64URL — uma variante que substitui + por - e / por _ — para codificar seus dados de forma segura para URLs.
  • URIs de dados em HTML/CSS (data:image/png;base64,iVBOR...) usam Base64 para incorporar recursos diretamente no código-fonte sem requisições adicionais.
  • Base64 é codificação, não criptografia. Qualquer pessoa pode decodificá-lo imediatamente sem nenhuma chave.

Perguntas frequentes

Não. Base64 é codificação, não criptografia. Qualquer pessoa pode decodificá-lo instantaneamente sem nenhuma chave. Use algoritmos como AES ou BCrypt para proteger informações sensíveis.

Sim. Esta ferramenta usa UTF-8 internamente, portanto qualquer caractere Unicode é tratado corretamente.

Base64 converte cada 3 bytes em 4 caracteres, então a saída é aproximadamente 33% maior que o original.

Anexos de e-mail (MIME), URIs de dados em HTML/CSS (data:image/png;base64,...), tokens JWT e transferência de dados binários em APIs de texto.

Curiosidade — Base64, e-mail e a colisão com as URLs

O maior impulsionador da adoção do Base64 foi o e-mail. O SMTP das décadas de 1970–80 só suportava ASCII de 7 bits, então arquivos binários anexados eram corrompidos no trânsito. O MIME resolveu isso codificando dados binários em Base64 como texto simples — convenção ainda usada em todos os anexos de e-mail hoje.

O conjunto de caracteres Base64 inclui + e /, que têm significados especiais em URLs. Para resolver isso, foi criado o Base64URL (+→-, /→_, sem preenchimento). Tokens JWT e OAuth usam Base64URL.

Converter 3 bytes binários em 4 caracteres Base64 significa que a saída é aproximadamente 33% maior que a entrada. Incorporar imagens grandes como URIs de dados infla consideravelmente os arquivos HTML.