CommandDialog

Command dialog

Generatore di coppie di chiavi RSA

Genera coppie di chiavi RSA (formato PEM) con lunghezza della chiave fino a 4096 bit. Tutte le operazioni si eseguono nel tuo browser, la tua chiave privata non lascia mai il dispositivo.

Strumenti correlati

Scopri di più

Cos’è un Generatore di Coppie di Chiavi RSA?

Nell’attuale panorama digitale, la sicurezza dei dati e la protezione della privacy sono diventate priorità assolute sia per gli sviluppatori che per le organizzazioni. Che tu stia configurando l’accesso SSH, autenticandoti con GitHub o sviluppando software per comunicazioni cifrate, una coppia di chiavi RSA sicura e affidabile è un requisito fondamentale.

Il nostro Generatore di Coppie di Chiavi RSA è uno strumento che utilizza l’algoritmo RSA per generare una coppia di chiavi matematicamente correlate: una Chiave Pubblica e una Chiave Privata. È progettato per offrire un’esperienza di generazione RSA online veloce, gratuita e altamente sicura, supportando dimensioni di chiave di livello industriale di 1024, 2048 e fino a 4096 bit.

  • Chiave Pubblica: Può essere condivisa con chiunque e viene utilizzata per cifrare i dati o verificare firme digitali.
  • Chiave Privata: Deve essere mantenuta strettamente riservata e serve per decifrare i dati cifrati con la chiave pubblica o per creare firme digitali.

Questo meccanismo è noto come Crittografia Asimmetrica e costituisce la base dei moderni protocolli di sicurezza di Internet come HTTPS/TLS, SSL e SSH.

Come Funziona l’Algoritmo RSA

RSA si basa su un principio fondamentale della teoria dei numeri: moltiplicare due numeri primi molto grandi è computazionalmente facile, ma scomporre il loro prodotto nei numeri primi originali (il problema della fattorizzazione di interi grandi) è estremamente difficile con l’attuale potenza di calcolo. I passaggi fondamentali sono i seguenti:

1. Scelta dei Numeri Primi Base

Selezionare casualmente due numeri primi distinti e molto grandi, indicati come pp e qq.

2. Calcolo del Modulo e della Funzione Phi di Euler

  • Calcolare il modulo nn: La lunghezza binaria di nn determina la dimensione della chiave (ad esempio, 2048 bit). Il valore di nn è pubblico e si calcola come:

    n=p×qn = p \times q
  • Calcolare ϕ(n)\phi(n): Secondo la funzione phi di Eulero, quando nn è il prodotto di due numeri primi:

    ϕ(n)=(p1)(q1)\phi(n) = (p - 1)(q - 1)

3. Selezionare l’Esponente di Cifratura ee

Scegliere un intero ee tale che 1<e<ϕ(n)1 < e < \phi(n) e ee sia coprimo con ϕ(n)\phi(n). Nella pratica, per ottimizzare le prestazioni di cifratura, ee è comunemente impostato al valore fisso 6553765537.

4. Calcolare l’Esponente di Decifratura dd

Calcolare dd come l’inverso moltiplicativo modulare di ee, che soddisfi la seguente congruenza:

ed1(modϕ(n))e \cdot d \equiv 1 \pmod{\phi(n)}

Ciò significa che (ed1)(e \cdot d - 1) è divisibile per ϕ(n)\phi(n). Il valore dd è il componente centrale della chiave privata: solo chi possiede dd può decifrare i dati cifrati con ee. Pertanto, dd deve essere mantenuto strettamente riservato.

5. Formare la Coppia di Chiavi

A questo punto, tutti i parametri essenziali sono disponibili:

  • Chiave Pubblica: (n,e)(n, e)
  • Chiave Privata: (n,d)(n, d)

6. Formule di Cifratura e Decifratura

Una volta generata la coppia di chiavi, la trasmissione sicura dei dati segue queste regole:

  • Cifratura: Convertire il testo in chiaro MM nel testo cifrato CC:

    C=Me(modn)C = M^e \pmod n
  • Decifratura: Recuperare il testo in chiaro MM dal testo cifrato CC:

    M=Cd(modn)M = C^d \pmod n

Perché Utilizzare la Crittografia RSA?

  1. Elevata Sicurezza: Con una dimensione della chiave sufficientemente grande (si consigliano 2048 bit o più), RSA è considerato impossibile da violare in un lasso di tempo pratico, anche per i moderni supercomputer.
  2. Nessun Segreto Condiviso Richiesto: A differenza della crittografia simmetrica, RSA non richiede alle parti di scambiare in anticipo una chiave segreta, riducendo significativamente il rischio di furto della chiave.
  3. Autenticazione e Integrità: Il titolare della chiave privata può dimostrare la propria identità attraverso le firme digitali, che i destinatari possono verificare utilizzando la chiave pubblica per garantire che i dati non siano stati manomessi.

Perché Scegliere il Nostro Generatore RSA Online?

Quando si seleziona uno strumento online, la sicurezza è la preoccupazione principale. La nostra soluzione offre diversi vantaggi chiari:

Sicurezza e Privacy Prima di Tutto

La tua chiave privata non lascia mai il tuo dispositivo. Molti strumenti online generano le chiavi su un server, il che significa che l’operatore del server potrebbe potenzialmente accedere alla tua chiave privata. Al contrario, tutte le operazioni crittografiche nel nostro strumento vengono eseguite localmente nel tuo browser e non vengono mai caricate su alcun server, eliminando efficacemente il rischio di furto della chiave privata.

Opzioni Multiple per la Lunghezza della Chiave

  • 1024 bit: Adatto per sistemi legacy con requisiti di sicurezza bassi (non raccomandato per dati sensibili).
  • 2048 bit: Lo standard attuale del settore, bilancia una forte sicurezza con buone prestazioni.
  • 4096 bit: Cifratura estremamente forte, ideale per l’archiviazione a lungo termine o ambienti con requisiti di sicurezza rigorosi.

Output PEM Standard

Le chiavi generate sono conformi agli standard PKCS#1 o PKCS#8 e sono pienamente compatibili con OpenSSH, OpenSSL, Java, Python, Go e altri ambienti di sviluppo. Possono essere utilizzate direttamente come file .pem o .key.

Pronto all’Uso, Aggiornamento con un Clic

Una coppia di chiavi viene generata automaticamente non appena la pagina viene caricata. Se ne vuoi una nuova, è sufficiente fare clic sul pulsante “Aggiorna” per rigenerarla istantaneamente, senza alcuna configurazione necessaria.

Come Generare le Chiavi con Questo Strumento

Generare una coppia di chiavi richiede solo tre semplici passaggi:

  1. Seleziona la lunghezza della chiave: Scegli la dimensione desiderata dal menu a discesa (l’impostazione predefinita è 2048 bit).
  2. Visualizza i risultati: La pagina calcola e visualizza automaticamente la chiave privata e la chiave pubblica generate. Puoi anche fare clic su “Aggiorna” per generare una nuova coppia.
  3. Copia o scarica: Usa l’icona “Copia” o il pulsante “Scarica” per salvare le chiavi sulla tua macchina locale.

Consiglio di Sicurezza: Conserva sempre la tua chiave privata in modo sicuro. Non condividerla mai con nessuno e non caricarla su repository di codice pubblici come GitHub.

Best Practice: Crittografia Ibrida

Nelle applicazioni reali, RSA comporta una costosa elevazione a potenza di interi grandi e pertanto in genere non viene utilizzato per cifrare direttamente grandi quantità di dati. Invece, la miglior pratica del settore segue un approccio di crittografia ibrida:

  1. Cifratura simmetrica dei dati: Genera una chiave simmetrica casuale e utilizza un algoritmo simmetrico veloce (come AES) per cifrare grandi volumi di dati in chiaro.
  2. Cifratura della chiave simmetrica: Usa la chiave pubblica RSA del destinatario per cifrare la chiave simmetrica.
  3. Invio del payload: Trasmetti sia i dati cifrati che la chiave simmetrica cifrata con RSA insieme.
  4. Decifratura alla ricezione: Il destinatario prima decifra la chiave simmetrica usando la propria chiave privata RSA, quindi utilizza quella chiave per decifrare i dati.

Questo approccio combina l’elevata sicurezza di RSA con l’alta efficienza di AES.

Domande frequenti

Qual è la differenza tra chiavi a 2048 bit e a 4096 bit?

Una chiave a 4096 bit è più sicura di una a 2048 bit, ma le operazioni di crittografia e decrittografia sono più lente. Attualmente, le chiavi a 2048 bit sono considerate sufficientemente sicure per la maggior parte dei casi d’uso, a meno che tu non abbia requisiti di conformità o sicurezza particolarmente stringenti.

Oggi è possibile violare una chiave a 2048 bit?

Con l’attuale potenza di calcolo classica, una chiave RSA a 2048 bit è considerata estremamente sicura. La sua violazione richiederebbe un tempo di elaborazione astronomicamente lungo.

Perché qui la generazione online di una chiave privata è considerata sicura?

In genere si sconsiglia di generare chiavi online, ma il nostro strumento utilizza l’API Web Crypto per eseguire tutte le operazioni localmente nel tuo browser. Nessun dato viene inviato al server, offrendo una sicurezza equivalente a quella dell’esecuzione di comandi in un terminale locale.

Posso usare le chiavi generate per l’accesso SSH?

Sì. Aggiungi semplicemente la chiave pubblica al file ~/.ssh/authorized_keys del server e conserva la chiave privata in modo sicuro sulla tua macchina locale.

Cosa significa il formato PEM generato?

PEM (Privacy Enhanced Mail) è un formato testuale che codifica i dati binari della chiave in Base64, rendendoli facili da visualizzare, copiare e gestire con comuni editor di testo.

E se perdessi la mia chiave privata?

Una chiave privata persa non può essere recuperata. A causa della natura unidirezionale di RSA, è impossibile ricavare la chiave privata a partire da quella pubblica. Devi generare una nuova coppia di chiavi e sostituire la chiave pubblica associata.

Perché la mia chiave privata è molto più lunga di quella pubblica?

La chiave privata contiene il modulo n, l’esponente pubblico e, l’esponente privato d e ulteriori parametri come p e q, utilizzati per accelerare i calcoli. La chiave pubblica include tipicamente solo n ed e, ed è quindi molto più breve.

Posso generare le chiavi direttamente dalla riga di comando?

Sì. Puoi eseguire localmente il comando “openssl genrsa -out private.pem 2048”. Questo strumento offre un livello di sicurezza equivalente con maggiore comodità.