Codificador e Decodificador Base64

Converta texto em Base64 ou decodifique Base64 de volta para texto. Suporta caracteres acentuados e Unicode corretamente.

O que é Base64

Base64 é uma forma de representar dados binários ou de texto usando apenas 64 caracteres seguros, letras, números e alguns símbolos. Não é criptografia e não oferece segurança; é uma codificação que permite que os dados trafeguem com segurança através de sistemas que lidam apenas com texto, como e-mail, cargas JSON, URLs de dados e cabeçalhos HTTP. Esta ferramenta converte texto em Base64 e decodifica Base64 de volta em texto legível.

Quando você precisa do Base64

Os desenvolvedores encontram Base64 constantemente. Os anexos de e-mail são codificados em Base64 para que os arquivos binários sobrevivam ao transporte de e-mail somente texto. Imagens pequenas são incorporadas diretamente em CSS ou HTML como URLs de dados Base64 para salvar uma solicitação. Os cabeçalhos de autenticação básica carregam credenciais codificadas em Base64. JSON Web Tokens usam Base64 para seus segmentos. Quando você precisa inspecionar ou criar qualquer um deles, codificar e decodificar manualmente é impraticável, esta ferramenta faz isso instantaneamente.

Unicode tratado corretamente

Um bug comum com ferramentas Base64 é confundir caracteres acentuados ou não latinos, porque a codificação ingênua assume ASCII simples. Esta ferramenta codifica primeiro em UTF-8, para que letras acentuadas, emojis e caracteres de qualquer idioma sobrevivam intactos à viagem de ida e volta. Você pode codificar "café" ou texto em qualquer script e decodificá-lo exatamente como estava.

Base64 não é criptografia

Vale ressaltar: Base64 é trivialmente reversível e não oferece proteção. Qualquer um pode decodificá-lo em um segundo, inclusive com esta ferramenta. Nunca use Base64 para ocultar senhas ou dados confidenciais pensando que é seguro. É puramente uma codificação de transporte, útil para tornar os dados seguros em termos de texto, não para mantê-los secretos. Para segurança real, você precisa de criptografia real, o que é algo totalmente diferente.

Como funciona a codificação Base64

Base64 pega dados binários e os representa usando 64 caracteres imprimíveis, A a Z, a a z, 0 a 9, mais e barra, com o sinal de igual como preenchimento. Cada três bytes de entrada tornam-se quatro caracteres Base64, razão pela qual os dados codificados são cerca de um terço maiores que os originais. Essa expansão é a contrapartida para tornar seguro qualquer dado para incorporação em contextos somente de texto. A decodificação inverte exatamente o processo, recuperando os bytes originais.

URLs de dados e imagens incorporadas

Um uso diário do Base64 é o URL de dados, que incorpora um pequeno arquivo diretamente em HTML ou CSS em vez de vincular a ele. Um pequeno ícone codificado como um URL de dados Base64 é carregado com a página em vez de exigir uma solicitação separada, o que pode acelerar a renderização de pequenos ativos. Os desenvolvedores colam dados de imagem, codificam-nos e colocam o resultado em um atributo src. Para arquivos maiores, a penalidade de tamanho supera o benefício, mas para ícones pequenos e SVGs embutidos é uma técnica comum.

Base64 em tokens, e-mails e APIs

Base64 aparece em todo o desenvolvimento web. JSON Web Tokens codificam seus segmentos de cabeçalho e carga útil em Base64 para que viajem com segurança em cabeçalhos e URLs. Os anexos de email são codificados em Base64 para que os arquivos binários sobrevivam ao transporte de email baseado em texto. A autenticação básica HTTP codifica credenciais em Base64. Às vezes, as APIs aceitam ou retornam dados binários codificados em Base64 dentro de JSON. Quando você precisa inspecionar ou construir qualquer um deles, esta ferramenta codifica e decodifica instantaneamente, manipulando o Unicode corretamente para que nada seja corrompido.

Perguntas frequentes

Base64 é uma forma de criptografia?
Não. Base64 é uma codificação, não uma criptografia. É trivialmente reversível por qualquer pessoa e não oferece nenhuma segurança. Use-o para tornar o texto dos dados seguro para transporte, nunca para proteger ou ocultar informações confidenciais.
Ele lida com caracteres acentuados e emoji?
Sim. A ferramenta codifica através de UTF-8, de modo que letras acentuadas, emojis e caracteres de qualquer idioma sobrevivem intactos à codificação e decodificação. Muitas ferramentas mais simples corrompem esses caracteres; este não.
Por que eu precisaria decodificar Base64?
Para inspecionar o conteúdo de coisas que o utilizam, anexos de e-mail, URLs de dados, cabeçalhos de autenticação básicos ou segmentos de um JSON Web Token. A decodificação transforma a string de transporte seguro novamente em texto ou dados legíveis.
O que significa um erro Base64 inválido?
Isso significa que a entrada não é Base64 válida, geralmente porque contém caracteres fora do alfabeto Base64 ou possui preenchimento incorreto. Verifique se você colou a string completa sem espaços extras ou quebras de linha.
Meus dados foram carregados?
Não. A codificação e decodificação acontecem inteiramente no seu navegador. Seus dados nunca saem do seu dispositivo, por isso são seguros mesmo para conteúdo que você não enviaria.
Por que os dados Base64 são maiores que os originais?
Base64 representa cada três bytes como quatro caracteres, portanto a saída codificada é aproximadamente 33% maior que a entrada. Esse aumento de tamanho é o custo de tornar seguro a transmissão de dados binários como texto.
O que é um URL de dados Base64?
É uma forma de incorporar o conteúdo de um arquivo diretamente em HTML ou CSS usando sua codificação Base64, de forma que uma pequena imagem ou ícone seja carregado com a página em vez de como uma solicitação separada. É mais útil para ativos pequenos.
Posso decodificar um JWT com isso?
Você pode decodificar os segmentos Base64 de um JSON Web Token para ler seu cabeçalho e carga útil. Observe que isso apenas decodifica, não verifica a assinatura do token, o que requer a chave secreta.
Corrompe caracteres acentuados ou emoji?
A ferramenta codifica através de UTF-8, de modo que letras acentuadas, emojis e textos de qualquer idioma sobrevivem intactos à codificação e decodificação, ao contrário de ferramentas mais simples que assumem ASCII simples.