Como funciona a codificação e decodificação Base64
O que a codificação Base64 faz
O Base64 representa dados com um conjunto fixo de 64 caracteres imprimíveis: as letras de A a Z em maiúsculas e minúsculas, os dígitos de 0 a 9 e os dois símbolos + e /. Esta ferramenta pega o texto que você digita ou cola e o reescreve nesse alfabeto, e também faz o caminho inverso: cole uma string Base64 e ela reconstrói o texto original.
Um único botão de modo alterna entre codificar e decodificar, então você vai e volta sem recarregar a página, e o resultado aparece assim que você executa a operação, pronto para copiar.
Um exemplo concreto
O Base64 processa três bytes de cada vez. Esses três bytes de 8 bits são reagrupados em quatro blocos de 6 bits, e cada bloco escolhe um caractere do alfabeto. Pegue a palavra Man: seus bytes se transformam em quatro valores que correspondem a T, W, F e u, de modo que Man é codificada como TWFu.
Quando o comprimento da entrada não é múltiplo de três, um ou dois caracteres = são adicionados como preenchimento. Hello World, por exemplo, é codificada como SGVsbG8gV29ybGQ=, onde o = final indica que foi preciso preencher para completar o último grupo.
Quando usar
O Base64 é a forma comum de transportar dados que não são texto puro por canais que só aceitam texto. Você pode decodificar um segmento de um JSON Web Token (JWT) para inspecionar suas claims, ler as credenciais guardadas em um cabeçalho HTTP Basic Auth ou desempacotar um valor tirado de um cookie, de um arquivo de configuração ou de uma resposta de API para ver o que ele realmente contém.
No sentido oposto, codificar permite embutir uma imagem pequena diretamente em HTML ou CSS como data URI, ou colar conteúdo quase binário onde se espera texto puro sem que ele seja corrompido no caminho.
Observações e casos especiais
O texto é tratado como UTF-8 antes de codificar, então letras acentuadas, caracteres CJK e emojis sobrevivem intactos a uma ida e volta completa em vez de se corromperem. A decodificação confere a entrada primeiro: uma string com caracteres fora do alfabeto Base64, ou com preenchimento quebrado, é rejeitada com um erro claro em vez de devolver lixo.
Esta ferramenta usa o alfabeto padrão com + e /; a variante segura para URL que os troca por - e _ é uma codificação parecida, porém distinta. Lembre-se de que o Base64 é uma codificação, não criptografia: por si só não esconde nada, já que qualquer pessoa pode decodificar o resultado e recuperar o original.