RSA atslēgu ģenerators
Ģenerējiet jaunu RSA atslēgu pāri ar 2048 vai 3072 bitu moduli un publisko eksponenti 65537. Saņemsiet privāto atslēgu nešifrētā PKCS #8 PEM formātā, publisko atslēgu SPKI PEM formātā, atbilstošo OpenSSH ssh-rsa rindu ar tās SHA-256 pirkstu nospiedumu, RS un PS algoritmus, ar kuriem tā paraksta, kā arī RFC 7638 JWK pirkstu nospiedumu, ko izmantot kā atslēgas ID. Katrs pāris šim pieprasījumam tiek izveidots ar Node crypto moduli un nekad netiek saglabāts.
Bieži uzdotie jautājumi
Vai izvēlēties 2048 vai 3072 bitus?
2048 bitu RSA joprojām ir ierastais minimums, un to pieņem visur, tostarp JWT bibliotēkas, kas noraida īsākas atslēgas. 3072 biti atbilst 128 bitu drošības līmenim, ko NIST SP 800-57 iesaka pēc 2030, taču paraksti ir lielāki un parakstīšana lēnāka. Lielāki izmēri, piemēram, 4096 biti, nav pieejami, jo to ģenerēšanas laiks koplietotā serverī nav paredzams.
Kādus formātus izmanto rezultāts?
Privātā atslēga ir PEM kodēta PKCS #8 formātā (BEGIN PRIVATE KEY), bet publiskā atslēga — PEM kodētā SubjectPublicKeyInfo formātā (BEGIN PUBLIC KEY). Abas nolasa OpenSSL, Java, .NET, Go, Node, jose un vairums citu bibliotēku. OpenSSH publiskās atslēgas rinda tiek pievienota authorized_keys failiem.
Vai privātā atslēga ir šifrēta?
Nē, privātā atslēga tiek atgriezta bez paroles, lai to varētu uzreiz ielīmēt citos rīkos. Lai to aizsargātu glabāšanas laikā, palaidiet openssl pkey -in key.pem -aes256 -out key-encrypted.pem un glabājiet tikai šifrēto failu. Neiekļaujiet nešifrēto kopiju versiju vadībā.
Kā iegūt PKCS #1 formātu (BEGIN RSA PRIVATE KEY)?
Dažām vecākām programmām ir nepieciešama tradicionālā PKCS #1 forma. Ar OpenSSL 3 palaidiet openssl pkey -in key.pem -traditional -out key-rsa.pem, lai konvertētu PKCS #8 failu. Atslēgas materiāls nemainās, mainās tikai ietvars.
Vai varu izmantot atslēgu ar SSH?
Jā. Ievietojiet ssh-rsa rindu servera failā ~/.ssh/authorized_keys un saglabājiet privāto PEM kā identitātes failu ar atļaujām 600, jo OpenSSH nolasa PEM kodētas RSA atslēgas. Daudzi serveri tagad dod priekšroku Ed25519 atslēgām, kuras ģenerē Ed25519 atslēgu ģenerators.
Kas ir JWK pirkstu nospiedums?
Tas ir RFC 7638 SHA-256 jaucējkods no publiskās atslēgas obligātajiem JWK locekļiem, kas kodēts base64url formātā. Tas identificē atslēgu neatkarīgi no tās formāta, tāpēc ir piemērota kid vērtība JWT un JWKS dokumentiem. JWK pārveidotājs šai atslēgai parāda to pašu vērtību.
Kādus JWT algoritmus šī atslēga var izmantot parakstīšanai?
RSA atslēga var parakstīt ar RS256, RS384 un RS512 (PKCS #1 v1.5), kā arī PS256, PS384 un PS512 (RSA-PSS). Izmantojiet privāto PEM ar JWT ģeneratoru un verifikatoriem norādiet publisko PEM vai tā JWK. Algoritms ir paraksta īpašība, tāpēc vienu atslēgu var izmantot vairākiem algoritmiem.
Vai ģenerētā atslēga tiek kaut kur saglabāta?
Nē. Atslēgu pāris tiek izveidots atmiņā jūsu pieprasījumam, vienreiz atgriezts rezultātā un nekad netiek reģistrēts vai saglabāts. Ja to pazaudēsiet, ģenerējiet jaunu pāri, jo neviens nevarēs to atgūt jūsu vietā.
Ko dara komentāra opcija?
Komentārs tiek pievienots OpenSSH publiskās atslēgas rindai, parasti user@host vai kāda apzīmējuma, piemēram, deploy-2026, veidā, lai authorized_keys failā varētu atpazīt atslēgu. Tas nemaina atslēgu vai tās pirkstu nospiedumus. Komentāra garums ir ierobežots līdz 200 rakstzīmēm, un vairākas atstarpes tiek aizstātas ar vienu.
Cik nejaušas ir atslēgas?
Pirmskaitļi tiek iegūti no operētājsistēmas kriptogrāfiski drošā nejaušo skaitļu ģeneratora, izmantojot OpenSSL — no tā paša avota, ko serveri izmanto savām atslēgām. Katrs pieprasījums izveido jaunu, neatkarīgu atslēgu pāri. Publiskais eksponents vienmēr ir 65537 — standarta vērtība.