Skip to content

Decodificador e Codificador Base64

Decodifique e codifique Base64 online gratuitamente. Conversão em tempo real com suporte completo a UTF-8 e emoji. 100% privado — executa no seu navegador. Sem necessidade de cadastro.

Sem rastreamento Roda no navegador Grátis
Texto
Base64
Revisado para conformidade com RFC 4648 e correção UTF-8 — Go Tools Engineering Team · Mar 22, 2026

O que é Base64?

Base64 é um esquema de codificação binário-para-texto definido pelo RFC 4648 que converte dados binários arbitrários em uma representação segura de string ASCII usando um alfabeto de 64 caracteres. É uma das codificações mais amplamente implantadas na internet, sustentando tudo, desde anexos de e-mail até JSON Web Tokens e certificados TLS.

"A codificação Base 64 é projetada para representar sequências arbitrárias de octetos em uma forma que não precisa ser legível por humanos." — RFC 4648, Seção 1

Base64 divide a entrada em grupos de 3 bytes (24 bits), depois divide esses 24 bits em quatro grupos de 6 bits, cada um mapeado para um dos 64 caracteres imprimíveis: A-Z (0-25), a-z (26-51), 0-9 (52-61), + (62) e / (63). O caractere = preenche a saída quando o comprimento da entrada não é múltiplo de 3. A codificação Base64 aumenta o tamanho dos dados em aproximadamente 33% (RFC 4648) — uma compensação deliberada para tornar dados binários seguros para canais somente texto.

Base64 foi originalmente projetado para transmitir dados binários com segurança por canais que suportam apenas texto, como e-mail (MIME) e HTTP inicial. Hoje é ubíquo: URIs de dados incorporam imagens em HTML, tokens JWT codificam claims, certificados PEM envolvem chaves e APIs transportam payloads binários em JSON.

Um codificador Base64 converte bytes brutos nesta representação ASCII segura, enquanto um decodificador inverte o processo. Toda a codificação e decodificação nesta ferramenta é executada inteiramente no seu navegador — seus dados nunca são enviados a nenhum servidor, tornando seguro o uso com chaves de API, tokens e outros valores sensíveis.

Use este conversor Base64 online gratuito para decodificar Base64 em texto ou codificar texto em Base64 instantaneamente no seu navegador.

Base64 é frequentemente usado junto com outras ferramentas de codificação e dados. Por exemplo, você pode precisar formatar dados JSON antes de codificá-los em Base64 para um payload de API, codificar uma string Base64 na URL antes de colocá-la em um parâmetro de consulta, ou verificar um checksum de arquivo com MD5 ou SHA-256 após decodificar um download codificado em Base64. Novo no Base64? Leia nosso guia de Base64 para iniciantes. Para tópicos avançados como MIME, URLs de dados e otimização de desempenho, veja o guia completo de Base64.

// Encode plain text to Base64
const encoded = btoa('Hello, World!');
console.log(encoded); // → 'SGVsbG8sIFdvcmxkIQ=='

// Decode Base64 back to text
const decoded = atob('SGVsbG8sIFdvcmxkIQ==');
console.log(decoded); // → 'Hello, World!'

// UTF-8 safe encode (handles Chinese, emoji, any Unicode)
function encodeBase64(str) {
  const bytes = new TextEncoder().encode(str);  // to UTF-8 bytes
  return btoa(String.fromCharCode(...bytes));
}
console.log(encodeBase64('你好')); // → '5L2g5aW9'

Recursos Principais

Conversão em Tempo Real

Codifique e decodifique instantaneamente conforme digita — sem botões para clicar, resultados aparecem imediatamente na outra área.

Suporte Completo a UTF-8

Lida corretamente com chinês, japonês, coreano, árabe, emoji e qualquer texto Unicode via TextEncoder/TextDecoder.

Bidirecional

Digite em qualquer área: texto simples à esquerda codifica para Base64 à direita, Base64 à direita decodifica para texto à esquerda.

100% Baseado no Navegador

Todo o processamento acontece localmente no seu navegador. Seus dados nunca saem do dispositivo — sem uploads para servidor, sem rastreamento.

Detecção de Erros

Entrada Base64 inválida é detectada imediatamente com uma mensagem de erro clara, para que você saiba exatamente o que corrigir.

Cópia com Um Clique

Copie resultados codificados ou decodificados para sua área de transferência instantaneamente com o botão Copiar em cada lado.

Exemplos

Texto Simples

Hello, World!
SGVsbG8sIFdvcmxkIQ==

Texto ASCII simples codificado para Base64

Texto UTF-8

你好世界 🌍
5L2g5aW95LiW55WMIPCfjI0=

Caracteres chineses e emoji com codificação UTF-8 adequada

Dados JSON

{"user":"alice","role":"admin"}
eyJ1c2VyIjoiYWxpY2UiLCJyb2xlIjoiYWRtaW4ifQ==

Codifique payloads JSON para incorporar em URLs ou cabeçalhos

Texto Multilinha

Line 1
Line 2
Line 3
TGluZSAxCkxpbmUgMgpMaW5lIDM=

Base64 preserva quebras de linha e espaços em branco

Como Usar

  1. 1

    Insira Texto ou Base64

    Digite ou cole texto simples na área esquerda para codificar, ou cole uma string Base64 na área direita para decodificar. A conversão é instantânea e bidirecional.

  2. 2

    Veja Resultados em Tempo Real

    A outra área é atualizada automaticamente conforme você digita. Quaisquer erros (como Base64 inválido) são mostrados imediatamente.

  3. 3

    Copie o Resultado

    Clique no botão Copiar em qualquer lado para copiar o resultado codificado ou decodificado para sua área de transferência.

Casos de Uso Comuns

Geração de URI de Dados
Codifique imagens ou arquivos para Base64 para incorporar diretamente em HTML ou CSS como URIs de dados.
Depuração de JWT
Decodifique cabeçalhos e payloads de tokens JWT codificados em Base64 para inspecionar claims e tempos de expiração.
Desenvolvimento de API
Codifique dados binários para transmissão em APIs JSON, ou decodifique respostas Base64 para inspeção.
Codificação de E-mail
Codifique ou decodifique conteúdo de e-mail e anexos codificados em MIME.
Inspeção de Certificados
Decodifique certificados e chaves codificados em PEM para examinar seu conteúdo binário.
Incorporação de Configurações
Codifique dados de configuração ou segredos para incorporação segura em variáveis de ambiente ou arquivos de configuração.

Detalhes Técnicos

Compatível com RFC 4648
Implementa codificação Base64 padrão conforme definido no RFC 4648, usando o alfabeto A-Z, a-z, 0-9, +, / com preenchimento =.
UTF-8 Via TextEncoder
Usa a API Web TextEncoder para converter strings Unicode em bytes UTF-8 antes da codificação, garantindo tratamento correto de todos os scripts e emoji.
Processamento no Navegador
Toda a codificação usa btoa()/atob() nativos com TextEncoder/TextDecoder — sem bibliotecas externas, sem chamadas ao servidor.

Melhores Práticas

Não Use Base64 para Segurança
Base64 é codificação, não criptografia. Nunca o use para 'proteger' senhas, tokens ou dados sensíveis — sempre use criptografia adequada.
Atenção ao Aumento de Tamanho
Base64 adiciona ~33% de overhead. Para arquivos grandes, considere transferência binária em vez de codificação Base64.
Use Codificação UTF-8
Sempre codifique texto em bytes UTF-8 antes da codificação Base64 para garantir que caracteres não-ASCII (chinês, emoji) sejam tratados corretamente.

Perguntas Frequentes

O que é codificação Base64?
Base64 é um esquema de codificação binário-para-texto que representa dados binários como uma string de caracteres ASCII imprimíveis. Ele converte cada 3 bytes de entrada em 4 caracteres ASCII do conjunto A-Z, a-z, 0-9, +, e /. O caractere '=' é usado como preenchimento quando o comprimento da entrada não é múltiplo de 3. Base64 é definido no RFC 4648 e é amplamente usado em e-mail (MIME), URIs de dados, JSON Web Tokens (JWT) e autenticação HTTP.
Meus dados estão seguros ao usar esta ferramenta?
Sim, completamente. Toda a codificação e decodificação acontece localmente no seu navegador usando as APIs nativas do JavaScript btoa(), atob(), TextEncoder e TextDecoder. Seus dados nunca saem do seu dispositivo — não há requisições ao servidor, cookies, rastreamento analítico na sua entrada, nem armazenamento de dados de qualquer tipo.
Como esta ferramenta lida com caracteres não-ASCII como chinês ou emoji?
Esta ferramenta primeiro converte o texto de entrada para bytes UTF-8 usando a API TextEncoder, depois codifica esses bytes em Base64. Isso garante que caracteres fora do intervalo ASCII — incluindo chinês (你好), japonês (こんにちは), árabe e emoji (🎉) — sejam codificados corretamente. Ao decodificar, a ferramenta inverte o processo: Base64 → bytes → texto UTF-8 usando TextDecoder.
Base64 é criptografia?
Não. Base64 é uma codificação, não criptografia. Não fornece nenhuma segurança — qualquer pessoa pode decodificar uma string Base64 de volta aos dados originais instantaneamente. Base64 foi projetado para transporte de dados (tornando dados binários seguros para canais somente texto), não para proteger segredos. Se você precisa proteger dados, use criptografia adequada (AES, RSA) antes de opcionalmente codificar o resultado em Base64.
Onde Base64 é comumente usado?
Base64 é usado extensivamente em: (1) URIs de dados — incorporando imagens diretamente em HTML/CSS como 'data:image/png;base64,...', (2) E-mail — codificação MIME para anexos e conteúdo não-ASCII, (3) JWT — JSON Web Tokens codificam cabeçalho e payload como Base64URL, (4) HTTP Basic Auth — credenciais são enviadas como 'username:password' codificado em Base64, (5) APIs — transmitindo dados binários em payloads JSON, (6) Certificados — formato PEM envolve certificados codificados em DER com Base64.
Qual é a diferença entre Base64 e Base64 seguro para URL?
O Base64 padrão usa os caracteres '+' e '/', que têm significado especial em URLs — + representa um espaço e / é um separador de caminho. Base64 seguro para URL (também definido no RFC 4648) substitui '+' por '-' e '/' por '_', tornando a saída segura para uso em URLs e nomes de arquivo sem codificação percentual adicional. Se você precisar usar Base64 padrão em uma URL, pode codificá-lo em percentual com nosso Codificador de URL. Esta ferramenta usa Base64 padrão. Para converter para URL-safe, simplesmente substitua + por - e / por _ na saída.
Por que Base64 aumenta o tamanho dos dados?
Base64 codifica 3 bytes de entrada em 4 caracteres de saída, resultando em aproximadamente 33% de aumento de tamanho. Isso porque Base64 usa apenas 64 caracteres ASCII imprimíveis (6 bits cada) para representar bytes de 8 bits. Por exemplo, a string de 13 caracteres 'Hello, World!' se torna a string Base64 de 20 caracteres 'SGVsbG8sIFdvcmxkIQ=='. Essa compensação é aceitável porque os dados codificados são seguros para transmitir por protocolos somente texto.
Como codifico um arquivo para Base64?
No macOS ou Linux, use a linha de comando: base64 < meuarquivo.png > meuarquivo.b64. No Windows, use PowerShell: [Convert]::ToBase64String([IO.File]::ReadAllBytes('meuarquivo.png')). Em JavaScript (Node.js), use fs.readFileSync('meuarquivo.png').toString('base64'). Em Python, use import base64; base64.b64encode(open('meuarquivo.png','rb').read()). Esta ferramenta do navegador lida com entrada de texto; para arquivos binários grandes, ferramentas de linha de comando são mais eficientes.
Posso usar Base64 em HTML e CSS?
Sim. Base64 é comumente usado em URIs de dados para incorporar pequenos recursos diretamente em HTML ou CSS, eliminando requisições HTTP extras. Em HTML: . Em CSS: background-image: url('data:image/svg+xml;base64,PHN2Zy...'). Isso é ideal para ícones pequenos e SVGs (abaixo de ~5 KB). Para arquivos maiores, referências a arquivos separados são mais eficientes porque Base64 adiciona 33% de overhead de tamanho e ignora o cache do navegador.
Qual é o tamanho máximo de entrada?
Esta ferramenta baseada em navegador lida eficientemente com texto de até cerca de 5 MB. Para arquivos muito grandes ou dados binários, considere usar ferramentas de linha de comando como 'base64' (disponível no macOS e Linux) ou 'openssl base64'. O padrão Base64 em si não tem limite de tamanho.
Quais caracteres estão no alfabeto Base64?
O alfabeto Base64 padrão (RFC 4648) consiste em 64 caracteres: letras maiúsculas A-Z (valores 0-25), letras minúsculas a-z (valores 26-51), dígitos 0-9 (valores 52-61), sinal de mais + (valor 62) e barra / (valor 63). O sinal de igual = é usado para preenchimento. A variante URL-safe (Base64URL) substitui + por - e / por _ para evitar conflitos com caracteres reservados de URL.
Preciso incorporar uma imagem pequena no meu template de e-mail HTML — devo usar URIs de dados Base64 ou hospedar a imagem externamente?
Para e-mail HTML, URIs de dados Base64 são na verdade a abordagem recomendada para imagens pequenas como logos e ícones. Muitos clientes de e-mail (Outlook, Gmail) bloqueiam agressivamente imagens hospedadas externamente por padrão, exigindo que os usuários cliquem em "Exibir imagens" para vê-las. Incorporar imagens como URIs de dados Base64 (data:image/png;base64,...) contorna esse problema inteiramente — a imagem faz parte do próprio e-mail. A compensação é o tamanho do arquivo de e-mail: Base64 adiciona ~33% de overhead, então um PNG de 10 KB se torna ~13 KB no e-mail. Mantenha imagens incorporadas abaixo de 20 KB para melhor compatibilidade. Para imagens maiores ou fundos, hospedagem externa é mais prática. Use esta ferramenta para codificar os bytes do seu arquivo de imagem em Base64 para incorporação.
Por que minha string codificada em Base64 tem caracteres + e / que quebram meus parâmetros de URL?
O Base64 padrão usa + e / como dois de seus 64 caracteres, e ambos têm significado especial em URLs (+ significa espaço, / é um separador de caminho). Quando você inclui uma string Base64 padrão em um parâmetro de consulta de URL sem codificação, esses caracteres corrompem o valor. A solução é usar Base64 seguro para URL (também chamado Base64URL, definido no RFC 4648), que substitui + por - e / por _. Essa variante é usada em tokens JWT, fluxos OAuth e qualquer valor Base64 que aparece em URLs. Para converter Base64 padrão para URL-safe, simplesmente substitua todos os + por - e / por _ na saída, e opcionalmente remova os caracteres de preenchimento =.
Estou tentando decodificar um token JWT — como funciona a decodificação Base64URL e como é diferente do Base64 padrão?
Um JWT (JSON Web Token) consiste em três partes separadas por pontos: header.payload.signature. O header e o payload são cada um codificados com Base64URL — não Base64 padrão. Base64URL difere do Base64 padrão de duas formas: usa - em vez de + e _ em vez de /, e omite os caracteres de preenchimento =. Para decodificar um JWT manualmente, divida o token por pontos, pegue o primeiro ou segundo segmento, substitua - por + e _ por /, adicione preenchimento = se necessário para que o comprimento seja múltiplo de 4, depois decodifique em Base64. A maioria da depuração de JWT é mais fácil com um decodificador JWT dedicado, mas entender a codificação Base64URL ajuda ao implementar tratamento de tokens em código ou depurar valores brutos de tokens.

Ferramentas relacionadas

Ver todas as ferramentas →

Formatador e Validador JSON

Codificação e Formatação

Formate, valide e embeleze JSON instantaneamente no seu navegador. Ferramenta online gratuita com validação de sintaxe, detecção de erros, minificação e cópia com um clique. 100% privado — seus dados nunca saem do seu dispositivo.

Codificador e Decodificador de URL com Analisador Integrado

Codificação e Formatação

Cole uma URL para decodificar ou codificar em tempo real. Analisador de URL integrado decompõe cada componente em campos editáveis. Modo duplo: encodeURI e encodeURIComponent. Privado — nenhum dado enviado a servidor.

Conversor de Base Numérica — Binário, Hex, Decimal e Octal

Ferramentas de Conversão

Converta números entre binário, hexadecimal, decimal, octal e qualquer base personalizada (2-36) instantaneamente. Gratuito, privado, sem cadastro — todo o processamento acontece no seu navegador.

Comprimir Imagens Online — JPEG, PNG e WebP

Ferramentas de Conversão

Reduza o tamanho de imagens em até 80% — comprima JPEG, PNG e WebP no navegador, sem upload. Lote de 20 imagens, ajuste de qualidade, compare antes e depois. Gratuito e privado.

Conversor de Comprimento — Métrico, Imperial e Mais

Ferramentas de Conversão

1 polegada = 2,54 cm, 1 pé = 0,3048 m, 1 milha = 1,609 km. Converta entre 16 unidades de comprimento instantaneamente — métrico, imperial, náutico e astronômico. Gratuito, privado, roda no seu navegador.

Gerador de Hash MD5 e Ferramenta de Checksum

Ferramentas de Segurança

Gere hashes MD5, SHA-256, SHA-1 e SHA-512 online gratuitamente. Faça hash de texto ou arquivos no navegador, verifique checksums e copie resultados. Sem cadastro necessário.