Spesso i clienti mi espongono i loro problemi relativi alla privacy, ad esempio delle e-mail aziendali o dei files su disco. Anche se i certificati X.509 (SSL) si stanno largamente diffondendo, essi rimangono comunque legati ad un concetto gerarchico basati sulla “fiducia” di una Certification Authority che mette “il bollino di garanzia” sui certificati. Il problema è che non sempre le Certification Autorities verificano l’identità del richiedente e spesso in alcune realtà aziendali l’utilizzo di forme gerarchiche aumenta la complessità di gestione.
Sebbene inventato nel 1991 prima di X.509, PGP adotta un concetto di peer-2-peer che -a mio avviso- semplifica spesso la gestione della crittografia non solo all’interno della propria azienda, ma anche tra individui e entità diverse tra loro, pur mantenendo alti standard di sicurezza. PGP si basa infatti sullo stesso meccanismo a chiave pubblica/privata (RSA, IDEA e altri) su cui è basato anche la crittografia X.509.
Personalmente apprezzo in PGP la possibilità di criptare un testo o un file con più di una chiave, ad esempio utilizzando -oltre alla propria- anche una chiave di sicurezza che viene tenuta in un CD in cassaforte (o un key recovery agent).
Prendiamo il seguente esempio complesso che mi è stato sottoposto da un importante ente pubblico. Il presidente vuole criptare alcuni files, ma vuole contemporaneamente farne un backup in caso di smarrimento/furto del portatile, e vuole far si che se viene persa la smartcard possa sempre recuperare il file. L’utilizzo della crittografia del disco non proteggerebbe il file in caso di backup su un server, e lo smarrimento della smart card o della password renderebbe inutilizzabile il portatile e i documenti in essa contenuti. PGP può aiutarci in questo esempio perche la crittografia viene applicata a livello di file (quindi protegge anche il file sul server) e un eventuale smarrimento della smartcard può essere sopperita utilizzando il CD di emergenza in cassaforte.
Sarebbe utile poter implementare la crittografia PGP come alternativa al più gerarchico X.509: in questo modo si delega all’utente finale la creazione ed il mantenimento delle chiavi. Se qualcuno vuole poi parlare di verifica dell’utente, è sempre possibile pubblicare le chiavi su un keyserver privato e metterle di default in “disable”, finchè una persona di fiducia (ad es. il Security Officer designato) non le verifichi di persona.