Codificador e Decodificador Base64
Codifique e decodifique Base64 para texto, arquivos e imagens — com data URIs, no seu navegador.
Codificador e decodificador Base64 - converter texto para Base64 online
Base64 transforma qualquer sequência de bytes em um alfabeto curto e seguro de 64 caracteres que sobrevive a cabeçalhos de e-mail, strings JSON, URLs, atributos XML e a qualquer copiar e colar. Este codificador e decodificador Base64 online funciona instantaneamente nos dois sentidos: cole o texto e clique em Codificar, cole uma string Base64 e clique em Decodificar, ou vá para a aba Arquivo para converter uma imagem, um PDF ou qualquer outro arquivo em Base64.
Não há conta para criar nem fila de espera, e nada é enviado: o arquivo que você escolhe é lido pelo próprio navegador. A conversão acontece com JavaScript nativo: rápida o bastante para payloads longos e privada o bastante para dados internos.
O que é a codificação Base64
Base64 é um esquema de codificação de binário para texto. Ele lê os dados de três em três bytes, divide esses 24 bits em quatro grupos de 6 bits e mapeia cada grupo para um caractere do conjunto A-Z a-z 0-9 + /. Quando o comprimento não é múltiplo de três, um ou dois caracteres = são acrescentados como preenchimento. O resultado fica cerca de 33% maior que o original, mas não contém caracteres de controle nem nada que um protocolo de texto possa corromper.
Como codificar ou decodificar Base64 online
- Use a aba Texto para texto, ou a aba Arquivo para codificar um arquivo.
- Cole o texto: texto simples, JSON, um trecho de XML ou uma string Base64 já existente.
- Clique em Codificar para converter texto legível em Base64, ou em Decodificar para devolver uma string Base64 ao conteúdo original.
- Na aba Arquivo, solte um arquivo na área de envio e o Base64 aparece na hora; marque Prefixo de data URI se quiser um valor
data:pronto para colar. - Use Copiar para levar o resultado, Baixar para salvá-lo como arquivo ou Limpar para começar de novo.
Como converter uma imagem em Base64
Abra a aba Arquivo e solte o PNG, JPG, SVG ou ícone que você quer embutir. A ferramenta lê os bytes localmente e mostra o Base64 na hora, com uma prévia para confirmar que a imagem certa foi escolhida. Marque Prefixo de data URI e você recebe o valor completo data:image/png;base64,..., pronto para uma regra CSS background-image, uma tag img ou um campo JSON. O caminho inverso também funciona: cole uma data URI na aba Texto, clique em Decodificar, e a imagem é exibida em prévia e oferecida para download em vez de virar caracteres ilegíveis. São aceitos arquivos de até 10 MB.
Decodificar Base64 para PDF
APIs que devolvem notas fiscais, etiquetas de envio ou relatórios costumam mandar o PDF como uma única string Base64 bem longa, que geralmente começa com JVBERi0, o Base64 de %PDF-. Cole-a na aba Texto, com ou sem o prefixo data:application/pdf;base64,, e clique em Decodificar. A ferramenta reconhece o PDF pelos primeiros bytes, exibe o documento logo abaixo da saída no próprio visualizador de PDF do navegador e oferece Baixar para salvá-lo como decoded.pdf; Abrir o PDF em uma nova aba mostra o documento em uma janela inteira. No sentido inverso, solte um PDF na aba Arquivo para obter o Base64 dele. A página Base64 para PDF abre o decodificador pronto exatamente para isso.
Onde Base64 realmente aparece
- Cabeçalhos de autenticação HTTP Basic, que levam
usuario:senhacomo uma única string Base64. - Data URIs que embutem um ícone pequeno ou uma fonte diretamente no CSS ou no HTML, em vez de outra requisição.
- Anexos de e-mail: o MIME codifica partes binárias em Base64 desde os anos 1990.
- JSON Web Tokens, cujo cabeçalho e payload são segmentos Base64URL.
- Payloads de API que precisam carregar um arquivo, um certificado ou uma assinatura dentro de um campo JSON.
- Secrets do Kubernetes e muitos sistemas de CI/CD, que guardam valores codificados em Base64 dentro de YAML.
Base64 é codificação, não criptografia
Esse é o mal-entendido mais comum e tem consequências reais de segurança. Base64 não tem chave nem segredo: quem vê a string decodifica com um clique, exatamente como você vai fazer nesta página. Nunca use Base64 para esconder uma senha, uma chave de API ou dados pessoais. Se precisa de sigilo, criptografe primeiro e codifique o texto cifrado para o transporte. Se precisa provar que os dados não mudaram, use uma soma de verificação do gerador de hash.
Base64 padrão e Base64URL
A diferença são dois caracteres. O Base64 padrão usa + e /, que têm significado especial dentro de uma URL ou de um nome de arquivo. O Base64URL troca esses caracteres por - e _ e normalmente descarta o preenchimento =. JWTs, parâmetros OAuth e muitas APIs modernas usam a variante segura para URL, então, se um token se recusa a decodificar, verifique essas substituições antes de concluir que os dados estão corrompidos.
Problemas comuns com Base64 e como resolver
- Caractere inválido: a cópia trouxe aspas ou texto ao redor. Espaços e quebras de linha são removidos para você: apague apenas o que não faz parte da string.
- Preenchimento errado: uma string Base64 válida tem comprimento múltiplo de quatro. Os
=que faltam são recolocados automaticamente, e o Base64URL com-e_também é convertido. - Prefixo de data URI: pode deixar
data:image/png;base64,onde está: ele é detectado, removido e usado para nomear o arquivo decodificado. - Acentos ou emojis quebrados: os bytes originais não estavam em UTF-8. Conteúdo realmente binário é detectado e oferecido como download em vez de aparecer como caracteres quebrados.
- Saída maior que o esperado: o crescimento de 33% é normal e confirma que a conversão foi feita.
Seus dados não saem do dispositivo
A codificação e a decodificação rodam inteiramente no cliente, e o arquivo escolhido é lido pelo navegador em vez de ser enviado a algum lugar. Nada é transmitido para um servidor, gravado em log ou mantido depois que a aba é fechada. É exatamente o que se espera dos dados que costumam ser colados em um conversor: tokens de sessão, valores de configuração e chamados de suporte com dados de clientes.
Codificar e decodificar Base64 no terminal ou em código
| Plataforma | Codificar | Decodificar |
|---|---|---|
| Linux / macOS | base64 arquivo.png ou echo -n 'texto' | base64 | base64 -d codificado.txt (-D em macOS antigos) |
| PowerShell | [Convert]::ToBase64String([IO.File]::ReadAllBytes('arquivo.png')) | [Convert]::FromBase64String($s) |
| Python | base64.b64encode(data) | base64.b64decode(s) |
| JavaScript | btoa(str) no navegador, Buffer.from(str).toString('base64') no Node | atob(s) / Buffer.from(s, 'base64') |
| PHP | base64_encode($data) | base64_decode($s) |
| Java | Base64.getEncoder().encodeToString(bytes) | Base64.getDecoder().decode(s) |
Uma armadilha: btoa só aceita Latin-1, então codificar texto com acentos, ç ou emojis no navegador exige antes um passo com TextEncoder. A ferramenta acima cuida do UTF-8 por você, e por isso costuma ser mais rápida do que lembrar a fórmula mágica.
Ferramentas relacionadas
Base64 raramente anda sozinho. Inspecione tokens formados por segmentos Base64URL com o decodificador JWT, escape valores de query string com o codificador de URL, organize o payload decodificado com o formatador JSON e gere somas de verificação com o gerador de hash.