Aller au contenu

Générateur JWT

Créez un JSON Web Token signé à partir de vos propres revendications JSON. Choisissez HS256, HS384 ou HS512 avec un secret partagé, RS256 à PS512 avec une clé privée RSA, ES256 à ES512 avec la clé EC correspondante, ou EdDSA avec une clé Ed25519, au format PEM ou JWK. Le générateur peut ajouter iat, exp et un en-tête kid, signe avec la bibliothèque jose et affiche le jeton compact à côté de son en-tête et de sa charge utile décodés.

Réinitialiser

Foire aux questions

Quels algorithmes de signature puis-je utiliser ?

Le générateur prend en charge HS256, HS384 et HS512 avec un secret partagé, RS256, RS384, RS512, PS256, PS384 et PS512 avec une clé privée RSA, ES256, ES384 et ES512 avec une clé privée EC sur P-256, P-384 ou P-521, et EdDSA avec une clé privée Ed25519. L'algorithme choisi est inscrit dans l'en-tête alg, et typ est toujours défini sur JWT.

Que dois-je saisir comme charge utile ?

Saisissez un objet JSON contenant vos revendications, par exemple sub, name, iss, aud ou tout membre personnalisé. Les tableaux, chaînes et autres valeurs qui ne sont pas des objets sont refusés, car une charge utile JWT doit être un objet JSON. L'ordre et les valeurs des revendications sont conservés exactement comme vous les avez saisis.

Comment le secret HMAC est-il lu ?

Pour HS256, HS384 et HS512, le secret est utilisé comme texte UTF-8 après suppression des espaces blancs au début et à la fin. Si votre secret est binaire, collez-le sous forme de JWK, par exemple {"kty": "oct", "k": "..."}, avec les octets en base64url ; les octets décodés sont alors utilisés. Les clés PEM sont refusées pour les algorithmes HMAC, car utiliser une clé publique comme secret HMAC est une erreur classique.

Quelle doit être la longueur d'un secret HS256 ?

La RFC 7518 recommande une clé au moins aussi longue que la sortie de hachage, soit 32 octets pour HS256, 48 pour HS384 et 64 pour HS512. L'outil signe avec des secrets plus courts afin que vous puissiez reproduire des jetons de test, mais les secrets de production doivent être de longues valeurs aléatoires, par exemple générées avec le générateur de mots de passe.

Quels formats de clé privée sont acceptés pour RSA, EC et EdDSA ?

Collez une clé privée PEM non chiffrée au format PKCS #8 (BEGIN PRIVATE KEY), PKCS #1 (BEGIN RSA PRIVATE KEY) ou SEC1 (BEGIN EC PRIVATE KEY), ou une clé JWK privée contenant son membre d. Les fichiers PEM chiffrés et les clés privées OpenSSH ne sont pas lus. La clé doit correspondre à l'algorithme : ES384 nécessite une clé P-384 et les clés RSA doivent compter au moins 2048 bits.

Comment iat et exp sont-ils définis ?

Lorsque l'option d'émission est activée, iat est défini sur l'heure actuelle, sauf si votre charge utile contient déjà une revendication iat. Lorsque l'expiration est supérieure à 0 seconde, exp est défini sur l'heure actuelle plus ce nombre de secondes et remplace tout exp présent dans votre charge utile. Avec une expiration de 0, aucun exp n'est ajouté et un exp déjà présent dans votre charge utile est conservé.

À quoi sert le champ kid ?

Un identifiant de clé non vide est inscrit dans l'en-tête kid afin que les vérificateurs puissent sélectionner la bonne clé dans un JWKS. Si vous collez un JWKS comme clé de signature, kid sélectionne également la clé de l'ensemble qui signe le jeton. Le convertisseur JWK et les générateurs de clés affichent l'empreinte RFC 7638, qui convient bien comme kid.

Que contient le résultat ?

Vous obtenez le jeton compact, l'algorithme, l'identifiant de clé, les heures d'émission et d'expiration en UTC, ainsi que l'en-tête et la charge utile JSON exacts qui ont été signés. Copiez le jeton depuis le premier bloc. Vous pourrez le décoder plus tard avec le décodeur JWT ou le vérifier avec le vérificateur JWT.

Mes secrets ou mes clés sont-ils enregistrés ?

Non. Le secret ou la clé privée ne transite que dans la requête qui signe le jeton, est utilisé une seule fois en mémoire et n'est jamais consigné ni enregistré. Malgré cela, privilégiez les clés de test pour vos essais et ne collez jamais une clé de signature de production dans un outil web, sauf si vous contrôlez le serveur.

Y a-t-il des limites de taille ?

La charge utile peut contenir jusqu'à 65,536 caractères, la clé jusqu'à 65,536 caractères et kid jusqu'à 256 caractères. La durée d'expiration peut aller de 0 à 315,360,000 secondes, soit dix ans. Les saisies plus longues sont refusées avec un message qui indique le champ concerné.

À propos de OneClick Pro

OneClick Pro est une collection gratuite de plus de 150 outils Web pour les tâches du quotidien : convertir des images et des unités, formater et valider du code, vérifier des domaines et SEO, et travailler avec du texte, des dates et des nombres. Chaque outil fonctionne sans inscription ni abonnement, et les données saisies servent uniquement à calculer le résultat et ne sont jamais stockées. Utilisez cette boîte à outils pour des tâches ponctuelles ou ajoutez à vos favoris les outils dont vous vous servez chaque jour.