MiniMe

Decodificador de JWT

Leia o header e o payload de um token sem enviá-lo a lugar nenhum.

O token é decodificado aqui no navegador. A assinatura não é verificada — isso exigiria a chave secreta, que você não deve colar em página nenhuma.

As três partes do token

Um JWT são três blocos separados por ponto. O primeiro diz qual algoritmo assina o token, o segundo traz os dados — os claims — e o terceiro é a assinatura. Os dois primeiros estão em base64url, que é codificação, não criptografia: qualquer pessoa com o token lê o conteúdo.

Por que não verificamos a assinatura

Verificar exigiria a chave secreta do seu servidor, e pedir essa chave numa página web é justamente o que uma ferramenta de desenvolvedor não deve fazer — nem com a promessa de não enviá-la. A decodificação aqui serve para inspecionar o conteúdo; a verificação pertence ao seu backend.

O que não colocar dentro de um JWT

Como o payload é legível por quem tiver o token, nada sensível deveria estar ali: senha, documento, dado de cartão, chave de API. O token diz quem é a pessoa e o que ela pode fazer — o resto fica no servidor.

Os claims com significado definido

Alguns nomes de claim são padronizados: iss para o emissor,sub para o sujeito, aud para o destinatário pretendido, exp para a expiração, nbf para o início da validade, iat para o momento de emissão ejti para um identificador único. As três datas são epoch em segundos, e a ferramenta mostra cada uma já convertida.

JWT decoder, e o que ele não faz

Em inglês a ferramenta aparece como JWT decoder ouJWT viewer. Decodificar não é validar: o header e o payload de um JWT são Base64, legíveis por qualquer um, e a assinatura é o que prova a origem do token. Esta página lê o conteúdo; conferir a assinatura exige a chave, que você não deve colar em site nenhum.