Converta texto em uma string Base64 padrão ou decodifique Base64 válido de volta para texto. A ferramenta é adequada para pequenos fragmentos ao trabalhar com API, JSON, configurações, HTML e logs. Base64 foi criada para representar dados binários com caracteres de texto, não para protegê-los.
O que o Base64 faz
O computador armazena texto e arquivos como sequências de bytes. Nem todo canal de transmissão lida bem com bytes arbitrários, portanto o Base64 os converte em um conjunto limitado de caracteres ASCII imprimíveis.
O alfabeto padrão utiliza:
- letras latinas
A–Zea–z; - dígitos
0–9; - os símbolos
+e/; - o sinal
=para preenchimento no final, quando necessário.
Exemplo:
Texto original: Brasil
Base64: QnJhc2ls
A decodificação desta string devolve a sequência original de bytes e, em seguida, a ferramenta tenta exibi-la como texto.
Base64 não é criptografia
Qualquer pessoa ou programa pode decodificar uma string codificada. O Base64 não tem chave secreta, senha ou mecanismo de controle de acesso.
Portanto, Base64 não pode ser usado como proteção para:
- senhas;
- chaves de API e tokens;
- dados pessoais;
- documentos privados;
- informações de pagamento;
- segredos de configuração.
A codificação altera a representação dos dados, mas não os torna confidenciais. O termo «descriptografar Base64» é tecnicamente impreciso: o correto é «decodificar».
Base64 não comprime dados
Cada três bytes originais normalmente se transformam em quatro caracteres Base64. O tamanho exato do resultado sem quebras de linha pode ser estimado assim:
4 × ceil(número de bytes originais / 3)
Para dados suficientemente grandes, o volume aumenta cerca de um terço. Para strings curtas, o aumento relativo pode ser maior devido a arredondamentos e sinais =.
O Base64 não é usado para economizar espaço, mas quando os dados precisam ser transmitidos com segurança por meio de um formato de texto. Se o tamanho for importante, use primeiro uma compressão adequada e depois Base64, apenas quando o transporte realmente exigir.
Por que a codificação de texto é importante
O Base64 codifica bytes, não letras abstratas. Antes da codificação, o texto deve ser convertido em bytes, geralmente em UTF-8.
A mesma string em UTF-8, UTF-16 ou outra codificação produzirá resultados Base64 diferentes. Ao decodificar, os bytes também devem ser lidos na codificação correta. Se aparecerem caracteres ilegíveis em vez de letras portuguesas, a causa provável é uma incompatibilidade de codificação, não um erro do algoritmo Base64.
Qual a diferença entre Base64url e Base64 comum
Em URLs, cookies e alguns tokens, os símbolos +, / e = podem ser inconvenientes. Por isso, a RFC 4648 define uma variante segura para URL: Base64url.
| Base64 padrão | Base64url |
|---|---|
+ |
- |
/ |
_ |
preenchimento = geralmente mantido |
preenchimento frequentemente omitido se o comprimento for conhecido |
São variantes de alfabeto diferentes. Uma string Base64url nem sempre pode ser passada diretamente para um decodificador Base64 padrão. Se necessário, substitua os símbolos e restaure o preenchimento ausente até um comprimento múltiplo de quatro.
Os segmentos JWT geralmente são representados com Base64url, não com Base64 padrão. Sua decodificação permite ler o cabeçalho e a carga útil, mas não confirma a autenticidade do token: para isso, é necessário verificar a assinatura criptográfica.
Onde o Base64 é realmente usado
APIs textuais e formatos de dados
Algumas interfaces exigem incorporar dados binários ou strings especiais em JSON, XML ou outra mensagem de texto. O Base64 permite transmitir bytes sem conflitos com caracteres de controle do transporte.
MIME e e-mail
O Base64 pode ser usado para representar anexos e conteúdo em mensagens MIME. O formato de um e-mail específico também contém cabeçalhos e regras de quebra de linha, portanto, uma única string Base64 não é suficiente para formar um e-mail completo.
Data URL
Um pequeno recurso pode ser incorporado em HTML ou CSS:
data:image/png;base64,iVBORw0KGgo...
Antes do Base64, é indicado o tipo MIME. A incorporação aumenta o tamanho do texto e elimina o armazenamento em cache separado normal do recurso, portanto não é adequada para todos os arquivos.
Autenticação básica HTTP
No cabeçalho Basic Auth, o nome de usuário e a senha são concatenados e codificados em Base64. Isso não protege as credenciais por si só; a segurança da transmissão depende do HTTPS.
Logs e depuração
A decodificação ajuda a entender o conteúdo de um pequeno fragmento de uma resposta de API, log ou configuração. Mas não insira segredos de produção ou dados pessoais em ferramentas online de terceiros.
Por que uma string não é decodificada
As causas mais comuns são:
- a string está truncada;
- usam-se os símbolos Base64url
-e_, mas o decodificador espera+e/; - faltam os sinais de preenchimento
=necessários; - contém espaços, quebras de linha ou caracteres estranhos;
- o prefixo Data URL foi copiado junto com os dados;
- os bytes originais não são texto;
- uma codificação de texto incorreta é aplicada após a decodificação.
O comportamento estrito dos decodificadores varia: alguns ignoram espaços ou restauram o preenchimento, outros rejeitam a string. Para integração, consulte os requisitos da biblioteca e do protocolo que você está usando.
Texto e arquivos são tarefas diferentes
Esta ferramenta foi projetada para texto. Embora qualquer arquivo possa tecnicamente ser representado em Base64, para uma imagem grande, um arquivo compactado ou um documento, é mais prático usar um codificador de arquivos ou uma biblioteca de programação. Tentar abrir bytes binários arbitrários como texto pode resultar em saída ilegível ou perda de dados ao copiar.
Segurança ao usar um conversor online
Não insira senhas reais, chaves privadas, tokens de acesso, cookies de autenticação, dados pessoais ou documentos confidenciais. Mesmo quando o processamento é declarado como sendo feito no navegador, a prática segura é usar ferramentas locais para dados secretos e substituir os valores por exemplos de teste.
Perguntas frequentes
É possível recuperar o texto original a partir do Base64?
Sim, se a string não estiver corrompida, se a variante Base64 correta foi usada e se os bytes originais realmente representam texto em uma codificação conhecida.
Por que há um ou dois sinais = no final?
É o preenchimento que alinha o último grupo ao comprimento necessário. Não faz parte do texto original.
Por que dois programas fornecem strings diferentes para o mesmo texto?
Eles podem usar codificações de texto diferentes, Base64 ou Base64url, incluir BOM ou tratar a quebra de linha final de forma diferente.
Posso armazenar uma senha em Base64?
Não. Base64 é facilmente reversível e não foi projetado para armazenamento seguro de senhas. Para armazenar senhas no servidor, são usados algoritmos especiais de hash com salt e parâmetros de custo apropriados.
Um JWT decodificado significa que o token é autêntico?
Não. A decodificação apenas mostra os dados. A autenticidade e a integridade são confirmadas por uma verificação separada da assinatura, de acordo com as regras do sistema.
Ferramentas relacionadas: Gerador de senhas; Processador de texto; Diffchecker.
Padrão oficial:
- RFC 4648 — Base-N Encodings: https://www.rfc-editor.org/rfc/rfc4648
