Decodificador de JWT
Cole o token e leia o que ele diz, inclusive quando expira.
A resposta aparece aqui enquanto você digita.
Guia: Três partes, duas legíveis3 min de leitura
Três partes, duas legíveis
Um JWT são três trechos em base64url separados por pontos. O primeiro é o cabeçalho, que diz como o token foi assinado (HS256, RS256…). O segundo é o payload, com as claims: quem é o usuário (sub), quem emitiu (iss), para quem vale (aud), quando expira (exp). O terceiro é a assinatura. Os dois primeiros não são criptografados, só codificados — cole o token e a página mostra tudo, formatado.
Validade em linguagem de gente
As datas de um JWT vêm em segundos desde 1970, o que ninguém lê de cabeça. A página converte exp, iat e nbf em datas e diz se o token já expirou, há quanto tempo, ou quanto falta. É a primeira coisa a conferir quando uma API começa a responder 401 do nada.
Por que a assinatura não é verificada
Verificar exige o segredo (HS256) ou a chave pública (RS256), e colar um segredo de assinatura numa página da internet é justamente o erro que expõe um sistema. Por isso esta ferramenta só lê. A verificação é trabalho do seu servidor, com a biblioteca da sua linguagem. Um token com alg none, sem assinatura nenhuma, aparece com aviso: nenhum servidor deveria aceitá-lo.
Nada é enviado
O token é decodificado nesta aba e não vai para lugar nenhum, e a página funciona sem internet. Mesmo assim, um token de acesso válido é uma credencial: prefira colar tokens de teste ou já expirados. Para ler um trecho em base64 solto, use o codificador Base64; para formatar um JSON grande, o formatador de JSON.
Perguntas frequentes
É seguro colar um token aqui?
Nada sai desta aba — o token é decodificado por código rodando no seu navegador. Mesmo assim, trate um token de acesso válido como senha: quem tem o token consegue usá-lo até ele expirar. Prefira tokens de ambiente de teste, ou já expirados.
A ferramenta verifica a assinatura?
Não, de propósito. Verificar exige o segredo ou a chave pública, e uma página pedindo para você colar o segredo de assinatura é exatamente o que não se deve fazer. A ferramenta lê o token; quem tem de verificar é o seu servidor.
O payload do JWT é criptografado?
Não. Um JWT comum (JWS) é só codificado em base64url, então qualquer pessoa com o token lê todas as claims — que é o que esta página mostra. Nunca ponha senha ou dado pessoal no payload. Tokens criptografados (JWE) têm cinco partes e não podem ser lidos sem a chave.
O que são exp, iat e nbf?
São timestamps Unix em segundos: exp é quando o token deixa de valer, iat quando foi emitido, nbf o momento antes do qual ele deve ser recusado. A página transforma em datas e diz há quanto tempo expirou ou quanto falta.
Por que o alg none é avisado?
Um token com alg none não tem assinatura, então qualquer pessoa poderia tê-lo escrito. Algumas bibliotecas antigas aceitavam esses tokens, o que permitia forjar qualquer identidade. Um servidor deve sempre recusá-los.