Codificador / Decodificador Base64 Online
Precisa converter texto legível para o formato Base64 para usar em cabeçalhos HTTP, ou decifrar o conteúdo de um token de API? Nosso Codificador e Decodificador de Texto Base64 é uma ferramenta especializada para trabalhar com strings de texto, capaz de lidar com complexidades como acentos ou caracteres especiais.
Está a trabalhar com imagens?
Se o seu código começa comdata:image/png...ou se deseja converter um arquivo em texto, esta ferramenta apenas mostrará caracteres sem sentido. Utilize a nossa ferramenta especializada para conversão de imagem.
Como o formato Base64 funciona?
Muitas pessoas usam Base64 diariamente, mas poucos sabem como funciona “por debaixo do capô”. Não é mágica, mas matemática simples com bits.
O texto comum num computador é armazenado em 8 bits (1 byte). No entanto, o Base64 usa um “alfabeto” de 64 caracteres (A-Z, a-z, 0-9, +, /). Como 2^6 = 64, um caractere Base64 representa exatamente 6 bits de informação.
Processo de Conversão (Algoritmo):
- São usados três caracteres do seu texto (3 × 8 bits = 24 bits).
- Estes 24 bits são divididos em quatro grupos de 6 bits.
- Cada grupo recebe um caractere da tabela Base64.
Consequência: Como transformamos 3 caracteres em 4, a string Base64 resultante é sempre aproximadamente 33% mais longa do que o texto original.
Problema de conjunto de caracteres: Porque os conversores Base64 comuns estragam o checo?
Se alguma vez tentou codificar a palavra “Kůň” na consola do navegador usando a função btoa('Kůň'), provavelmente recebeu um erro: String contains characters outside of the Latin1 range.
O Base64 foi originalmente projetado para caracteres ASCII de 7 bits. No entanto, o checo, emojis e outros símbolos especiais (UTF-8) ocupam mais bytes na memória (multibyte characters).
- Letra
a= 1 byte. - Letra
ř= 2 bytes. - Emoji 🚀 = 4 bytes.
A nossa ferramenta resolve este problema. Antes de codificar para Base64, convertemos o texto corretamente para uma sequência de bytes UTF-8. Graças a isso, pode codificar objetos JSON, textos checos e símbolos modernos sem o risco de corromper os dados.
Onde a codificação de texto Base64 é usada?
Enquanto imagens em Base64 servem principalmente para incorporação em CSS/HTML, o Base64 textual tem uma utilização completamente diferente em sistemas de backend:
1. Autenticação Básica HTTP
Quando se autentica numa API, o cabeçalho frequentemente tem este aspeto:
Authorization: Basic dXppdmF0ZWw6aGVzbG8=
Por trás deste código, esconde-se simplesmente um nome de utilizador e senha combinados no formato utilizador:senha. A nossa ferramenta permite-lhe gerar ou verificar estes cabeçalhos facilmente.
2. JSON Web Tokens (JWT)
As aplicações web modernas usam os chamados JWT para autenticação. Um token assim parece três longas strings separadas por um ponto. A parte com os dados (Payload) é um objeto JSON comum codificado em Base64.
- Dica: Tente colar a parte do meio do seu token JWT aqui e decodificá-la. Verá exatamente que dados a aplicação regista sobre si (ex: ID do utilizador, expiração).
3. Arquivos de Configuração (Kubernetes Secrets)
Plataformas como Kubernetes armazenam dados secretos (Secrets) em arquivos de configuração YAML em Base64. Não se trata de encriptação, mas de uma forma de armazenar dados binários ou texto com caracteres problemáticos (novas linhas, aspas) num arquivo de texto.
O que é “codificação Base64 URL Safe” e porque é que isso importa?
O alfabeto padrão Base64 contém os caracteres + (mais) e / (barra). Ambos estes caracteres têm um significado especial em URLs:
/separa diretórios.+é frequentemente interpretado como um espaço.
Se enviasse Base64 padrão num parâmetro de URL (ex: site.com?token=ab/cd+ef), o servidor poderia ler os dados incorretamente.
Solução (Modo URL Safe): O nosso interruptor ativa a variante Base64URL (conforme RFC 4648), que realiza estas alterações:
+muda para-(hífen)./muda para_(sublinhado).- No final, os caracteres
=(preenchimento) são removidos, pois não são necessários em URLs.
Mito: Base64 não é encriptação!
É importante compreender uma diferença fundamental que os iniciantes frequentemente confundem:
- Codificação (Encoding - Base64): Serve para a transferência de dados. É como embalar algo numa mala para que não se parta durante a viagem. Qualquer um que encontre a mala pode abri-la (decodificar) e ver o conteúdo. Não é seguro para dados confidenciais.
- Encriptação (Encryption - AES, RSA): Bloqueia os dados com uma chave. Sem a chave, não se pode aceder ao conteúdo.
- Hashing (Hashing - SHA, MD5): Um processo unidirecional (ex: para armazenar senhas). Não é possível obter o texto original a partir do resultado.
Se precisar de enviar uma senha ou dados sensíveis, o Base64 por si só não é suficiente. Deve usar HTTPS (SSL/TLS), que encripta a transmissão.