Décodeur JWT

Décodez un JWT pour lire son en-tête, les claims du payload et la signature, avec exp, nbf et iat en dates et un statut d'expiration. En local, rien n'est envoyé.

Le préfixe "Bearer " est retiré automatiquement.

En-tête
{
  "alg": "HS256",
  "typ": "JWT"
}
Payload
{
  "sub": "1234567890",
  "name": "John Doe",
  "iat": 1516239022
}
AlgorithmeHS256
SignatureSflKxwRJSMeKKF2QT4fwpMeJf36POk6yJV_adQssw5c
Le décodage ne vérifie pas la signature. N’importe qui peut créer un jeton au contenu arbitraire : vérifiez-le avec le vérificateur JWT et la bonne clé avant de lui faire confiance.

Qu'est-ce que Décodeur JWT ?

Le décodeur JWT sépare un JSON Web Token en en-tête, payload et signature et met en forme le JSON. Les claims temporels (exp, nbf, iat) sont convertis en dates UTC lisibles avec des durées relatives, et un badge d'état indique si le jeton est expiré, pas encore valide ou sans expiration. Il ne fait que décoder : il ne vérifie pas la signature.

Comment utiliser Décodeur JWT

  1. Collez le jeton (un Bearer initial est retiré automatiquement).
  2. Lisez l'en-tête décodé (algorithme, type, identifiant de clé) et les claims du payload.
  3. Vérifiez le statut d'expiration et les dates exp/nbf/iat.
  4. Utilisez le vérificateur JWT avec la bonne clé avant de faire confiance à un claim.

Exemple

Entrée
eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiaWF0IjoxNTE2MjM5MDIyfQ.SflKxwRJSMeKKF2QT4fwpMeJf36POk6yJV_adQssw5c
Sortie
Header {"alg": "HS256", "typ": "JWT"} · payload {"sub": "1234567890", "name": "John Doe", "iat": 1516239022} · status: no expiration

Quand utiliser Décodeur JWT

Utilisez-le pour déboguer l'authentification : voir quels claims, scopes, audience ou expiration porte un jeton. Ne considérez pas les claims décodés comme fiables : n'importe qui peut créer un jeton au contenu arbitraire. Les jetons chiffrés (JWE, cinq parties) ne peuvent pas être décodés sans la clé.

Comment fonctionne Décodeur JWT

Un JWS compact comporte trois parties Base64URL séparées par des points. Les deux premières sont décodées (Base64URL → octets → UTF-8) et analysées comme JSON ; la troisième est affichée telle quelle car ce sont des données binaires de signature. Les claims temporels sont des valeurs NumericDate (secondes depuis le 1970-01-01 UTC) comparées à l'horloge de votre appareil. Rien ne quitte votre navigateur.

Cas d'utilisation courants

  • Comprendre pourquoi une API renvoie 401 : le jeton est-il expiré ou destiné à une autre audience ?
  • Lire les rôles ou scopes contenus dans un jeton d'accès.
  • Consulter le kid de l'en-tête pour savoir quelle clé de signature a été utilisée.
  • Inspecter les jetons d'identité d'un fournisseur OpenID Connect.

Note de Sécurité

Le décodage se fait uniquement dans votre navigateur. Traitez les JWT comme des mots de passe : toute personne détenant un jeton valide peut l'utiliser jusqu'à son expiration.

Questions Fréquentes

Est-il sûr de coller un jeton de production ?

Le jeton est décodé en local et jamais envoyé nulle part. Un jeton valide reste toutefois un identifiant : révoquez-le si vous l'avez partagé à un endroit que vous ne contrôlez pas.

Pourquoi décoder n'est-il pas vérifier ?

Le payload est seulement encodé en Base64URL, pas chiffré. La vérification exige de contrôler la signature avec le secret ou la clé publique.

Que signifient exp, nbf et iat ?

exp est l'heure d'expiration, nbf « not before » (le jeton est invalide avant) et iat l'heure d'émission, toutes en secondes depuis l'epoch Unix.

Explorer d'autres catégories