Décodez instantanément les jetons JWT : inspectez l'en-tête, les revendications de la charge utile et la date d'expiration, vérifiez les signatures HMAC ou générez des jetons de test signés. Tout le traitement s'exécute dans votre navigateur.
Un JWT (JSON Web Token) est un format de jeton compact et sécurisé pour les URL, utilisé pour transmettre des revendications entre les parties, le plus souvent pour l'authentification et l'autorisation d'API. Un JWT n'est pas chiffré : son en-tête et sa charge utile sont simplement du JSON encodé en Base64Url que n'importe qui peut décoder et inspecter. Ce décodeur JWT divise un jeton en ses trois parties, décode l'en-tête et la charge utile, et affiche les revendications enregistrées, y compris l'expiration, dans un format lisible.
Collez votre jeton dans le champ de saisie ci-dessus ; le décodage se fait instantanément au fur et à mesure de votre saisie. L'outil fonctionne comme un débogueur et un visualiseur de JWT : l'en-tête décodé affiche l'algorithme de signature (alg) et le type de jeton, la charge utile affiche toutes les revendications, et les horodatages comme exp, iat et nbf sont convertis du temps Unix en dates lisibles avec un statut d'expiration en direct. Pour vérifier une signature HMAC, saisissez le secret partagé et le décodeur recalcule la signature localement et vous indique si elle correspond.
Basculez vers l'onglet Générer un JWT pour utiliser cet outil comme générateur de JWT : modifiez la charge utile JSON, choisissez un algorithme (HS256, HS384 ou HS512) et saisissez un secret, et un jeton signé apparaît instantanément. Vous pouvez également cliquer sur Modifier et re-signer sur n'importe quelle charge utile décodée pour ajuster un jeton réel et le signer avec votre propre secret. C'est idéal pour créer des jetons de test pendant le développement d'API, pour initialiser les tests d'intégration ou pour apprendre comment un encodeur JWT construit les trois sections d'un jeton. Les jetons sont signés localement avec l'API Web Crypto ; le secret ne quitte jamais votre navigateur.
Chaque JWT est composé de trois sections encodées en Base64Url et séparées par des points : header.payload.signature. L'en-tête identifie l'algorithme de signature (comme HS256 ou RS256) et le type de jeton. La charge utile transporte les revendications (claims) : des revendications enregistrées comme iss (émetteur), sub (sujet) et exp (expiration), ainsi que des données personnalisées. La signature est calculée sur les deux premières sections avec un secret ou une clé privée, permettant au serveur récepteur de détecter toute falsification. Comme seule la signature est protégée, ne stockez jamais de secrets dans la charge utile.
Les développeurs utilisent un décodeur JWT pour déboguer les problèmes d'authentification, vérifier l'expiration des jetons pendant le développement d'API, inspecter les revendications (claims) retournées par les fournisseurs d'identité comme Auth0, Firebase, Keycloak ou Cognito, valider qu'un backend émet des jetons correctement formés et apprendre le fonctionnement des JSON Web Tokens. Comme cet outil de décodage JWT s'exécute entièrement dans votre navigateur, il est sûr d'y coller de vrais jetons de production ; rien n'est téléversé ni enregistré.
Cela dépend de l'outil. De nombreux décodeurs en ligne envoient votre jeton à un serveur, où il pourrait être enregistré. Ce décodeur s'exécute entièrement dans votre navigateur ; le jeton ne quitte jamais votre appareil, il est donc sûr, même pour les jetons de production. Néanmoins, considérez tout jeton qui aurait pu fuiter comme compromis et procédez à sa rotation.
L'en-tête et la charge utile d'un JWT sont uniquement encodés en Base64Url, et non chiffrés, donc n'importe qui peut les décoder et les lire. La clé secrète est utilisée pour créer la signature, qui prouve que le jeton n'a pas été modifié. Ne mettez jamais de mots de passe ou d'autres données sensibles dans la charge utile d'un JWT.
Collez votre jeton et le décodeur lit la revendication (claim) exp (expiration), la convertit d'un horodatage Unix en une date lisible par un humain, et vous indique si le jeton est encore valide ou depuis combien de temps il a expiré. Les revendications (claims) iat (issued at) et nbf (not before) sont affichées de la même manière.
Oui, pour les jetons signés avec HMAC (HS256, HS384, HS512). Saisissez le secret et le décodeur recalcule la signature avec l'API Web Crypto et la compare à celle de votre jeton. La vérification s'effectue également localement ; le secret n'est jamais transmis. Les jetons RSA et ECDSA (RS256, ES256, etc.) peuvent être décodés mais pas vérifiés, car cela nécessite l'infrastructure à clé publique de l'émetteur.
L'éditeur de code moderne pour le web, conçu pour les développeurs qui apprécient la vitesse et la simplicité.
Télécharger maintenant