Telemat Lab's home page


Copyright © 1986 Università di Firenze.All rights reserved.

Free license available.

MIDDLE

di Cecconi Alessia e Gallileo Giovanni

revisori: Franco Pirri e Maurizio Lunghi


PGP: generalità

home pageIndicePrec.Succ.

GENERALITÀ

Funzionamento
Installazione
Status e Versioni

Indice PGP


PGP: funzionamento

FUNZIONAMENTO

La principale caratteristica di PGP risiede nell'utilizzo combinato di un algoritmo simmetrico e di uno asimmetrico.
Abbiamo già detto nei capitoli precedenti che il vantaggio della crittografia convenzionale (a chiave segreta) rispetto a quella a chiave pubblica consiste nel guadagno in termini di tempo di elaborazione, viceversa la crittografia asimmetrica è svincolata dalla necessità di avere a disposizione un canale sicuro per lo scambio della chiave (in quanto la chiave pubblica può essere distribuita in modo capillare attraverso una rete di comunicazione).
Inoltre la crittografia a chiave pubblica permette di firmare un messaggio (con un utilizzo inverso delle due chiavi) per impedire la sua falsificazione e garantire l'autenticazione del mittente.
Ecco dunque come opera PGP: la cifratura del messaggio (che può essere a volte molto lungo) è effettuata usando un metodo convenzionale e veloce di alta qualità ( IDEA ), con una chiave temporanea generata in maniera assolutamente casuale; la chiave pubblica ( RSA ) del destinatario viene usata quindi per cifrare la chiave temporanea.
Il testo cifrato e la chiave cifrata vengono successivamente inviati al destinatario, il quale usa la propria chiave segreta per recuperare la chiave temporanea e utilizza quest'ultima per decifrare il messaggio originale sfruttando lo stesso algoritmo a chiave simmetrica adoperato dal mittente.

Le chiavi pubbliche sono conservate in certificati di chiave che comprendono l'ID del proprietario (ovvero il suo nome) , il momento (tempo) in cui la chiave è stata generata, e la chiave stessa. I certificati pubblici contengono le chiavi pubbliche, mentre i certificati segreti contengono le chiavi segrete. Ogni chiave segreta è anche cifrata con la propria frase chiave, nel caso venisse rubata.

Un file di chiavi, o "portachiavi" contiene uno o più di questi certificati: il portachiavi pubblico contiene certificati pubblici, mentre il portachiavi segreto contiene certificati segreti.
Le chiavi sono anche indicate nel loro portachiavi con il loro "id-di-chiave" che è una abbreviazione della chiave pubblica (i 64 bits meno significativi). Quando questo id-di-chiave è mostrato, per ulteriore semplicità si usano solo gli ultimi 32 bits. Mentre molte chiavi possono avere lo stesso ID (nome del proprietario), a tutti i fini pratici non ci sono due chiavi con lo stesso id-di-chiave.
PGP usa una selezione del messaggio ("
message digest_MD5") per creare le firme. Essa è una funzione del messaggio formata da 128 bits. È qualcosa di simile ad un checksum o al codice di controllo per gli errori di CRC. In essa PGP "rappresenta il messaggio" e serve per controllare se sono avvenuti cambiamenti. A differenza del CRC, però, non è pensabile che un estraneo riesca a sostituire il messaggio con un altro che produca la stessa selezione.

La selezione del messaggio viene cifrata con la chiave segreta per formare la firma. I documenti sono firmati facendoli precedere dai certificati di firma, che contengono l'id-di-chiave della chiave usata per produrli, una selezione del messaggio firmata con la chiave segreta e il tempo in cui la firma è stata fatta. L' id-di-chiave viene usato dal destinatario per trovare la chiave pubblica del mittente e controllare la firma; il suo software trova automaticamente la chiave pubblica e l' id-di-chiave nel portachiavi pubblico.



I file cifrati sono preceduti dall' id-di-chiave della chiave pubblica usata per cifrarli. Il destinatario usa questo id-di-chiave per trovare la chiave segreta richiesta per decifrare il messaggio; il suo software lo trova automaticamente nel suo portachiavi segreto.
Questi due tipi di portachiavi sono i due metodi principali di conservazione e gestione delle chiavi pubbliche e private. Invece di tenere le singole chiavi in files separati, esse sono raccolte in portachiavi per facilitarne la ricerca automatica per id-di-chiave o ID.
Ogni utilizzatore possiede la sua coppia di portachiavi. Una singola chiave pubblica è tenuta in un file separato il tempo necessario per inviarla ad un corrispondente che la
aggiungerà al suo portachiavi.

Indice PGP


PGP: installazione

INSTALLAZIONE

Ci riferiremo per comodità all'ambiente DOS; tutto ciò che si dirà potrà comunque essere applicato su altri sistemi.
Il pacchetto PGP rilasciato per il DOS è compresso in un file archivio del tipo PGPxx.zip (dove "xx" sta per il numero della
versione). L'archivio può essere decompresso utilizzando il comunissimo PKUNZIP (comando UNZIP per UNIX) dopo di che sarà opportuno leggere il file README.DOC che contiene ragguagli riguardo a quella particolare versione.
I passi da seguire per l'installazione dovrebbero essere i seguenti:

Una volta installato il programma, si usa tramite comandi dal prompt del DOS; per esempio il primo comando da dare è:
PGP -kg
con cui è generata una coppia di chiavi univoca.
In un generico comando, alla parola " PGP " possono seguire, in vario ordine:

I comandi disponibili si suddividono in diverse categorie: comandi per la creazione di messaggi, comandi per la gestione delle chiavi, comandi di decodifica, ecc.
L'installazione in ambiente UNIX o VAX/VMS è generalmente simile a quella in ambiente MS-DOS, ma non è esclusa la possibilità di dover prima compilare il codice sorgente.

Indice PGP


PGP: Status e versioni

STATUS E VERSIONI

Dopo la prima stesura del programma ad opera di Philip Zimmermann negli Stati Uniti, altre persone hanno lavorato sulle versioni successive per meglio adattarle a esigenze diverse.
Il programma è freeware, quindi può essere copiato e usato senza dover pagare nulla, eccetto se si vuole adoperarlo per scopi commerciali. È inoltre un programma aperto, nel senso che i sorgenti, scritti in "C", sono di dominio pubblico.
Il PGP è disponibile per MS-DOS (gira anche sotto WINDOWS 3.1 e WINDOWS 95), OS/2, MAC, ATARI, AMIGA e mediante compilazione dei relativi sorgenti anche per UNIX e VMS (clicca quì per maggiori informazioni).
Le versioni per piattaforme diverse sono tutte compatibili tra di loro: un file codificato, ad esempio, con PGP per DOS può essere decodificato con PGP per UNIX e viceversa.

PGP esiste in numerose versioni differenti, le più popolari disponibili al giorno d'oggi sono:

Indice PGP

Bibliografia e sorgenti d'informazione


Telemat Lab's home page
home pageIndicePrec.Succ.


Explore the TELEMAT Site !!!

Ultimo aggiornamento: 24/1/97