Decodificador de JWT
Cole um JWT para decodificar seu cabeçalho e payload, ver quando expira, e verificar os claims padrão. A decodificação acontece inteiramente no seu navegador, então tokens de acesso de produção nunca saem da sua máquina.
- Os arquivos nunca saem do seu dispositivo
- Grátis, sem cadastro
- Sem marcas d'água
- Funciona offline depois de carregado
Como decodificador de jwt
- 1
Cole seu token
Cole o JWT completo, incluindo ambos os pontos. É decodificado enquanto você digita.
- 2
Leia os claims
O cabeçalho e o payload são formatados, com a expiração e data de emissão exibidas como datas legíveis.
- 3
Copie o que precisar
Copie o payload decodificado como JSON para usar em outro lugar.
O que as três partes de um JWT realmente são
Um JSON Web Token é três segmentos codificados em Base64URL unidos por pontos: um cabeçalho descrevendo o algoritmo de assinatura e o tipo de token, um payload contendo os claims reais — quem o token identifica, quando expira, quais permissões concede — e uma assinatura calculada sobre os dois primeiros segmentos usando um segredo ou chave privada. Decodificar, que é o que esta ferramenta faz, significa decodificar em Base64URL os dois primeiros segmentos de volta para JSON legível; não diz nada sobre o terceiro segmento além de expor seu valor codificado bruto, porque verificar essa assinatura exige o segredo de assinatura real, que uma ferramenta baseada em navegador nunca deveria pedir para você colar.
Essa distinção — decodificar versus verificar — é a coisa mais importante a entender sobre uma ferramenta de depuração de JWT. Decodificar diz o que um token *afirma*; verificar diz se essas afirmações podem ser *confiadas*, confirmando que a assinatura foi produzida pelo emissor esperado. Um token pode decodificar perfeitamente e mostrar um payload afirmando acesso de administrador estando completamente forjado, se nada nunca verifica a assinatura contra a chave de assinatura real.
Por que um JWT não é um lugar seguro para dados sensíveis
O cabeçalho e o payload são codificados, não criptografados — Base64URL é uma transformação reversível sem nenhum segredo envolvido, então qualquer um que obtenha um token, seja interceptando tráfego de rede, lendo o armazenamento do navegador, ou recebendo-o diretamente, pode decodificar o payload e ler cada claim dentro dele sem precisar de nenhuma chave. Essa é precisamente a razão pela qual o conselho padrão é manter os payloads de JWT limitados a identificadores e claims não sensíveis — um ID de usuário, uma função, um tempo de expiração — e nunca colocar uma senha, um número de cartão de crédito, ou outro dado confidencial diretamente dentro do token, porque o formato do token não fornece nenhuma confidencialidade por si só.
Lendo exp, iat e nbf sem fazer a aritmética você mesmo
Os claims de timestamp padrão são armazenados como tempo Unix — um inteiro simples contando segundos desde 1º de janeiro de 1970 — o que é eficiente para máquinas compararem mas ilegível de relance para uma pessoa depurando um token a olho nu. Converter `1735689600` para "1º de janeiro de 2025, 00:00:00 UTC" à mão é exatamente o tipo de aritmética pequena e propensa a erros fácil de errar sob pressão de tempo, particularmente entre fusos horários. Renderizar os três claims como datas locais reais, e declarar diretamente se o token está atualmente expirado, válido, ou ainda não ativo, transforma uma sessão de depuração que de outra forma envolveria um cálculo secundário em uma resposta imediata e legível.
Perguntas frequentes
É seguro colar um token de produção aqui?
Mais seguro que qualquer decodificador baseado em servidor: o token é dividido e decodificado em Base64 no seu navegador, sem nenhuma requisição de rede envolvida. Você pode verificar isso desconectando da internet — a ferramenta continua funcionando. Dito isso, trate qualquer token que você cole em qualquer lugar como um que deveria rotacionar.
Isso verifica a assinatura?
Não, e deliberadamente. Verificar exige o segredo de assinatura ou a chave pública, e uma ferramenta de navegador pedindo para você colar seu segredo de assinatura é um mau hábito para fomentar. A verificação pertence ao seu backend, não a uma página web.
Um JWT é criptografado?
Não. O cabeçalho e o payload são codificados em Base64URL, que é codificação, não criptografia — qualquer um com o token pode ler cada claim. Nunca coloque senhas, números de cartão ou dados pessoais em um payload de JWT.
O que significam exp, iat e nbf?
São timestamps Unix em segundos. `exp` é quando o token expira, `iat` quando foi emitido, e `nbf` o momento mais cedo em que pode ser aceito. Esta ferramenta renderiza os três como datas locais e diz se o token está atualmente válido.
Por que falha ao decodificar meu token?
Um JWT deve ter exatamente três partes separadas por pontos. As causas usuais são uma cópia truncada, um prefixo "Bearer " deixado no lugar, ou uma aspa envolvente de uma resposta JSON.
Você também pode precisar
Codificador e decodificador Base64
Codifique e decodifique Base64 e Base64URL
Formatador de JSON
Formate, valide e minifique JSON instantaneamente
Gerador de hash
MD5, SHA-1, SHA-256, SHA-384 e SHA-512
Formatador de CSS
Embeleze ou minifique folhas de estilo
Minificador de CSS
Reduza folhas de estilo com um minificador de verdade, consciente de CSS
Formatador de HTML
Embeleze e indente HTML corretamente
Formatador de JavaScript
Formate JS e TypeScript com um analisador real
Minificador de JS
Reduza JavaScript com minificação de verdade, não regex