O código desta página não rodou.

Abrir o index.html direto de uma pasta bloqueia os módulos de JavaScript, então não vai acontecer nada quando você escolher um arquivo. Sirva a pasta por http:

powershell -ExecutionPolicy Bypass -File serve.ps1

Depois abra http://localhost:8080/.

Codificador e decodificador Base64 — e URL, entidades HTML, hexadecimal e escapes

Base64, codificação percentual, entidades HTML, hexadecimal e escapes com barra invertida, nos dois sentidos. Nada é colado no servidor de ninguém.

Idioma: Português
Ver o código-fonte
Seus texto são processados no navegador. Sem envio para processamento.

Cada codificação daqui é aritmética sobre uma string, feita aqui, nesta página. Os codecs são escritos à mão e ficam em src/encode.js; e não há mais nada. Esta ferramenta não tem função de rede de espécie alguma, nada para buscar e nada para mandar, e isso pesa aqui mais do que em quase qualquer outro lugar: o que as pessoas colam num decodificador de Base64 online é um token, e colar um token no site de outra pessoa é entregá-lo a ela.

Verificação ao vivo: verificando…

Offline: verificando…

Você não precisa confiar na nossa palavra. Abra as ferramentas do desenvolvedor, deixe a aba “Rede” à vista e decodifique alguma coisa. Nenhuma requisição leva um caractere do que você colou. Ou então desligue a internet e decodifique assim mesmo.

1 Escolha a codificação

Em que sentido

2 Cole aqui

vazio

3 Leve o resultado

Nada ainda.

 

Ver como Markdown

Como codificar ou decodificar Base64 sem enviá-lo

  1. Escolha a codificação. Base64 nos dois alfabetos, codificação percentual para um valor sozinho ou para uma URL inteira, as cinco entidades HTML, bytes em hexadecimal e os escapes com barra invertida de um literal de string. A nota embaixo do menu diz para que serve cada uma.
  2. Escolha o sentido. Codificar pega texto puro e produz a forma codificada; Decodificar traz a forma codificada de volta ao texto puro. O resultado acompanha a sua digitação: mudar de sentido é um clique, sem redigitar nada.
  3. Cole, ou solte o arquivo. Qualquer coisa que você consiga selecionar e copiar serve. Um arquivo solto no seletor é lido pelo seu próprio navegador e vai para a caixa: aqui não existe etapa de envio para pular.
  4. Leia o erro, se houver um. Um decodificador que falha aqui diz o que encontrou — um caractere que o Base64 não usa, preenchimento no lugar errado, bytes que não são texto — em vez de devolver algo plausível e errado.
  5. Leve o resultado. Copie, ou baixe como arquivo de texto. Os contadores embaixo da caixa dizem quantos bytes entraram e quantos saíram.

A versão longa

Base64 é criptografia? Não - e a diferença importa na prática. Codificação, criptografia e hash resolvem três problemas diferentes: o primeiro qualquer um desfaz, o segundo só quem tem a chave, o terceiro ninguém. Qual é qual, e como reconhecer de vista.

Perguntas

O meu texto é enviado para algum lugar?

Não. Cada codificador e cada decodificador desta página é uma função que roda no seu próprio navegador, no seu próprio hardware. Esta ferramenta não tem função de rede de espécie alguma: nunca busca nada e nunca manda nada, e a Content-Security-Policy da página lista todo endereço que ela pode contatar, e nenhum deles é nosso. É esse o motivo para usá-la com um token de acesso ou um cookie de sessão: colar uma dessas coisas no decodificador de outra pessoa é entregá-la a ela.

O Base64 daqui é o mesmo Base64 de todo mundo?

É: ele é conferido contra os vetores de teste do RFC 4648, e não contra ele mesmo. Os dois alfabetos decodificam, então um JWT escrito com - e _ se lê tão fácil quanto um escrito com + e /, e uma entrada quebrada a cada 64 caracteres é juntada para você. A codificação passa por bytes UTF-8, então uma letra acentuada ou um emoji sobrevive à ida e à volta.

Base64 é criptografia?

Não, e tratá-lo como criptografia é o erro clássico. Base64 é uma grafia: os mesmos bytes, escritos num alfabeto que sobrevive a uma URL, a um e-mail ou a uma string JSON. Qualquer um pode ler de volta — esta página faz isso em um milissegundo —, então ele não esconde nada e não protege nada. Se o que você tem é segredo, precisa de criptografia de verdade antes de ser codificado, não no lugar dela.

Por que a decodificação falhou?

Porque o que foi colado não é exatamente o que o codec esperava receber, e o erro diz em que sentido: um caractere fora do alfabeto Base64, preenchimento no lugar errado, um sinal de porcentagem sem dois dígitos hexadecimais atrás, ou bytes que até se decodificam do Base64 mas não são texto UTF-8 — o que geralmente significa que o original era um arquivo, e não uma string. O atob do navegador teria devolvido algo plausível no lugar; ser avisado é todo o sentido de colar algo num decodificador.

Qual é a diferença entre as duas codificações de endereço web?

Um valor sozinho, ou o endereço inteiro. Codificar um valor escapa tudo a que uma URL dá significado — as barras, os pontos de interrogação, os e comerciais —, que é o que você quer para um único parâmetro de consulta. Codificar uma URL inteira deixa o endereço funcionando: as barras e o ? ficam, e só os caracteres que uma URL não consegue carregar de jeito nenhum são escapados. Usar o primeiro num endereço inteiro quebra o endereço; usar o segundo num valor perde onde o valor termina.

De que tamanho pode ser o arquivo?

Aqui não tem limite definido, porque não existe servidor pagando por um. O teto de verdade é o seu próprio computador: alguns megabytes de texto vão bem, e num documento muito longo a página espera uma pausa na sua digitação antes de recodificar, em vez de brigar com você pelo teclado.

É grátis, e preciso de conta?

É grátis, e não tem conta, nem login, nem período de teste, nem limite de quanto você cola. O site exibe publicidade, e é ela que paga a conta; os anúncios não recebem nada sobre o seu texto.

Funciona offline?

Funciona. Carregue a página uma vez, depois desligue a internet e ela continua funcionando. Esse é também o jeito mais simples de provar que nada está sendo enviado: uma ferramenta que mandasse o seu texto embora para ser decodificado pararia no instante em que você tirasse da tomada.