Décodage JWT en ligne

Traitement local
app.jwt.view

Vous pouvez aussi injecter des données via #data={"name":"Ada"} ou #url=... Elles sont lues puis retirées de la barre d’adresse.

Un JWT a trois segments : Header, Payload, signature. Cette page ne décode en Base64URL dans le navigateur que les deux premiers, pour voir l’expiration et les claims personnalisés. Le token n’est pas envoyé au serveur. Pour déboguer une session ou vérifier si exp est déjà expiré, inutile de coller un vrai token sur un site inconnu.

Découpage local

Pour déboguer une session, vérifier exp / sub . Le Header montre algorithme et type ; le Payload, les claims métier.

Sans segment de signature, les deux premiers sont quand même décodés, pour des journaux incomplets.

Pas de vérification de signature

Une clé privée n’a pas sa place dans une page web. La vérification en production reste côté serveur. Quiconque a le token peut lire le Payload ; la confidentialité repose sur HTTPS et une courte expiration.

Cette page affiche la chaîne de signature, sans vérifier HMAC / RSA.

Correspondance des claims

Reconnaît issDécoupage localaudPour déboguer une session, vérifieriat et d’autres champs officiels, avec une légende. Les horodatages numériques deviennent autant que possible une heure lisible.

Les claims personnalisés sont listés tels quels, pour coller à votre protocole de connexion.

Exemple

Forme du token
eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0IiwibmFtZSI6IuW8oOS4iSIsImlhdCI6MTcyMDAwMDAwMCwiZXhwIjoxOTAwMDAwMDAwfQ.signature
Ce que le décodage montre
{
  "header": { "alg": "HS256", "typ": "JWT" },
  "payload": { "sub": "1234", "name": "张三", "iat": 1720000000, "exp": 1900000000 }
}
Le segment de signature est-il vérifié ?

Pour l’instant seule la chaîne de signature s’affiche, sans vérifier l’authenticité. Quiconque peut décoder le Payload ; confidentialité = HTTPS + vérification backend.

Les grands entiers perdent-ils de la précision ?

Number en JavaScript a une limite de précision. Pour un ID très grand, comparez le Payload d’origine, pas seulement le nombre converti.

Le token est-il enregistré ?

Ni envoi, ni historique cloud. Fermer l’onglet le retire de la mémoire.

Peut-on falsifier une connexion ?

Non, et il ne le faut pas. Sans clé privée, on ne produit pas un token que le serveur validerait. Cette page sert à lire.

Flux recommandé

  1. Copiez le JWT depuis un en-tête de réponse, un Cookie ou le stockage local (ne l’envoyez pas dans un chat).
  2. Collez ici ou chargez l’exemple, consultez Header et Payload.
  3. Vérifiez si exp / nbf correspond à l’heure actuelle, et si aud pointe vers le bon service.
  4. Vérification, rafraîchissement et révocation restent côté serveur ; cette page aide seulement à lire.

Décodable ≠ authentifié. Traitez le token comme un secret et invalidez-le à l’expiration.