JWK-omvandlare
Konvertera nycklar mellan PEM och JSON Web Key. Klistra in en privat PEM-nyckel i PKCS #8-, PKCS #1- eller SEC1-format, en offentlig nyckel eller ett certifikat för att få dess JWK, eller klistra in en JWK eller en JWKS med upp till 20 nycklar för att få tillbaka PKCS #8- och SPKI-PEM. RSA-, EC- (P-256, P-384, P-521, secp256k1), Ed25519-, Ed448-, X25519- och X448-nycklar stöds. Varje nyckel visas med sin typ och sitt RFC 7638-tumavtryck.
Vanliga frågor
Hur avgör omvandlaren åt vilket håll den ska konvertera?
Indata som börjar med { läses som en JWK eller JWKS och konverteras till PEM. Indata som innehåller en -----BEGIN-rad läses som PEM och konverteras till JWK. All annan indata avvisas med en upplysning om förväntade format.
Vilka PEM-indata godtas?
Okrypterade privata nycklar i PKCS #8-format (BEGIN PRIVATE KEY), PKCS #1-format (BEGIN RSA PRIVATE KEY) och SEC1-format (BEGIN EC PRIVATE KEY), offentliga nycklar som SPKI (BEGIN PUBLIC KEY) eller PKCS #1 (BEGIN RSA PUBLIC KEY) samt X.509-certifikat, vars offentliga nyckel konverteras. Om flera PEM-block klistras in används den första privata nyckeln, annars den första offentliga nyckeln eller det första certifikatet.
Vad får jag för en privat nyckel?
En privat PEM-nyckel ger den privata JWK:n med alla dess medlemmar, till exempel d, p, q, dp, dq och qi för RSA, samt motsvarande offentliga JWK. Dela bara den offentliga JWK:n, eftersom den privata innehåller hemligt nyckelmaterial.
Kan jag konvertera en hel JWKS?
Ja. Klistra in ett dokument med en keys-array med upp till 20 nycklar, till exempel från en jwks_uri-slutpunkt, så konverteras varje nyckel till PEM med sitt index och kid. Privata JWK:er, som känns igen på medlemmen d, ger både den privata PKCS #8-nyckeln och den offentliga SPKI-nyckeln.
Varför går det inte att konvertera en symmetrisk nyckel?
Nycklar med kty oct består av vanliga hemliga byte för HMAC eller AES och har ingen PEM-representation. Använd dem direkt, till exempel i JWT Generator, där en oct-JWK godtas som HMAC-hemlighet.
Vad gör kid-alternativet?
När alternativet är aktiverat läggs nyckelns RFC 7638-tumavtryck till som medlemmen kid i den genererade JWK:n. Då får nyckeln en stabil identifierare som verifierare kan matcha mot kid-huvudet i en JWT.
Vad är RFC 7638-tumavtrycket?
Det är en base64url-SHA-256-hash över nyckelns obligatoriska offentliga medlemmar i en fast ordning, till exempel e, kty och n för RSA eller crv, kty, x och y för EC. Samma nyckel har alltid samma tumavtryck, oavsett om den lagras som PEM eller JWK.
Stöds krypterade nycklar eller OpenSSH-nycklar?
Nej. Krypterade PEM-nycklar måste först dekrypteras genom att lösenfrasen tas bort, till exempel med openssl pkey -in encrypted.pem -out key.pem. Privata OpenSSH-nycklar måste konverteras till PEM med ssh-keygen innan de kan läsas här.
Vilka nyckeltyper fungerar?
RSA, EC på P-256, P-384, P-521 och secp256k1 samt OKP-typerna Ed25519, Ed448, X25519 och X448. DSA- och Diffie-Hellman-nycklar saknar JWK-format och avvisas med en förklaring.
Sparas min privata nyckel?
Nej. Nyckeln konverteras i minnet för den här begäran och loggas eller sparas aldrig. Konvertera helst offentliga nycklar online och hantera privata produktionsnycklar endast på system som du kontrollerar.