Décodeur et analyseur JWT

Décoder le Header et le Payload JWT

Analyser un JWT sans vérifier la signature
Entrée
Aucun Secret saisi ; la signature est conservée et les Tokens modifiés échouent généralement à la vérification
En-tête
Payload

Guide de l’outil

À propos de Décodeur et analyseur JWT

Un parser JWT décode le Header et le Payload d’un JSON Web Token pour inspecter alg, typ, état de signature et claims courants comme iss, sub, aud, iat, nbf et exp.

L’outil analyse les jetons localement dans le navigateur et peut re-signer Header/Payload modifiés avec un secret HMAC local. Le token n’est pas envoyé à wetool.site.

Comment utiliser JWT Parser

  1. Collez un JWT complet au format header.payload.signature.
  2. Cliquez Decode pour inspecter Header, Payload et résumé des déclarations courants.
  3. Vérifiez exp, nbf et iat ; ce sont généralement des secondes Unix.
  4. Pour des tokens HMAC de test, saisissez un secret afin de re-signer localement Header/Payload modifiés.

Cas d’utilisation

  • Déboguer une session auth en vérifiant si le jeton est expiré ou pas encore valide.
  • Confirmer que alg, typ, iss, aud et sub correspondent au contrat API gateway ou serveur.
  • Afficher le payload JSON lisiblement pour trouver scope, role, tenant_id ou autres champs applicatifs.
  • Modifier un claim de token de développement et le re-signer localement avec un HMAC secret connu.

Structure JWT, claims et limites de signature

Un JWT a souvent trois parties Base64URL: Header, Payload et Signature. Décoder Header/Payload ne demande pas de secret, mais faire confiance au token exige de vérifier la signature avec la bonne clé.

  • Header: contient souvent alg et typ, l’algorithme de signature et le type de token.
  • Payload: contient claims comme iss, sub, aud, iat, nbf, exp et champs applicatifs.
  • Signature: protège Header/Payload contre la modification; décoder un jeton ne prouve pas que la signature est valide.
  • Claims temporels : iat, nbf et exp sont généralement exprimés en secondes Unix, pas en millisecondes.

Questions fréquentes sur Analyseur JWT

Décoder un JWT revient-il à le vérifier?
Non. Décoder lit seulement Header et Payload. Vérifier exige de contrôler la signature avec le secret ou public key correct.
Pourquoi le payload est-il lisible sans mot de passe?
Header et Payload sont encodés en Base64URL, pas chiffrés. Ne mettez pas de secrets dans un JWT payload normal.
Que sont exp, iat et nbf?
exp est l’expiration, iat la date d’émission et nbf le moment à partir duquel le jeton est valide. Ils sont souvent stockés en secondes Unix.
Un token fonctionne-t-il après modification du Payload?
Généralement non sans nouvelle signature. Cet outil peut re-signer localement des tokens HMAC de test avec le secret.
Mon JWT est-il envoyé?
Non. Décodage, édition et re-signature HMAC s’exécutent localement dans le navigateur et ne sont pas envoyés à wetool.site.

JWT vs cookies de session

Une session stocke souvent l’état côté serveur et donne au navigateur un identifiant de session. Un JWT transporte des déclarations dans le jeton, pratique entre services, mais impose de mieux gérer expiration, clés et contenu de la charge utile.

Checklist signature JWT et alg

Un JWT décodable n’est pas automatiquement fiable. La vraie vérification doit fixer algorithme, source de clé, issuer, audience et politique de signature.

  • Ne choisissez pas l’algorithme de vérification uniquement depuis le header alg du token; le serveur doit utiliser une allowlist configurée.
  • Traitez alg=none, confusion HS256/RS256 ou kid pointant vers des emplacements externes comme des configurations à haut risque.
  • Cet outil sert à inspecter et créer des HMAC test tokens, mais la vérification production appartient au serveur ou auth gateway.

Debug des temps exp, nbf et iat

Les claims temporels d’un JWT sont généralement en secondes Unix. Si l’expiration semble fausse, vérifiez d’abord la confusion entre secondes et millisecondes, le décalage d’horloge et le fuseau horaire affiché.

  • Si exp est antérieur aux secondes Unix actuelles, le jeton est expiré ; si nbf est postérieur à maintenant, il n’est pas encore valide.
  • Lire des millisecondes à 13 chiffres comme des secondes donne une date très lointaine ; lire des secondes à 10 chiffres comme des millisecondes tombe près de 1970.
  • Les serveurs doivent garder NTP synchronisé et accepter un petit clock skew, mais les longs grace periods ne doivent pas masquer les erreurs de configuration.