JSON Web Key (JWK) Generator
Generate JSON Web Keys (JWK) for RS256, ES256, HS256 and other JWT signing algorithms. Produces public/private key pairs and ready-to-use JWKS endpoint JSON for RSA, ECDSA, and HMAC algorithms. All keys are generated locally in your browser using the Web Crypto API — nothing is sent to any server.
How to Use JSON Web Key (JWK) Generator
How to Use the JSON Web Key (JWK) Generator
Step 1: Choose an Algorithm
Select one of the nine supported JWT signing algorithms:
RSA algorithms (asymmetric — public/private key pair):
- RS256 — RSA + SHA-256. Most common for JWTs. Well-supported across all platforms and libraries.
- RS384 — RSA + SHA-384. Stronger hash, still RSA.
- RS512 — RSA + SHA-512. Strongest RSA option.
EC algorithms (asymmetric — compact key pair):
- ES256 — ECDSA P-256 + SHA-256. Compact keys, faster than RSA, recommended for modern systems.
- ES384 — ECDSA P-384 + SHA-384.
- ES512 — ECDSA P-521 + SHA-512.
HMAC algorithms (symmetric — shared secret):
- HS256 — HMAC-SHA256. Single secret key used for both signing and verification.
- HS384 — HMAC-SHA384.
- HS512 — HMAC-SHA512.
Step 2: Configure Key Options
RSA Key Size (RSA algorithms only):
- 2048 bits — Recommended. Good security with fast generation.
- 3072 bits — Higher security, slightly slower.
- 4096 bits — Maximum security. May take 5–10 seconds to generate.
Use — Sets the use claim in the JWK:
- sig — Key is intended for signing and verification (most common for JWTs).
- enc — Key is intended for encryption and decryption.
Key ID (kid) — A unique identifier for the key, included in the kid JWK claim. Auto-generated as a random hex string. You can edit it to match your naming convention (e.g., my-key-2024, signing-key-v1). Click the refresh button to generate a new random kid.
Step 3: Generate Keys
Click Generate Keys. For RSA algorithms, generation may take a moment (especially at 4096 bits). For EC and HMAC, generation is near-instant.
Step 4: Use the Output
For RSA and EC algorithms, three tabs are available:
- Public Key — Share this publicly. Used by consumers to verify JWT signatures. Host this in your JWKS endpoint.
- Private Key — Keep this secret. Used by your server to sign JWTs. Store in a secrets manager or environment variable.
- JWKS — A complete
{ "keys": [...] }JSON object containing the public key. Ready to serve at your/.well-known/jwks.jsonendpoint.
For HMAC algorithms, two tabs are available:
- Secret Key — The symmetric key. Keep this secret — it is used for both signing and verification.
- JWKS (⚠ symmetric) — The JWKS format of the secret key. Warning: never expose HMAC keys in a public JWKS endpoint.
Click Copy to copy the current tab's content to your clipboard.
Security Notes
- Never commit private keys or HMAC secrets to source control. Store them in environment variables, AWS Secrets Manager, HashiCorp Vault, or similar.
- HMAC keys must stay private. Unlike RSA/EC, anyone with the HMAC key can forge tokens.
- Rotate keys periodically. Use the
kidfield to support multiple active keys during rotation. - All keys are generated entirely in your browser using the Web Crypto API. Nothing is transmitted to any server.
Frequently Asked Questions
Most Viewed Tools
Screen Size Converter
Calculate screen width and height from diagonal size and aspect ratio. Convert between inches and centimeters for displays, TVs, and monitors with instant dimension calculations.
Use Tool →Reorder PDF Pages
Drag and drop to rearrange PDF pages in any order. Upload your PDF, preview all pages as thumbnails, drag pages to reorder them, and download the rearranged PDF. Fast, visual, and privacy-focused.
Use Tool →DPI Calculator
Calculate DPI (dots per inch), image dimensions, and print sizes. Convert between pixels and physical dimensions for printing and displays.
Use Tool →Paper Size Converter
Convert between international paper sizes (A4, Letter, Legal) with dimensions in mm, cm, and inches. Compare ISO A/B series and North American paper standards.
Use Tool →Fuel Consumption Converter
Convert between MPG (miles per gallon), L/100km (liters per 100 kilometers), and other fuel efficiency units. Compare car fuel economy across different measurement systems.
Use Tool →CSV Splitter
Split large CSV files into smaller files by number of rows. Process large datasets in manageable chunks instantly.
Use Tool →Product Schema Generator
Generate JSON-LD Product schema markup for SEO. Add product details like name, price, brand, rating, and availability to create structured data for rich search results.
Use Tool →Child Height Predictor
Predict child adult height based on parent heights using the Mid-Parental Height method. Calculate how tall your child will be with genetic predictions.
Use Tool →Related Privacy & Security Tools
PIN Generator
Generate secure numeric PINs for devices, accounts, and security systems. Create random PINs with strength analysis and security recommendations.
Use Tool →API Key Generator
Generate secure, cryptographically random API keys for authentication and authorization. Create custom API keys with various formats including hex, base64, and prefixed keys.
Use Tool →Password Strength Checker
Analyze password strength with real-time feedback, security scoring, and actionable recommendations to create stronger passwords.
Use Tool →AES Encrypt/Decrypt
Encrypt and decrypt text using AES (Advanced Encryption Standard) with secure key-based encryption. Protect sensitive data with industry-standard 256-bit encryption.
Use Tool →Webhook Signature Verifier
Compute and verify HMAC webhook signatures in your browser. Supports HMAC-SHA256, SHA-512, and SHA-1 with hex or base64 encoding. Compatible with Stripe, GitHub, Twilio, and any HMAC-signed webhook.
Use Tool →HMAC Generator
Generate HMAC (Hash-based Message Authentication Code) signatures for message authentication and data integrity verification. Supports SHA-256, SHA-384, SHA-512, and more.
Use Tool →RSA Key Generator
Generate secure RSA public/private key pairs for encryption, digital signatures, and authentication. Create 1024 to 4096-bit RSA keys instantly in your browser.
Use Tool →Memorable Password Generator
Generate strong, memorable passwords using random words. Create secure passphrases that are easy to remember but hard to crack.
Use Tool →Share Your Feedback
Help us improve this tool by sharing your experience