Avanti Indietro Indice

5. PGP e GnuPG

Prima di usare una qualsiasi delle versioni di PGP con Mutt-i, sarà necessario configurare PGP appropriatamente in modo tale che il file delle chiavi pubbliche (public keys ring) e quello delle chiavi private (private keys ring) esistano. Conviene provare PGP dalla linea di comando per vedere se firma e cifra correttamente.

Esistono due versioni di PGP per Unix: la 2.6.3(i) e 5.0(i), che chiameremo PGP2 e PGP5 rispettivamente. GnuPG è un nuovo programma di cifratura, sviluppato recentemente, in uno stato di sviluppo avanzato, open source e gratuito, sotto molti aspetti migliore di PGP (si veda il GnuPG mini howto http://www.dewinter.com/gnupg_howto).

Si chiarirà anche il fatto che PGP, essendo un programma sviluppato negli Stati Uniti, è sottoposto ad alcune leggi restrittive riguardanti l'esportazione di programmi contenenti codice criptografico. Questa è la ragione dell'esistenza di una versione internazionale di quasi tutte le versioni binarie, cosa che si può notare dalla presenza della lettera "i" (pgp - pgpi).

5.1 PGP2

PGP2 genera chiavi con l'algoritmo RSA http://www.rsa.com e utilizza IDEA http://www.ascom.ch come algoritmo di cifrazione. Entrambi gli algoritmi sono proprietari e il loro uso è regolato dai rispettivi brevetti.

Per utilizzarlo correttamente, lo si deve installare e avere una directory chiamata ~/.pgp, contenente il file di configurazione pgp-i.conf e i file delle chiavi pubbliche e private, pubring.pgp and secring.pgp rispettivamente.

5.2 PGP5

Le chiavi generate da PGP5 sono di tipo DSS/DH (Digital Signature Standard / Diffie-Hellman). PGP5 usa CAST, Triple-DES e IDEA come algoritmi di cifratura. PGP5 funziona con dati cifrati o firmati utilizzando RSA (PGP2) e, per farlo, utilizza le chiavi generate da PGP2, dal momento che PGP5 non può generare quel tipo di chiavi. Al contrario, PGP2 non è in grado di utilizzare le chiavi DSS/DH create da PGP5. Questo comporta problemi di (in)compatibilità, dal momento che molti continuano ad usare PGP2 sotto Unix/Linux.

Per utilizzare PGP5 correttamente, nella directory ~/.pgp ci devono essere il public e il private key ring (pubring.pkr e secring.skr rispettivamente) e il file di configurazione pgp.cfg. Nel caso in cui si abbiano installate entrambe le versioni di PGP (supponiamo che PGP2 sia stato installato e configurato prima di PGP5), creeremo il file di configurazione ~/.pgp/pgp.cfg di PGP5 come un link simbolico al file ~/.pgp/pgp-i.conf

~/.pgp$ ln -s pgp-i.conf pgp.cfg

e aggiungeremo le seguenti linee in fondo al file ~/.pgp/pgp-i.conf:

PubRing = "~/.pgp/pubring.pkr"
SecRing = "~/.pgp/secring.skr"
RandSeed = "~/.pgp/randseed.bin"

I file con i key ring di versioni diverse possono coesistere senza alcun problema nella stessa directory.

5.3 GnuPG

GnuPG presenta le stesse funzionalità dei precedenti programmi. A differenza di PGP, GnuPG non usa algoritmi con brevetti restrittivi. PGP è gratuito per uso personale, ma non per uso commerciale e il suo sviluppo non è open. Si può utilizzare gratuitamente GnuPG anche per scopi commerciali ed è open source, come il nostro sistema operativo preferito (anche il suo sviluppo e l'implementazione viene fatta principalmente sotto Linux):

Le chiavi generate da GnuPG sono di tipo DSA/ElGamal (Digital Signature Algorithm, noto anche come DSS). E' del tutto compatibile con PGP, eccetto per l'utilizzo da parte di quest'ultimo di algoritmi brevettati come RSA e IDEA. Comunque, è possibile implementare una certa compatibilità tra loro (vedi il GnuPG mini HOWTO http://www.dewinter.com/gnupg_howto per quanto concerne l'interazione con PGP2 e PGP5).


Avanti Indietro Indice