Decodificador JWT

Decodifique um JSON Web Token para ver o cabeçalho e o payload, conferir a expiração e verificar assinaturas HS256/384/512.

Carregando…

Como usar

  1. Cole o token na caixa. Um "Bearer " no início é ignorado, então você pode colar o valor de um cabeçalho Authorization como está.
  2. Veja o Cabeçalho e o Payload decodificados. O botão Copiar ao lado de cada título copia o JSON formatado.
  3. Se o payload tiver o claim exp, a linha acima mostra Expirado ou Não expirado e quanto falta ou quanto passou, atualizado a cada segundo.
  4. A tabela mostra iat (emitido), nbf (válido a partir de) e exp (expira) como datas no seu fuso horário, cada uma com o tempo relativo.
  5. Em Assinatura, para um token HS256, HS384 ou HS512, digite o segredo em Chave secreta (HMAC) para ver se a assinatura é válida.

Perguntas frequentes

Se o token é decodificado, quer dizer que ele é válido?
Não. O cabeçalho e o payload são apenas codificados em Base64URL, então qualquer pessoa pode lê-los ou forjar outros. Um token só é confiável se a assinatura for conferida com a chave correta e os valores de alg, exp, nbf, iss e aud forem os que sua aplicação espera; esta ferramenta confere a assinatura para HS256/384/512 quando você informa o segredo.
Quais algoritmos de assinatura podem ser verificados?
Somente HMAC: HS256, HS384 e HS512. Algoritmos de chave pública como RS256, ES256 e PS256 precisam da chave pública do emissor, que esta ferramenta não aceita, então para eles ela só decodifica. O segredo é usado como texto puro (UTF-8); um segredo codificado em Base64 não é decodificado antes.
Como iat, nbf e exp são interpretados?
São lidos como segundos desde 1970-01-01 UTC e exibidos no seu fuso horário; valores não numéricos não aparecem na tabela. O status Expirado / Não expirado considera apenas o exp, então confira o nbf para saber se o token já pode ser usado.
Por que aparece que não é um JWT válido?
A entrada precisa ter três partes separadas por pontos, e as duas primeiras devem ser objetos JSON codificados em Base64URL. Tokens criptografados (JWE, com cinco partes) e tokens cortados ou copiados errado não podem ser decodificados.
Meu token ou segredo é enviado a um servidor?
Não. A decodificação e a verificação acontecem no seu navegador; o token e o segredo não são enviados ao nosso servidor nem a nenhum outro lugar.