Décoder un JWT : lire et vérifier un JSON Web Token

Pour décoder un JWT, collez le token : l’outil montre ce que contient un JSON Web Token – en-tête, payload et signature, avec émetteur, expiration et validité en clair. Avec le secret ou la clé publique, il peut même vérifier la signature. Le token ne quitte pas votre navigateur.

Source : §§ 2, 4.1 (Claims, NumericDate), IETF RFC 7519 – JSON Web Token (JWT). Mise à jour : .

Collez le token – « Bearer » devant est accepté. Il comporte trois parties séparées par des points.

Votre texte reste dans votre navigateur : il n’est ni envoyé, ni enregistré, ni ajouté à l’adresse de la page.

HS256/384/512 : le secret sous forme de texte. RS/PS/ES : clé publique au format PEM (« BEGIN PUBLIC KEY ») ou JWK. La clé reste dans votre navigateur.
Uniquement pour HS256/384/512 : le secret est décodé avant la vérification (fréquent avec des clés générées). Sinon, le texte saisi est utilisé tel quel.
Ma boîte à outilsVos saisies sont enregistrées uniquement dans ce navigateur.

Résultat

Statut
Format JWT valide – algorithme HS256
Signature
Valide ✓ – la signature correspond à la clé saisie.
En-tête
{ "alg": "HS256", "typ": "JWT" }
Payload
{ "sub": "1234567890", "name": "Camille Dupont", "iss": "https://beispiel.example", "iat": 1516239022, "exp": 4102444800 }
Dates (UTC)
Émis (iat): 2018-01-18T01:30:22Z Expire (exp): 2100-01-01T00:00:00Z – dans 73 ans
Revendications connues (claims)
Émetteur (iss): https://beispiel.example Sujet (sub): 1234567890

Comment le calcul est fait

Un JSON Web Token (JWT) transporte des revendications (claims) entre deux parties – en général après la connexion, comme preuve que « cet utilisateur est connecté ». Il comporte trois parties séparées par des points : en-tête.payload.signature (RFC 7519, RFC 7515).

Décoder un JWT : mode d’emploi

  1. Collez le token dans le champ du haut (avec ou sans « Bearer »).
  2. L’en-tête et le payload s’affichent aussitôt en JSON lisible, avec l’expiration et l’émetteur en dessous.
  3. Facultatif : saisissez la clé sous « Secret ou clé publique » et l’outil vérifie la signature.

Contenu d’un token

Important : lire n’est pas vérifier

L’en-tête et le payload sont seulement encodés en base64url, pas chiffrés. Quiconque voit un token peut le lire : mots de passe et autres secrets n’y ont pas leur place. Sans vérification de la signature, le contenu ne prouve rien, car chacun peut le modifier. La vérification ici fonctionne avec un secret HMAC (HS256/384/512) et une clé publique (RS, PS, ES) ; un token avec alg: none n’est pas signé.

Protection contre l’« algorithm confusion »

Une attaque connue présente au serveur un token alg: HS256 signé avec la clé publique comme secret. L’outil refuse donc la vérification quand une clé publique ou privée est saisie comme secret HS (la RFC 8725 conseille de ne jamais tirer l’algorithme du seul token).

Limites

Questions fréquentes

Qu’est-ce qu’un JWT ?

Un JSON Web Token est une chaîne compacte, sûre pour les URL, en trois parties (en-tête, payload, signature). Il transporte des claims comme l’identifiant utilisateur ou l’expiration et sert souvent de preuve d’accès après la connexion.

Tout le monde peut-il lire le contenu d’un JWT ?

Oui. L’en-tête et le payload sont seulement encodés en base64url, pas chiffrés. Seule la signature protège contre la modification, pas contre la lecture. Ne mettez donc aucun secret dans un JWT.

Comment vérifier la signature d’un JWT ?

Sous « Secret ou clé publique », saisissez le secret pour HS256/384/512, ou la clé publique en PEM ou JWK pour RS256, PS256 ou ES256. Le résultat apparaît sous « Signature ».

Est-il sûr de coller mon token dans un décodeur en ligne ?

Ce décodeur travaille entièrement dans votre navigateur et n’envoie rien. Cela dit, un token valide est une preuve d’accès. Utilisez si possible des tokens de test ou déjà expirés.

Que signifient exp, iat et nbf ?

exp est l’instant d’expiration du token, iat l’instant d’émission et nbf l’instant à partir duquel il est valide. Les trois sont des secondes depuis le 1er janvier 1970 UTC.

Pourquoi l’outil indique-t-il « non vérifiée » ?

Sans clé, rien ne permet de contrôler la signature : le contenu est seulement lu. Un algorithme non pris en charge ou un format de clé inadapté empêche aussi la vérification.

Sources et références juridiques

Dernière mise à jour : · Principes éditoriaux

Outils similaires