N'utilisez jamais ici un secret de production : saisissez uniquement des secrets de test. Rien n'est envoyé, mais un secret réel ne doit pas être collé dans une page web.
🌐 Web et technique
Composez la charge utile, choisissez l'algorithme et obtenez un jeton JWT signé, calculé localement.
N'utilisez jamais ici un secret de production : saisissez uniquement des secrets de test. Rien n'est envoyé, mais un secret réel ne doit pas être collé dans une page web.
Un JWT signé se construit en trois étapes. L'en-tête JSON, qui indique l'algorithme, et la charge utile JSON sont chacun encodés en Base64 URL sans remplissage, puis assemblés par un point. On calcule ensuite un HMAC de cette chaîne avec le secret et la fonction de hachage SHA-256, SHA-384 ou SHA-512, et la signature obtenue est encodée de la même façon. Le jeton final est la concaténation des trois parties.
Cet outil automatise ces étapes avec l'API Web Crypto du navigateur. Vous écrivez la charge utile, ajoutez au besoin la date d'émission (iat) et une date d'expiration (exp) calculées à partir de l'heure actuelle, puis récupérez un jeton prêt à tester dans une API, un client HTTP ou un test unitaire. Les valeurs déjà présentes dans votre JSON ne sont jamais écrasées.
Les secrets saisis restent dans la page. Il est néanmoins recommandé de ne travailler qu'avec des secrets de test, jamais avec ceux de production, et de choisir en situation réelle un secret aléatoire d'au moins 256 bits.
Au moins la taille de la sortie de la fonction de hachage : 32 octets aléatoires pour HS256, 48 pour HS384 et 64 pour HS512. Évitez les mots courants, faciles à deviner.
HS256 utilise un secret partagé entre l'émetteur et le vérificateur. RS256 utilise une paire de clés : une privée pour signer, une publique pour vérifier. Cet outil ne gère que la famille HMAC.
Les dates iat et exp reposent sur l'heure courante. Avec une charge utile figée qui contient déjà ses dates, le jeton produit est toujours identique.