Home Crittografia Firewall Access

Pgp

………  

Il Pretty Good Privacy (PGP) di Phil Zimmerman è il programma di crittografia per eccellenza.

Lo scopo principale di PGP é quello di permettere la trasmissione cifrata di messaggi di posta elettronica fra utenti diversi attraverso Internet.In realtá le operazioni possibili sono molteplici.

Il PGP utilizza due algoritmi di crittografia :

il sistema a chiavi pubbliche RSA e quello a chiavi private IDEA.

Il suo funzionamento é molto semplice:

ammettiamo che l'utente A voglia spedire all'utente B un messaggio. PGP cifra tale messaggio utilizzando l'IDEA e una chiave K generata casualmente. Occorrerà spedire all'utente B la chiave K da utilizzare per decifrare il messaggio (ricordiamo che l'IDEA é un algoritmo che utilizza la stessa chiave per cifrare e decifrare il messaggio).

Il PGP risolve brillantemente il problema utilizzando l'RSA.

L'utente A, infatti, inserisce la chiave K nel messaggio cifrandola con la chiave Pubblica di B. In questo modo solo B può, con la propria chiave Privata, recuperare la chiave K ed usarla per leggere il resto del messaggio crittato con l'IDEA.

In teoria, si sarebbe potuto utilizzare direttamente l'RSA per cifrare l'intero messaggio. In pratica peró, poiché la complessitá dell'RSA é troppo elevata per permetterne un uso intenso (i file da cifrare potrebbero essere molto lunghi), soprattutto se messo in relazione con l'IDEA. Il sistema di cifratura IDEA-RSA di PGP é riassunto dal seguente schema :

Schema di cifratura di PGP

L'RSA, per come é stato definito, permette un'altra importante operazione : l'autenticazione di un messaggio. Se il messaggio viene cifrato utilizzando la chiave privata S invece della chiave pubblica P, si ottiene un messaggio crittato che può essere decrittato utilizzando soltanto la chiave pubblica P.

Ma allora, se solo chi é in possesso di S può aver cifrato il messaggio, possiamo star tranquilli che il messaggio é "autentico". E' come se l'autore del messaggio, cifrandolo con S, lo avesse firmato.

PGP prevede comunque la creazione di archivi pubblici elettronici che contengano le chiavi pubbliche dei vari utenti. E' importante che si dia la massima diffusione alla propria chiave pubblica perché ciò evita che l'analista C possa frapporsi tra A e B spedendo ad entrambi la propria chiave pubblica facendo credere loro che si tratti invece della chiave pubblica di A o di B. In questo modo C sarebbe in grado di intercettare e leggere ogni messaggio spedito da A a B e viceversa.