Décodeur JWT – Décoder et vérifier un JSON Web Token
Collez un JSON Web Token pour voir son en-tête et son payload en JSON formaté, vérifier ses dates d’émission et d’expiration et, si vous le souhaitez, contrôler une signature HMAC avec votre secret.
Un JWT comporte trois parties en Base64URL séparées par des points : en-tête.payload.signature. Collez-le pour voir l’en-tête (algorithme) et le payload (claims comme sub, iat et exp) ; l’outil indique s’il a expiré. Décoder ne prouve pas son authenticité : saisissez le secret pour vérifier HS256, HS384 ou HS512.
Comment utiliser : Décodeur JWT
- Collez le jeton (avec ou sans « Bearer »).
- Lisez le statut : expiré ou non.
- Examinez le JSON de l’en-tête et du payload.
- Saisissez éventuellement le secret pour vérifier la signature HMAC.
- Copiez l’en-tête ou le payload si besoin.
Structure d’un JWT
Un JSON Web Token est composé de trois morceaux de texte encodés en Base64URL et reliés par des points :
en-tête.payload.signature
- L’en-tête indique l’algorithme de signature, par exemple HS256 ou RS256.
- Le payload contient les claims : à qui se rapporte le jeton, quand il a été émis et quand il expire.
- La signature prouve que l’en-tête et le payload ont été créés par quelqu’un possédant la clé et n’ont pas été modifiés.
Le Base64URL est un encodage, pas un chiffrement. Toute personne qui possède le jeton peut lire le payload : n’y placez jamais de mot de passe ni de secret.
Claims standard
| Claim | Signification |
|---|---|
| iss | Émetteur du jeton |
| sub | Sujet, souvent l’identifiant utilisateur |
| aud | Destinataire du jeton |
| exp | Date d’expiration (timestamp Unix) |
| nbf | Non valide avant cette date |
| iat | Date d’émission |
| jti | Identifiant unique du jeton |
Les dates sont des timestamps Unix en secondes ; le décodeur les affiche dans votre fuseau horaire. Pour d’autres timestamps, utilisez le Convertisseur de timestamp Unix.
Décoder n’est pas vérifier
Lire un jeton indique ce qu’il affirme, pas s’il est authentique. Un serveur doit toujours vérifier la signature avant de lui faire confiance. Pour les algorithmes HMAC (HS256, HS384, HS512), vous pouvez saisir ici le secret partagé. Les jetons RS256 et ES256 utilisent une signature à clé publique et nécessitent la clé publique de l’émetteur, que cet outil ne vérifie pas.
Problèmes fréquents
- « Expiré » : la date exp est passée ; demandez un nouveau jeton ou vérifiez l’horloge du serveur.
- Format invalide : le jeton a été tronqué en le copiant ou contient des guillemets.
- Signature incorrecte : mauvais secret, autre environnement (recette ou production) ou jeton modifié.
Confidentialité
Les jetons donnent souvent accès à des comptes. Ce décodeur fonctionne entièrement dans votre navigateur et n’envoie rien. Traitez néanmoins les vrais jetons comme des mots de passe. Outils associés : Encoder / décoder Base64 et Formateur JSON.
Ces outils gratuits peuvent aussi vous être utiles : Formateur JSON, Générateur de mot de passe et Testeur de regex.
Questions fréquentes
Comment décoder un JWT ?
Collez-le dans le décodeur : l’en-tête et le payload sont décodés du Base64URL et affichés en JSON.
Est-il sûr de décoder un JWT en ligne ?
Cet outil fonctionne localement et n’envoie rien. Le payload n’est pas secret, mais le jeton peut donner accès à un compte.
Comment savoir si un JWT a expiré ?
Regardez le claim exp : le décodeur le convertit en date et indique s’il est dépassé.
Puis-je vérifier la signature ?
Oui pour HS256, HS384 et HS512 avec le secret. Les jetons RS et ES nécessitent la clé publique.
Un JWT est-il chiffré ?
Généralement non. Les JWT standard (JWS) sont seulement signés.
Dernière mise à jour: