|
Sommario | Attacco | Crittologia | GnuPG/PGP | Programmazione | Sicurezza | Modifiche |
| Sommario / Crittologia / Crittografia / Algoritmi crittografici / | ||
Principi matematici Matematica di base |
Dopo una breve introduzione ai crittosistemi asimmetrici, passiamo a vedere in modo particolareggiato uno degli algoritmi asimmetrici più conosciuti ed utilizzati: l'algoritmo RSA. Il nome dell’algoritmo deriva dalla prima lettera dei cognomi di coloro che lo inventarono nell’Aprile del 1977: Ronald L. Rivest, Adi Shamir e Leonard M. Adleman. I campi di impiego dell'algoritmo sono diversi e variano passando dall'uso all'interno di programmi fino ad arrivare a costituire l'elemento portante di vere e proprie tecnologie di rete. Fra le varie applicazioni possiamo sicuramente ricordare:
Analisi dell'algoritmo In linea di principio, l'analisi dell'algoritmo potrebbe essere facilmente suddivisa in due parti: la generazione della coppia di chiavi e l'utilizzo delle stesse. La prima parte, la generazione della coppia di chiavi, viene solitamente effettuata in questo modo:
Sicuramente vi starete chiedendo su cosa viene basata l'inviolabilità dell'algoritmo. La risposta è molto semplice e coinvolge l'impiego di diversi principi matematici. Una volta generata la coppia di chiavi, vediamo insieme le operazioni effettuabili, immaginando di avere due utenti, l'Utente A e l'Utente B, entrambi con la propria coppia di chiavi, pubblica e privata, più la chiave pubblica della controparte: Cifratura L'Utente A deve inviare del materiale cifrato all'Utente B. Per fare questo utilizzerà la chiave pubblica dell'Utente B effettuando queste operazioni: Decifratura Ricevuto i dati cifrati, l'Utente B utilizzerà la sua chiave privata per eseguire l'operazione opposta di decifratura. Firma L'operazione di firma prevede l'utilizzo della chiave privata dell'Utente A sui dati, come riportato di seguito: Verifica Per verificare i dati ricevuti, l'Utente B utilizzerà la chiave pubblica dell'utente A:
Velocità dell'algoritmo Si stima che il rapporto tra la velocità di un cifrario simmetrico e quella di un cifrario asimmetrico sia indicativamente un millesimo nelle realizzazioni hardware e un centesimo in quelle software. A titolo puramente indicativo, ecco quanto riportato sulla rivista Byte Italia del Maggio 1998. La tabella si riferisce ai tempi in secondi necessari all'elaborazione di un messaggio di un singolo carattere su un sistema Pentium 133.
Riferimenti
|
|
Copyright © 1998 - 2009 Antonio Magrì - Tutti i diritti riservati. Contatto. |