Algoritmo RSA con numeri molto piccoli

Vediamo passo passo l'algoritmo RSA con numeri molto piccoli in modo da poterli eseguire facilmente con l'aiuto di un computer. Supponiamo che il destinatario B scelga come numeri primi: p = 29 e q = 41. Calcola il loro prodotto:

n = pq = 29 ⋅ 41 = 1189

e la funzione di Eulero:

φ(n)=(p-1)(q-1) = 28 ⋅ 40 = 1120

Ora sceglie due numeri k e l in modo che:

kl mod φ(1120) = 1

Per k = 19 si ha l = 59 infatti:

19 ⋅ 59 = 1121; 1121 mod φ(1120) = 1

I numeri 1189 e 19 rappresentano la chiave pubblica e vengono resi noti a tutti, mentre numeri i 29, 41 e 59 rappresentano la chiave segreta e vengono tenuti nascosti in cassaforte.

Supponiamo che il mittente A voglia inviare un messaggio segreto al destinatario B. Trasforma il messaggio in chiaro da inviare in un numero utilizzando il codice ASCII. Supponiamo che il messaggio in chiaro sia stato tradotto nel numero m = 1024. Utilizza la chiave pubblica e calcola al computer

102419 mod 1189 = 614

614 rappresenta il messaggio cifrato che il mittente A invia al destinatario B. Quest'ultimo utilizza la sua chiave privata e calcola:

61459 mod 1189 = 1024

Utilizza poi il codice ASCII e trasforma il numero 1024 nel messaggio in chiaro.

© giuseppe sarnataro