JWT ES256 Debugger — débogueur JWT ES256
Collez un jeton et regardez-le se décoder en direct : l’en-tête, la charge utile et la signature portent la même couleur dans le texte brut et dans leur forme décodée. Vérifiez ensuite une signature ES256/ES384/ES512 à l’aide de la clé publique de l’émetteur ; des explications claires s’affichent quand quelque chose ne va pas.
100 % local : tout s’exécute dans votre navigateur, rien n’est envoyé à aucun serveur
Décodé
En-tête
algorithme et type de jetonLe premier segment (tout ce qui précède le premier point) se décode en en-tête JOSE : algorithme, type de jeton, identifiant de clé.
Charge utile
claimsLe deuxième segment se décode en claims : qui a émis le jeton, pour qui et pour combien de temps.
Signature
octets brutsLe troisième segment (tout ce qui suit le second point) est la signature brute calculée sur header.payload. Vérifiez-la ci-dessous.
Vérifier la signature
Signature non vérifiée
Le décodage ne nécessite aucune clé : il se fait pendant la saisie. Une fois le jeton décodé ci-dessus, collez ici la clé publique de l’émetteur pour vérifier sa signature.
How it works
Everything on this page runs locally in your browser — the token and key are never sent anywhere. The token is split on dots, and the header and payload are base64url-decoded and parsed as JSON as you type; the colors in the editor are purely presentational and mirror the decoded blocks on the right. For ES256/ES384/ES512 the tool rebuilds the exact signing input — the ASCII string header.payload — hashes it with SHA-256/SHA-384/SHA-512, and checks the raw r‖s signature against your public key on P-256/P-384/P-521 using the audited @noble/curves library. Time claims are compared against your machine's clock, so a token that looks expired here may still be accepted by a server with clock skew tolerance. Remember that a valid signature only authenticates the issuer — checking exp, iss and aud is still your job.