🔑 Décodeur JWT
Décodez en-tête, payload et signature d'un JWT localement, vérifiez expiration et claims. Rien n'est envoyé.
🔐 Le token est décodé entièrement dans votre navigateur et jamais envoyé à 0Appz ni à des tiers. Un JWT peut contenir des données sensibles.
📦 En-tête
-
📄 Payload
-
✍️ Signature
-
La signature est affichée telle quelle. Cet outil ne vérifie pas les signatures : ne considérez pas un token décodé comme fiable.
⏱️ Claims de temps
Comment utiliser cet outil
Aperçu
Décodeur JWT décode tout JSON Web Token directement dans votre navigateur. Collez un token et voyez instantanément ses trois parties : l en-tête (algorithme, type, key ID), le payload (tous les claims en JSON formaté) et la signature brute. Les claims de temps sont traduits en dates lisibles et l outil indique si le token est valide, expiré, pas encore valide ou sans expiration. Tout s exécute côté client, votre token n est jamais envoyé, ce qui compte car les JWT contiennent souvent des identifiants de session. Décoder ne vérifie pas la signature.Ce que contient un JWT
Un JWT est composé de trois segments base64url séparés par des points. L'en-tête indique l'algorithme de signature et le key id ; le payload porte des claims comme iss (émetteur), sub (sujet), aud (audience), exp (expiration), iat (émis à) et nbf (pas avant) ; la signature permet à un serveur de vérifier l'émetteur et l'intégrité. Le décodeur affiche les trois, formate le JSON, humanise les dates et indique si le token est valide, expiré ou pas encore actif.
Spécifications et compatibilité
| Propriété | Comportement |
|---|---|
| Entrée | Tout token JWS (header.payload.signature) |
| Parties décodées | En-tête, claims du payload et signature brute |
| Claims de temps | exp, iat, nbf en dates lisibles avec statut |
| Statut | Valide, expiré, pas encore valide ou sans expiration |
| Signature | Non vérifiée: décodage uniquement |
| Traitement | 100 % côté client ; tokens jamais envoyés |
| Coût | Gratuit, sans compte, tokens illimités |
Confidentialité : les tokens de session restent dans le navigateur
Un JWT est souvent une vraie credential, le coller dans un décodeur en ligne livrerait une session active. Tout est décodé localement : rien n'est transmis ni stocké. Traitez aussi la sortie comme sensible.
Déboguer des JWT sans risque
- Vérifiez exp d'abord : la plupart des « token invalide » sont expirés.
- Comparez iat et nbf quand les horloges dérivent.
- Contrôlez que aud et iss correspondent à l'API.
- alg: none et les algorithmes symétriques exigent une validation serveur rigoureuse.
- Ne collez jamais de tokens de production dans un outil non maîtrisé.
Voir aussi les outils de développement pour Base64, hachage et regex.
Structure JWT, signatures et erreurs courantes
Un JSON Web Token comporte trois parties séparées par des points : un en-tête décrivant l'algorithme, une charge utile portant les claims et une signature permettant au récepteur de vérifier que les deux premières n'ont pas été modifiées. Les trois sont encodées en Base64URL, c'est-à-dire un encodage et non un chiffrement : quiconque détient le token peut lire les claims, donc rien de sensible ne doit figurer dans la charge. Le décodage est donc toujours sûr en local, tandis que la vérification exige le secret ou la clé publique et doit se faire côté serveur. Plusieurs erreurs reviennent dans les vrais systèmes. L'attaque alg:none exploite les bibliothèques qui faisaient confiance à l'en-tête et acceptaient un token non signé ; une implémentation correcte fixe l'algorithme attendu et rejette le reste. Utiliser HS256, algorithme symétrique, avec un secret faible ou divulgué en est une autre : le secret doit être long et aléatoire, et les algorithmes asymétriques comme RS256 sont préférables quand beaucoup doivent vérifier mais qu'un seul peut signer. La validation des claims s'oublie facilement : exp et nbf doivent être comparés à l'heure courante, iss et aud doivent correspondre aux valeurs attendues, et jti permet la révocation en cas de vol. Les tokens sont des identifiants porteurs : ils ne doivent circuler qu'en HTTPS et être stockés là où les scripts ne peuvent pas les lire si le XSS est une préoccupation. Rappelez-vous qu'un token décodé ne prouve rien tant que la signature n'est pas vérifiée. Cet outil décode en local et ne stocke rien.
Questions fréquentes
Est-ce sûr de coller un JWT ici ? +
Oui. Le Décodeur JWT décode le token entièrement dans votre navigateur. Rien n est envoyé. Rappelez-vous toutefois que toute personne possédant le token peut lire son payload.
Cet outil vérifie-t-il la signature ? +
Non. Il décode l en-tête et le payload et affiche la signature telle quelle. Vérifier une signature nécessite la clé, et un token décodé ne doit jamais être considéré comme fiable seul.
Pourquoi mon token apparaît-il expiré ? +
Le claim exp est un timestamp Unix en secondes. Si cette heure est passée, le token est expiré et doit être renouvelé par le service émetteur.
Que signifient alg, typ et kid ? +
alg est l algorithme de signature (ex. HS256 ou RS256), typ vaut généralement JWT, et kid identifie la clé de signature.