Guida Introduttiva
al Programma di Crittografia a Chiave Pubblica
PGP (Pretty Good Privacy)

di Giorgio Chinnici [Nimrod]
Versione 1.4.1 - Ottobre 1996


-----BEGIN PGP SIGNED MESSAGE-----

===================================================================
Guida Introduttiva
al Programma di Crittografia a Chiave Pubblica
PGP (Pretty Good Privacy)

di Giorgio Chinnici [Nimrod]
Versione 1.4.1 - Ottobre 1996

Pagina WWW italiana dedicata a PGP:
Nimrod/PGP
http://www.serve.com/nimrod/pgp.html

>>> Questo testo puo' essere liberamente diffuso e riprodotto <<<
>>> con qualunque mezzo, purche' nella sua interezza <<<
===================================================================

"Well! I've often seen a cat without a grin," thought Alice;
"but a grin without a cat! It's the most curious thing I ever
saw in all my life!"
(Lewis Carroll - Alice's Adventures in Wonderland)

***

Indice

0. Scopo della Presente Guida
1. Perche' la Crittografia
2. La Crittografia a Chiave Pubblica
3. Status e Versioni
4. Dove Reperirlo
5. Come si Usa
5.1 Installazione e Generalita'
5.2 Generazione della Coppia di Chiavi
5.3 Gestione delle Chiavi
5.4 Codifica e Firma
5.5 Decodifica e Verifica della Firma
5.6 Il File di Configurazione config.txt
5.7 Codifica e Decodifica Convenzionale
6. I Keyservers
7. Considerazioni sulla Sicurezza
7.1 La Sicurezza delle Chiavi Pubbliche
7.2 Norme di Sicurezza per le Chiavi Pubbliche
7.3 Altre Importanti Norme di Sicurezza
8. Come Opera
9. Shell Windows per PGP
10. Risorse e documentazione
11. Problemi Vari
11.1 Editor con "Word Wrap"
11.2 PC con Piu' Dischi Fissi

***

=== 0. Scopo della Presente Guida ===

Ho voluto semplicemente scrivere, come dice il titolo, una
introduzione al PGP.
I criteri che ho seguito sono:
* spiegare rapidamente e chiaramente di che cosa si tratta;
* mettere il lettore in grado di cominciare ad usare il PGP;
* fornire alcune utili informazioni.

La presente Guida quindi non ha pretese di completezza,
ma contiene l'essenziale; non vuole sostituire alcun manuale
o documento esistente sul PGP, ne' rappresentare una guida
di riferimento.
Questa Guida contiene solo delle informazioni di pubblico dominio:
pertanto, come e' consuetudine, si declina ogni responsabilita'
per l'uso che ne verra' fatto.


=== 1. Perche' la Crittografia ===

PGP (Pretty Good Privacy) e' un programma di crittografia a
chiave pubblica, che e' diventato lo standard de facto per
l'utilizzo della crittografia nella posta elettronica.
Con PGP e' possibile codificare un messaggio in modo che
solo il destinatario possa leggerlo, e non una terza persona.
Inoltre, e' possibile autenticare il mittente ed il messaggio.
Questo risponde alla esigenza fondamentale di riservatezza
e sicurezza della corrispondenza privata.
La corrispondenza per posta elettronica ha da un lato
innumerevoli vantaggi, ma purtroppo presenta intrinsecamente
un basso grado di sicurezza. E' infatti molto semplice per
una terza persona andare a leggere messaggi privati destinati
ad altri, oppure alterare un messaggio inviato da un altro,
oppure ancora inviarne uno con il nome di un altro.

"Ma io non ho nulla da nascondere" si potra' pensare.
Certo, nessuno di noi ha qualcosa da nascondere, pero'
vogliamo lo stesso proteggere la nostra corrispondenza da
occhi ed orecchie indiscrete, vogliamo riaffermare il
diritto alla privacy, diritto elementare di liberta' in
uno Stato democratico gia' garantito dalla legge per quanto
riguarda la posta ordinaria ed il telefono.
L'articolo 15 della Costituzione della Repubblica Italiana
garantisce la privacy per qualunque forma di corripondenza.
Anche se parliamo di pastasciutta, vogliamo lo stesso mettere
il nostro messaggio dentro una busta: il PGP e' quella busta.
Si corrono poi dei rischi di frode quando si trasmettono
per posta elettronica senza crittografia dati riservati.

Purtroppo negli ultimi tempi si assiste ad una campagna di
disinformazione circa Internet e la Telematica in generale.
Non viene risparmiata la crittografia, vista da alcuni
come strumento per malintenzionati o societa' segrete.
Si tratta invece di uno strumento di liberta' da mettere
a disposizione di tutti, e la cui diffusione riveste quindi
una importanza fondamentale, in vista del ruolo sempre maggiore
assunto dalla telematica quale quotidiano mezzo
di comunicazione su scala mondiale.

La realizzazione del programma PGP ha introdotto una cultura
nuova della crittografia, perche' ha consentito di fornire
questo strumento, prima riservato a pochi iniziati, a chiunque,
rendendolo quindi utilizzabile estensivamente quale normale
strumento di privacy e sicurezza, e non (solo) quale strumento
di protezione di segreti.


=== 2. La Crittografia a Chiave Pubblica ===

Il problema storico della crittografia classica si puo'
riassumere in questo modo: per potere cifrare un messaggio
si deve utilizzare una chiave (segreta) con cui effettuare
la cifratura. La stessa chiave deve essere usata per decodificare
il messaggio cifrato.
Se Alice vuole inviare il messaggio codificato al destinatario
Mad Hatter, ha il problema di fare avere a quest'ultimo
la chiave segreta, con la quale egli potra' decodificare
il messaggio.
Se pero' Mad Hatter sta all'altro capo del mondo e
non c'e' un canale sicuro per trasmettere la chiave,
questo sistema non puo' funzionare, perche' la chiave puo'
essere intercettata.
Per esempio, se io non voglio che un messaggio e-mail sia
letto da altri, sarebbe inutile codificarlo in modo
convenzionale e poi inviare la chiave usata per la
codifica ancora per e-mail.

Il problema viene risolto brillantemente dalla crittografia
a chiave pubblica, alla cui base sta un'idea semplice e
geniale.
Ogni utente genera, mediante una funzione di PGP,
una coppia di chiavi.
L'algoritmo matematico che effettua questa operazione
e' tale che:
* un messaggio codificato con una chiave della coppia
puo' essere decodificato solo con l'altra chiave della
stessa coppia;
* non e' materialmente possibile, data una chiave della
coppia, ricavare l'altra.
Ogni utente tiene per se' una chiave della propria coppia,
denominata chiave segreta, e diffonde il piu' possibile
l'altra, denominata chiave pubblica.

Questo risolve tutti i problemi posti sopra.

* Privacy:
Alice vuole inviare un messaggio a Mad Hatter,
e codifica quel messaggio usando la chiave pubblica
di quest'ultimo.
Solo Mad Hatter, che ha la corrispondente chiave
segreta, e' in grado di decodificare e leggere il messaggio.

* Autenticazione del mittente:
Alice codifica il suo messaggio con la propria chiave privata.
Chiunque, avendo accesso alla chiave pubblica di Alice,
puo' decodificare quel messaggio. Se la decodifica riesce,
si e' allora sicuri che esso e' stato scritto da Alice,
l'unica a possedere la corrispondente chiave segreta.
Alice ha posto la sua "firma" elettronica sul messaggio.

* Autenticazione del mittente e del messaggio:
E' possible autenticare, facendo un passo in piu',
oltre al mittente anche il contenuto del messaggio.
Alice effettua un "hashing" del suo messaggio.
Si tratta di una funzione unidirezionale, che a partire
da un certo messaggio ricava un valore di lunghezza fissa,
detto hash, che caratterizza il messaggio: una sorta di
"checksum". Se il messaggio viene alterato, l'hash non
corrisponde piu'.
Alice attacca allora in fondo al suo messaggio il
corrispondente hash. Alice puo' codificare con la
propria chiave privata ("firmare") tutto l'insieme,
oppure lasciare il messaggio vero e proprio in chiaro
e firmare solo l'hash.
Chiunque puo' decodificare l'insieme ricevuto o il solo hash
con la chiave pubblica di Alice, ed e' cosi' sicuro del
fatto che il messaggio proviene da quel mittente.
Se inoltre, una volta effettuata la decodifica,
messaggio ed hash si corrispondono, si e' sicuri che
nessuno dei due e' stato alterato in qualche maniera.
In pratica, la firma elettronica realizzata dal PGP effettua
sempre l'autenticazione sia del mittente sia del messaggio.
Essa ha dunque le stesse funzioni della firma ordinaria su un
documento cartaceo.

* Trasmissione della chiave:
Col sistema di crittografia a chiave pubblica non c'e',
come nella crittografia convenzionale, una sola chiave usata
per entrambe le funzioni di codifica e decodifica, e che deve
essere posseduta solo dal mittente e dal destinatario.
Pertanto non si pone il problema di dovere trasmettere
in modo sicuro quella chiave.
Ogni utente deve semplicemente tenere al sicuro la propria
chiave segreta, e puo' diffondere senza alcun problema la
propria chiave pubblica. Anzi, piu' questa viene diffusa e
meglio e'.

Il PGP consente di effettuare tutte queste funzioni mediante
semplici comandi. E' possibile avere varie funzioni insieme.
Due procedure comuni sono per esempio:

* (per la corrispondenza privata)
firmare un messaggio e contemporaneamente codificarlo
per un certo destinatario;

* (per i messaggi pubblici o privati)
effettuare l'hash di un messaggio e firmarlo per autenticarne
il mittente ed il contenuto, ma lasciando il messaggio stesso
in chiaro; questa procedura viene comunemente chiamata firma
in chiaro, ed e' quello che io ho fatto per il presente testo.


=== 3. Status e Versioni ===

Il PGP e' stato realizzato da Philip Zimmermann negli Stati Uniti.
In seguito anche altri hanno lavorato alle versioni successive.
Il norvegese Stale Schumacher e' l'autore della versione
Internazionale.
Il programma e' freeware, quindi puo essere liberamente
utilizzato e copiato senza dovere pagare nulla, se per uso non
commerciale.
Inoltre, e' un programma aperto, nel senso che i sorgenti,
scritti in C, sono di pubblico dominio.
Il PGP e' disponibile per DOS (con versioni compilate
sotto Windows 3.1 e Windows 95), OS/2, Mac, Amiga, Atari e,
mediante compilazione dei relativi sorgenti, Unix e VMS.
Le versioni per piattaforme diverse sono tutte compatibili
tra di loro: un file codificato p. es. con PGP per DOS
puo' essere decodificato con PGP per Unix, e viceversa.

Le versioni piu' recenti del programma sono:

* (Per utenti USA) Versione MIT: PGP 2.6.2
Per ragioni di copyright non puo' essere esportata legalmente
dagli USA, ma e' legale utilizzarla una volta che la si ottenga
da una fonte fuori dagli USA.
Genera messaggi non leggibili dalla versione 2.3a.
Files per DOS:
pgp262.zip (eseguibile e files di supporto),
pgp262s.zip (sorgenti e files di supporto).

* (Per utenti non USA) Versione Internazionale: PGP 2.6.3i
Adattamento della 2.6.2 fatto dal norvegese Stale Schumacher
in modo da non sottostare al brevetto americano.
Puo' trattare chiavi fino a 2048 bit (nelle altre versioni il
limite e' 1024).
Corregge alcuni bugs ed aggiunge alcune "features", sia rispetto
alla versione USA 2.6.2, sia rispetto alla precedente versione
internazionale 2.6.2i tuttora utilizzabile e molto diffusa.
Inoltre, la versione 2.6.3i presenta delle versioni dell'eseguibile
pgp.exe compilate a 32 bit.
E' compatibile con tutte le precedenti versioni 2.x.
Non e' legale negli USA.
Questa e' la versione consigliata per utenti non residenti
negli USA.
Files per DOS:
pgp263i.zip (eseguibile a 16 bit e files di supporto):
per DOS, va bene in ogni caso;
pgp263ix.zip (eseguibile a 32 bit e files di supporto):
per DOS da solo e per DOS sotto Windows 3.1,
richiede processore 386 o superiore,
e software per gestione a 32 bit (p. es. win32);
pgpwin32.zip (eseguibile a 32 bit, compilato espressamente per
Win95, e files di supporto ):
per DOS sotto Windows 95 e Windows NT.
pgp263is.zip (sorgenti e files di supporto).

Queste due versioni, USA ed Internazionale, sono compatibili tra
di loro.

Tutti i files compressi, ove non diversamente speificato,
contengono inoltre un dettagliato manuale in due volumi di Philip
Zimmermann, in formato ASCII.

Vi e' poi una versione commerciale, proposta da ViaCrypt,
nota come PGP 2.7.1


=== 4. Dove Reperirlo ===

Il PGP si puo' trovare su moltissimi siti Internet dove si trovano
anche files di documentazione e informazioni varie.

Segnalo i siti seguenti.
* WWW:
The International PGP Home Page (il miglior sito PGP!):
http://www.ifi.uio.no/pgp/
Nimrod/PGP (in italiano, links ai files pgp del precedente):
http://www.serve.com/nimrod/pgp.html
* FTP:
ftp://ftp.informatik.uni-hamburg.de/pub/virus/crypt/pgp/
ftp.ox.ac.uk/pub/crypto/pgp/
DSI - Universita' Statale di Milano: 
ftp://ftp.dsi.unimi.it/pub/security/crypt/PGP/


=== 5. Come si Usa ===

+++ 5.1 Installazione e Generalita' +++

In quanto segue si fa riferimento a scopo di esemplificazione
all'ambiente DOS (ove non diversamente specificato, i nomi
qui usati per i files sono a titolo di esempio).
L'uso del PGP su altri sistemi e' del tutto identico.

L'installazione del PGP non presenta particolari difficolta'.
Per installare una versione DOS nel directory c:\pgp occorre
semplicemente:
* scompattare il file compresso in c:\pgp con "pkunzip";
al suo interno c'e' un altro file zip;
* scompattare in c:\pgp, con "pkunzip -d", l'ulteriore file
compresso contenuto all'interno del primo (prima di farlo,
fate una copia di questo file zip interno: vi servira' in
seguito se volete verificarne la firma);
* aggiungere le seguenti righe ad autoexec.bat:
SET PGPPATH=C:\PGP
SET PATH=C:\PGP;%PATH% (aggiunge c:\pgp al "path")
SET TZ=MET-1DST

Una volta installato, il programma si usa mediante comandi
dal prompt del DOS; un esempio di comando e' il seguente:
pgp -sta c:\doc\testo.txt
(questo comando firma in chiaro il file c:\doc\testo.txt,
producendo un file ASCII, ed e' quello che io ho usato
per il presente testo).

In un generico comando, quindi, alla parola "pgp" possono
seguire, in vario ordine:
* le opzioni, introdotte dal segno "-",
* identificativi d'utente,
* nomi di files.

I comandi disponibili possono essere classificati secondo
diverse categorie: comandi per la gestione delle chiavi,
per codificare, per decodificare, ecc.

E' molto importante leggere i manuali.
Essi contengono anche una "Quick Reference", elenco sintetico
di tutti i comandi, che conviene estrarre e tenere a portata
di mano. Lo stesso elenco si puo' inoltre avere a video con il
comando di help:
pgp -h

+++ 5.2 Generazione della Coppia di Chiavi +++

La prima cosa da fare, subito dopo l'installazione, e' la
generazione delle chiavi.

+--> Generate la vostra coppia di chiavi con il comando:
pgp -kg

PGP vi chiede di:

* Scegliere la lunghezza delle chiavi.
Vi vengono proposte tre alternative, delle quali la terza
genera chiavi di 1024 bit.
Con la versione internazionale 2.6.3i e' possibile generare
chiavi della lunghezza di 2048 bit digitando appunto il numero
2048 invece di scegliere una delle tre alternative proposte.
Suggerisco di generare chiavi a 2048 bit, a meno che non
abbiate un sistema particolarmente lento (386 o inferiori),
nel qual caso e' preferibile generare chiavi a 1024 bit.

* Scegliere il vostro "User Name", chiamato anche "User ID".
Generalmente, si usa nome e cognome seguito dall'indirizzo
e-mail in parentesi angolari, p. es.:
Mad Hatter <mad.hatter@wonderland.it>
(E' possibile assegnare alle chiavi piu' identificativi, cosa
che si fa quando si hanno piu' indirizzi e-mail, per esempio.)
Questo e' cio' che viene anche suggerito a video dalla
messaggistica di pgp, ed e' la cosa preferibile.
In alternativa, se e' facile che il vostro indirizzo e-mail
cambi, per creare il vostro "User Name" potete far seguire
il vostro nome e cognome, anzicche' dall'indirizzo e-mail,
da un qualunque altro dato che vi identifichi.

* Scegliere la vostra "Pass Phrase".
E' molto importante, perche' si tratta della frase di accesso
che vi permette di utilizzare la vostra chiave segreta (p. es.
per firmare un messaggio da voi scritto, o per decodificare un
messaggio a voi indirizzato).
Senza la pass phrase la vostra chiave segreta e' inutilizzabile.
E' una password estesa: puo' essere un testo molto lungo
contenente qualunque carattere.
Scegliete una frase lunga che non sia intuibile (niente dati
personali!), nell'eventualita' che la vostra chiave segreta vada
in mano a terzi.
Deve pero' trattarsi di una frase costruita in modo che potete
facilmente ricordarla (importante!).
Ancora meglio se intercalate dei caratteri non alfabetici ed usate
maiuscole e minuscole, sempre a patto che non rischiate poi di non
riuscire a ricordare la frase esatta.
Due esempi:
La losanga del nonno di Carla che cadde in mare
c$hi Va da#quel%la parte domani MATTINA

* Premere casualmente dei tasti, procedura i cui tempi vengono
usati da PGP per la generazione dei numeri casuali necessari
all'algoritmo.

A questo punto, PGP genera la vostra coppia di chiavi.
Assumendo che il directory in cui e' installato PGP sia c:\pgp,
trovate:
la vostra chiave segreta
nel file c:\pgp\secring.pgp (secret ring);
la vostra chiave pubblica
nel file c:\pgp\pubring.pgp (public ring).
Questi nomi sono di default.

Se state usando PGP internazionale 2.6.3i, la procedura termina
qui.
Se usate un'altra versione, c'e' ancora una cosa da fare subito.

+--> Firmate la vostra chiave pubblica con il comando:
pgp -ks "id"

dove id e' l'identificativo d'utente, che va posto tra virgolette.
Puo' essere lo User Name che avete usato prima; PGP riconosce anche
una parte dello User Name, p. es. solo il nome o solo l'indirizzo
e-mail.
Per seguire l'esempio precedente, potete digitare quindi:
pgp -ks "Mad Hatter"
Lo scopo di questa operazione e' di rendere impossibili determinate
manipolazioni della chiave pubblica da parte di terzi
(vedi: Considerazioni sulla Sicurezza).
Per poter effettuare questa operazione, PGP vi chiede di digitare
la pass phrase, come sempre avviene quando occorre impiegare la
chiave segreta.
La versione internazionale 2.6.3i esegue automaticamente questa
procedura di auto-firma della propria chiave pubblica, senza
chiedere nulla. Quindi, se poi cercate esplicitamente di firmare
la vostra chiave con pgp -ks, vi compare un messaggio di errore
che vi comunica che la vostra chiave e' gia' firmata da voi. 


+++ 5.3 Gestione delle Chiavi +++

Il secret ring (file secring.pgp) contiene la vostra chiave segreta
e va tenuto riservato.
PGP va a cercare la vostra chiave segreta in questo file tutte le
volte che volete decodificare un messaggio a voi indirizzato,
oppure volete firmare un messaggio.

Il public ring (file pubring.pgp) e' destinato a contenere, insieme
alla vostra, tutte le chiavi pubbliche che userete: e' il vostro
database personale di chiavi pubbliche, una sorta di agenda
del telefono.
PGP infatti, tutte le volte che volete codificare un messaggio
destinato all'utente Cheshire Cat, va a cercare la chiave pubblica
di quest'ultimo nel vostro public ring. Lo stesso avviene quando
volete verificare una firma.
All'inizio, il public ring contiene solo la vostra chiave pubblica,
poi a mano a mano potete aggiungere quelle di altre persone con
cui corrispondete.

+--> Aggiungete al vostro public ring una o piu' chiavi pubbliche
contenute nel file c:\chiavi\keys.asc con il comando:
pgp -ka c:\chiavi\keys.asc

Potete aggiungere in questo modo la mia chiave pubblica, che
trovate in fondo al presente testo, usando come nome file nel
comando appena visto quello del presente testo con il suo path.
In tal caso infatti PGP considera solo le chiavi contenute nel
file, ed ignora tutto il resto.
Quando aggiungete una chiave, PGP vi chiede se volete certificarla.
Rispondete NO (n) (vedi: Considerazioni sulla Sicurezza).

+--> Esaminate il contenuto del vostro public ring con il comando:
pgp -kv

E' possibile estrarre una copia di una o piu' chiavi pubbliche
(tipicamente la vostra) dal vostro public ring.
Questa operazione consiste nel copiare la chiave in un file ASCII
armored in modo da poterla passare ad altri utenti che la
inseriranno nel loro public ring con la procedura descritta sopra.

+--> Estraete la vostra chiave pubblica con il comando:
pgp -kxa "Mad Hatter" c:\chiavi\cappell.asc

Essa sara' allora contenuta nel file ASCII c:\chiavi\cappell.asc,
che potete distribuire. Io ho seguito questa procedura ed ho poi
copiato il file ASCII ottenuto in fondo a questo testo.

+++ 5.4 Codifica e Firma +++

+--> Codificate il file c:\doc\mess.txt per l'utente Cheshire Cat,
e firmatelo, con il comando:
pgp -esta c:\doc\mess.txt "Cheshire Cat" -o c:\crypt\gatto.txt

* Viene prodotto il file codificato c:\crypt\gatto.txt.
Se omettete l'opzione "o" e relativo nome di file, il file
prodotto sara' c:\doc\mess.pgp, quindi nello stesso directory
del file in chiaro, con lo stesso nome ma con estensione "pgp".

* Se omettete l'opzione "s" (sign), quindi digitate -eta, il file
viene codificato ma non firmato.

* Se omettete l'opzione "e" (encrypt), quindi digitate -sta, il
file viene firmato in chiaro, ma non codificato.

Non e' detto che il file da codificare e/o firmare sia un testo,
bensi' puo' essere indifferentemente un file binario qualunque.

PGP vi chiede in ogni caso di digitare la vostra pass phrase, in
modo da poter utilizzare la vostra chiave segreta.

Inoltre, la prima volta che codificate un messaggio per Cheshire
Cat, PGP vi chiedera' se volete davvero adoperare la chiave
pubblica di questo utente pur non essendo certificata.
Rispondete SI (y) (vedi: Considerazioni sulla Sicurezza).

In ogni caso, e' importante che il comando per codificare e/o
firmare (nonche' quello per estrarre la vostra chiave pubblica)
contenga sempre l'opzione "a" (ASCII Armor), come si vede
dal comando riportato sopra.
Il motivo e' il seguente. Quando si invia un file per e-mail,
esso passa attraverso e arriva su sistemi di tipo molto diverso.
Qualunque sistema pero' e' in grado di riconoscere e trattare
caratteri ASCII il cui codice decimale e' compreso tra 0 e 127
(il cosiddetto ASCII basso). Percio' e' indispensabile che un
file inviato per e-mail sia formato esclusivamente da tali
caratteri (file ASCII armored o semplicemente ASCII), e non da
caratteri qualsivoglia.
PGP trasforma, mediante l'opzione "a", il file prodotto in modo
che sia ASCII armored.

+++ 5.5 Decodifica e Verifica della Firma +++

+--> Decodificate il messaggio codificato c:\crypt\notizie.pgp,
e verificatene la firma, con il comando:
pgp c:\crypt\notizie.pgp -o c:\doc\nuove.txt

* Viene prodotto il messaggio in chiaro c:\doc\nuove.txt.
Se omettete l'opzione "o" e relativo nome di file, il file
prodotto sara' c:\crypt\notizie, quindi nello stesso directory
del file in chiaro, con lo stesso nome e senza alcuna estensione.

* Questo comando ha molteplici funzioni, perche' agisce
indifferentemente su codifica e firma.
Se il messaggio di partenza era codificato, il comando citato
lo decodifica.
Se in aggiunta esso era anche firmato, il comando verifica inoltre
la firma (e quindi l'autenticita' del mittente e del messaggio
stesso).
Se era solo firmato, viene semplicemente verificata la firma.

Potete verificare in questo modo la mia firma su questo testo,
usando come nome file nel comando appena visto quello del presente
testo (pgpintro.txt) con il suo path.

+++ 5.6 Il File di Configurazione config.txt +++

PGP usa un file di configurazione, chiamato config.txt,
che si trova nella directory in cui e' stato installato il
programma, per esempio c:\pgp. Si tratta di un file ASCII, che
puo' essere modificato con un normale editor di testo come Notepad
(prima di modificarlo e' buona norma fare sempre una copia di
back-up!).
In config.txt le righe di commento (ignorate da PGP) sono precedute
dal carattere "#".
Il file config.txt contiene dei comandi di configurazione, che
forniscono a PGP una serie di informazioni che il programma usa per
le varie operazioni.
Un comando di configurazione consiste nell'assegnare ad una
variabile un determinato valore.
Nel config.txt originario, quasi tutti questi comandi sono
preceduti da "#", come le righe di commento, per cui i comandi
stessi sono inattivi.
Per renderli attivi, occorre cancellare il carattere "#" ed
assegnare alla variabile presente nella riga il valore che
si desidera.

Qui di seguito vengono elencate le variabili piu' importanti di
config.txt.

* Il proprio User ID.
Ogni volta che Mad Hatter vuole firmare un file o un testo, PGP
va a cercare in config.txt qual'e' lo User ID della chiave
segreta di Mad Hatter, da usare per la firma. Se non trova la
variabile MyName configurata, prende lo User ID aggiunto piu'
di recente al secret ring di Mad Hatter.
Se quest'ultimo contiene una sola chiave segreta, non c'e' percio'
alcuna differenza. E' pero' buona norma configurare in ogni caso la
variabile MyName. Per farlo, togliete il carattere "#" e scrivete
il vostro User ID completo nella riga di config.txt:
# MyName = "John Q. Public"
che percio' diventa ad esempio:
MyName = "Mad Hatter <mad.hatter@wonderland.it>"

* ASCII Armor.
La variabile Armor fa in modo che automaticamente ogni file
codificato e/o firmato sia anche ASCII armored.
Togliete semplicemente il carattere "#" in testa alla riga:
# Armor = on # Use -a flag for ASCII armor whenever applicable
che percio' diventa:
Armor = on # Use -a flag for ASCII armor whenever applicable

* Codifica per se' stessi
La variabile EncryptToSelf fa si' che ogni file che Mad Hatter
codifica per Alice o per altri utenti PGP venga anche codificato
per se' stesso, ossia per lo User ID specificato in MyName.
In tal modo, Mad Hatter ha la possibilita' di decodificare il file,
cosa che non potrebbe piu' fare se questo fosse stato codificato
solo per Alice.
Togliete semplicemente il carattere "#" in testa alla riga:
# EncryptToSelf = on #Encrypt all messages with your own public key
che percio' diventa:
EncryptToSelf = on # Encrypt all messages with your own public key

* Posizione di public ring e secret ring
Normalmente, PGP cerca per le sue operazioni il public ring
ed il secret ring nel directory c:\pgp.
Nel caso in cui i due ring si trovino in un altro directory o su
un'altra unita', occorre specificarne il path in config.txt,
modificando le righe:
# PubRing = "a:\pubring.pgp"
# SecRing = "a:\secring.pgp"
Questo per esempio va fatto nel caso in cui teniate per ragioni
di sicurezza (vedi: Altre Importanti Norme di Sicurezza)
public ring e secret ring su un dischetto.

+++ 5.7 Codifica e Decodifica Convenzionale +++

Con PGP e' possibile utilizare anche la crittografia convenzionale.
Non vengono in tal caso utilizzate chiavi pubbliche e private,
ma semplicamente una pass phrase con la quale codificare
convenzionalmente il file.

+--> Codificate il file c:\doc\mess.txt convenzionalmente con il
comando:
pgp -c c:\doc\mess.txt

PGP vi chiedera' di digitare una pass phrase. Attenzione: per ovvie
ragioni di sicurezza, questa non deve MAI essere uguale alla
pass phrase della propria chiave segreta PGP della crittografia
a chiave pubblica.
Per ogni files da codificare occorre una pass phrase: ovviamente
si puo' usare sempre la stessa, volendo, ma MAI una pass phrase
corrispondente ad una chiave segreta.

+--> Decodificate il messaggio codificato c:\crypt\notizie.pgp,
codificato convenzionalmente, con lo stesso comando usato
normalmente per la decodifica:
pgp c:\crypt\notizie.pgp

PGP si accorge che il file e' codificato convenzionalmente e
vi chiede la corrispondente pass phrase, con la quale effettua
la decodifica.

Alice puo' voler adoperare la crittografia convenzionale:
* se ha modo di concordare una pass phrase con il destinatario del
suo messaggio in modo sicuro, per esempio di persona.
Potendo pero' usare il sistema a chiave pubblica con tutti i
suoi vantaggi non c'e' alcun motivo per voler fare questo, neanche
in questa condizione.
* se vuole codificare dei files del suo computer per proteggerli da
occhi indiscreti, ma poi sara' sempre lei a decodificarli con
la pass phrase che ha scelto.
Anche in questo caso, Alice puo' molto piu' semplicemente e
convenientemente usare PGP normalmente come crittografia a
chiave pubblica, e codificare i files scegliendo se' stessa
come destinatario.

In entrambi i casi, se usa comunque la crittografia a chiave
pubblica:
* un ulteriore vantaggio e' quello di non dover inventare e
ricordare altre pass phrase oltre alla pass phrase della propria
chiave segreta.
* ancora un ulteriore vantaggio e' dato dal fatto che e' possibile
firmare il file (cosa non realizzabile con la crittografia
convenzionale) garantendo cosi' l'identita' del mittente e
l'integrita'del file.


=== 6. I Keyservers ===

Sono dei database automatici di chiavi pubbliche PGP, accessibili
ed utilizzabili da tutti.
Ogni Keyserver ha in pratica un enorme public ring, a cui tutti
possono aggiungere la propria chiave pubblica e da cui e' possibile
estrarre una chiave pubblica di cui si ha bisogno.
Una sorta di elenco pubblico del telefono.
Tutte le operazioni avvengono per e-mail in modo automatico.
Di Keyservers ce ne sono diversi in tutto il mondo, e si
aggiornano automaticamente tra di loro, quindi e' sufficiente
utilizzarne uno qualunque. Di solito sono gestiti presso
Universita', quali ad esempio il MIT negli Stati Uniti e il
Dipartimento di Scienze dell'Informazione dell'Universita'
Statale di Milano.

Per utilizzare quest'ultimo, scrivete a:
<pgp-public-keys@dsi.unimi.it>
mettendo il comando nel campo SUBJECT.

I comandi piu' importanti sono:
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
HELP Si ottengono le istruzioni.
ADD Per aggiungere la propria chiave pubblica
(la chiave stessa va messa nel corpo del
messaggio).
INDEX Lista tutte le chiavi contenute nel
Keyserver.
GET Si ricevono tutte le chiavi del Keyserver
(non conviene perche' sono troppe!).
GET [id] Si riceve la chiave dell'utente avente
l'identificativo [id].
MGET stringa Si ottengono tutte le chiavi il cui
identificativo contiene 'stringa'.
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

* Se inviate la vostra chiave pubblica in un messaggio avente
come Subject:
ADD
essa viene aggiunta al Keyserver.

* Se inviate un messaggio vuoto con Subject:
GET Giorgio Chinnici [Nimrod]
ricevete la mia chiave pubblica.

I Keyservers possono essere utilizzati da WWW all'indirizzo:
http://www-swiss.ai.mit.edu/~bal/pks-commands.html


=== 7. Considerazioni sulla Sicurezza ===

+++ 7.1 La Sicurezza delle Chiavi Pubbliche +++

Questo argomento e' estremamente importante, in quanto la gestione
delle chiavi pubbliche rappresenta il punto debole del PGP.

La crittografia a chiave pubblica, avendo eliminato la necessita'
di trasmettere una chiave segreta, riduce praticamente a zero il
rischio che qualcuno si impadronisca della chiave segreta.
Tuttavia, la gestione delle chiavi e' il punto debole anche di
questo sistema di crittografia, perche' una chiave pubblica puo'
non essere sicura.

Il problema sostanzialmente e' il seguente.
Quando Mad Hatter riceve la chiave pubblica di Alice,
non ha modo di essere sicuro che quella chiave:
* appartenga effettivamente ad Alice
(Cheshire Cat potrebbe avere sostituito la chiave di Alice con
la propria ed avere successivamente intercettato i messaggi
destinati ad Alice);
* non sia stata manipolata
(Cheshire Cat potrebbe ad esempio aver aggiunto alla chiave un
indirizzo e-mail).
E' possibile cioe' ipotizzare determinati "attacchi" che Cheshire
Cat, sfruttando questo tipo di "debolezza", puo' mettere in atto
allo scopo di introdursi nelle comunicazioni tra Alice
e Mad Hatter.

Va rimarcato che le dimensioni del problema sono completamente
diverse nei due sistemi di crittografia:
* Il sistema convenzionale a chiave unica pone alla comunicazione
per e-mail problemi di sicurezza cosi' grossi da essere di fatto
inutilizzabile. Non avrebbe infatti alcun senso pensare di inviare
la chiave segreta sullo stesso canale non sicuro.
Inoltre, una chiave segreta per sua stessa natura non puo' essere
diffusa pubblicamente, per cui non e' possibile applicare questo
sistema di crittografia come strumento di privacy.
* Gli "attacchi", nel sistema a chiave pubblica sono azioni
piuttosto complesse da effettuare, ed hanno quindi probabilita'
ridotte in circostanze normali.
Inoltre essi sono, mediante una serie di norme di sicurezza,
prevenibili.

E' quindi fondamentale attenersi alle norme di sicurezza.

In linea di principio, perche' Mad Hatter abbia la certezza
che la chiave pubblica di Alice non e' falsa o manipolata,
occorre che:
* Egli abbia ottenuto la chiave non per e-mail o da una banca dati,
ma tramite un incontro personale, una persona fidata, o altro
canale sicuro. In tal caso, Mad Hatter puo' firmare egli stesso
la chiave.
Oppure che:
* La chiave sia firmata, con il comando:
pgp -ks "Alice"
da un utente March Hare del quale Mad Hatter possiede una chiave
sicura.

PGP ha un sistema di gestione della sicurezza delle chiavi, e ne
tiene conto in fase di utilizzo delle chiavi stesse. In pratica,
PGP sa quale chiave e' sicura e quale no secondo le definizioni
precedenti, ed avverte l'utente.

L'incontro personale e simili, ove sia possibile farlo con
facilita' (p. es. i due utenti abitano nella stessa citta')
e' sempre preferibile, per scambiarsi le chiavi pubbliche e per
firmarle a vicenda.
Inoltre, in casi in cui la sicurezza deve essere assoluta (p. es.
comunicazione di segreti industriali) non ci si deve mai fidare
di una chiave non sicura ottenuta per via telematica.
Se pero' ci si attenesse sempre strettamente a questa norma, si
potrebbe fare un uso molto limitato del PGP.
Normalmente quindi si utilizzano senz'altro chiavi ottenute per
e-mail, attenendosi pero' alle norme di sicurezza seguenti.

+++ 7.2 Norme di Sicurezza per le Chiavi Pubbliche +++

* Non firmate mai una chiave pubblica che non avete ottenuto in
modo assolutamente sicuro. ***
Questo e' molto importante, perche' firmando la chiave di Alice,
Mad Hatter la dichiara sicura. Benche' sia accettabile usare una
chiave pubblica non canonicamente sicura, non la si deve dichiarare
tale se non lo e'. Infatti, quando la chiave viene passata da Mad
Hatter a Mock Turtle, questi avrebbe una falsa informazione che
invaliderebbe tutto il sistema di sicurezza delle chiavi pubbliche.

* Utilizzate occasioni di incontro personali per scambiare
e firmare reciprocamente le proprie chiavi pubbliche. ***
In tal modo si crea una "rete" di certificazione.
Ogni firma di un altro utente su una chiave rende inoltre sempre
piu' difficile manipolare o sostituire quella chiave, perche'
bisognerebbe riprodurre le firme.

* Firmate voi stessi la vostra chiave pubblica, e firmate inoltre
ogni indirizzo e-mail od indentificativo che vi aggiungete. ***
Se Mad Hatter segue questa norma, e' impossibile per Cheshire Cat
aggiungere lui un indirizzo alla chiave di Mad Hatter, perche'
questo sarebbe l'unico non firmato da Mad Hatter.

* Diffondete il "fingerprint" della vostra chiave pubblica. ***
Il fingerprint e' un hash di 128 bit, ossia 32 cifre esadecimali,
della chiave pubblica, e la identifica univocamente.
Alice puo' ottenerlo a video per la sua chiave pubblica con il
comando:
pgp -kvc "Alice"
Il fingerprint presenta il vantaggio di essere facilmente
leggibile.
Alice diffonde il suo fingerprint scrivendolo sulla sua pagina WWW,
in messaggi pubblici, su documenti cartacei (ad es. biglietti da
visita), su cui non puo' essere contraffatto senza che la cosa si
scopra.
Mad Hatter legge il fingerprint di Alice da varie fonti, e lo
confronta con quello ottenuto dalla chiave pubblica di Alice che
Mad Hatter ha nel proprio public ring. Se sono identici, cio'
garantisce l'autenticita' della chiave di Alice che Mad Hatter ha.
Se Mad Hatter e' in grado di riconoscere Alice al telefono, egli
puo' verificare la chiave di Alice telefonicamente, confrontando
il fingerprint sul proprio video con quello che lei gli detta al
telefono.

+++ 7.3 Altre Importanti Norme di Sicurezza +++

* Mantenete una copia di sicurezza, su un dischetto tenuto in luogo
sicuro, del vostro secret ring e public ring, nell'eventualita'
di un crash del vostro computer.

* Non lasciate il vostro secret ring su un computer cui hanno
accesso altre persone, come potrebbe essere quello dell'ufficio.
In tal caso usate invece secret ring e public ring da un dischetto
che tenete con voi o in luogo sicuro.

* Non scrivete la vostra pass phrase da nessuna parte, ma
ricordatela bene a memoria.

* Ricordate che un file cancellato con un semplice comando di
"delete" puo' successivamente essere recuperato. Se percio' volete
eliminare definitivamente il messaggio in chiaro che avete
codificato dovete farne il "wipe" o cancellazione definitiva.
Cio' viene realizzato da varie utility, e dallo stesso PGP usando
l'opzione "w" nel comando di codifica.

+--> Cancellate in modo sicuro il file c:\doc\testo.txt
con il comando:
pgp -w c:\doc\testo.txt


=== 8. Come Opera ===

Il PGP utilizza in realta' una intera collezione di algoritmi,
tra i piu' sicuri ed internazionalmente conosciuti nel campo
della crittografia.
Allo scopo di illustrare il processo messo in atto da PGP,
supponiamo di partire da un messaggio che deve essere firmato e
codificato.
La sequenza delle operazioni e' la seguente.

*A. PGP applica l'algoritmo di hashing MD5
per generare l'hash del messaggio, avente lunghezza fissa pari a
128 bit.
L'hash viene attaccato al messaggio.

*B. PGP applica l'algoritmo di compressione dati ZIP
per comprimere l'insieme messaggio piu' hash ottenuto in A.

*C. PGP applica un algoritmo di generazione numeri casuali
per generare una sequenza di 128 bit casuali.

*D. PGP applica l'algoritmo di crittografia convenzionale IDEA
per codificare il messaggio compresso ottenuto in B, usando come
chiave ("session key") il numero casuale generato in C.

*E. PGP applica l'algoritmo di crittografia a chiave pubblica RSA
per codificare la session key.
Il risultato viene attaccato al messaggio codificato ottenuto in D.
La crittografia convenzionale e' molto piu' veloce di quella
a chiave pubblica. PGP unisce i vantaggi della crittografia a 
chiave pubblica e la velocita' di quella convenzionale,
Il messaggio viene in realta' codificato convenzionalmente, ed e'
la session key usata che viene codificata con l'algoritmo a chiave
pubblica.

*F. PGP applica l'algoritmo di ASCII Armor Radix-64
per trasformare il messaggio ottenuto in E in modo che esso
contenga solo caratteri ASCII bassi.
Questo algoritmo trasforma ogni gruppo di tre bytes in un gruppo
di quattro bytes.

Il messaggio ottenuto in F e' quello finale, che puo' essere
inviato per e-mail. Il destinatario esegue la sequenza inversa
di operazioni.

Gli algoritmi utilizzati da PGP sono considerati assolutamente
sicuri.
Per esempio, l'algoritmo di crittografia a chiave pubblica RSA
si basa sul prodotto di due numeri primi. Per poter ricavare una
chiave privata dalla corrispondente chiave pubblica occorrerebbe
fattorizzare questo prodotto. Nel caso di chiavi a 1024 bit, e'
stato stimato che una rete di un milione di computers impiegherebbe
10^10 anni a risolvere il problema, un tempo pari all'eta'
dell'Universo!
Poi, ci sarebbe ancora il problema di ricavare la pass phrase.
E questo per una sola coppia di chiavi tra tutte quelle esistenti al
mondo.


=== 9. Shell Windows per PGP ===

PGP e' un programma DOS, e quindi sotto Windows 3.1 e
Windows 95 va utilizzato da una finestra DOS.
Allo scopo di rendere piu' semplice ed automatico possibile l'uso
di PGP sono stati sviluppate diverse shell per Windows.
Si tratta semplicemente di programmi Windows per mezzo
dei quali e' possibile usare dialog box e pulsanti per
le varie operazioni di PGP; per effettuare queste operazioni,
la shell Window lancia automaticamente PGP in una finestra DOS.
Il programma PGP deve quindi essere gia' stato in precedenza
installato e configurato.

Per i principianti di PGP, consiglio comunque di usare il programma
cosi' com'e' da DOS, senza alcuna shell.
In tal modo si comprendono molto meglio i meccanismi di PGP.
Dopo essersi impratichiti si puo' passare all'uso
di una shell Windows.

Ne esistono diverse. Trovate elenchi completi con descrizione
presso:
PGP tools & add-ons for Windows
http://www.ifi.uio.no/pgp/winutils.shtml
Using Microsoft Windows with PGP
http://www.lcs.com/winpgp.html
Scott Hauert's collection of PGP Front Ends & Shells for Windows
http://www.primenet.com/~shauert/pgpwins.htm
Trovate le shell anche nei siti ftp citati in "Dove Reperirlo"

Segnalo qui tre ottime shell.

* PGP Win Front 3.1, freeware
http://www.ugali.com/pwf/
Versione Win3.1, gira perfettamente anche sotto Win95
Richiede vb300.dll

* PGPClick 2.5, shareware 5 US$
http://www.ncinter.net/~rewilson/pgpkey.html
Versioni Win3.1 e Win95
Richiede i run-time files di VB 4.0, rispettivamente a 16 e 32 bit.

* AEgis Shell 3.0, beta-test
http://www.aegisrc.com/beta3.htm
Versioni Win3.1 e Win95


=== 10. Risorse e documentazione ===

* Siti WWW:
The International PGP Home Page:
http://www.ifi.uio.no/pgp/
Nimrod/PGP, in italiano:
http://www.serve.com/nimrod/pgp.html
PGP-Users Mailing List Home Page
http://www.rivertown.net/~pgp/
Crypto-Log: Internet Guide to Cryptography
http://www.enter.net/%7Echronos/cryptolog.html
Cryptography, PGP, and Your Privacy
http://world.std.com/~franl/crypto.html
Email Privacy FAQ
http://www.four.net/~kto/emailfaq.html

* Newsgroups:
alt.security.pgp
comp.security.pgp.announce 
comp.security.pgp.discuss
comp.security.pgp.resources
comp.security.pgp.tech

Si parla anche di PGP nel gruppo di discussione italiano
sulla sicurezza:
it.comp.sicurezza.varie

* FAQ:
"PGP Frequently Asked Questions" da alt.security.pgp:
http://www.prairienet.org/~jalicqui/pgpfaq.txt
ftp://ftp.prairienet.org/pub/providers/pgp/pgpfaq.txt
"PGP 2.6.3i" FAQ:
http://www.ifi.uio.no/pgp/FAQ.shtml

=== 11. Problemi Vari ===

+++ 11.1 Editor con "Word Wrap" +++

Puo' presentarsi a volte il seguente problema.
Alice scrive un proprio messaggio con un Editor dotato di
"Word Wrap", ossia di "a capo" automatico. Puo' trattarsi di
un Editor quale Notepad oppure di quello interno ad un
programma di gestione della posta elettronica, quale Eudora.
Alice firma poi in chiaro il messaggio.
Al momento di preparare il messaggio da spedire, il programma di
e-mail (Eudora, Offline Mailer ecc.) puo' introdurre esplicitamente
il carattere di "a capo" alla fine di ogni riga del messaggio,
alterando cosi' di fatto il messaggio stesso.
Come conseguenza, Mad Hatter, che riceve il messaggio e ne
verifica la firma, trova che la firma non corrisponde al messaggio!
Rimedio:
* Alice puo' rinunciare al "Word Wrap", andando a capo a mano ad
ogni riga (che e' meglio mantenere al di sotto dei 70 caratteri).

+++ 11.2 PC con Piu' Dischi Fissi +++

Alice ha piu' di un disco fisso, oppure diverse partizioni sullo
stesso disco fisso.
Alice ha installato PGP non sul disco C: bensi' sul disco D:,
nel directory d:\pgp.
Si verifica un piccolo problema: PGP va a cercare comunque il file
di configurazione config.txt in c:\pgp, e non trovandolo, emette
un messaggio di errore.
Rimedio:
* Alice crea il directory vuoto c:\pgp e ci mette una copia
del file d:\pgp\config.txt.

===================================================================

Giorgio Chinnici <> Milano-Italy <> PGP Key available
E-mail nimrod@mail.serve.com <> WWW http://www.serve.com/nimrod
Mere words! Was there anything so real as words?
(Oscar Wilde - The Picture of Dorian Gray)


-----BEGIN PGP SIGNATURE-----
Version: 2.6.3i
Charset: latin1

iQEVAwUBMmvt4sHFVX4P617JAQHMuQf7BsXsVogSvYTiOlR3VgfNRdPzL4Ay6NI5
quYPtSAH+msp32edkmWTX7Epgmv53POj2QWqHzkxoSVfLhEelEQMyrRW1zI46EzG
aCDnUJjjhOdHXHv1blGDjfUHWNTvBjQTCClXinvJnHN57P7YACTBv3BqjoQfg9dO
kUhVPK+GTS66ihrx3m2nLsMZTOnKKnxPiBs2xqybg0WDZPwqZWUA2dMs6k/jzTaF
BDYcrMJ6c/2G5Zln/GNi0ZPQ6AI4io+1Um+iLQT+WroH+0hPRPglCAQKqZkt2viv
rbZcWBgPqolKyjfs0Qb1qWePWaHxrCoTirQxnG+e+LsGri8qPDV31A==
=BVv1
-----END PGP SIGNATURE-----


La mia chiave pubblica PGP:

Type Bits/KeyID Date User ID
pub 2048/0FEB5EC9 1996/03/27 Giorgio Chinnici [Nimrod]

Fingerprint: 82 C1 B8 F1 48 56 D3 85 A9 EF B2 BD 2E 2A 9B 4C

-----BEGIN PGP PUBLIC KEY BLOCK-----
Version: 2.6.3i

mQENAzFZxSAAAAEIAMhEXGpHMA4L/lQzuzmDdzcZcj2HoHADrq2XSC+UJkWtUiaV
yMDs/u/11JdL7oclPepsQm9KUgihbm9g1Om6L/3bE5EO/UvH64JMzn9beDBhWDSU
AhXlGUar2xNpYak8hdIo4bvoOPW2h4yaEtA4am8wHmh07ix5uwzmzdkDoauL+DHb
RDAH+VJYU/WilG+Xbl+wytdu/j/BNBLFbPyuS3ima25gQHPD4xC0TBvU5GIpNOpJ
DxF1LwX9NoXGto1qDAW4u1vEhEad4f1TrhABnwYR/S8ei8dZAx/Q+wsfPdieWufu
Mh4w/HrjMtHw6cKRbCwraI9SJ1DKwcVVfg/rXskABRG0GUdpb3JnaW8gQ2hpbm5p
Y2kgW05pbXJvZF2JARUDBRAxWcUiwcVVfg/rXskBAf3DB/9WM1jC6JkT07lnx5Gf
8o/0AHI7x3EqAZRs/fOZS3BctOlULaS5cB1n5hNmtwmtLhi74jPg1oVs3K6jiuQt
yJGcXxbtdh2yawI8yCFk1GwtoDO6L5TAOrnWrRZ6RjtNk6vyIX+QZw5kUrQducnS
pW+GzP3MUJcPlbBdvLOLi8qJO5gjKp36T+oiyweXsZByDpXkimmPtkOqtnH0oaHR
12qMpG75X1RHC/nSX7KklTxWlQjGexeOhnklmohS2eMMFKBi+jA0xRv9geaFLX9c
0eK2u2eOP9mfKJe5qVDqFg+XwTMoRkVgKsIRxQM4ic9dVLaaFQCbZnXzx85eDmAL
6kcW
=IA9l
-----END PGP PUBLIC KEY BLOCK-----

http://keyserver.unibs.it/pgp.html 


Torna alla Home Page