Comment décoder un JWT et lire ses données
Collez un JWT composé de trois segments pour afficher son en-tête, sa charge utile et ses données de signature. La vérification de signature reste facultative et demande un secret lorsqu’elle est activée.
À quoi sert le décodage d’un JWT ?
Un jeton JWT est formé de trois parties séparées par des points. Cet outil sert à lire les données encodées dans les deux premières parties et à décoder la troisième comme donnée de signature. Il peut ainsi vous aider à examiner la structure d’un jeton avant de vous intéresser à sa signature, sans confondre lecture et authentification.
Décoder un JWT étape par étape
-
Préparez le jeton sous forme de texte. Vérifiez qu’il n’est pas vide et qu’il comporte trois segments séparés par des points. Un texte vide, composé uniquement d’espaces, ou présentant un autre nombre de segments ne peut pas être traité par l’outil.
-
Collez le jeton dans le champ prévu à cet effet, puis lancez l’analyse. L’outil décode les deux premiers segments au format base64url, les interprète comme du JSON en UTF-8 et les présente comme l’en-tête et la charge utile. Le troisième segment est décodé comme donnée de signature, tandis que son texte d’origine est également conservé.
-
Examinez les informations affichées. Lorsque l’en-tête ou la charge utile contient un objet, l’analyse peut faire ressortir des éléments comme l’algorithme, le type de jeton, l’émetteur, le sujet, l’audience et certaines données temporelles.
-
Si vous devez contrôler la signature, activez cette vérification et fournissez le secret demandé. Sans secret, une vérification demandée est ignorée et un problème est signalé. Avec un secret, l’outil tente la vérification en utilisant l’algorithme indiqué dans l’en-tête, puis indique notamment si la signature est valide ou invalide.
Comprendre le résultat et ses limites
Le décodage réussi vous donne accès à la structure lisible du jeton, mais il ne démontre ni son authenticité ni son intégrité. Pour ces questions, la vérification facultative de la signature est une opération distincte et nécessite un secret lorsqu’elle est demandée.
Un résultat infructueux peut signaler plusieurs situations : le texte d’entrée est vide, le nombre de segments ne convient pas, ou les premiers segments ne peuvent pas être décodés en base64url, en UTF-8 ou en JSON. Un troisième segment non vide et invalide est également signalé comme problème. En revanche, un troisième segment vide n’ajoute pas de problème de signature dans le traitement décrit ici.
Les informations affichées dépendent aussi du contenu décodé. Les éléments comme l’émetteur ou l’audience peuvent être mis en avant lorsque les valeurs décodées sont des objets et contiennent les informations correspondantes.
Exemple pratique
Vous devez examiner la structure d’un jeton transmis par un service et contrôler séparément sa signature avant d’interpréter ses informations.
Collez le texte d’un jeton JWT reçu par une application, vérifiez qu’il contient trois segments séparés par des points, lancez le décodage, puis demandez la vérification en fournissant le secret prévu à cet effet.
Le résultat présente un en-tête, une charge utile et des données de signature. Si une vérification est demandée avec le secret approprié, il indique une issue de signature valide ou invalide ; sans secret, il signale que la vérification est ignorée.
Limites
- Le décodage ne constitue pas une preuve d’authenticité ou d’intégrité. La vérification de signature est séparée, facultative et dépend de la fourniture d’un secret ; les entrées qui ne suivent pas le format à trois segments sont hors de la limite prise en charge.
Erreurs fréquentes
- Cause : le texte collé est vide ou ne contient pas trois segments séparés par des points. Correction : retirez les espaces superflus et vérifiez la présence des trois parties avant de relancer l’analyse.
Questions fréquentes
Tous les JWT peuvent-ils être décodés ?
Oui, si le texte contient trois segments séparés par des points et si les deux premiers peuvent être décodés en base64url, en UTF-8 et en JSON. Un jeton vide ou mal formé produit un résultat infructueux.
Le décodage confirme-t-il qu’un JWT est authentique ?
Le décodage affiche les données du jeton, mais ne prouve pas son authenticité. Pour contrôler la signature, demandez la vérification et fournissez le secret nécessaire.
Que se passe-t-il si je demande une vérification sans secret ?
Sans secret, la vérification demandée est ignorée et un problème est enregistré. Avec un secret fourni, l’outil tente le contrôle selon l’algorithme indiqué dans l’en-tête.