Décodeur JWT
Collez un JSON Web Token et décodez aussitôt son en-tête et sa charge utile — entièrement dans votre navigateur, rien n'est envoyé
JSON Web Token
À propos de cet outil
Le décodeur JWT lit un JSON Web Token et montre ce qu'il contient. Un JWT comporte trois parties séparées par des points — un en-tête, une charge utile et une signature — et les deux premières ne sont que du JSON encodé en Base64URL. Cet outil les décode en JSON lisible et formaté pour que vous puissiez inspecter l'algorithme, le type de jeton et chaque revendication. Les revendications temporelles standard comme exp (expiration), iat (émis le) et nbf (pas avant) sont converties des secondes UNIX brutes en dates lisibles, et un jeton expiré est mis en évidence. Surtout, l'outil ne vérifie jamais la signature et ne demande aucune clé secrète ou publique : le décodage ne nécessite que le jeton lui-même. C'est pourquoi tout se passe localement dans votre navigateur et rien n'est envoyé, ce qui permet d'inspecter des jetons en toute sécurité sans les divulguer à un serveur.
Comment l'utiliser
- 1 Collez votre JSON Web Token (header.payload.signature) dans le champ de saisie, ou cliquez sur Charger un exemple.
- 2 L'en-tête et la charge utile sont décodés instantanément et affichés en JSON formaté.
- 3 Vérifiez les badges alg et typ, et lisez exp / iat / nbf comme dates lisibles ; un jeton expiré est surligné en rouge.
- 4 Utilisez les boutons de copie pour récupérer l'en-tête ou la charge utile décodé. Rien de ce que vous collez ne quitte votre navigateur.
Comment ça marche
Un JWT s'écrit comme trois chaînes Base64URL reliées par des points : header.payload.signature. Le Base64URL ressemble au Base64 standard mais utilise - et _ au lieu de + et /, et omet généralement le remplissage final =. Le décodeur restaure ces caractères, rajoute le remplissage manquant, exécute atob pour obtenir les octets bruts et les réinterprète en UTF-8 afin que les revendications non ASCII s'affichent correctement. L'en-tête et la charge utile sont ensuite analysés comme du JSON et mis en forme. Les revendications numériques exp, iat et nbf sont des horodatages UNIX en secondes, donc multipliées par 1000 et transformées en dates ; si exp est dans le passé, le jeton est marqué expiré. Le segment de signature est affiché intact et jamais validé, d'où l'absence de clé et le fait que tout le traitement reste sur votre appareil.
Foire aux questions
Cet outil vérifie-t-il la signature du JWT ?
Non. Il décode seulement l'en-tête et la charge utile pour que vous puissiez les lire. Vérifier la signature nécessiterait la clé secrète ou publique de signature, que cet outil ne demande jamais volontairement. Ainsi tout reste local et vous pouvez inspecter le contenu d'un jeton en toute sécurité sans exposer la moindre clé.
Mon jeton est-il envoyé à un serveur ?
Non. Tout le décodage se fait dans votre navigateur avec JavaScript. Votre jeton n'est jamais envoyé, journalisé ni stocké, et l'outil continue de fonctionner hors ligne une fois la page chargée. Vous pouvez coller ici des jetons sensibles en toute sécurité.
Que signifient les champs exp, iat et nbf ?
Ce sont des revendications temporelles standard exprimées en horodatages UNIX en secondes. exp est l'expiration du jeton, iat sa date d'émission et nbf le premier moment où il est valide. Cet outil convertit chacune en date lisible et marque le jeton comme expiré lorsque exp est dans le passé.
Puis-je lire un JWT sans la clé secrète ?
Oui. L'en-tête et la charge utile d'un JWT sont seulement encodés en Base64URL, pas chiffrés, donc n'importe qui peut les lire sans aucune clé. La clé secrète ou publique n'est nécessaire que pour vérifier la signature, qui prouve que le jeton n'a pas été altéré, mais jamais pour en voir le contenu.
Pourquoi mon jeton affiche-t-il du texte illisible ou une erreur ?
Un JWT doit avoir exactement trois parties séparées par des points, chacune un Base64URL valide, et les deux premières doivent se décoder en JSON valide. Si une partie manque, est tronquée, ou si vous avez collé par erreur un JWE chiffré au lieu d'un JWS signé, le décodeur signale une erreur plutôt que de deviner.
Outils connexes et usages
Associez le décodeur JWT à l'outil Base64 pour inspecter les segments à la main, au formateur JSON pour remettre en forme une charge utile copiée et au convertisseur d'horodatage Unix pour vérifier les heures exp/iat/nbf. Les développeurs y recourent pour déboguer les flux d'authentification, les jetons OAuth/OpenID Connect, les passerelles d'API et l'authentification unique, où lire rapidement les revendications d'un jeton fait partie du quotidien.