Decodex

DECODEX · BASE64 · UTF-8

Base64 e Base64URL: diferenças, preenchimento e exemplos

Compare Base64 e Base64URL, os caracteres + / e - _, preenchimento e decodificação UTF-8 com exemplos verificados.

Base64URL representa os mesmos bytes que Base64, mas muda dois caracteres para facilitar o uso em URLs. O Decodex aceita os dois formatos e exibe texto UTF-8. Você pode testar o exemplo da tabela diretamente no conversor.

O que muda no alfabeto

Base64 usa + e /; Base64URL usa - e _. Letras e números são iguais. O preenchimento = é uma regra separada: alguns protocolos o removem e outros o mantêm. Uma sequência só de letras e números não revela qual alfabeto foi usado. Nenhum dos formatos é criptografia.

Quando uma URL altera os dados

Em application/x-www-form-urlencoded, + pode ser interpretado como espaço. / também pode ser confundido com um separador de caminho. Use URLSearchParams para montar parâmetros. Se + já foi perdido, o decodificador não consegue reconstruí-lo com certeza. O emoji 😀 vira 8J+YgA== em Base64 e 8J-YgA== em Base64URL.

Converter e conferir

Primeiro codifique os bytes em Base64, troque + por - e / por _, e remova somente os = finais se o protocolo permitir. O Decodex gera Base64 padrão com preenchimento e aceita Base64URL ao decodificar. Ler um segmento JWT não verifica assinatura, validade ou permissões; esta ferramenta não valida tokens.

Testar este exemplo

FormatoTextoBase64
Base64😀8J+YgA==
Base64URL😀8J-YgA==
Base64URL (JWT)😀8J-YgA

Testar este exemplo →

Base64 → UTF-8 · UTF-8 → Base64

Perguntas frequentes

Base64URL sempre remove =?

Não. Siga as regras do sistema que recebe os dados. No Decodex, o exemplo sem preenchimento 8J-YgA resulta em 😀.

Referências

Mais guias de Base64