Générateur de JWT
Construisez et signez un JWT directement dans votre navigateur. Entrez les revendications de charge utile (standard sub, aud, exp, etc. plus tout ce qui est personnalisé), choisissez l’algorithme (HS256 avec un secret partagé ou RS256/ES256 avec une clé privée) et l’outil produit le jeton en trois parties. Utile pour le développement local, les tests de charge et la reproduction des problèmes d’authentification.
Comment générer un JWT
-
1
Écrivez la charge utile
Revendications standard (`sub`, `iss`, `aud`, `exp`, `iat`, `nbf`) plus toutes celles que votre application attend.
-
2
Choisissez l'algorithme
HS256/384/512 avec un secret partagé, ou RS256/ES256 avec une clé privée au format PEM.
-
3
Fournissez la clé
Texte de secret partagé pour HMAC, ou collez la clé privée pour RSA/ECDSA. Les deux restent dans votre navigateur.
-
4
Générer
La sortie est le jeton signé. Copiez-le, utilisez-le dans des tests, décodez-le avec le décodeur JWT pour l'inspecter.
Charge utile typique pour un jeton d’utilisateur authentifié
{
"iss": "https://auth.example.com",
"aud": "api.example.com",
"sub": "user_12345",
"iat": 1713398400,
"nbf": 1713398400,
"exp": 1713402000,
"jti": "3c7c7e14-2de4-41f0-bf09-1eb5cfad4c01",
"scope": "read:profile write:posts"
}
Choix de l’algorithme : HMAC vs asymétrique
| Algorithme | Type de clé | Utiliser quand |
|---|---|---|
| HS256 | secret partagé de 256 bits | Monolithe qui signe et vérifie lui-même |
| HS384/512 | Secret plus long | Même que HS256, plus fort |
| RS256 | RSA 2048+ | L’émetteur signe, de nombreux services vérifient avec la clé publique |
| ES256 | ECDSA P-256 | Même que RS256 mais signatures plus petites |
| EdDSA | Ed25519 | Vérification asymétrique la plus rapide, clés les plus petites |
Force de la clé
- Les secrets HMAC doivent avoir au moins autant d’entropie que la taille de sortie de l’algorithme. HS256 nécessite 256 bits aléatoires (32 octets) ; en dessous, ils sont vulnérables à la force brute.
- Les clés RSA doivent faire au moins 2048 bits ; 3072 ou 4096 pour des jetons à longue durée de vie.
- ECDSA (ES256) offre une sécurité comparable à RSA 3072 avec des clés beaucoup plus petites et une signature plus rapide.
Directives d’expiration
| Type de jeton | Durée typique exp |
|---|---|
| Jeton d’accès | 5 - 60 minutes |
| Jeton de rafraîchissement | Jours à semaines |
| Réinitialisation de mot de passe | 5 - 15 minutes |
| Vérification par e-mail | 24 heures |
| Service à service | 1-5 minutes (court) |
Expiration courte + jeton de rafraîchissement est le modèle moderne. Les jetons d’accès à long terme sont difficiles à révoquer lorsqu’ils sont compromis.
Erreurs courantes
- Réutiliser un secret de test en production. Le générateur marque les secrets HS256 et le JWT de sortie comme uniquement pour les tests si le secret semble faible. Faites confiance à cet avertissement.
- Signer sans
exp. Un JWT sans expiration est valide pour toujours. Toujours définirexpà moins d’avoir une très bonne raison et une liste de révocation. - Utiliser l’
algde l’en-tête sur le vérificateur. Toujours mettre en liste blanche les algorithmes du côté de la vérification ; ne suivez pas ce que le jeton demande. - Coller une vraie clé privée ici. Ce générateur fonctionne dans votre navigateur mais traitez les clés privées comme des secrets : utilisez des clés de test, pas de production.
Questions fréquentes
Non. La signature se fait dans votre navigateur en utilisant l’API Web Crypto. Les clés ne quittent jamais votre machine. Cela dit, pour les clés de production, générez et signez dans un environnement contrôlé, pas dans un navigateur.
HS256 est suffisant pour un monolithe où le même service signe et vérifie. RS256 ou ES256 est mieux lorsque l’émetteur est séparé du vérificateur, les clés publiques peuvent être partagées sans exposer la clé de signature.
Court. 5-15 minutes pour les jetons d’accès est typique. Utilisez un jeton de rafraîchissement avec une durée de vie plus longue pour une expérience utilisateur fluide. Ne délivrez jamais de JWT sans une revendication exp.
L’outil prend en charge l’émission de alg: none pour tester délibérément des jetons cassés / non signés, avec un avertissement bien visible. N’acceptez jamais de tels jetons dans le code de production.
Outils similaires
Générateur de CSR
Générez une demande de signature de certificat encodée en PEM et une clé privée RSA correspondante. Spécifiez le nom commun, les champs d'organisation et la taille de clé (2048, 3072 ou 4096 bits).
Encodeur de fichiers Base64
Encodez n'importe quel fichier (PDF, ZIP, image, exécutable) en texte Base64 pour l'intégration dans JSON, email, YAML ou URI de données. Fonctionne localement, sans téléchargement.
Vérificateur de somme de contrôle
Calculez la somme de contrôle MD5, SHA-1, SHA-256, SHA-384, SHA-512 ou CRC32 de n'importe quel texte et comparez-la à une valeur attendue pour obtenir un verdict clair de correspondance ou de divergence.
Identificateur de chiffre
Collez le texte chiffré et l'identificateur suggère les schémas d'encodage/chiffrement probables : Base64, hex, binaire, Morse, César ou substitution, JWT et hachages courants.
Encodeur de chiffre A1Z26
Encodez du texte en utilisant le chiffre A1Z26 (A=1, B=2, ... Z=26) ou décodez une séquence de nombres en lettres, avec un séparateur personnalisable.
Encodeur de César
Cryptez et décryptez du texte en utilisant le chiffre de César. Tout décalage de 1 à 25, prend en charge ROT13 comme un cas spécial, préserve la ponctuation et la casse.
Outil disponible dans d’autres langues
- Generator JWT [ID]
- JWTジェネレーター [JA]
- ตัวสร้าง JWT [TH]
- Bộ tạo JWT [VI]
- JWT-Generator [DE]
- JWT 생성기 [KO]
- Generator JWT [PL]
- Gerador de JWT [PT]
- Generador de JWT [ES]
- JWT-generator [SV]
- مولد JWT [AR]
- JWT-generator [NL]
- Генератор JWT [RU]
- JWT Oluşturucu [TR]
- JWT 生成器 [ZH]
- JWT Generator [EN]
- Generatore JWT [IT]