Coloque seu arquivo
Escolha ou arraste um arquivo .txt ou .b64. Dá para colar o conteúdo também.
Cole uma string Base64 e o resultado aparece na mesma aba: texto legível quando os bytes são UTF-8 válido, ou o nome do contêiner e um download quando não são. Também é possível abrir um arquivo .txt ou .b64 que contenha a string em vez de colá-la. Os dois alfabetos são aceitos — o padrão com + e /, e o URL-safe com - e _ — e a ferramenta informa qual deles foi detectado. Espaços, tabulações, quebras de linha e uma marca de ordem de bytes solta são contados e ignorados em vez de decodificados como dados, e o prefixo de uma data: URL é removido e mostrado à parte com o tipo de mídia que declara. Toda recusa traz um código estável, e os erros de validação que conseguem apontar um caractere — caractere fora do alfabeto, alfabetos misturados, preenchimento fora de lugar ou em excesso, comprimento impossível ou uma data: URL sem a marca base64 — trazem também o índice, a linha e a coluna exatos dentro da string que você colou; já as recusas por tamanho ou por entrada vazia não têm um caractere culpado, então informam as contagens e o limite. O codificador faz o caminho inverso: texto ou bytes viram Base64 no alfabeto padrão ou URL-safe, com ou sem preenchimento, informando o tamanho em bytes e não a contagem de caracteres.
ou arraste um arquivo aqui
Escolha ou arraste um arquivo .txt ou .b64. Dá para colar o conteúdo também.
O arquivo é lido e analisado neste navegador; nada é enviado.
Veja o que voltou e então copie, baixe ou siga em frente.
Quer saber o que acontece com os arquivos? Leia o aviso de privacidade →
Cole a string na caixa de entrada e o resultado decodificado aparece na mesma aba imediatamente, sem botão, sem cadastro e sem envio de arquivos. Se a string estiver salva em disco, dá para abrir um arquivo .txt ou .b64 em vez de colar. O decodificador lê tanto o alfabeto padrão (+ /) quanto o URL-safe (- _), descarta as quebras de linha e os espaços que vieram junto na cópia e mostra o tamanho em bytes ao lado do resultado.
Abra o lado de codificação, digite ou cole o texto, e a saída Base64 é gerada com preenchimento canônico por padrão. O texto vira bytes UTF-8 antes de ser codificado, então acentos, cedilha e emojis voltam idênticos na ida e na volta. É possível escolher o alfabeto URL-safe quando a string precisa viajar dentro de uma URL ou de um nome de arquivo, e desligar o preenchimento quando o sistema de destino espera uma string sem o sinal de igual.
Não: o que você cola não sai da aba, porque a decodificação roda inteiramente na página já carregada e nenhuma requisição de rede é feita durante o processo. Isso importa justamente para o tipo de conteúdo que costuma ser decodificado — tokens de sessão, trechos de log, credenciais de configuração — que muitas vezes não pode ser colado em um serviço remoto.
Sim: depois que a página carrega você pode desligar a rede e continuar decodificando e codificando, e em nenhum momento é pedido cadastro ou e-mail. Nada é buscado enquanto uma string é decodificada, então um notebook sem internet se comporta igual a um conectado. Só o carregamento inicial da página precisa de conexão, portanto deixe a aba aberta se souber que vai ficar sem rede.
Abra esta página no Chrome do Android, toque em selecionar arquivo e escolha o .b64 no armazenamento do celular: nenhum aplicativo é instalado. No celular isso resolve um problema real, porque quase nenhum gerenciador de arquivos móvel sabe o que fazer com a extensão .b64. O texto decodificado pode ser copiado direto, e um resultado binário é salvo como download em vez de exibido.
Porque o número de caracteres Base64 deixa resto 1 ao ser dividido por quatro, e seis bits sozinhos não formam nenhum byte completo — a string está truncada. A mensagem aponta a posição do último caractere de dados, o que ajuda a ver onde a cópia terminou cedo demais. Normalmente falta um pedaço no fim: recupere a string inteira da fonte em vez de acrescentar caracteres para completar.
Porque os bytes decodificados não são UTF-8 válido ou contêm bytes de controle que nenhum arquivo de texto teria, então são declarados binários em vez de virarem caracteres corrompidos. A verificação é rigorosa e nunca troca um byte quebrado por um símbolo de substituição: você recebe o veredito honesto e o deslocamento da primeira sequência inválida. Se os bytes começarem com uma assinatura de imagem conhecida, o contêiner é nomeado e o arquivo é oferecido para download.
A entrada vai até 2.000.000 de caracteres e a carga decodificada até 2.000.000 de bytes, e os dois tetos são conferidos antes de qualquer alocação de memória. Por isso uma colagem grande demais é recusada na hora com um erro de tamanho que mostra as contagens e o limite, em vez de travar a aba tentando montar um buffer que não cabe. A tela pré-visualiza 200.000 caracteres do texto longo; copiar e baixar levam o conteúdo completo.
Sim: uma string cujo comprimento deixa resto de dois ou três caracteres decodifica normalmente e apenas recebe um aviso de que o preenchimento estava ausente. Base64 sem preenchimento é o normal em JWT e em parâmetros de URL, então tratar isso como erro seria errado. O que é recusado é o preenchimento errado — sinais de igual demais, preenchimento pela metade ou dados depois do preenchimento.
Decodificar aqui é seguro porque a carga é sempre tratada como bytes inertes: nada é executado, o HTML decodificado não é renderizado e nenhuma URL encontrada dentro do resultado é acessada. O risco se desloca para o passo seguinte: um executável ou um documento com macros continua exatamente tão perigoso ao ser salvo e aberto quanto era dentro da mensagem. A ferramenta diz o que os bytes são, não se são maliciosos.
Base64 usa 64 caracteres e cresce cerca de 133%, enquanto Base32 usa apenas A–Z e 2–7 e cresce cerca de 160%; aqui só existe decodificação Base64. Esta ferramenta não identifica Base32: como todo o alfabeto Base32 também é válido em Base64, uma string Base32 colada aqui normalmente passa na validação e é interpretada como Base64, devolvendo bytes sem sentido — quase sempre classificados como binário — e não um erro de caractere inválido. Se a string original vier toda em maiúsculas e o resultado não fizer sentido, provavelmente é Base32 e precisa de outra ferramenta.
Não: uma decodificação limpa prova apenas que os caracteres formavam uma sequência Base64 bem formada, não que os dados sejam autênticos ou que ninguém os tenha alterado. Base64 é codificação, não criptografia nem assinatura: qualquer pessoa pode modificar o conteúdo, recodificar e obter uma string que decodifica igualmente bem. Avalie a origem do material, não o sucesso da decodificação.