TPSIT: RSA crittografia chiave asimmetrica

Monet

La chiave pubblica è composta da due numeri (pub,n)--> CONOSCIUTA DA TUTTI

La chiave privata da altri due numeri (pri,n)--> MANTENUTA SEGRETA

Dato m un carattere trasformato in decimale lo codifico mediante la seguente operazione:

c=m^{pub} mod(n)

con mod() la funzione che calcola il resto della divisione.

per decodificarlo uso:

m=c^{pri}mod(n)

pri e pub devono sottostare alle seguenti due regole:

n=a \cdot b

z=(a-1) \cdot (b-1)

pri non deve avere fattori in comune con z

pub deve soddisfare alla seguente relazione

(pub \cdot pri)mod(z)=1

Ad esempio:

si scelgano

a=17

b=5

si ottiene:

n=85 e z=64

si prenda ad esempio pri=5 e non ha fattori in comune con il 64 e poi risolvendo l'equazione:

(pub \cdot 5)mod(64)=1

si ottiene pub=13.

chiave pubblica (13,85) e chiave privata(5,85)

Applicata al seguente esempio:

Testo m m^{13} m^{13}mod(85)
E 5 1220703125 20
U 19 42052983462257059 49
R 16 4503599627370496 16
O 13 302875106592253 13
P 14 793714773254144 39
A 1 1 1

Si è spedito il messaggio: 20, 49, 16, 13, 39, 1

Adesso solo chi possiede la chiave privata può decodificare il messaggio:

Testo c c^{5} c^{5}mod(85) in chiaro
20 3200000 5 E
49 282475249 19 U
16 1048576 16 R
13 371293 13 O
39 90224199 14 P
1 1 1 A

Info su Francesco Bragadin

Insegno informatica e telecomunicazioni al liceo scienze applicate ed all'indirizzo informatica e telecomunicazioni. Ho terminato gli studi in ingegneria elettronica e telecomunicazioni lavorando per molti anni come libero professionista nell'ambito della gestione storage e disaster recovery su mainframe.
Questa voce è stata pubblicata in Senza categoria. Contrassegna il permalink.

2 risposte a TPSIT: RSA crittografia chiave asimmetrica

  1. Studente scrive:

    Non ho capito come viene scelto pri, ho capito che non deve avere fattori in comue con z pertanto se non sbaglio deve essere un primo e allo stesso tempo non deve essere un divisore di z.
    Nell'esempio z = 64 e a pri viene assegnato il valore 5 che soddisfa questi requisiti, ma volendo si potrebbe usare anche 7,11,13,17,19,23,29,31,37,41,43,47,53, 59,61.
    Ho capito bene?

    • Francesco Bragadin scrive:

      Per fare maggiore chiarezza a e b devono essere primi mentre "pri" non deve necessariamente essere primo ma soltanto non deve essere un divisore di z. Certo anche altri numeri si sarebbero potute scegliere.

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *