Décodeur JWT
Décodez un token JWT pour voir le header, le payload et vérifier l'expiration. Aucune clé secrète requise pour la lecture.
Décodeur JWT en ligne — Lisez le header et le payload de vos tokens
Pourquoi décoder un token JWT ?
Les JSON Web Tokens (JWT) sont le standard d'authentification et d'autorisation le plus répandu dans les applications web modernes. Comprendre leur contenu est essentiel pour tout développeur travaillant avec des API sécurisées : le header indique l'algorithme de signature utilisé (HS256, RS256, ES256…), le payload contient les claims — informations sur l'utilisateur, ses rôles, les permissions accordées et les dates de validité. Décoder un JWT permet de vérifier instantanément ce qu'une session utilisateur contient réellement.
En phase de débogage, le décodage de JWT est une opération quotidienne pour diagnostiquer des erreurs d'authentification : token expiré, mauvais issuer, rôle manquant ou audience incorrecte. Plutôt que de parcourir manuellement une chaîne base64url obscure, un décodeur visuel affiche immédiatement les claims structurés et traduit les timestamps Unix en dates lisibles, ce qui réduit considérablement le temps de diagnostic.
Notre décodeur JWT est conçu pour fonctionner sans clé secrète : il décode les parties header et payload, qui sont simplement encodées en base64url (non chiffrées), et affiche la signature en hexadécimal. Il ne vérifie pas la signature cryptographique — opération qui doit être réservée au serveur — mais fournit toutes les informations nécessaires pour analyser le contenu d'un token dans un contexte de développement ou de débogage, sans risque de divulgation de clé secrète.
Cas d'utilisation courants
- Débogage d'erreurs d'authentification
- Analysez les claims d'un token JWT pour identifier la cause d'un rejet : expiration dépassée, audience incorrecte, rôle manquant ou issuer non reconnu par votre service.
- Inspection des permissions et rôles utilisateur
- Vérifiez les rôles, groupes et permissions encodés dans le payload JWT pour diagnostiquer des problèmes d'autorisation et confirmer que les bons droits sont accordés à l'utilisateur.
- Vérification des dates de validité d'un token
- Consultez les claims `iat`, `nbf` et `exp` traduits en dates lisibles pour déterminer si un token est encore valide, pas encore actif ou déjà expiré.
- Documentation et revue de code d'API
- Décodez des exemples de tokens JWT pour documenter la structure des claims attendus par votre API et faciliter l'intégration pour les développeurs consommateurs.
Comment utiliser le décodeur JWT ?
Copiez votre token JWT depuis votre application, vos outils de développement navigateur (onglet Network ou Application > Storage) ou votre client HTTP (Postman, Insomnia) et collez-le dans le champ de saisie.
Le décodage est instantané et automatique : dès que le token est collé, le header et le payload sont décodés et affichés sous forme de JSON formaté et indenté. La signature est affichée en hexadécimal à titre informatif.
Consultez la section « Dates du token » pour visualiser les timestamps Unix `iat`, `nbf` et `exp` convertis en dates et heures lisibles, avec un indicateur de validité pour savoir si le token est actif, expiré ou pas encore valide.
Questions fréquentes
- Le décodeur vérifie-t-il la signature du token JWT ?
- Non, et c'est délibéré. La vérification de signature nécessite la clé secrète (pour HMAC) ou la clé publique (pour RSA/ECDSA), qui ne doit jamais quitter le serveur. Notre outil décode uniquement les parties header et payload, qui sont encodées en base64url mais non chiffrées, et affiche la signature sans la valider.
- Que contient un token JWT ?
- Un JWT est composé de trois parties séparées par des points : le header (algorithme et type de token), le payload (claims : identité, rôles, dates de validité, données personnalisées) et la signature (permettant au serveur de vérifier l'intégrité du token). Header et payload sont encodés en base64url, la signature est un hash cryptographique.
- Quelle est la différence entre un token JWT et une session classique ?
- Une session classique stocke l'état côté serveur (base de données ou mémoire) et n'envoie qu'un identifiant opaque au client. Un JWT est stateless : toutes les informations nécessaires sont encodées dans le token lui-même, ce qui permet au serveur de valider une requête sans consulter de base de données, au prix d'une impossibilité de révocation immédiate.
- Pourquoi mon token JWT est-il refusé par le serveur alors que la date d'expiration n'est pas dépassée ?
- Plusieurs causes sont possibles : l'algorithme de signature ne correspond pas à celui attendu par le serveur, l'`issuer` (iss) ou l'`audience` (aud) du token ne correspond pas à la configuration du serveur, la signature a été altérée, ou le serveur a une liste de révocation. Vérifiez ces claims dans le payload décodé.
- Mes données personnelles sont-elles protégées ?
- Entièrement. Le calcul est réalisé à 100 % côté client, directement dans votre navigateur web. Aucune donnée personnelle n'est envoyée vers un serveur distant ni stockée. Toutes les informations restent sur votre appareil.