Vérificateur JWKS
JWKS Verifier
Interroge un point de terminaison JWKS, choisit la clé par son kid et vérifie la signature d’un jeton ainsi que ses revendications standard.
Vérifie un jeton contre le JWKS publié par un émetteur — récupérez-le par son URL ou collez-le — en choisissant la clé par son `kid`, en contrôlant la signature, puis en contrôlant `exp`, `nbf` et, si vous les nommez, `iss` et `aud`. Le jeton n'est jamais envoyé ; seule l'URL du JWKS est appelée.
Le jeton ne quitte pas cet onglet.
La vérification de la signature est faite par le WebCrypto du navigateur, et cette page n’a pas de côté serveur. La seule requête réseau est un GET vers l’URL de JWKS que vous tapez, et cette requête ne transporte rien d’autre que l’URL — pas le jeton.
Jeton
Un préfixe Bearer est retiré pour vous.
Clés publiques (JWKS)
Le navigateur fait un GET direct. Le jeton n’est pas envoyé.
Le `jwks_uri` du /.well-known/openid-configuration de l’émetteur est cette adresse.
Valeurs attendues (facultatif)
Laissez-en une vide et ce claim n’est pas vérifié. exp et nbf sont toujours vérifiés.
Ce qui est vérifié
- · RS256/384/512, PS256/384/512, ES256/384/512 et EdDSA (Ed25519) sont vérifiés avec WebCrypto (RFC 7518 §3, RFC 8037). HS* utilise un secret partagé et ne peut pas du tout être vérifié contre un JWKS : c’est le décodeur de JWT qui s’en charge avec le secret. ES256K et Ed448 ne sont dans le WebCrypto d’aucun navigateur.
- · La clé est choisie par le
kidde l’en-tête du jeton (RFC 7515 §4.1.4). Pendant une rotation, un JWKS porte plusieurs clés, donc un kid qui ne correspond pas est signalé comme tel. - ·
expetnbfsont vérifiés avec la tolérance de décalage ;issetaudseulement si vous donnez une valeur attendue (RFC 7519 §4.1).alg: noneest toujours refusé.
Comment s’en servir
Collez le jeton
Son `alg`, son `kid` et son émetteur sont lus immédiatement, ce qui vous dit de quel JWKS vous avez besoin.
Récupérez ou collez le jeu de clés
Le `/.well-known/openid-configuration` de l'émetteur nomme son `jwks_uri`. Google, Microsoft et Apple ont des boutons raccourcis ; le reste, vous le tapez ou le collez.
Remplissez ce que vous attendez
Un `iss` et un `aud` laissés vides ne sont pas vérifiés du tout — c'est ainsi qu'un jeton destiné à une autre audience se fait accepter dans de vrais systèmes. La tolérance de décalage d'horloge couvre les serveurs qui divergent d'une minute.
Lisez le verdict et la table des revendications
La bannière dit accepter ou ne pas accepter ; la table en dessous dit quelle vérification a produit cette réponse et quelle clé a été retenue.
Questions fréquentes
La récupération a échoué avec une erreur CORS.
Un point de terminaison JWKS doit envoyer des en-têtes CORS pour qu'un navigateur puisse le lire. Google, Microsoft et Apple le font ; bien des émetteurs auto-hébergés, non. Récupérez-le vous-même avec curl et collez le JSON — la vérification est identique dans les deux cas.
Il dit qu'aucune clé ne correspond au kid.
En général une rotation de clés : le jeton a été signé avant que l'émetteur ne fasse tourner les siennes, et le JWKS ne contient plus que les nouvelles. Cela peut aussi vouloir dire que le jeton vient d'un autre émetteur que le JWKS que vous avez récupéré.
Pourquoi `alg: none` est-il toujours refusé ?
Parce que l'accepter est la vulnérabilité JWT classique : un attaquant réécrit l'en-tête, supprime la signature, et une bibliothèque qui fait confiance à l'en-tête laisse passer le jeton. Il n'y a aucun usage légitime de cela dans un chemin de vérification.
Peut-il vérifier un jeton HS256 ?
Pas ici — HS* repose sur un secret partagé, et un JWKS publie des clés publiques. Utilisez le décodeur JWT, qui accepte un secret. Un émetteur qui publierait des clés HMAC dans un JWKS publierait la capacité de fabriquer des jetons.
À alimenter depuis
Décodeur JWT
JWT Decoder
Décode l’en-tête et la charge utile, affiche l’expiration des revendications à l’heure locale et vérifie la signature avec la clé que vous fournissez.
Générateur de paire de clés
Key Pair Generator
Produit des paires de clés RSA, ECDSA ou Ed25519 et les exporte en PEM, en JWK ou en OpenSSH.
Formateur et validateur JSON
JSON Formatter & Validator
Met en forme, minifie et valide du JSON en désignant la ligne et la colonne exactes de l’erreur de syntaxe.
Formateur et validateur YAML
YAML Formatter & Validator
Réindente le YAML de façon cohérente, le valide et signale les tabulations et les ancres qui font échouer les analyseurs.
Ensuite
Ces outils acceptent ce que celui-ci produit : le résultat peut y aller directement.
Décodeur de certificat
Certificate Decoder
Analyse un certificat ou une demande de signature au format PEM ou DER et affiche le sujet, les SAN, la validité, les usages de clé et des indices sur la chaîne.
Décodeur JWT
JWT Decoder
Décode l’en-tête et la charge utile, affiche l’expiration des revendications à l’heure locale et vérifie la signature avec la clé que vous fournissez.
Générateur de paire de clés
Key Pair Generator
Produit des paires de clés RSA, ECDSA ou Ed25519 et les exporte en PEM, en JWK ou en OpenSSH.
Conversion JSON ⇄ CSV
JSON ⇄ CSV
Aplatit du JSON imbriqué en colonnes ou reconstruit des objets depuis un tableau, avec un nommage des colonnes par chemin pointé.
Comparateur JSON
JSON Diff
Compare deux documents JSON sur leur structure, sans tenir compte de l’ordre des clés, et signale les chemins ajoutés, retirés et modifiés.
Formateur et validateur JSON
JSON Formatter & Validator
Met en forme, minifie et valide du JSON en désignant la ligne et la colonne exactes de l’erreur de syntaxe.