Ir para o decodificador Base64

RFC 4648 · Decodificador e codificador

Decodifique Base64 sem enviar absolutamente nada.

Cole uma string Base64 e receba texto legível, uma imagem ou um arquivo enquanto digita. Este decodificador Base64 online roda inteiramente no seu navegador: seus dados nunca são enviados, nunca são registrados e nunca saem do seu dispositivo.

  • Decodifica enquanto você digita
  • Mais de 20 conjuntos de caracteres
  • Imagens, PDFs e JWTs
  • Sem anúncios e sem cadastro

Atualizado em · Base64 padrão e URL-safe (RFC 4648)

Ferramenta para decodificar e codificar Base64

0 caracteres
Resultado decodificado
Tipo: — Tamanho: 0 B
Opções
Geral
Opções de decodificação

Ctrl+Enter decodificar Ctrl+Shift+C copiar resultado Solte um arquivo na entrada para carregá-lo

Decodificar Base64 online — grátis, instantâneo e privado

Este decodificador Base64 online faz o trabalho no seu navegador, e não em um servidor. Cole o conteúdo na caixa acima e o resultado aparece na hora: sem botão, sem recarregar a página e sem upload. O texto sai legível, as imagens aparecem na aba Prévia e qualquer dado binário ganha um dump hexadecimal e um botão Baixar com a extensão de arquivo correta.

Mude para Codificar para fazer o caminho inverso, ou use nosso codificador em freebase64encode.com. Se preferir decodificar Base64 em código, os exemplos abaixo cobrem Python, JavaScript, Linux, Windows PowerShell, PHP, Java, Go, C# e Ruby.

Trabalhando com um formato específico? Temos páginas dedicadas para converter Base64 para imagem, Base64 para PDF e Base64 para hexadecimal, e para decodificar Base64URL e JWTs.

Como decodificar Base64 em três passos

  1. 01

    Cole sua string Base64

    Cole os dados Base64 na caixa de entrada ou arraste um arquivo para ela. Espaços, quebras de linha, prefixos de URI data: e caracteres URL-safe são tratados automaticamente.

  2. 02

    Leia o resultado decodificado

    O resultado aparece na hora no painel ao lado da entrada, decodificado no seu navegador. Escolha outro conjunto de caracteres se o texto parecer errado.

  3. 03

    Copie, baixe ou pré-visualize

    Copie o texto decodificado, baixe a saída binária como arquivo com a extensão certa, inspecione-a em hexadecimal ou veja uma imagem decodificada na própria página.

Mais decodificadores

Decodifique Base64 para um formato específico.

O que você ganha

Um decodificador Base64 que diz o que encontrou.

A maioria dos decodificadores online devolve uma parede de caracteres e deixa você adivinhar. Este identifica o conteúdo, corrige os erros de codificação mais comuns e mostra o resultado no formato que realmente ajuda.

Nada sai do seu dispositivo

Cada byte é decodificado por JavaScript nesta página. Sem upload, sem requisição, sem registro — confira na aba de rede.

Detecção automática de formato

PNG, JPEG, GIF, WebP, SVG, PDF, ZIP, MP4, JSON, XML e HTML são reconhecidos pelos bytes de assinatura e identificados.

Prévia de imagens Base64

Decodifique uma imagem e veja-a na hora, com as dimensões reais em pixels e o tamanho do arquivo, e depois baixe-a.

Mais de 20 conjuntos de caracteres

UTF-8, UTF-16, Latin-1, Windows-1250/1251/1252, Shift_JIS, GBK, Big5, KOI8-R e outros — com detecção automática.

Visualização hexadecimal

A saída binária aparece como um dump clássico de offset / hex / ASCII para inspecionar cabeçalhos e magic bytes.

Compatível com JWT

Cole um JSON Web Token e o cabeçalho e o payload aparecem em uma tabela, com os timestamps convertidos em datas.

Entrada tolerante

Preenchimento faltando, “-” e “_” URL-safe, espaços perdidos, quebras de linha MIME e URIs data: completas são tratados automaticamente.

Modo linha por linha

Decodifique de uma vez uma lista de valores Base64 independentes, um resultado por linha — ótimo para logs e exportações.

Também codifica

Mude para Codificar para texto ou qualquer arquivo, com quebra MIME, alfabeto URL-safe ou uma URI data: pronta.

Por que este

A diferença está em onde a decodificação acontece.

A maioria dos decodificadores Base64 envia sua string para um servidor, decodifica lá e devolve o resultado. Ou seja, seu token, sua chave ou seu arquivo saiu da sua máquina para uma transformação que o seu navegador faz em microssegundos. Este nunca faz essa requisição.

Comparação entre este decodificador Base64 e as ferramentas Base64 online comuns baseadas em servidor
Recurso freebase64decode.com Decodificador online típico
Onde seus dados são decodificados Sempre na aba do seu navegador Enviados para um servidor
Conjuntos de caracteres Mais de 20, decodificados offline Só no servidor
Limite de tamanho de arquivo Apenas a memória do seu dispositivo Geralmente até 100 MB
Prévia de imagens decodificadas Integrada, com dimensões Não oferece
Dump hexadecimal da saída binária Integrado Não oferece
Visualização de cabeçalho e payload do JWT Automática Não oferece
Alfabeto URL-safe e correção do preenchimento Automáticos Manuais
Detecção de URI data: Automática Manual
Funciona sem conexão Sim, depois que a página carrega Não
Anúncios e banners de cookies Nenhum, e sem cookies de rastreamento Geralmente presentes

Faça no código

Decodificar Base64 em Python, JavaScript, Linux e mais.

Depois de conferir um valor no decodificador acima, normalmente você precisa da mesma coisa em código. Cada exemplo está pronto para copiar e colar e cobre o que costuma dar problema: conjuntos de caracteres, o alfabeto URL-safe e o preenchimento faltando.

Decodificar Base64 em Python

O módulo base64 do Python faz parte da biblioteca padrão — não precisa instalar nada. b64decode sempre retorna bytes, então chame .decode() quando quiser uma str.

import base64

# Base64 string -> text
encoded = "SGVsbG8sIHdvcmxkIQ=="
text = base64.b64decode(encoded).decode("utf-8")
print(text)                      # Hello, world!

# Reject anything that is not valid Base64 instead of silently skipping it
base64.b64decode(encoded, validate=True)

# URL-safe alphabet (RFC 4648 section 5): "-" and "_" instead of "+" and "/"
base64.urlsafe_b64decode("SGVsbG8_d29ybGQtMQ==")

# Unpadded input (JWTs, URL parameters) raises binascii.Error -- pad it first
def b64decode_any(s: str) -> bytes:
    s = s.replace("-", "+").replace("_", "/")
    return base64.b64decode(s + "=" * (-len(s) % 4))

# Base64 -> image file on disk
with open("logo.png", "wb") as f:
    f.write(base64.b64decode(image_b64))

# Decode every line of a file separately
with open("encoded.txt") as f:
    for line in f:
        print(base64.b64decode(line.strip()).decode("utf-8"))

O mecanismo

O que é Base64 e como a decodificação o reverte.

O Base64 reescreve bytes quaisquer com 64 caracteres imprimíveis — A–Z a–z 0–9 + / — para que dados binários sobrevivam em sistemas feitos para texto. Decodificar é o caminho inverso: cada caractere vira um valor de 6 bits, quatro deles formam 24 bits, e esses bits são recortados em três bytes. É uma codificação, não uma criptografia, então qualquer pessoa consegue fazer.

Exemplo resolvido: TWFu → Man

Como os quatro caracteres Base64 “TWFu” são decodificados nos três bytes “Man”
Base64 T · W · F · u
Índice 19 · 22 · 5 · 46
Grupos de 6 bits 010011 010110 000101 101110
Recortados em 8 bits 01001101 01100001 01101110
Bytes 77 · 97 · 110
Texto Man

Os sinais = no final são preenchimento, não dados: == significa que o último grupo tinha um byte, e =, dois. A saída Base64 é sempre cerca de 33% maior do que aquilo que ela representa.

O alfabeto Base64 (tabela de índices)

Cada caractere Base64 representa um número de 0 a 63. A decodificação procura cada caractere nesta tabela (RFC 4648, tabela 1). O Base64 URL-safe é idêntico, exceto que 62 é -, 63 é _ e = é preenchimento, não um valor.

Tabela de índices Base64: o valor de cada um dos 64 caracteres
Valor Caract. Valor Caract. Valor Caract. Valor Caract.
0 A 16 Q 32 g 48 w
1 B 17 R 33 h 49 x
2 C 18 S 34 i 50 y
3 D 19 T 35 j 51 z
4 E 20 U 36 k 52 0
5 F 21 V 37 l 53 1
6 G 22 W 38 m 54 2
7 H 23 X 39 n 55 3
8 I 24 Y 40 o 56 4
9 J 25 Z 41 p 57 5
10 K 26 a 42 q 58 6
11 L 27 b 43 r 59 7
12 M 28 c 44 s 60 8
13 N 29 d 45 t 61 9
14 O 30 e 46 u 62 +
15 P 31 f 47 v 63 /

Onde você realmente encontra Base64

Anexos de e-mail

O MIME (RFC 2045) codifica anexos em Base64 e quebra a saída a cada 76 caracteres. Decodificadores ignoram as quebras de linha — este as remove para você.

URIs data:

data:image/png;base64,… incorpora uma imagem, fonte ou SVG em HTML ou CSS. Cole a URI inteira aqui e o prefixo é detectado e removido automaticamente.

JSON Web Tokens

Cada um dos três segmentos de um JWT é base64url sem preenchimento. Cole um token e o cabeçalho e o payload aparecem em uma tabela legível.

Autenticação HTTP Basic

Authorization: Basic carrega base64(usuário:senha). Decodificar leva um colar — e é exatamente por isso que Basic só é aceitável sobre HTTPS.

Arquivos de configuração e segredos

Secrets do Kubernetes, certificados PEM e chaves SSH guardam binários em Base64 para que o arquivo continue sendo texto. Decodificar é como você confere o que há dentro.

APIs e bancos de dados

Blobs binários trafegam por JSON, XML e colunas de texto em Base64. A visualização hex mostra os bytes reais, então dá para reconhecer o tipo de arquivo pela assinatura.

Base64 padrão vs. URL-safe

A RFC 4648 define dois alfabetos. O padrão usa + e /, que têm significado dentro de uma URL. A variante URL-safe (§5, muitas vezes chamada de base64url) troca esses caracteres por - e _ e geralmente omite o preenchimento =. Este decodificador detecta qual você colou: uma string que contém - ou _ é tratada como URL-safe, a menos que você force a opção.

Como decodificar uma imagem Base64

Cole a URI data: inteira — com o prefixo data:image/png;base64, — ou só a parte codificada. O prefixo é removido, os bytes de assinatura são verificados e a imagem aparece na aba Prévia com as dimensões reais. Baixar salva como um arquivo PNG, JPEG, GIF, WebP ou SVG de verdade. Se a prévia ficar em branco, abra a aba Hex e procure uma assinatura conhecida como 89 50 4e 47 (PNG) ou ff d8 ff (JPEG) — se ela não aparecer, a string está truncada.

Seis erros de decodificação e o que significam

“Caractere inválido na posição N”

Há algo fora do alfabeto Base64 — normalmente aspas perdidas, reticências de uma cópia truncada ou um caractere URL-safe com a decodificação estrita forçada.

O tamanho não é múltiplo de 4

O preenchimento foi removido. Ative Corrigir preenchimento; se sobrar exatamente um caractere, a string está realmente truncada e não pode ser recuperada.

Mojibake — é em vez de é

Os bytes foram decodificados com o conjunto de caracteres errado. Tente UTF-8 primeiro e depois Windows-1252 para textos vindos de softwares antigos do Windows.

Símbolos ilegíveis por toda parte

O conteúdo é binário, não texto. Mude para a aba Hex ou Prévia e baixe como arquivo em vez de copiar o texto.

O resultado é mais Base64

O valor foi codificado duas vezes. Clique em “Enviar para a entrada” para jogar o resultado de volta e decodificar de novo.

Base64 não é criptografia

Qualquer pessoa decodifica com um colar. Se um segredo está “protegido” só por Base64, considere-o já exposto e troque-o.

Perguntas

Decodificar Base64: perguntas frequentes.

O que é decodificar Base64?

Decodificar Base64 é transformar uma string codificada em Base64 de volta nos bytes originais que ela representa. A codificação Base64 pega dados binários e os reescreve com 64 caracteres ASCII imprimíveis para que possam trafegar com segurança por sistemas que só lidam com texto, como e-mail ou JSON. A decodificação inverte esse mapeamento: cada quatro caracteres Base64 voltam a ser três bytes originais.

Como decodifico uma string Base64 online?

Cole a string Base64 na caixa de entrada no topo desta página. O resultado decodificado aparece na hora na caixa de saída ao lado — sem botão para clicar e sem espera. Depois, você pode copiar o texto, baixá-lo como arquivo, vê-lo em hexadecimal ou pré-visualizá-lo, se o resultado for uma imagem.

É seguro usar este decodificador Base64 com dados sensíveis?

Sim. Toda a decodificação acontece em JavaScript dentro do seu próprio navegador, então sua entrada nunca é enviada, transmitida, registrada ou armazenada. Você pode conferir abrindo as ferramentas de desenvolvedor e observando a aba de rede enquanto decodifica, ou desconectando da internet — a ferramenta continua funcionando depois que a página carrega.

Base64 é criptografia? É seguro?

Não. Base64 é uma codificação, não uma criptografia. Não oferece nenhuma segurança, porque qualquer pessoa pode revertê-lo sem chave nem senha — exatamente o que esta página faz. Nunca use Base64 para proteger senhas, tokens ou dados pessoais. Use criptografia de verdade, como AES, e TLS para dados em trânsito.

Como decodifico uma imagem Base64?

Cole a URI data: completa, incluindo o prefixo data:image/png;base64, ou só a parte codificada. O prefixo é removido automaticamente e a assinatura da imagem é verificada, então a imagem aparece na aba Prévia com as dimensões em pixels e o tamanho do arquivo. Use o botão Baixar para salvá-la como um arquivo PNG, JPEG, GIF, WebP ou SVG de verdade.

Por que o texto decodificado mostra caracteres estranhos como é ou �?

É um problema de conjunto de caracteres: os bytes estão corretos, mas estão sendo interpretados com a codificação errada. Ajuste primeiro o conjunto de caracteres para UTF-8. Se os dados vieram de um aplicativo antigo do Windows, tente Windows-1252 ou ISO-8859-1. Na detecção automática, a ferramenta tenta primeiro UTF-8 estrito e, se falhar, usa Windows-1252.

O que significa “Base64 inválido” e como corrijo?

Significa que a entrada tem um caractere fora do alfabeto Base64 ou que seu tamanho não é múltiplo de quatro. As causas mais comuns são uma cópia truncada, aspas ou reticências que vieram junto com o texto, ou uma string URL-safe usando - e _ . Deixe ativadas as opções Remover espaços e Corrigir preenchimento, e o decodificador resolve a maioria desses casos automaticamente.

Qual é a diferença entre Base64 padrão e Base64 URL-safe?

O Base64 padrão (RFC 4648, seção 4) usa + e / como os dois últimos caracteres, e ambos têm significado especial dentro de uma URL. O Base64 URL-safe, também chamado de Base64url (RFC 4648, seção 5), troca esses caracteres por - e _ e geralmente omite o preenchimento =. Este decodificador detecta qual variante você colou e converte automaticamente.

Posso decodificar um arquivo Base64?

Sim. Clique no botão Arquivo ou arraste um arquivo para a caixa de entrada. O arquivo é lido localmente pelo seu navegador, decodificado no seu dispositivo, e o resultado pode ser baixado com a extensão correta. Como nada é enviado, não há limite de tamanho imposto — o limite prático é a memória do seu dispositivo, não uma cota de servidor.

Como decodifico Base64 em Python?

Use a biblioteca padrão: import base64 e depois base64.b64decode("SGVsbG8=").decode("utf-8"). O b64decode sempre retorna bytes, então chame .decode() para obter uma string. Use base64.urlsafe_b64decode para o alfabeto URL-safe e passe validate=True se quiser que uma entrada malformada gere erro em vez de ser ignorada em silêncio.

Como decodifico Base64 no Linux ou no Bash?

Passe a string para o comando base64: echo "SGVsbG8=" | base64 --decode. Use printf %s em vez de echo se a quebra de linha final fizer diferença, base64 -d arquivo > saida.bin para arquivos e base64 -di para ignorar quebras de linha. A forma longa --decode funciona tanto no Linux quanto no macOS; versões antigas do macOS só aceitam -D maiúsculo como opção curta.

Como decodifico Base64 no Windows ou no PowerShell?

No PowerShell, execute [Text.Encoding]::UTF8.GetString([Convert]::FromBase64String("SGVsbG8=")). Para transformar um arquivo Base64 de volta em arquivo binário, leia-o com Get-Content -Raw, passe para [Convert]::FromBase64String e salve os bytes com [IO.File]::WriteAllBytes. No Prompt de Comando clássico, certutil -decode codificado.txt decodificado.bin faz o mesmo e vem em todas as versões do Windows.

Como decodifico Base64 em JavaScript?

No navegador, atob() decodifica para uma string binária, mas sozinho estraga texto não ASCII. Converta o resultado em bytes e passe pelo TextDecoder: new TextDecoder().decode(Uint8Array.from(atob(b64), c => c.charCodeAt(0))). No Node.js, use Buffer.from(b64, "base64").toString("utf8"), ou a codificação "base64url" para entradas URL-safe.

Posso decodificar um JWT aqui?

Sim. Cole um JSON Web Token e o cabeçalho e o payload aparecem automaticamente em uma tabela legível, com os timestamps de emissão e expiração convertidos em datas. A assinatura é exibida, mas não verificada, porque a verificação exige a chave secreta ou pública — que esta ferramenta nunca pede e nem poderia usar, já que nada sai do seu navegador.

Esta ferramenta é paga ou exige conta?

Não. É totalmente gratuita, sem cadastro, sem conta e sem limites de uso. É uma página estática, então não há servidor processando seus dados nem nada para cobrar.

Por que a saída Base64 é maior que os dados originais?

O Base64 representa cada três bytes de entrada com quatro caracteres de saída, então a forma codificada fica cerca de 33% maior, além do preenchimento e de eventuais quebras de linha. Esse acréscimo é o preço de poder transportar dados binários por canais que só aceitam texto.