ByteCompress

Codificador Base64

Converta texto simples ou strings binárias em saída codificada em Base64. Suporta alfabetos padrão e seguros para URL conforme RFC 4648, e lida com UTF-8 completo, incluindo emojis e scripts não latinos.

0 chars
FreeClient-sideNo signup

Base64 adiciona cerca de 33% ao tamanho dos dados. Essa troca existe porque dados binários precisam sobreviver em canais apenas de texto, como cabeçalhos de email, cargas JSON e cabeçalhos de autorização HTTP. Definido na RFC 4648, Base64 usa um alfabeto de 64 caracteres: A-Z, a-z, 0-9, mais + e / (ou - e _ no modo seguro para URL). Este codificador baseado em navegador processa sua entrada inteiramente em seu dispositivo usando as APIs integradas btoa() e TextEncoder. Strings privadas, tokens e credenciais nunca são enviadas a nenhum servidor.

Como Codificar para Base64

  1. Digite ou cole o texto que deseja codificar no campo de entrada.
  2. Selecione o modo de codificação Padrão ou Seguro para URL.
  3. A saída codificada em Base64 aparece instantaneamente no painel de saída.
  4. Clique em Copiar para copiar o resultado para a área de transferência.

Como Funciona a Codificação Base64

O Alfabeto de 64 Caracteres

Base64 usa um alfabeto de 64 caracteres: A-Z (26), a-z (26), 0-9 (10) e dois caracteres adicionais. Base64 padrão (RFC 4648 §4) usa + e /. Base64 seguro para URL (RFC 4648 §5) substitui esses por - e _. A codificação pega três bytes de entrada (24 bits), os divide em quatro grupos de 6 bits e mapeia cada valor de 6 bits para o caractere correspondente do alfabeto. É por isso que o comprimento da saída Base64 é sempre um múltiplo de 4.

Preenchimento

Como Base64 processa dados em grupos de 3 bytes, comprimentos de entrada que não são múltiplos de 3 requerem preenchimento. Um byte restante produz == no final. Dois bytes restantes produzem =. O preenchimento é necessário na Base64 padrão, mas muitas vezes é removido em implementações seguras para URL, especialmente em JWTs.

Exemplo

Entrada

Olá, Mundo!

Saída (Base64 Padrão)

T2xhLCBNdW5kYSE=

Os dois caracteres de preenchimento = aparecem porque "Olá, Mundo!" tem 13 bytes - 13 mod 3 = 1, então um byte fica no grupo final.

Casos de Uso Comuns

  • Autenticação Básica HTTP - cabeçalhos Authorization: Basic requerem username:password codificados em Base64
  • Imagens inline em HTML/CSS - URIs de dados: data:image/png;base64,iVBORw0KGgo...
  • Tokens JWT - As seções de cabeçalho e carga útil usam Base64 seguro para URL
  • Anexos de email - MIME (RFC 2045) usa Base64 para codificar anexos binários em protocolos de email baseados em texto

Base64 Padrão vs Seguro para URL

Base64 padrão usa + e /, que têm significado especial em URLs. Base64 seguro para URL os substitui por - e _, tornando a saída segura em URLs, nomes de arquivos e parâmetros de consulta sem codificação percentual. Use o modo seguro para URL para JWTs, tokens OAuth e qualquer dado Base64 que apareça em URLs. Para decodificar a saída, use o Decodificador Base64. Para embutir dados codificados em parâmetros de consulta de URL, combine esta ferramenta com o Codificador de URL.

Perguntas Frequentes

Base64 é uma forma de criptografia?

Não. Base64 é um esquema de codificação, não criptografia ou qualquer forma de segurança. Qualquer pessoa com a string Base64 pode decodificá-la instantaneamente sem uma chave. Não oferece confidencialidade. Use AES-256 ou RSA se precisar proteger dados - Base64 é para transporte seguro de dados binários em canais de texto, não para ocultar informações.

Por que a saída Base64 sempre termina com == ou =?

Base64 codifica dados em grupos de 3 bytes em 4 caracteres. Quando o comprimento da entrada não é divisível por 3, o grupo final tem 1 ou 2 bytes em vez de 3. Um byte restante produz == como preenchimento; dois bytes restantes produzem =. O preenchimento garante que o comprimento da saída seja sempre um múltiplo de 4, conforme exigido pela RFC 4648.

Este codificador lida corretamente com Unicode e emojis?

Sim. O codificador primeiro converte o texto em bytes UTF-8 usando a API TextEncoder do navegador antes de aplicar o Base64. Caracteres Unicode, incluindo emojis (4 bytes em UTF-8), caracteres chineses, letras árabes e caracteres latinos acentuados são todos codificados corretamente e decodificados de volta para o texto original.

O que é Base64 seguro para URL e quando devo usá-lo?

Base64 seguro para URL (RFC 4648 §5) substitui + por - e / por _. Use-o sempre que dados Base64 aparecerem em uma URL, nome de arquivo, cookie ou cabeçalho HTTP onde os caracteres padrão poderiam ser mal interpretados. Tokens JWT, tokens de acesso OAuth e verificadores de código PKCE usam todos Base64 seguro para URL.

Em quanto a Base64 aumenta o tamanho dos dados?

A codificação Base64 aumenta o tamanho dos dados em exatamente 33,33% - 3 bytes de entrada tornam-se 4 caracteres de saída (4/3 = 1,333...). Além disso, a saída pode incluir até 2 caracteres de preenchimento. Para grandes cargas binárias, protocolos multipart ou binários são mais eficientes em largura de banda do que Base64.