Codificação Base64 explicada: o que é e quando usar
Atualizado 2026-07-06
Base64 é um daqueles termos que aparece o tempo todo — em data URIs, anexos de e-mail, tokens de API e arquivos de configuração — mas raramente é explicado com clareza. É frequentemente confundido com criptografia, o que leva a erros de segurança reais. Este guia explica o que o Base64 realmente faz, por que aumenta os dados, onde é genuinamente útil e os mitos que vale desaprender.
O que é Base64
Base64 é uma codificação, não criptografia nem compressão. Seu trabalho é representar dados binários arbitrários — uma imagem, um arquivo, qualquer sequência de bytes — usando apenas 64 caracteres de texto “seguros”: A–Z, a–z, 0–9, mais + e / (com = para preenchimento). Cada um desses caracteres sobrevive a sistemas construídos para lidar com texto simples, que é a própria razão de o Base64 existir.
Por que é necessário
Muitos sistemas antigos, mas ainda críticos — o e-mail é o exemplo clássico — foram projetados para mover texto, não binário bruto. Enviar binário diretamente por eles pode corromper os dados: certos valores de byte são interpretados como caracteres de controle, removidos ou distorcidos. O Base64 contorna o problema traduzindo o binário para uma forma de texto que passa intacta, e traduzindo-o de volta na outra ponta.
Conceitualmente, a ida e volta é assim:
dados binários → texto Base64 → dados binários (original) (seguro para enviar) (cópia idêntica)
Por que o Base64 aumenta os dados em ~33%
Não há almoço grátis. O Base64 pega três bytes (24 bits) de entrada e os divide em quatro grupos de 6 bits, cada um mapeado para um dos 64 caracteres. Três bytes entram, quatro caracteres saem — então a saída codificada é cerca de um terço maior que o original. Esse custo é o preço de tornar o binário seguro para transmitir como texto, e é por isso que você não deve codificar arquivos grandes em Base64 sem um bom motivo.
Onde você realmente vai ver
Data URIs
Você pode embutir uma imagem pequena diretamente em HTML ou CSS como um data URI em Base64, evitando uma requisição de rede separada:
<img src="data:image/png;base64,iVBORw0KGgoAAAANSUh..." />
É prático para ícones minúsculos, mas por causa da penalidade de 33% de tamanho é uma má escolha para qualquer coisa grande.
Anexos de e-mail
Nos bastidores, os anexos de e-mail são codificados em Base64 para que arquivos binários viajem intactos pelo sistema de e-mail baseado em texto.
Tokens e configuração
Tokens e credenciais são frequentemente codificados em Base64 para caber com segurança dentro de cabeçalhos, URLs ou arquivos de configuração de texto. Um JWT (JSON Web Token), por exemplo, são três seções codificadas em Base64 unidas por pontos — que é exatamente por que um decodificador de JWT consegue ler seu conteúdo instantaneamente.
O mito da segurança
Isto é o mais importante de entender: Base64 não é criptografia e não oferece segurança alguma. Não há chave nem segredo — qualquer um pode decodificar Base64 de volta aos dados originais em uma fração de segundo. Se você vir uma senha ou chave de API “protegida” apenas por Base64, trate-a como se estivesse em texto simples, porque efetivamente está.
O Base64 responde à pergunta “como movo esses dados com segurança por um canal de texto?” — não “como mantenho esses dados em segredo?”. Para sigilo você precisa de criptografia de verdade. É comum combinar os dois: criptografe primeiro, depois codifique em Base64 o resultado criptografado para poder transmiti-lo como texto.
Base64 e URLs
O Base64 padrão usa + e /, que têm significados especiais em URLs e podem se corromper ao serem passados como parâmetros de consulta. Uma variante chamada Base64URL os troca por - e _ e descarta o preenchimento, tornando a saída segura para colocar direto em uma URL. Se você também está lidando com caracteres como espaços ou e-comerciais em uma URL, isso é trabalho da codificação de URL — uma ferramenta diferente para um problema diferente.
Codificar e decodificar você mesmo
Você raramente precisa fazer Base64 à mão, mas frequentemente precisa inspecioná-lo ou produzi-lo — ler um data URI, checar o que há dentro de um token ou criar uma imagem embutida. Nosso codificador e decodificador de Base64 converte texto em qualquer direção instantaneamente e inteiramente no seu navegador, então até valores sensíveis nunca saem do seu dispositivo. Cole Base64 para ver o original, ou cole texto para obter a forma codificada.
O resumo em uma linha
O Base64 transforma binário em texto seguro e de volta, ao custo de cerca de 33% mais de tamanho, e oferece zero sigilo. Use-o para transportar dados, nunca para protegê-los.
Mais de Formatos de dados & codificação
Ver todos os guias de Formatos de dados & codificação →Ferramentas mencionadas neste guia