Décodeur JWT

Collez un JSON Web Token pour lire son en-tête et sa charge utile, voir quand il expire et vérifier sa signature – entièrement sur votre appareil.

  • Le jeton reste local
  • Contrôle d’expiration
  • Vérification de signature
  • Instantané

Décodé sur votre appareil. Le jeton n’est envoyé nulle part et n’est pas enregistré – il disparaît au rechargement de la page.

Comment ça marche

Comment décoder un JWT

Collez et lisez.

  1. 1

    Collez le jeton

    Avec ou sans le préfixe « Bearer ». Les trois parties sont colorées pour montrer où chacune commence.

  2. 2

    Lisez l’en-tête et la charge utile

    Tous deux s’affichent en JSON formaté. Les claims de temps sont traduits en dates et chaque claim standard est expliqué.

  3. 3

    Vérifiez la signature (facultatif)

    Saisissez le secret partagé ou collez la clé publique pour savoir si le jeton est authentique et intact.

Pourquoi ToolCMB

Un décodeur utilisable avec de vrais jetons

Parce qu’un jeton de production est un mot de passe.

Décodé sur votre appareil

Le jeton est traité par du JavaScript dans votre navigateur. Il ne nous est pas envoyé, n’est pas journalisé et n’est pas conservé d’une visite à l’autre.

L’expiration en un coup d’œil

Une pastille indique si le jeton est encore valide, déjà expiré ou pas encore valide – avec le temps restant.

Claims expliqués

iss, sub, aud, exp, nbf, iat, jti et les claims OpenID courants sont décrits à côté de leur valeur.

Vraie vérification de signature

Les signatures HMAC, RSA, RSA-PSS, ECDSA et Ed25519 sont contrôlées avec l’API Web Crypto.

PEM, JWK ou JWKS

Collez la clé sous la forme publiée par votre fournisseur d’identité ; dans un JWKS, la bonne clé est retrouvée grâce à son kid.

Des alertes utiles

Les jetons non signés (alg: none) et chiffrés (JWE) sont reconnus et expliqués au lieu d’échouer en silence.

Résultat instantané

Le résultat se met à jour pendant la saisie. Aucun bouton à attendre, aucun rechargement.

Gratuit, sans inscription

Pas de compte, pas de limite, pas de filigrane – sur téléphone, tablette ou ordinateur.

Comment est construit un JSON Web Token

Un JWT se compose de trois parties encodées en Base64URL et séparées par des points : header.payload.signature. L’en-tête indique l’algorithme de signature, la charge utile porte les claims – des affirmations telles que l’identité de l’utilisateur et la durée de validité – et la signature prouve que l’en-tête et la charge utile n’ont pas été modifiés depuis leur émission.

Important : la charge utile est encodée, pas chiffrée. Quiconque détient le jeton peut la lire, exactement comme le fait cet outil, sans aucune clé. Ne placez jamais de mot de passe ni d’autre secret dans un JWT, et traitez les jetons comme des mots de passe : celui qui en possède un valide peut agir au nom de son utilisateur jusqu’à l’expiration.

Décoder n’est pas vérifier. Un serveur doit toujours contrôler la signature avec l’algorithme attendu, puis exp, nbf, l’émetteur et l’audience avant de se fier au moindre claim. Les jetons avec alg: none ne sont pas signés et doivent être refusés. Les algorithmes HMAC (HS256) utilisent un même secret pour signer et vérifier ; les algorithmes RSA et ECDSA (RS256, ES256) signent avec une clé privée et vérifient avec une clé publique.

Claims enregistrés

ClaimNomSignification
issIssuer (émetteur)Qui a créé et signé le jeton
subSubject (sujet)La personne concernée – en général un identifiant d’utilisateur
audAudienceL’API ou l’application à laquelle le jeton est destiné
expExpiration timeHeure Unix après laquelle le jeton doit être refusé
nbfNot beforeHeure Unix avant laquelle le jeton n’est pas valide
iatIssued atHeure Unix à laquelle le jeton a été créé

Conseils

  • Convertissez à la main une valeur exp ou iat avec le Convertisseur de timestamp.
  • Décodez une partie du jeton ou une valeur Base64URL avec l’encodeur Base64.
  • Mettez en forme ou validez une grosse charge utile avec le Formateur JSON.
  • Donnez une durée de vie courte aux jetons d’accès (des minutes, pas des jours) et faites tourner les clés de signature ; publiez les clés publiques dans un JWKS pour que les clients suivent la rotation.
FAQ

Questions fréquentes

Vous ne trouvez pas votre réponse ? Contactez-nous — nous répondons rapidement.

Puis-je coller mon jeton ici sans risque ?

Le jeton est décodé par du code exécuté dans votre navigateur ; il n’est ni transmis à notre serveur ni stocké. Cela dit, un jeton de production est un identifiant : préférez des jetons de test quand c’est possible, et ne collez jamais de jetons dans des outils qui les envoient à un serveur.

Peut-on décoder un JWT sans le secret ?

Oui. L’en-tête et la charge utile sont seulement encodés en Base64URL : tout le monde peut les lire. Le secret ou la clé ne sert qu’à créer ou vérifier la signature.

Comment vérifier la signature ?

Pour HS256/384/512, saisissez le secret partagé. Pour les jetons RS, PS, ES et EdDSA, collez la clé publique de l’émetteur au format PEM, JWK ou JWKS. Le résultat indique si la signature correspond.

Que signifie « alg: none » ?

Le jeton ne porte aucune signature : n’importe qui peut le falsifier. Les bibliothèques doivent refuser ces jetons sauf s’ils sont explicitement attendus, et cet outil les signale.

Pourquoi mon jeton est-il indiqué comme expiré ?

Le claim exp contient un timestamp Unix en secondes. Si ce moment est passé d’après l’horloge de votre appareil, le jeton est expiré. Une horloge système mal réglée donne un verdict erroné.

Quelle différence entre JWT, JWS et JWE ?

JWT est le format des claims. Un JWS est un jeton signé en trois parties – ce que l’on appelle couramment « JWT ». Un JWE est un jeton chiffré en cinq parties dont le contenu est illisible sans la clé de déchiffrement.

Plus d’outils gratuits pour développeurs

Encoder, formater, tester, convertir et générer – de petits outils qui fonctionnent dans votre navigateur et laissent vos données sur votre appareil.

Voir tous les outils