RSA nyckelpargenerator

Nyckelstorlek (bitar)
Nästa

Ett RSA-nyckelpar består av två matematiskt kopplade värden: en offentlig nyckel som du delar ut och en privat nyckel som du förvarar. Denna generator genererar båda i standard PEM-kodning med hjälp av en kryptografiskt säker slumpmässig källa. Använd den för att starta en JWT-signatör, generera ett TLS-certifikat för en stagingbox eller utfärda en SSH-identitet utan att behöva använda kommandoraden.

Sätt att generera ett RSA-nyckelpar

  1. 1

    Välj nyckelstorlek

    Välj 2048, 3072 eller 4096 bitar. längre nycklar är starkare, men tar längre tid att underteckna och verifiera.

  2. 2

    Generera

    Verktyget skapar en ny modul och en privat exponent med hjälp av WebCrypto-primitiver.

  3. 3

    Kopiera eller ladda ner

    Hämta den PEM-kodade privata nyckeln (BEGIN PRIVATE KEY) och den motsvarande offentliga nyckeln (BEGIN PUBLIC KEY).

  4. 4

    Lagra den privata nyckeln säkert

    Flytta den till en hemlighetshanterare eller nyckelring; klistra aldrig in den i ett chattmeddelande, e-post eller ett offentligt repository.

Vilken nyckelstorlek bör du använda?

Större är inte automatiskt bättre. Den rätta storleken beror på hur länge nyckeln kommer att användas och hur mycket CPU-resurser du är villig att använda för varje signatur.

NIST:s riktlinjer i korthet

Nyckelstorlek Säkerhetsnivå Typisk användning Relativ signaturkostnad
2048 bit ~112 bit JWT-signering, kortlivade TLS-certifikat, de flesta API:er 1x
3072 bit ~128 bit Långlivade rot-CA:er, efterlevnad av FIPS > 2030 ~3x
4096 bit ~140 bit Högsäkra rötter, långsiktig dokumentsignering ~7x

Hur PEM passar in

Nycklarna är paketerade med PKCS#8/SPKI och kodade i base64 mellan markörerna -----BEGIN----- och -----END-----. Det är det format som alla vanliga bibliotek förväntar sig: OpenSSL, Node.js crypto, Pythons cryptography, Go:s crypto/rsa samt Javas KeyFactory.

Operativa tips

  • Rotera minst en gång per år för signaturnycklar med brett användningsområde.
  • Välj ECDSA (P-256) eller Ed25519 för nya system; de är snabbare och signaturerna är mycket mindre.
  • Återanvänd aldrig samma nyckelpar i orelaterade system. Om en nyckel läcker äventyras allt som är beroende av den.
  • Använd en lösenordsfras när du lagrar den privata nyckeln på disk. Krypterad PEM (BEGIN ENCRYPTED PRIVATE KEY) är standarden.

Vanliga frågor

Ja, för de flesta API:er och sessionssignering. NIST och BSI anser fortfarande att 2048-bitars RSA är acceptabel fram till minst 2030, men 3072-bitars RSA rekommenderas för situationer där säkerheten måste upprätthållas under längre tid.

PEM:s privata nyckel används tillsammans med ssh-keygen -y -f key.pem för att generera den offentliga nyckeln ssh-rsa. För daglig SSH-användning rekommenderas Ed25519 – nycklarna är små och snabbare.

Den första är PKCS#1 (endast för RSA). Den andra är PKCS#8 (en algoritmaoberoende omslutningsmetod) och är det som moderna bibliotek föredrar. Detta verktyg genererar data i PKCS#8-format.

Det sker inte. Nyckelgenerering utförs lokalt via WebCrypto API, och PEM-filen sätts ihop i minnet innan den visas på sidan.

Relaterade verktyg

Verktyget finns på andra språk