# Převodník JWK

Převádějte klíče mezi formáty PEM a JSON Web Key. Vložte soukromý klíč PEM ve formátu PKCS #8, PKCS #1 nebo SEC1, veřejný klíč či certifikát a získejte jeho JWK, nebo vložte JWK či JWKS s až 20 klíči a získejte zpět PKCS #8 a SPKI PEM. Podporovány jsou klíče RSA, EC (P-256, P-384, P-521, secp256k1), Ed25519, Ed448, X25519 a X448; u každého se zobrazí jeho typ a otisk RFC 7638.

## Často kladené otázky

### Jak převodník pozná, kterým směrem převádět?

Vstup začínající znakem { se načte jako JWK nebo JWKS a převede na PEM. Vstup obsahující řádek -----BEGIN se načte jako PEM a převede na JWK. Vše ostatní se odmítne s upozorněním na očekávané formáty.

### Jaké vstupy PEM jsou přijímány?

Nešifrované soukromé klíče ve formátu PKCS #8 (BEGIN PRIVATE KEY), PKCS #1 (BEGIN RSA PRIVATE KEY) a SEC1 (BEGIN EC PRIVATE KEY), veřejné klíče jako SPKI (BEGIN PUBLIC KEY) nebo PKCS #1 (BEGIN RSA PUBLIC KEY) a certifikáty X.509, z nichž se převede veřejný klíč. Pokud vložíte více bloků PEM, přednost má první soukromý klíč; jinak se použije první veřejný klíč nebo certifikát.

### Co získám pro soukromý klíč?

Ze soukromého klíče PEM vznikne soukromý JWK se všemi jeho členy, například d, p, q, dp, dq a qi u RSA, a také odpovídající veřejný JWK. Sdílejte pouze veřejný JWK, protože soukromý obsahuje tajný materiál klíče.

### Mohu převést celý soubor JWKS?

Ano. Vložte dokument s polem keys obsahujícím až 20 klíčů, například z koncového bodu jwks_uri, a každý klíč se převede na PEM s uvedením svého indexu a kid. Soukromé JWK, rozpoznané podle členu d, vrátí soukromý klíč PKCS #8 i veřejný klíč SPKI.

### Proč nelze převést symetrický klíč?

Klíče s kty oct jsou prosté tajné bajty pro HMAC nebo AES a nemají reprezentaci PEM. Použijte je přímo, například v generátoru JWT, který přijímá oct JWK jako tajný klíč HMAC.

### K čemu slouží volba kid?

Je-li zapnutá, přidá se do vygenerovaného JWK otisk klíče RFC 7638 jako člen kid. Klíč tak získá stabilní identifikátor, který lze ověřit podle hlavičky kid v JWT.

### Co je otisk RFC 7638?

Jde o hash base64url SHA-256 vypočtený z povinných veřejných členů klíče v pevném pořadí, například e, kty a n u RSA nebo crv, kty, x a y u EC. Stejný klíč má vždy stejný otisk, ať je uložen jako PEM, nebo JWK.

### Jsou podporovány šifrované klíče nebo klíče OpenSSH?

Ne. U šifrovaných klíčů PEM je nejprve třeba odstranit přístupovou frázi, například příkazem openssl pkey -in encrypted.pem -out key.pem. Soukromé klíče OpenSSH je před načtením třeba převést na PEM pomocí ssh-keygen.

### Které typy klíčů fungují?

RSA, EC na křivkách P-256, P-384, P-521 a secp256k1 a typy OKP Ed25519, Ed448, X25519 a X448. Klíče DSA a Diffie-Hellman nemají formu JWK, proto jsou odmítnuty s vysvětlením.

### Uchovává se můj soukromý klíč?

Ne. Klíč se pro tento požadavek převádí v paměti a nikdy se nezaznamenává ani neukládá. Veřejné klíče převádějte raději online a se soukromými klíči používanými v produkci zacházejte pouze v systémech, které ovládáte.

Vaše reklama zde?

[Napište nám](mailto:hi@dennn.is?subject=Inzerce%20na%20OneClick%20Pro)

[Reklama Sada pluginů připravená pro agenty pro WordPress.](https://sleekwp.com/?ref=oneclickpro)
