Generatore di coppie di chiavi RSA

Dimensione chiave (bit)
Avanti

Una coppia di chiavi RSA è composta da due numeri matematicamente collegati: una chiave pubblica che distribuisci e una chiave privata che proteggi. Questo generatore produce entrambe in codifica PEM standard, utilizzando una sorgente casuale crittograficamente sicura. Usalo per avviare un firmatario JWT, generare un certificato TLS per un ambiente di staging o emettere un’identità SSH senza dover accedere alla riga di comando.

Come generare una coppia di chiavi RSA

  1. 1

    Scegli la dimensione della chiave

    Scegli 2048, 3072 o 4096 bit. Chiavi più lunghe sono più forti ma più lente da firmare e verificare.

  2. 2

    Genera

    Lo strumento crea un nuovo modulo e un esponente privato utilizzando le primitive WebCrypto.

  3. 3

    Copia o scarica

    Prendi la chiave privata codificata in PEM (BEGIN PRIVATE KEY) e la chiave pubblica corrispondente (BEGIN PUBLIC KEY).

  4. 4

    Conserva la chiave privata in modo sicuro

    Spostala in un gestore di segreti o in un portachiavi, non incollarla mai in chat, email o in un repository pubblico.

Quale dimensione della chiave dovresti usare?

Più grande non è automaticamente meglio. La dimensione giusta dipende da quanto a lungo la chiave vivrà e da quanta CPU sei disposto a spendere per ogni firma.

Linee guida NIST a colpo d’occhio

Dimensione chiave Livello di sicurezza Uso tipico Costo di firma relativo
2048-bit ~112 bit Firma JWT, certificati TLS a breve termine, la maggior parte delle API 1x
3072-bit ~128 bit CAs radice a lungo termine, conformità a FIPS > 2030 ~3x
4096-bit ~140 bit Radici ad alta garanzia, firma di documenti a lungo termine ~7x

Dove si inserisce PEM

Le chiavi sono avvolte con PKCS#8 / SPKI e codificate in base64 tra i marcatori -----BEGIN----- e -----END-----. Questo è il formato che ogni libreria mainstream si aspetta: OpenSSL, crypto di Node, cryptography di Python, crypto/rsa di Go, KeyFactory di Java.

Suggerimenti operativi

  • Ruota almeno annualmente per le chiavi di firma con ampia portata.
  • Preferisci ECDSA (P-256) o Ed25519 per i nuovi sistemi, sono più veloci e le firme sono molto più piccole.
  • Non riutilizzare una coppia di chiavi tra sistemi non correlati. Se una viene compromessa, tutto ciò che ne deriva è a rischio.
  • Usa una passphrase quando memorizzi la chiave privata su disco. PEM crittografato (BEGIN ENCRYPTED PRIVATE KEY) è lo standard.

Domande frequenti

Sì, per la maggior parte delle firme API e di sessione. NIST e BSI considerano ancora accettabile RSA a 2048 bit fino almeno al 2030, anche se si raccomanda 3072 bit per qualsiasi cosa che deve sopravvivere più a lungo.

La chiave privata PEM funziona con ssh-keygen -y -f key.pem per derivare la linea pubblica ssh-rsa. Per l’SSH quotidiano, preferisci Ed25519, le chiavi sono piccole e più veloci.

Il primo è PKCS#1 (solo RSA). Il secondo è PKCS#8 (wrapper indipendente dall’algoritmo) ed è ciò che le librerie moderne preferiscono. Questo strumento produce PKCS#8.

No, non lo fa. La generazione della chiave avviene tramite l’API WebCrypto localmente, e il PEM viene assemblato in memoria prima di essere visualizzato nella pagina.

Strumenti correlati

Strumento disponibile in altre lingue