Perché utilizzare qualcosa di diverso da RSA per la crittografia della trasmissione?

0

Essendo abbastanza nuovo per lo spazio di crittografia e sicurezza dei dati, ho campionato alcuni siti / libri di testo "Introduzione alla crittografia" e sembrano tutti iniziare nello stesso modo generale:

  • Questo è un Caesar Cipher
  • Questa è Analisi di Frequenza
  • Questa è la crittografia di cifratura
  • ...
  • Questo è DES, 3DES, ...
  • Questa è RSA. Oh, a proposito, a tutti gli effetti, è unbreakable .

Capisco il valore educativo di spiegare cifrari e cifre meno recenti, ma in realtà, se ho bisogno di comunicazioni digitali sicure su un canale non sicuro, perché dovrei mai usare qualcosa di diverso da RSA?

    
posta Ephemera 12.02.2015 - 08:49
fonte

2 risposte

2

RSA (e altri crittosistemi a chiave pubblica) è estremamente costoso dal punto di vista computazionale e non è pratico utilizzarlo per crittografare un'intera transazione. Pertanto, la crittografia a chiave pubblica viene generalmente utilizzata solo per concordare una chiave di crittografia simmetrica, che viene quindi utilizzata per crittografare il resto della transazione utilizzando un algoritmo simmetrico come AES o 3DES.

Vedi la risposta accettata a questa domanda per maggiori dettagli.

    
risposta data 12.02.2015 - 09:04
fonte
2

Oltre al punto di Mike sulla crittografia simmetrica, RSA non è nemmeno l'unico schema asimmetrico usato, e sembra che l'uso di esso sia in realtà in calo, perché non puoi usarlo con curve ellittiche come te possono molti altri schemi. Quando la gente dice "la crittografia asimmetrica è lenta", una delle ragioni principali è la dimensione delle chiavi. La tua domanda si collega a una discussione sulla sicurezza delle chiavi a 256 bit, ma quella discussione è simmetrica a 256 bit; una chiave RSA a 256 bit è estremamente debole e per ottenere l'equivalente delle chiavi simmetriche a 128 bit sono necessarie le chiavi RSA a 3072 bit; l'equivalente delle chiavi simmetriche a 256 bit è di circa 15.200 bit di chiave RSA (queste sono stime, ma sono abbastanza standard).

Con altri schemi asimmetrici (come Diffie-Hellman e DSA), c'è un'alternativa a lavorare negli interi modulo n : puoi usare una curva ellittica, che si ritiene fornisca sicurezza a 128-bit con un 256-bit curva. Ciò significa che DH e DSA vengono spesso utilizzati laddove le prestazioni sono più importanti, poiché ECDH e ECDSA sono più veloci di RSA allo stesso livello di sicurezza. Inoltre, si desidera spesso inoltrare la segretezza nelle comunicazioni, il che significa che se rubo la tua chiave privata in futuro non posso usarla per leggere i messaggi che Mike ti ha inviato. Per ottenere questo risultato è necessario creare una nuova coppia di chiavi per ogni comunicazione e firmarla con la tua vera chiave privata. La creazione di una coppia di chiavi RSA strong richiede molto tempo; la creazione di una coppia di chiavi UE è più economica. DH è anche più tradizionale per questo tipo di accordo chiave. Quindi, DH o ECDH viene in genere utilizzato per la segretezza inoltrata, e in effetti sono tutte offerte TLS per questo.

    
risposta data 12.02.2015 - 09:33
fonte

Leggi altre domande sui tag