EC raktų generatorius
Sukurkite elipsinės kreivės raktų porą pagal P-256, P-384 arba P-521 standartą ES256, ES384 arba ES512 parašams, ECDH ir TLS sertifikatams. Rezultate pateikiamas privatusis raktas kaip nešifruotas PKCS #8 PEM, viešasis raktas kaip SPKI PEM, OpenSSH ecdsa-sha2 viešojo rakto eilutė su SHA-256 kontroliniu atspaudu ir RFC 7638 JWK kontroliniu atspaudu. Kiekviena pora sukuriama iš naujo naudojant Node crypto modulį ir niekada neišsaugoma.
Dažnai užduodami klausimai
Kurią kreivę pasirinkti?
P-256 (dar vadinama prime256v1 arba secp256r1) yra plačiausiai palaikoma kreivė, užtikrinanti maždaug 128 bitų saugumą. P-384 užtikrina maždaug 192 bitų saugumą ir reikalinga kai kuriuose vyriausybiniuose profiliuose, pavyzdžiui, CNSA. P-521 yra didžiausia NIST kreivė ir palaikoma rečiau, todėl rinkitės ją tik tada, kai to prašo sistema.
Kuris JWT algoritmas atitinka kiekvieną kreivę?
P-256 raktai pasirašo naudodami ES256, P-384 raktai – ES384, o P-521 raktai – ES512. JOSE kiekvieną algoritmą susieja tik su viena kreive, todėl JWT generatorius atmeta netinkamos kreivės raktą. Rezultate nurodomas jūsų raktą atitinkantis algoritmas.
Kokie formatai pateikiami?
Privatusis raktas pateikiamas PEM formatu, užkoduotas kaip PKCS #8 (BEGIN PRIVATE KEY), o viešasis raktas – PEM formatu, užkoduotas kaip SubjectPublicKeyInfo (BEGIN PUBLIC KEY) su įvardyta kreive. Taip pat gausite ecdsa-sha2-nistp256, nistp384 arba nistp521 eilutę, kurios OpenSSH tikisi faile authorized_keys.
Kaip gauti SEC1 formą (BEGIN EC PRIVATE KEY)?
Kai kuriems įrankiams vis dar reikia senesnio SEC1 kodavimo. Naudodami OpenSSL 3, paleiskite openssl pkey -in key.pem -traditional -out key-ec.pem arba openssl ec -in key.pem -out key-ec.pem. Pats raktas nesikeičia.
Ar galiu su šiuo raktu sukurti sertifikato pasirašymo užklausą?
Taip. Išsaugokite privatųjį PEM raktą ir paleiskite openssl req -new -key key.pem -subj "/CN=example.com" -out request.csr, tada patikrinkite užklausą naudodami CSR iškoduoklį. Sertifikatų institucijos priima P-256 ir P-384 raktus TLS sertifikatams.
Kodėl EC raktai mažesni už RSA raktus?
Elipsinių kreivių kriptografija užtikrina tokį patį saugumą naudojant daug trumpesnius raktus, todėl P-256 raktas prilygsta 3072 bitų RSA raktui. Parašai yra trumpesni, o pasirašymas – greitesnis. P-256 viešasis raktas telpa į 65 baitus.
Ar privatusis raktas apsaugotas slaptafraze?
Ne, jis pateikiamas nešifruotas, kad kiti įrankiai galėtų jį perskaityti tiesiogiai. Užšifruokite jį saugojimui naudodami openssl pkey -in key.pem -aes256 -out key-encrypted.pem. Niekada neįkelkite nešifruoto privačiojo rakto į saugyklą.
Kam naudojamas JWK kontrolinis atspaudas?
RFC 7638 kontrolinis atspaudas yra base64url SHA-256 maiša, apskaičiuota iš rakto crv, kty, x ir y narių. Tai stabilus rakto identifikatorius, nepriklausantis nuo PEM ar JWK formato, tinkamas naudoti kaip kid JWT antraštėse ir JWKS dokumentuose.
Ar raktų pora išsaugoma?
Ne. Užklausai skirta pora sukuriama atmintyje, pateikiama vieną kartą ir niekada neregistruojama ar neišsaugoma. Prieš išeidami iš puslapio nukopijuokite abu raktus, nes vėliau jų vėl peržiūrėti negalėsite.
Ką keičia komentaro laukas?
Jis tik prideda žymą OpenSSH viešojo rakto eilutės pabaigoje, pavyzdžiui, user@laptop, kad raktą būtų lengva atpažinti faile authorized_keys. Kontroliniai atspaudai ir rakto duomenys nesikeičia. Komentare gali būti iki 200 simbolių.