Pular para o conteúdo principal
Tooletto

Decodificador Base64

Uma predefinição de Codificador e decodificador Base64

Decodifique Base64 de volta para texto legível. Lida com Unicode corretamente e aceita tanto o Base64 padrão quanto a variante segura para URL usada pelos JWTs, então você pode colar diretamente um segmento de token.

  • Os arquivos nunca saem do seu dispositivo
  • Grátis, sem cadastro
  • Sem marcas d'água
  • Funciona offline depois de carregado
Loading tool…

Como codificador e decodificador base64

  1. 1

    Escolha uma direção

    Alterne entre Codificar e Decodificar.

  2. 2

    Insira seus dados

    Digite ou cole na caixa de entrada. A conversão acontece enquanto você digita.

  3. 3

    Copie o resultado

    Copie a saída, ou baixe-a como um arquivo de texto.

Por que decodificar precisa aceitar ambas as variantes de Base64

Uma string Base64 encontrada na prática pode ser Base64 padrão — de um anexo de e-mail, uma URI de dados, um arquivo de configuração — ou Base64URL, mais comumente de um dos três segmentos separados por pontos de um JWT. Como as duas variantes diferem em apenas três caracteres, um decodificador que insiste em exatamente uma forma força você a trocar manualmente `-` por `+` e `_` por `/` antes que ele aceite um segmento de token, o que é uma etapa extra inconveniente para algo que deveria ser um simples colar. Aceitar ambas as variantes significa que um segmento de payload de JWT pode ser colado diretamente, sem saber nem se importar de antemão qual variante de Base64 é.

Quando a saída decodificada não é texto legível

Nem tudo codificado em Base64 é texto para começar — imagens, chaves de criptografia e outros dados binários também são comumente codificados em Base64 pelas mesmas razões de segurança do texto. Decodificar um desses produz bytes brutos que aparecem como caracteres deformados e ilegíveis ao serem interpretados como texto, o que é esperado em vez de um sinal de que a decodificação falhou: a operação reverteu a codificação corretamente, mas os bytes subjacentes nunca foram destinados a ser lidos como texto UTF-8.

Uma forma rápida de verificar uma string suspeita

Colar uma string desconhecida com aparência de Base64 aqui e verificar se ela decodifica para algo legível é um primeiro passo rápido para investigar o que realmente é um dado — um valor de configuração, um cookie, um fragmento de token encontrado em um lugar inesperado. Uma string que decodifica limpamente para JSON legível ou texto simples confirma que realmente é um dado codificado em Base64; uma que produz lixo ao decodificar ou não é Base64 de jeito nenhum, ou é dado binário codificado em Base64 em vez de texto, e qualquer um dos casos delimita o que investigar a seguir.

Perguntas frequentes

Lida com emojis e texto em outros idiomas?

Sim. O texto é codificado como UTF-8 antes do Base64, o que faz com que acentos, caracteres chineses e emojis convertam corretamente em ambas as direções. Ferramentas construídas sobre o `btoa` bruto do navegador lançam um erro com qualquer caractere acima de U+00FF — um erro muito comum.

O que é Base64URL e quando preciso dele?

Uma variante que substitui `+` por `-` e `/` por `_`, e remove o preenchimento `=`, tornando o resultado seguro dentro de uma URL ou nome de arquivo. JSON Web Tokens usam isso. O Base64 padrão quebra ao ser colado em uma string de consulta.

Base64 é uma forma de criptografia?

Não. É uma codificação projetada para levar dados binários através de canais somente de texto, e qualquer um pode revertê-la instantaneamente. Nunca use isso para ocultar senhas, chaves ou dados pessoais.

Por que minha saída Base64 é maior que a entrada?

Base64 representa cada três bytes como quatro caracteres, então a saída é sempre cerca de 33% maior. Esse acréscimo é o preço de ser seguro para transmitir como texto.