| PrecedenteRSA | PGP - Pretty Good Privacy | SeguenteLegislazione |
PGP (Pretty Good Privacy) è un criptosistema (sistema di decodificazione) inventato da Philip Zimmermann, un analista informatico. Philip Zimmermann ha lavorato dal 1984 al 1991 ad un programma che permette di far funzionare RSA sui personal computer (PGP).
Tuttavia, dato che utilizzava RSA senza l'accordo dei suoi autori, gli ci sono voluti 3 anni di processi per poterlo vendere a circa 150$ dal 1993.
Esso è molto rapido e sicuro, cosa che lo rende praticamente impossibile da criptanalizzare.
PGP è un sistema di criptografia ibrido, che usa una combinazione di funzionalità della criptografia a chiave pubblica e di quella simmetrica.
Quando un utente codifica un testo con PGP, i dati sono innanzi tutto compressi. Questa compressione di dati permette di ridurre il tempo di trasmissione per qualsiasi mezzo di comunicazione, di economizzare lo spazio sul disco e, soprattutto, di rinforzare la sicurezza criptografica.
La maggiorparte dei criptoanalisti sfruttano i modelli trovati nei testi in chiaro per crackare la codificazione. La compressione riduce questi modelli nel testo in chiaro, migliorando considerabilmente di conseguenza la resistenza alla criptanalisi.
In seguito, l'operazione di codificazione avviene principalmente in due tappe:
Questo metodo di codificazione associa la facilità d'uso del criptaggio della chiave pubblica alla velocità del criptaggio convenzionale. La codificazione convenzionale è circa 1000 volte più rapida rispetto agli algoritmi di codificazione a chiave pubblica. La codificazione a chiave pubblica risolve il problema della distribuzione delle chiavi. Utilizzati congiuntamente, questi due metodi migliorano la performance e la gestione delle chiavi, senza per altro compromettere la sicurezza.
PGP offre le seguenti funzionalità :
Un certificato PGP comprende, fra l'altro, le informazioni seguenti:
Il fatto che un solo certificato possa contenere più firme è uno degli aspetti unici del formato di certificato PGP. Molte persone possono firmare il paio di chiave/identificazione per attestare con certezza l'appartenenza della chiave pubblica ad uno specifico detentore. Alcuni certificati PGP sono composti da una chiave pubblica con più denominazioni, ognuna con un modo di identificazione del detentore della chiave diversa (ad esempio, il nome e l'account di messaggeria aziendale del detentore, lo pseudonimo e l'account di messaggeria personale del detentore, la sua fotografia, e tutto ciò, in un solo certificato).
In un certificato, una persona deve affermare che una chiave pubblica e il nome del detentore della chiave siano associati. Chiunque può validare i certificati PGP. I certificati X.509 devono essere sempre validati da un'autorità di certificazione o da una persona designata dalla CA. I certificati PGP prendono anche in carico una struttura gerarchica attraverso una CA per la validazione dei certificati.
Vi sono molteplici differenze tra un certificato X.509 e un certificato PGP. Le più importanti sono indicate qui-sotto:
Per creare il vostro certificato PGP, dovete chiedere l'emissione di un certificato X.509 presso un'autorità di certificazione e ottenerlo;
Di regola, la CA (Certification authority - autorità di certificazione) ispira totale fiducia per stabilire la validità dei certificati e effettuare tutto il processo di validazione manuale. Ma, è difficile stabilire un rapporto di fiducia con le persone che non sono state esplicitamente considerate affidabili dalla vostra CA.
In un ambiente PGP, ogni utente può agire come un'autorità di certificazione. Può quindi validare il certificato di chiave pubblica di un altro utente PGP. Tuttavia, un simile certificato può essere considerato come valido da un altro utente unicamente se un terzo riconosce colui che ha validato questo certificato come un corrispondete affidabile. Cioè, se si rispetta ad esempio la mia opinione secondo la quale le chiavi degli altri sono corrette soltanto se sono considerato come un corrispondete affidabile. In caso contrario, la mia opinione sulla validità delle altre chiavi è controversa.
Supponiamo, ad esempio, che il vostro portfolio di chiavi contiene la chiave di Alice. Voi l'avete validata e, per indicarlo, la firmate. Inoltre, sapete che Alice è molto precisa per quanto riguarda la validazione delle chiavi degli altri utenti. Di conseguenza, attribuite una fiducia completa alla sua chiave. Alice diventa così un'autorità di certificazione. Se firma la chiave di un altro utente, questa chiave apparirà come valida nel vostro portfolio di chiavi.
Solo il detentore di un certificato (il detentore della propria chiave privata corrispondente) o un altro utente, designato come autorità di revoca dal detentore del certificato, ha la possibilità di revocare un certificato PGP. La designazione di un'autorità di revoca è utile, dato che la revoca, da un utente PGP, del suo certificato è spesso dovuta alla perdita della password complessa della chiave privata corrispondente. Ora, questa procedura può unicamente essere effettuata se è possibile accedere alla chiave privata. Un certificato X.509 può unicamente essere revocato dal suo emettitore.
Quando un certificato è revocato, è importante avvertire i potenziali utenti. Per informare la revoca dei certificati PGP, il metodo abituale consiste nel piazzare questa informazione su un server di certificati. Così, gli utenti che vogliono comunicare con voi sono avvertiti di non usare questa chiave pubblica.
Articolo scritto da Sylvain Lorin
Fonte: http://www.pgpi.org/doc/pgpintro/, un'ottima referenza.
Ultime modificazione ilvenerdì 6 febbraio 2009 alle 16:52:03.