Decodificador Base64/URL

Decodifique e codifique Base64, analise strings codificadas por URL, visualize imagens Base64 e decodifique segmentos de cabeçalho ou payload de JWT

A saída aparecerá aqui.
Pré-visualização da imagem
Nenhuma imagem detectada.
As imagens decodificadas serão exibidas aqui.

Como usar

Passo 1

Escolher modo de análise

Alterne entre a análise de Base64, URL ou segmento JWT.

Passo 2

Colar valor codificado

Insira texto codificado, URL de dados de imagem ou token JWT completo.

Passo 3

Decodificar e inspecionar

Leia a saída decodificada, visualize imagens e copie os resultados.

Perguntas frequentes

Posso decodificar imagens Base64 diretamente no navegador?

Sim. Cole um data URL ou string de imagem Base64 bruta e a ferramenta renderizará uma pré-visualização com o tipo MIME e tamanho detectados.

A decodificação de URL trata sinais de mais corretamente?

Sim. No modo de decodificação, os sinais de mais são interpretados como espaços antes da decodificação URI, correspondendo ao comportamento comum de codificação de formulários.

Posso decodificar apenas o cabeçalho ou a carga útil do JWT?

Sim. O modo JWT permite escolher e decodificar independentemente o cabeçalho, a carga útil ou os segmentos relacionados à assinatura.

Qual é a diferença entre Base64 padrão e Base64 URL-safe?

O Base64 padrão (RFC 4648, secção 4) usa + e /, que colidem com caracteres reservados de URL. O alfabeto URL-safe (secção 5) substitui-os por - e _. Os JWT usam sempre o alfabeto URL-safe - é por isso que as assinaturas dos tokens nunca contêm + ou /. Esta ferramenta deteta automaticamente qualquer um dos alfabetos.

Porque é que o Base64 termina com sinais = e posso removê-los?

O Base64 codifica 3 bytes em 4 caracteres, pelo que as entradas que não são múltiplos de 3 são preenchidas com = para manter o comprimento múltiplo de 4. Um = significa 2 bytes restantes; dois = significam 1. O preenchimento pode ser omitido em segurança quando o comprimento é conhecido de outra forma - os segmentos JWT fazem exatamente isso - e os decodificadores repõem-no automaticamente.

A codificação Base64 pode corromper texto que não esteja em inglês?

O Base64 em si é sem perdas, mas a comum função btoa() do JavaScript só aceita caracteres Latin-1 e lança um erro em qualquer outra situação. A abordagem correta é codificar primeiro em UTF-8 (TextEncoder) e depois aplicar Base64 aos bytes. Esta ferramenta trata desse pipeline automaticamente, pelo que o texto em chinês, árabe ou emojis é codificado e decodificado sem qualquer corrupção.

Como posso saber se uma string é realmente Base64?

Verifique três sinais: o conjunto de caracteres é apenas A-Z, a-z, 0-9, +, / (ou os equivalentes URL-safe - e _); o comprimento é múltiplo de 4 depois de repor o preenchimento; e a decodificação produz bytes com sentido. Nenhum método é 100% certo, porque muitas strings simples (como abcd) também são Base64 válido - o contexto importa.

O Base64 é uma forma de encriptação?

Não. O Base64 é uma codificação reversível que qualquer pessoa pode decodificar sem qualquer segredo - não proporciona qualquer confidencialidade. Nunca o use para proteger palavras-passe ou chaves de API. Para proteção, use TLS em trânsito e uma cifra real como AES-256-GCM; a única função do Base64 é tornar os dados binários seguros em canais de texto.

{-- * External Resources Component(#18 Phase 3b 内容佐证工程) * 工具页「权威引用」区块:RFC / W3C / WHATWG / ECMA / IANA / 官方规范站 / Wikipedia。 * * - 接受 :slug 属性 → 经 config/tool-sources.php 家族矩阵渲染该工具的权威引用 * - slug 未命中映射时不渲染(无权威来源的工具静默跳过) * - 链接 title 保持英文(引用源专名);description 经 * common.resources.descriptions.{key} 本地化,lang 未命中回退英文(线上不裸奔) * - 链接保持 dofollow(rel="noopener noreferrer") * * @param string|null $slug --}}