|
|
GUIDA AL PROGRAMMA PGP
A cura di:
Francesco Groccia www.fginf.com
|
PGP
|
|
Nel giugno 1991 lo
statunitense Philip Zimmermann realizza e distribuisce gratuitamente il
programma PRETTY GOOD PRIVACY (PGP), un programma di crittografia diventato
ormai uno standard (tanto che l'insegnamento del suo utilizzo è previsto nel
master per la Security dell'università di Milano), che permette di mantenere
la privacy e la sicurezza dei propri dati personali in formato elettronico.
Per la realizzazione di PGP, Zimmermann viene citato in tribunale dalla RSA
Data Security Inc. per violazione del brevetto sull'algoritmo RSA, e
accusato dal governo degli Stati Uniti di esportazione illegale di strumenti
crittografici. Entrambe le cause finiscono nel nulla. L'accusa di
esportazione illegale viene ritirata nel 1996, mentre la controversia con
RSA verrà mediata da una successiva collaborazione tra le due parti per la
realizzazione delle versioni successive del software. PGP, è il programma di
crittografia per eccellenza, che garantisce la segretezza della posta (ma
non solo), l'autenticazione con firma digitale e la compressione. Il
software in questione non fa altro che implementare in pratica i sistemi
visti fino a questo momento, utilizzando un sistema di crittografia misto
con tre algoritmi: il sistema a chiavi pubbliche RSA, quello a chiavi
private IDEA e l'algoritmo di hashing MD5. È distribuito gratuitamente per
uso personale e può essere scaricato dal sito
PGP, oppure dai cd-rom allegati
nelle riviste del settore.
|
|
Il suo funzionamento è
molto semplice: supponiamo che l'utente A voglia spedire all'utente B un
messaggio. PGP cifra tale messaggio utilizzando l'algoritmo IDEA con una
chiave K generata casualmente che verrà inviata all'utente B cifrata con la
sua chiave pubblica con l'algoritmo RSA, insieme al messaggio cifrato con
IDEA. In questo modo solo B può, con la propria chiave Privata, recuperare
la chiave K ed usarla per leggere il resto del messaggio.
|
|
Come detto nei
paragrafi precedenti, gli algoritmi a chiave pubblica risolvono anche il
problema della firma digitale e con PGP è possibile firmare i messaggi, o
meglio una loro sintesi creata tramite l'algoritmo MD5.
|
|
INSTALLAZIONE E CONFIGURAZIONE
Quando si avvia la
procedura di installazione (che è guidata) il programma chiede se si è un
nuovo utente o se si hanno già a disposizione una o più chiavi. Se si è un
nuovo utente, prima di creare la chiave (o le chiavi) consiglio di impostare
il programma nel seguente modo:
avviate PGPkeys
cliccare sul menu Edit>Options, appare così la palette “General”. Togliere
il segno di spunta davanti alla voce “Faster key generation” (permette una
più sicura generazione delle chiavi), più in basso selezionare la voce “Do
not cache passphrase” (serve per evitare di memorizzare in memoria la frase
password). Passiamo dunque alla palette “Servers”, e di default troviamo:
ldap://keyserver.pgp.com
ldap://europe.keys.pgp.com:11370
In genere i servers
delle chiavi comunicano tra di loro scambiandosi le chiavi, ma per
consentire a chiunque desideri comunicare in sicurezza con noi, creare altri
servers: cliccare sul pulsante New,
dalla finestra che appare scegliere il tipo di keyserver dal menu a tendina
type. In questo caso scegliere la voce
PGP Keyserver LDAP,
nel campo Name inseriamo
keyserv.di.unito.it,
le altre voci lasciare come sono. Ripetere la procedura per inserire il
keyserver internazionale cambiando i seguenti parametri: Type:
PGP Keyserver HTTP;
Name: wwwkeys.pgp.net;
Port: 11371.
Poi pubblicare la chiave pubblica su questi keyserver come descritto in un
altro punto di questa pagina.
Passiamo dunque alla
palette “Advanced”, qui come algortimo predefinito consiglio di impostare
IDEA,
in quanto è uno dei più sicuri. Più in basso togliere il segno di spunta
dagli algoritmi TripleDES
e Twofish,
poiché sono insicuri. Le altre opzioni che non ho nominato sono a preferanza
personale.
Per creare una o più chiavi,
procedere nel seguente modo: avviare PGPkeys, fare clic sul menu Keys>New
key…, apparirà la seguente finestra:

Se si fa clic sul
pulsante “Expert” si passa alla modalità per esperti. Cliccando sul pulsante
“Avanti” inserire il nome e l’indirizzo e-mail nei rispettivi campi.
Cliccare ancora sul pulsante “Avanti” ed apparirà la seguente finestra:
Inserire nel primo
campo la Passphrase, che può includere qualsiasi combinazione di caratteri
della tastiera. L’avanzamento della barra “Passphrase Quality” indicherà la
“bontà” della combinazione immessa. Dopo aver immesso la passphrase anche
nel campo Confirmation, fare clic su “Avanti” ed attendere la generazione
della chiave, infine cliccare su “Fine”.
Ricapitolando,
terminata l’installazione e riavviato il computer, l'icona del programma si
posiziona accanto a quella dell'orologio (area Systray), e si hanno ha
disposizione due chiavi: una privata (da conservare molto scrupolosamente,
magari su un floppy disk) e una pubblica. Se dopo il riavvio del computer
non dovesse comparire l'icona del programma accanto all'orologio, fare clic
su Start>Programmi>PGP>PGPtray. La prima cosa da fare è salvare la nostra
chiave su un supporto, perché se la perdiamo non potremo più leggere i
nostri documenti. Dopo aver avviato PGPkeys, selezionare la chiave col
proprio nome e dal menu Keys cliccare su Export, selezionando anche
l'opzione 'include private keys'. Sarà salvata in un file .asc.
PGP prevede un archivio
pubblico elettronico dove sono conservate le vari chiavi pubbliche degli
utenti (sono i server che abbiamo visto sopra). Per inviare le chiavi ai
servers selezionare il menu Server>Send to e poi ad uno ad uno le che
compaiono (tra cui quelli che abbiamo creato noi).
|
|
|
|
Se invece, non
desideriamo pubblicare la chiave su di un server, salviamo la chiave
pubblica (quindi non includere quella privata), e mandiamo poi il file a chi
desideriamo.
Ora dobbiamo importare
le chiavi delle persone con cui comunichiamo. Dal menu Server, scegliamo
Search, impostiamo su quale server vogliamo cercare (in pratica sono gli
stessi dei tre descritti sopra), ci appare una schermata ed inseriremo il
nome della persona. Possiamo scegliere anche di cercare per esempio
l'indirizzo e-mail, oppure altre informazioni. Se una persona ci ha mandato
la sua chiave pubblica in un file .asc, basterà scegliere la voce 'import'
dal menu Keys.
DICHIARARE UNA CHIAVE VALIDA
Per dichiarare valida
una chiave di una persona che l’ha inviata tramite file .asc, cliccare con
il tasto destro del mouse sulla chiave, e dal menu contestuale selezionare
la voce “Sign…”. Apparirà la finestra PGP Sign Keys da cui per prima cosa
bisogna cliccare sul pulsante “More Choices” per visualizzare tutte le
opzioni disponibili:

Analizzo solo le prime
due voci:
-
Non-Exportable:
significa che la chiave è valida ma che rimarrà all’interno del portachiavi
pubblico e non sarà inviata al server dei certificati.
-
Exportable:
la chiave verrà inviata completa di firma al server dei certificati.
Esportando la firma, si dichiara pubblicamente che la chiave è valida. Tutti
coloro che hanno una fiducia completa nella vostra firma si fideranno anche
di questa chiave.
Il riquadro
“Expiration” indica la data di validità:
-
Never:
significa che non scadrà mai
-
Date:
la firma scadrà nella data specificata
Prima di procedere a
firmare la chiave assicurarsi che la stessa appartenga veramente alla
persona interessata mediante la verifica del “fingerprint”. Infatti, il
fingerprint, sarà visualizzato in alto, accanto al nome (in pratica è la
parte dell’immagine sopra che ho ritagliato). Nota: per controllare il
fingerprint, cliccare con il pulsante destro del mouse sulla chiave ,
scegliere la voce “Key Properties” e nel riquadro “Fingerprint” attivata la
voce “Hexadecimal”.
Scegliere il tasto OK
per proseguire, il programma chiaramente ci chiederà di inserire la nostra
passphrase, dopodiché cliccare sul tasto OK.
Tornando al PGPKeys il
programma indicherà che la chiave è valida tramite mediante un cerchio di
colore verde nella colonna “Validity”. Espandendo la chiave, fra le altre
firme noteremo anche la nostra.
Quando si deve
cifrare un documento, dobbiamo porci una sorta di domanda: chi deve essere
in grado di decifrare il messaggio che stiamo per inviare? Ecco la
procedura:
PGP 7
clicchiamo con il
pulsante destro del mouse sull'icona accanto all'orologio e selezionare la
voce PGPtools. Cliccare poi sul secondo pulsante da sinistra. Vi verrà
chiesto di selezionare un file, poi appare la seguente finestra:
|
|
|
|
Questa finestra
permette di selezionare le chiavi pubbliche con cui cifrare. Nella parte
alta sono presenti le chiavi pubbliche (in questo caso la lista è vuota),
cioè chi sarà in grado di decifrare il nostro messaggio (ecco lo scopo della
domanda precedente). Tramite un semplice drag-and-drop, possiamo trascinare
il destinatario che deve ricevere il messaggio cifrato. Chi esegue la
cifratura è presente di default. Premendo sul tasto OK, il file sarà
crittografato, trasformato con estensione .pgp (apparirà quindi con l'icona
a forma di lucchetto), ed è pronto per essere inviato, oppure decifrato da
noi stessi, tramite il pulsante Decrypt/Verify del PGPtools.
|
|
Se, invece di un intero
file, vogliamo cifrare un semplice testo, apriamo il blocco note di Windows,
dopo aver scritto il testo, lo copiamo con CTRL+C, clicchiamo con il
pulsante destro del mouse sull'icona di PGP e dal menu Clipboard, scegliamo
la voce Encrypt. Comparirà la stessa finestra descritta sopra, così da
selezionare le chiavi pubbliche. Premere OK, poi avviare il programma usato
per la posta elettronica e premiamo CTRL+V. Il destinatario dovrà
semplicemente copiare il testo (CTRL+C), selezionare dal programma PGP la
voce Decrypt & Verify dal menu Clipboard, e dovrà inserire la sua chiave
privata per decifrare il testo.
|
|
Ricapitolando dunque
avviene questo: il mittente crittografa il messaggio che vuole inviare con
la chiave pubblica del destinatario, a sua volta in destinatario decripta il
messaggio cifrato con la sua chiave privata.
|
|
Se desideriamo
crittografare un file sull'hard disk che contiene dati importanti per noi, e
che dunque vogliamo proteggere da occhi indiscreti, mettiamo il segno di
spunta alla voce 'Conventional Encryption' quando appare la finestra come
sopra. Spuntiamo tale voce perché è inutile il metodo della chiave pubblica
poiché il file è di nostro possesso.
|
|
Chiaramente possiamo
avere più chiavi pubbliche e private per ogni nostro indirizzo e-mail che
usiamo.
Con la nuova versione
del programma (8 appunto), compatibile con Windows XP, la procedura è
indentica, cambiano solo le voci, ecco in dettaglio:
clic con il tasto
destro del mouse sull’icona PGPTray, selezionare la voce
PGPmail,
cliccare sul secondo pulsante da sinistra ed il resto è identico a quanto
detto sopra.
|
|
PGP E OUTLOOK
EXPRESS
|
|
Al momento
dell'installazione, ci veniva chiesto se installare alcuni Plug-in per
consentire l'abbinamento del programma PGP con i software di posta
elettronica di maggiore utilizzo. Se abbiamo installato quello per Outlook,
scriviamo il messaggio nella finestra come al solito, inseriamo i
destinatari, e poi clicchiamo sul pulsante Encrypt. C'è da dire che PGP non
è nato per essere usato con Outlook Express, quindi i pulsanti potrebbero
non funzionare correttamente. Se ciò dovesse accadere, invece del pulsante
clicchiamo con il pulsante destro sull'icona del programma PGP e scegliamo
la voce di menu Current Window e da qui Encrypt. Ci appare la solita
finestra come nei due punti precedenti. Ci sono due scelte: Secure Viewer,
che aggiunge un elemento di sicurezza contro sofisticate tecniche di
spionaggio industriale. Tuttavia questa opzione non è compatibile con alcune
precedenti versioni di PGP. Quindi, se il messaggio non è proprio segreto
ignorarla. La seconda invece, ci permette di cifrare il messaggio senza
usare la chiave pubblica, e possiamo scegliere una frase convenuta tra noi
ed il destinatario. Così facendo quando il destinatario riceverà la nostra
e-mail crittografata, dal menu di PGP, gli basterà scegliere Current
Windows>Decrypt & Verify, e quindi digitare la frase convenuta.
|
|
Analizzando la
procedura sopra descritta, possiamo dedurre che non sia necessario
installare alcun Plug-in per i programmi di posta elettronica, visto che
seguendo tale procedura non ce ne bisogno. A voi la scelta.
|
|
INVIO MESSAGGI A
DESTINATARI SENZA IL PROGRAMMA PGP
|
|
Supponiamo che un
nostro destinatario non possiede il programma PGP, perché nelle procedure
descritte fino adesso, si pressuppone che il nostro destinatario abbia il
PGP installato. Come fare per mandargli una e-mail sicura? Selezionamo con
il tasto destro del mouse un qualsiasi documento sull'hard disk, e dal menu
contestuale che ci appare selezionare PGP>Create SDA (Self Decrypting
Archive), oppure PGP>Encrypt, poi spuntiamo la casella Self Decrypting
Archive (la casella Conventional Encryption si auto-seleziona) come nella
figura in basso.
|
|
|
|
Vi verrà chiesto un
nome per il nuovo file cifrato (attenzione a non modificare l'estensione che
gli viene assegnata automaticamente). Il documento così potrà essere
allegato a qualsiasi messaggio di posta elettronica, ed il destinatario lo
potrà leggere inserendo la frase convenuta (che abbiamo scelto tra di noi
prima) al momento dell'apertura. Il documento si auto-decifrerà da solo.
|
|
Note
|
|
Esistono tuttavia altri
programmi crittografia, anche se, secondo me, il migliore è PGP; gli altri
software non permettono la gestione a doppia chiave, quindi possono andare
bene per file che devono restare sul proprio computer, senza scambio,
altrimenti si è costretti a rivelare la propria password ad altri.
Eccone qualcuno:
|
|
-
FineCrypt,
programma freeware che permette di scegliere quale algoritmo si vuole usare
fra i tanti di crittografia. Penso sia uno dei migliori, da provare!
|
|
-
Blowfish Advanced CS
|
|
-
Crypto 2000
|
|
-
DeCritt
|
|
-
HandyBits EasyCrypto Deluxe,
programma freeware basato sull'algoritmo BlowFish, anche in lingua italiana;
|
|
-
SafeGuard PrivateCrypto
|
|
-
KPKFile
|
|
-
Camouflage,
permette di nascondere all'interno di un file, un'altro file ma codificato;
|
|
Volevo fare un'altra
precisazione: chiunque abbia bisogno di proteggere un file, o più di uno,
magari comprimendolo, avrà usato il famoso Winzip. Questo programma infatti,
permette anche di assegnare una password agli archivi compressi. Io
consiglio di non usarlo. Perché?
Perché esiste un programma che si chiama Advanced ZIP Password Recovery,
prodotto dalla
Elcomsoft, il quale permette di
trovare la password degli archivi Winzip in pochi minuti. Quindi il Winzip è
un valido programma per la compressione dei file, ma per la sicurezza di
dati importanti, non è il caso. Possiamo fare così: comprimiamo i nostri
file importanti con Winzip (o WinRar che possiede un algoritmo di
compressione ancora più potente di Winzip) e poi con il programma PGP (o
FineCrypt) proteggiamo l’archivio .zip.
Attenzione: non tutti i
programmi sopra elencati permettono di proteggere gli archivi compressi. Fra
questi, per esempio EasyCrypto Deluxe. L'ho provato per proteggere file .zip
ma il programma si blocca (installato su sistema Windows XP). Invece PGP, o
FineCrypt non si blocca, oltre a possedere egli stesso un algoritmo di
compressione.
|
|
Stesso discorso
possiamo farlo con i file di Word, Excel, Access. Esistono programmi, sempre
prodotti dalla casa russa
Elcomsoft che permettono di
scovare le password di tali file della suite Office.
|
|
Tutti i software di
crittografia li trovate su:
http://volftp.mondadori.com
http://www.tucows.com
http://www.download.com
|
Torna indietro
- Torna alla HomePage
Nuova pagina 1
|