La Crittografia RSA

La crittografia è alla base della  sicurezza in uno scambio di informazioni. L’evoluzione dei metodi applicati alle tecnologie delle comunicazioni risponde alla necessità della nostra epoca di sicurezza del dato informatico, da garantire almeno per un certo intervallo temporale. I più robusti algoritmi impiegati attualmente richiedono tempi dell’ordine dei secoli per la decifrazione.

Si individuano due categorie di algoritmi, a seconda del tipo di chiave usata. Nella crittografia a chiave segreta o crittografia simmetrica, esiste una sola chiave, usata per criptare e decriptare. La chiave deve essere in possesso di ogni interlocutore, generando un problema di comunicazione di chiave. Tuttavia l’algoritmo è rapido. Nella crittografia a chiave pubblica o crittografia asimmetrica, esistono due chiavi, una pubblica per criptare e una privata per decriptare. Le chiavi comunicate sono sempre solo quelle pubbliche, che servono solo per la cifratura. La chiave privata non viene mai comunicata, il ricevente del messaggio è l’unico ad esserne in possesso. Il metodo è particolarmente adatto a piccole quantità di dati, a causa della  lentezza della  computazione.

Per illustrare alcuni aspetti caratteristici della crittografia,  si  introduce brevemente il sistema di crittografia asimmetrica RSA. Il nome dell’algoritmo si riferisce alle iniziali degli informatici R. Rivest, A. Shamir e del matematico L. Adleman del MIT, che lo hanno ideato e descritto nel 1977.

Il sistema si basa sul problema della fattorizzazione in numeri primi (i numeri naturali divisibili solo per 1 e per se stessi).

Come primo passo della generazione delle chiavi, vengono generati due numeri primi P1 e P2 grandi. Per una cifratura affidabile (ovvero per implicare  tempi di decifrazione  sufficientemente lunghi), sono necessari numeri a 1024 o 2048 bit. Per illustrare semplicemente il calcolo, si scelgono due numeri primi piccoli.  P1=13 e P2=7

Dal loro prodotto si ottiene un terzo numero N. N =  P1 * P2. Nel nostro esempio N=13 * 7=91. La difficoltà dell’operazione inversa, cioè l’individuazione dei due fattori primi, conoscendo N, è alla base della crittografia RSA.

Su N si calcola una particolare funzione φ di Eulero, che conta, tra 1 e N, i numeri coprimi con N, ovvero i numeri che non hanno divisori in comune con N diversi da 1. Si può dimostrare che vale:

φ(N) = (P1  – 1) * (P2 – 1)

Nel nostro caso φ(N)=12 * 6=72

La chiave pubblica  Ke è scelta nell’intervallo tra 3 e φ(N), come numero primo, e coprimo con φ(N). Ad esempio  Ke=5.

La relazione che permette di ottenere la chiave privata Kd è:  (Ke * Kd) mod φ(N) = 1,  notazione che indica che 1 deve essere il resto della divisione tra il prodotto delle chiavi (Ke * Kd) e φ(N). Nel nostro esempio, Kd=29 (29 * 5=145 e il resto della divisione di 145 con 72 è 1). Questa relazione garantisce che la chiave privata non sia facilmente deducibile da quella pubblica, nota a tutti.

La funzione RSA  f, sfrutta le chiavi per criptare e decriptare il messaggio m tradotto in formato numerico.

messaggio -> cifratura: c = mKe mod N es. m=10 -> c=105 mod 91 =82

cifratura  -> messaggio: m= cKd mod N es. c=82 -> m= 8229 mod 91 = 10

RSA è  un algoritmo relativamente lento, e per questo viene raramente usato per cifrare i dati dell’utente. Più spesso l’RSA si usa per la comunicazione di chiavi cifrate condivise per la crittografia a chiave simmetrica, che a sua volta può effettuare operazioni di cifratura-decifratura più velocemente. 

Altri articoli dell'autore

Advertisment

Puoi leggere anche...

567FansLike
1,441FollowersFollow

Ultime notizie

Agroalimentare e la sua filiera

I lettori di Sentieri Digitali hanno avuto modo di comprendere l’impegno costante per un settore così strategico del nostro Paese e dell’Europa. Nell’ambito della...

L’acqua

L’acqua vuol dire vita e quindi è un bene primario. Senza fare polemiche è ben rappresentare che la rete idrica del nostro paese a dir...

Comunità Energetica

Il Clean Energy for Europe Package è basato su una proposta della Commissione Europea del Novembre 2016 e definisce gli obiettivi e la strategia...

Vuoi avere le notizie aggiornate ogni mercoledi?

Iscriviti alla newsletter

LinkedIn
LinkedIn
Share