Pretty Good Privacy
Da Wikipedia, l'enciclopedia libera.
Pretty Good Privacy (PGP) è un programma che permette di usare autenticazione e privacy crittografica. Nelle sue varie versioni è probabilmente il crittosistema più usato al mondo. In Applied Cryptography, il crittografo Bruce Schneier lo ha descritto come il modo per arrivare "probabilmente il più vicino alla crittografia di livello militare" (2nd ed., p. 587).
PGP è stato originariamente sviluppato da Phil Zimmermann nel 1991. Il nome gli è stato suggerito da una drogheria di Lake Wobegon, la città natale dello speaker radio Garrison Keillor. La drogheria si chiamava "Ralph's Pretty Good Grocery" ("la drogheria assai buona di Ralph") e il suo slogan era "se non lo puoi trovare da Ralph, probabilmente puoi anche farne a meno".
Indice |
[modifica] PGP come standard Internet
PGP è stato così influente che il suo progetto è stato trasformato dalla IETF in uno standard Internet chiamato OpenPGP. Le versioni di PGP più recenti dello standard sono, bene o male, con esso compatibili. La compatibilità tra versioni diverse di PGP e la storia del lavoro di standardizzazione di OpenPGP sono entrambi descritti sotto.
[modifica] Sicurezza di PGP
Quando usato in modo appropriato PGP può fornire una sicurezza molto elevata; osservatori informati credono che nemmeno le agenzie governative come la NSA siano capaci di forzare la cifratura di messaggi protetti con PGP, se creati in modo corretto.
PGP è più facile da usare di tanti altri crittosistemi ma, come sempre in crittografia, l'implementazione e l'uso possono diminuire anche di molto l'effettiva sicurezza raggiunta. Gli errori nell'implementazione possono sempre essere presenti e un uso incauto può rendere vana la protezione di un qualsiasi dato. Ogni crittosistema può essere non sicuro -- per quanto pensato bene. Generalmente un uso corretto prevede di leggere (e seguire) le istruzioni della documentazione utente.
Al contrario di protocolli di sicurezza come SSL, che proteggono i dati solo 'in transito' (ovvero solo mentre attraversano la rete), PGP può essere utilizzato anche per proteggere dati su disco, in backup, etc.
Nonostante questo, in determinate circostanze, anche un uso corretto può non essere sufficiente. In almeno un caso l'FBI ha ottenuto un mandato per permettergli di installare un keylogger (un tipo di spyware) sul computer di un sospettato (vicino a Philadelphia); quando hanno raccolto le informazioni, hanno scoperto anche la sua passphrase PGP e, quindi, ottenuto accesso a tutti i suoi file e email protetti. È stato processato e incriminato.[citazione necessaria]
[modifica] Limitazioni
Nessun crittosistema, PGP incluso, può proteggere informazioni che sono disponibili (o possono essere ottenute) in altro modo. PGP non può impedire che le informazioni che l'utilizzatore vuole proteggere possano essere ottenute tramite intercettazione, ricatto o la semplice ricerca di documenti inavvertitamente gettati nella spazzatura. La maggioranza degli utenti di crittosistemi non prende in considerazione questo tipo di attacchi, da cui è molto più difficile difendersi che dai più "equi" attacchi basati solamente sulla crittanalisi. La vera sicurezza delle informazioni richiede utenti consapevoli dei diversi rischi e sistemi crittografici progettati e realizzati nel modo più attento possibile. La sicurezza assoluta è probabilmente impossibile.
[modifica] PGP ed email
Anche se col PGP è possibile cifrare ogni tipo di dato o file, l'uso prevalente è per proteggere le e-mail che non hanno un sistema di sicurezza nativo. Il PGP e l'S/MIME sono i due sistemi di sicurezza per le e-mail attualmente specificati come standard dal NIST.
Sono disponibili plug-in che implementano le funzionalità del PGP per molte delle più popolari applicazioni e-mail (come Outlook, Outlook Express, Eudora, Evolution, Mutt, Mozilla Thunderbird, Mail e molti altri). Molti sono inclusi con molte distribuzioni PGP.
Dal punto di vista della sicurezza, ognuno di questi plug-in è un PGP indipendente; ognuno potrebbe essere affetto da errori di implementazione o interagire in maniera insicura con il PGP o altri software. Utilizzare questi plug-in non fornisce necessariamente lo stesso livello di sicurezza assicurato dall'uso del PGP in maniera corretta e come applicazione a sé stante. Al più, questi programmi aggiuntivi possono fornire la stessa sicurezza del PGP e nel caso peggiore potrebbero non fornire alcuna sicurezza. Distinguere tra questi casi non è banale neanche per gli esperti nel campo. Il miglior consiglio per il normale utente è di provare l'intero sistema mandando un messaggio a sé stesso o ad un conoscente periodicamente, specialmente dopo ogni modifica od aggiornamento del software. La modalità di utilizzo più sicura consiste nel cifrare a mano e firmare messaggi ed e-mail manualmente. Ad ogni modo, come tutte le altre considerazioni sulla sicurezza, si arriva necessariamente ad un compromesso fra i vincoli del sistema e le esigenze dell'utente. Comunque, qualunque sia il rischio in un sistema di sicurezza di qualità, non utilizzarlo è comunque più rischioso.
[modifica] Come funziona PGP
PGP usa sia la crittografia asimmetrica (detta anche a chiave pubblica) sia quella simmetrica, e fino ad un certo punto una Infrastruttura a chiave pubblica (PKI) con qualche somiglianza (ma molte differenze) con lo standard dei certificati d'identità X.509, che precede. PGP usa la crittografia a chiave asimmetrica, nella quale il destinatario del messaggio ha generato precedentemente una coppia di chiavi collegate fra loro; una chiave pubblica ed una privata. La chiave pubblica del destinatario serve al mittente per cifrare una chiave comune (detta anche chiave segreta o convenzionale) per un algoritmo di crittografia simmetrica; questa chiave viene quindi usata per cifrare il testo in chiaro del messaggio. Molte chiavi pubbliche di utenti PGP sono a disposizione di tutti dai numerosi key server (server delle chiavi) PGP sparsi per il mondo, che operano come mirror reciproci.
Il destinatario di un messaggio protetto da PGP lo decifra usando la chiave di sessione con l'algoritmo simmetrico. La chiave di sessione è inclusa nel messaggio in maniera criptata e viene decifrata usando la chiave privata del destinatario. L'utilizzo di due cifrature è giustificato dalla notevole differenza nella velocità di esecuzione tra una cifratura a chiave asimmetrica ed una a chiave simmetrica (l'ultima è generalmente molto più veloce). Ci sono inoltre delle vulnerabilità crittografiche nell'algoritmo a chiave asimmetrica utilizzato da PGP quando viene usato per cifrare direttamente un messaggio.
Una strategia simile può essere usata per capire se un messaggio è stato alterato, o se è stato mandato effettivamente da chi dice di essere il mittente. Per fare entrambe le cose, il mittente usa PGP per 'firmare' il messaggio con l'algoritmo di firma RSA o DSA. Per fare questo, PGP calcola un 'hash' (anche chiamato message digest) dal testo in chiaro, e crea poi da questo hash la firma digitale usando la chiave privata del mittente.
Il destinatario del messaggio calcola il message digest dal testo in chiaro decifrato, e poi usa la chiave pubblica del mittente ed il valore del message digest firmato con l'algoritmo di firma. Se la firma corrisponde al message digest del testo in chiaro ricevuto, si presuppone (con un grande margine di sicurezza) che il messaggio ricevuto non sia stato alterato né accidentalmente né volontariamente da quando è stato firmato. Questa presunzione si basa su diverse considerazioni: è poco probabile, visti gli algoritmi ed i protocolli usati in PGP, che un avversario possa creare una firma per un messaggio qualsiasi, e quindi un messaggio ricevuto che superi questo test dev'essere stato mandato da chi dice di essere il mittente. Gli esperti in sicurezza chiamano spesso questa proprietà 'non-repudation', non si può ripudiare la paternità del messaggio.
In ogni caso chiunque possegga la parte privata delle chiavi può facilmente creare una firma corretta per ogni cosa. In un mondo di e-mail virus, rootkits,Trojan, ed altri malware, ed agenti dell'FBI con ordinanze della corte, il termine 'non-repudation' dev'essere usato con le pinze, dato che le chiavi private possono essere compromesse (e copiate) in maniera illegale. Ma questa è una affermazione valida per 'tutti' i sistemi che utilizzano algoritmi a chiave asimmetrica per la firma digitale e quindi inglobino il concetto di non-repudation. PGP non è particolarmente vulnerabile, ma Zimmerman è stato saggio e non solo divertente, nel chiamare il suo sistema "pretty good" (quasi buono).
Sia quando si cifra un messaggio che quando si verifica la firma, è fondamentale che la chiave pubblica utilizzata per mandare il messaggio ad una persona o ente appartenga effettivamente al destinatario. Scaricare una chiave pubblica da qualche parte non è per niente una garanzia di questa corrispondenza; lo spoofing intenzionale od accidentale è possibile. PGP include delle precauzioni per la distribuzione delle chiavi pubbliche in 'certificati d'identità' i quali sono costruiti crittograficamente, in maniera tale da rendere qualsiasi manomissione o disturbo accidentale facilmente rivelabile. Purtroppo rendere un certificato effettivamente impossibile da modificare senza lasciare tracce non è sufficiente. Questo può prevenire la manomissione solo dopo la creazione del certificato, non prima. Gli utenti devono anche verificare in qualche maniera che la chiave pubblica in un certificato appartenga effettivamente alla persona o ente che ne reclama la paternità. Per questo PGP racchiude un sistema di 'voto' dei certificati; è chiamata web of trust (letteralmente, "rete di fiducia"). PGP ha anche sempre incluso una maniera per cancellare i certificati d'identità che possono essere diventati inutilizzabili; questo è, più o meno, l'equivalente dei certificate revocation list (certificati di revoca) dei sistemi PKI più centralizzati. Le versioni più recenti di PGP supportano anche una data di scadenza per i certificati.
Questa cautela obbligatoria nell'accettare le chiavi pubbliche appartenenti veramente ad altri utenti non è una prerogativa di PGP. Tutti i sistemi di crittografia a chiave pubblica e privata hanno lo stesso problema, anche se in apparenza un po' diversi, e non esiste ancora una soluzione pienamente soddisfacente. Il sistema di PGP, almeno, permette all'utente di decidere se usare o meno il sistema di voto, mentre molti altri sistemi PKI richiedono invece che ogni certificato venga confermato da una CA (Certification Authority) centrale.
[modifica] I primordi
PGP fu interessato dalle restrizioni sulla esportazione della crittografia del governo USA, già dagli albori. Questo inconveniente dimostra alcuni dei problemi politici che circondano la crittografia moderna di qualità e costituisce, purtroppo, un pasticcio contingente e difficile da seguire. Che minaccia tempi di prigionia piuttosto elevati e multe salate.
Zimmermann produsse la prima versione del PGP nel 1991. Era stato per molto tempo un attivista anti-nucleare e creò il PGP in modo che i suoi compagni potessero usare sistemi BBS e memorizzare messaggi e files in tutta sicurezza. Non era richiesta licenza se l'uso non era commerciale, non c'era spesa neanche simbolica e veniva fornito il codice sorgente. PGP si diffuse su Usenet e di qui su Internet.
[modifica] Limitazioni all'esportazione, indagini giudiziarie e ricadute politiche
In breve tempo, il PGP iniziò a diffondersi al di fuori dei confini degli USA, e nel febbraio 1993 Zimmermann fu formalmente indagato dal governo degli Stati Uniti con l'accusa di "esportazione di armi senza apposita licenza".
In molti trovarono difficilmente comprensibile questa accusa e fu osservato, in tono satirico, che un programma software può facilmente diventare un'arma con l'aggiunta di un detonatore e un po' di esplosivo.
Ciononostante, secondo quanto stabilito dal Regolamento per l'Esportazione dei prodotti e servizi USA i sistemi di crittografia che utilizzassero una chiave maggiore di 40-bit erano considerati come munizioni e, dato che il PGP ha sempre adottato chiavi maggiori di 128 bit, all'epoca rientrava perfettamente nella casistica. Oltretutto le sanzioni, per chi fosse riconosciuto colpevole, erano e rimangono rilevanti. I regolamenti all'export statunitensi sono ancora in vigore ma, nel corso della seconda metà degli anni Novanta, hanno subito importanti modifiche: la giurisdizione è stata assegnata al Dipartimento del Commercio invece di essere dipendente dal Dipartimento di Stato; i sistemi di crittografia sono stati riclassificati come duplice uso, invece di essere considerati come munizioni; il processo di approvazione è stato semplificato nel 2000; infine la lunghezza della chiave di norma ammessa è stata portata (in parecchi e confusi passaggi) oltre la soglia dei 40 bits.
Dal 2000 in poi il rispetto dei regolamenti è diventato inoltre più semplice. Ad esempio, nei primi anni Novanta, l'approvazione di una domanda di export doveva ricevere - per definizione - un'approvazione esplicita. Dal 2000 in poi, invece, si ha un periodo di attesa di 30 giorni durante il quale l'approvazione può essere negata, altrimenti vige il principio del silenzio-assenso. Sono state inoltre facilitate le procedure per approvare il codice sorgente, rispetto alla programmazione orientata agli oggetti, come pure altre facilitazioni per sviluppatori open source o per piccole aziende. Prima di imbarcarsi in un importante progetto crittografico che potrebbe essere interessato da tali regolamentazioni, sarebbe comunque il caso di consultare un avvocato che sia esperto degli aspetti legali legati alla crittografia.
Come conseguenza delle modifiche normative introdotte il PGP non è, attualmente, più definibile come "arma non esportabile" e può essere utilizzato (ed esportato) ovunque (a condizione che la legislazione locale lo consenta). Inoltre l'incriminazione a carico di Zimmerman è stata archiviata senza che siano state rubricate condotte criminali in capo allo stesso o ad altri soggetti.
Dal momento che la regolamentazione statunitense sull'export non è comunque universalmente applicabile, il PGP, dopo il suo rilascio, acquisì un seguito considerevole in tutto il mondo. Tra gli utilizzatori e gli estimatori vi erano sia dissidenti nei paesi totalitari (alcune affezionate lettere di questi ultimi a Zimmerman sono state pubblicate ed utilizzate nelle deposizioni tenutesi davanti al Congresso statunitense), liberali in diverse parti del mondo (cfr. le pubblicazioni delle deposizioni di Zimmerman nel corso di varie udienze) nonché gli attivisti della 'libera comunicazione' che si autodefiniscono cyberpunk; questi ultimi si fecero promotori sia della pubblicizzazione che della diffusione del PGP (per i dettagli vedi diversi loro manifesti).
[modifica] I problemi con i brevetti
Le versioni iniziali di PGP hanno avuto anche dei problemi con i brevetti già registrati. La prima versione ricorreva a un cifrario progettato dallo stesso Zimmermann e denominato Bass-O-Matic da uno sketch del Saturday Night Live in cui si utilizzavano dei pesci e dei tritatutto in cucina. Ben presto ci si accorse però che questo cifrario non era sicuro, così venne rimpiazzato dal cifrario IDEA. Entrambi gli algoritmi, sia quello per la chiave simmetrica IDEA che quello per la chiave asimettrica RSA, sono stati brevettati e per utilizzarli è necessaria un'autorizzazione. All'epoca ci fu un acceso dibattito sul fatto che Zimmermann avesse avuto l'autorizzazione per utilizzare il RSA nel PGP. A tal proposito, Zimmermann dichiarò che l'allora RSA Data Security (operativa adesso come RSA Security), in uno dei primissimi incontri, gli avesse dato l'autorizzazione purché fosse a scopo non-commerciale mentre RSA smentiva tutto quanto. Di conseguenza, fu un reclamo partito dalla RSADSI alla Dogana statunitense a creare il cosiddetto caso Zimmermann sull'uso dell'algoritmo RSA nel PGP.
Per complicare ulteriormente il quadro, l'algoritmo RSA venne brevettato solamente negli USA (questo per la difficoltà di rispondere alle varie modulistiche di richiesta brevetti nel mondo) con il risultato di poter essere utilizzato liberamente (tenendo sempre conto delle problematiche di brevetto viste in precedenza) in tutte le altre nazioni. Ciò nonostante, gli inventori / proprietari di IDEA furono decisamente più liberali negli USA che nell'Unione Europea. E se non ci fosse già abbastanza confusione, il brevetto sull'algoritmo RSA era parzialmente controllato dal MIT attraverso il proprietario del brevetto, il RSADSI: gli inventori del RSA lavoravano tutti al MIT al momento della sua creazione.
In qualunque modo andò la disputa Zimmermann/RSADSI, il MIT ebbe pochi problemi con il PGP; invece, si trovò parecchio in difficoltà a causa della posizione ostile del RSADSI , contraria all'uso non commerciale del RSA nel PGP. Il risultato del conflitto sulla licenza del RSA su un fork di PGP in:
- una versione USA (conforme al brevetto RSA) che usa una libreria crittografica shareware dell'RSA
- una versione internazionale che usa il codice RSA originale creato da Zimmermann ed i suoi collaboratori
La versione USA fu distribuita direttamente dallo stesso MIT, insieme ad altri, attraverso Internet, le BBS ed utenti e gruppi di systemi di comunicazione privata come AOL e CompuServe. Alla fine sul sito del MIT, c'era il requisito che l'indirizzo email al quale PGP sarebbe stato inviato fosse negli USA od in Canada, e che il ricevente fosse residente in uno dei due stati.
In Norvegia, Ståle Schumacher Ytterborg sviluppò e mantenne la versione internazionale del PGP, che venne chiamata PGP-i (dove i sta per internazionale). Era desiderabile al tempo che la versione internazionale fosse sviluppata e mantenuta fuori dagli USA per evitare ulteriori difficoltà con le regolamentazioni USA sull'esportazione e con il brevetto RSA.
[modifica] Recenti sviluppi
Durante tutta questa agitazione, il team di Zimmermann stava lavorando ad una nuova versione di PGP chiamata PGP 3. Questa nuova versione doveva avere considerevoli miglioramenti nella sicurezza, compresa una nuova struttura di certificato che non aveva i piccoli problemi di sicurezza dei certificati usati da PGP 2.x oltre che permettere ad un certificato di avere chiavi separate per la firma e per la cifratura. Inoltre le passate negative esperienze con brevetti e problemi di esportazione li portò ad evitare completamente i brevetti. PGP 3 ha introdotto l'uso dell'algoritmo simmetrico CAST-128 (chiamato anche CAST5) e degli algoritmi asimmetrici DSA e Elgamal, nessuno di questi coperto da brevetto.
[modifica] PGP diventa commerciale
Dopo l'indagine terminata nel 1996, Zimmermann ed il suo gruppo fondarono una compagnia per produrre nuove versioni di PGP. Si fusero con Viacrypt (alla quale Zimmermann aveva venduto i diritti commerciali di PGP e che aveva acquistato la licenza RSA direttamente dalla RSADSI), che cambiò nome in PGP Incorporated. Il nuovo team Viacrypt/PGP cominciò a lavorare alle nuove versioni di PGP basate su PGP 3. A differenza di PGP 2, che aveva esclusivamente una interfaccia a linea di comando, PGP 3 fu progettato sin dall'inizio per essere una libreria software, permettendo agli utenti di lavorare sia da linea di comando che grazie ad una interfaccia grafica. L'accordo originale tra Viacrypt e il gruppo di Zimmermann precisava che Viacrypt avrebbe rilasciato versioni con numeri pari, mentre Zimmermann con numeri dispari. Viacrypt, quindi, creò una nuova versione (basata su PGP 2) che chiamò PGP 4. Per eliminare il dubbio che PGP 4 fosse un successore di PGP 3 (PGP 4 derivava appunto da PGP 2), PGP 3 fu rinominato e rilasciato come PGP 5 nel Maggio del 1997.
All'interno di PGP Inc., c'erano ancora dubbi riguardo ai brevetti. RSADSI criticava la cessione della licenza RSA della Viacrypt alla nuova società nata dalla fusione dei due gruppi. PGP Inc. adottò un'informale standard interno chiamato Unencumbered PGP (letteralmente, PGP senza intralci): "non usare nessun algoritmo con problemi di licenza".
[modifica] OpenPGP e nuovi programmi simil-PGP
Data l'importanza mondiale di PGP molti sentivano il bisogno di scrivere un proprio software che fosse interoperabile con PGP5. Il team Unencumbered PGP all'interno della PGP Inc. ha convinto Phil Zimmermann e il resto degil esecutivi della PGP Inc. che uno standard aperto per PGP fosse critico per loro e per tutta la comunità crittografica. Già nel 1997 esistevano software compatibili con PGP, tra i quali un software della compagnia belga Veridis (chiamata Highware a quel tempo) che aveva comprato una licenza per l'uso del codice di PGP 2 direttamente da Zimmermann.
Nel giugno 1997 la PGP Inc. ha proposto al IETF la creazione di uno standard chiamato OpenPGP. Hanno dato il permesso al IETF di usare il nome OpenPGP per descrivere questo nuovo standard e qualsiasi programma che lo supportasse ('PGP', 'Pretty Good Privacy' e 'Pretty Good' sono tutti marchi registrati della PGP Corporation, al 2002). Lo IETF ha accettato la proposta e ha creato lo OpenPGP Working Group.
OpenPGP è diventato uno standard Internet: è definito dalle RFC 2440 e 3156. La Free Software Foundation ha sviluppato il proprio programma OpenPGP-compatibile chiamato GNU Privacy Guard (GnuPG), così come hanno fatto anche altri produttori. GPG è, naturalmente, disponibile con licenza GNU General Public License (GPL). Lo sviluppo è stato supportato da fondi stanziati dal governo tedesco. OpenPGP è sempre sotto sviluppo attivo e il successore della RFC 2440 è in fase di finalizzazione, alla metà del 2004.
[modifica] L'acquisizione della Network Associates
Nel Dicembre del 1997, la PGP Inc. venne acquistata dalla Network Associates, Inc., e Zimmermann ed il gruppo PGP divennero suoi impiegati. La NAI continuò a sperimentare l'esportazione attraverso la pubblicazione del software, diventando la prima compagnia ad avere una strategia di esportazione legale, grazie alla pubblicazione del codice sorgente. Sotto questa protezione, il team PGP aggiunse al programma originale nuove funzionalità, come la crittazione dei dischi, firewall per desktop, rilevamento delle intrusioni, e le VPN di IPsec. Dopo la legalizzazione delle esportazioni del 2000 non fu più necessario pubblicare il codice sorgente, e la NAI smise di farlo, nonostante le obiezioni del gruppo PGP. Gli utenti di PGP sparsi in tutto il globo furono decisamente delusi, ed inevitabilmente, si formarono alcune teorie cospirative contro la NAI.
All'inizio del 2001 Zimmermann lasciò la NAI. Ha lavorato come Crittografo Capo per la Hush Communications, che forsnisce un programma per email basato su OpenPGP, Hushmail. Ha anche lavorato con Veridis e altre società.
Nell'Ottobre 2001 la NAI ha annunciato che i suoi diritti sul PGP erano in vendita e che avrebbe sospeso lo sviluppo di PGP. Nel Frebbraio 2002, la NAI ha cancellato ogni progetto riguardante PGP.
[modifica] La situazione attuale
Nell'estate del 2002, alcuni ex-membri del gruppo PGP hanno acquistato i diritti di PGP dalla NAI (eccetto per la versione a linea di comando), e, nell'Agosto dello stesso anno, hanno formato una nuova compagnia, la PGP Corporation. PGP Corp. sta supportando gli utenti attuali di PGP e onora i precendenti contratti di assistenza. Zimmermann ora lavora come consulente speciale alla PGP Corp., e continua il suo lavoro alla Hush Communications e alla Verdis, e infine gestisce una propria compagnia di consulenza.
NAI conserva i diritti sulla versione a linea di comando di PGP e continua a venderla come "McAfee E-Business Server". Prima del Gennaio 2004, era vietato alla PGP Corp. di produrre una versione a linea di comando di PGP, a causa dei suoi precedenti accordi con la NAI.
In cooperazione con Zimmermann, Verdis ha sviluppanto e distribuito una versione di OpenPGP compatibile con quella a linea di comando, Filecrypt. I codici sorgenti di Filecrypt e GnuPG sono entrambi disponibili, così come quelli di versioni precedenti per varie piattaforme.
A partire dal suo acquisto dei diritti della NAI nel 2002, la PGP Corp. ha offerto assistenza tecnica in tutto in mondo. Nel 2002 ha rilasciato PGP 7.2 per Mac OS 9, seguito rapidamente da PGP 8.0 e PGP 8.0 Personal per Mac e Windows, e da una versione freeware ed una a sorgente aperto. Nel 2003, ha rilasciato PGP 8.0.1DE per gli utenti Tedeschi, PGP Universal (basato su una nuova concezione di PGP per server, che implementa una architettura di sicurezza che si auto-gestisce). Nel 2004, ha rilasciato PGP Desktop 8.1 per Mac e Windows, PGP Command Line 8.5 per Windows, Solaris e Linux (l'accordo riguardo la linea di comando tra la PGP Corp. e la NAI scadeva nel Gennaio 2004) e PGP Universal 1.2. Nel 2005 hanno rilasciato PGP Desktop 9.0, PGP Universal 2.0 e PGP Command Line 9.0.
[modifica] Compatibilità tra versioni di PGP
Un concorrere di difficoltà con l'uso di prodotti brevettati e con le leggi per l'esportazione ha causato alcuni problemi di compatibilità ma, fortunatamente, dopo l'adozione dello standard OpenPGP e la formazione della PGP Corp nel 2002 la situazione è migliorata sostanzialmente.
Lo standard OpenPGP specifica i meccanismi perché le due copie di PGP presenti ai due capi di una comunicazione possano negoziare l'algoritmo di cifratura da utilizzare nei messaggi come anche altri parametri aggiunti man mano dopo la versione PGP 2.x. Tutte le implementazioni devono seguire questa parte di specifiche per essere conformi con OpenPGP, quindi non ci sono sostanziali problemi di interoperabilità tra imlpementazioni diverse, comprese quelle di PGP Corp, Gnu/FSF (ovvero GPG), Hushmail, Veridis, Articsoft, Forum e altre. Gli sviluppatori di questi programmi collaborano abbastanza strettamente, considerano i problemi di interoperabilità alla stregua di bug, e li correggono.
[modifica] Problemi di compatibilità con PGP 2.x
La situazione è diversa quando versioni recenti di PGP operano con versioni 2.x dello stesso. PGP 2 usava algoritmi brevettati che erano licenziati sotto vari (e confusi) termini. Il brevetto di uno di questi algoritmi, RSA, è scaduto nell'autunno del 2000, ma il brevetto su IDEA è ancora valido. Mentre alcune versioni di PGP sono compatibili con PGP 2.x (per esempio, quella di PGP Corp. e Hushmail), altre non lo sono. La più conosciuta, GnuPG, di default non supporta l'algoritmo IDEA usato in tutte le versioni 2.x di PGP. Questo supporto può essere aggiunto come plugin, ma gli utenti devono compilarselo da soli, e -ovviamente- affrontare tutti gli eventuali problemi di licenza che possono riscontrare con il suo uso. L'uso commerciale di IDEA richiede una licenza, mentre quello non-commerciale no.
Al momento attuale, il modo migliore per trattare i problemi di interoperabilità con PGP 2.x è semplicemente di evitarli: usate un sistema conforme ad OpenPGP. Molti 'piccoli' problemi di sicurezza sono stati scoperti in PGP 2.x, nel decennio in cui è stato sviluppato e rilasciato. Tutti quelli risolvibili sono stati risolti con una patch (nelle versioni correnti ed aggiornate di PGP 2.x), ma alcuni protocolli fondamentali sono oggi conosciuti per essere vulnerabili a certi tipi di attacchi e non sono stati cambiati. Nessuna delle vulnerabilità conosciute sono giunte nello standard OpenPGP nè in nessuna delle sue implementazioni. Mentre nessuno di questi problemi con le versioni patchate di PGP 2.x sono considerate seriamente insicure, il gruppo OpenPGP di IETF sta per deprecare la compatibilità con PGP 2.x.
Se non necessiti di tale compatibilità, questo non sarà un grosso problema. Se invece ti serve, preparati -eventualmente- a diventare incompatibile con il software compatibile con OpenPGP. Nonostante ciò, Ståle Schumacher Ytteborg sta ancora mantenendo il suo sito web pgpi.org come repository per PGP, inclusi gli aggiornamenti di vecchie versioni come la 2.x.
Storicamente, c'era un'incompatibilità aggiuntiva e deliberata tra le stesse versioni 2.x, a causa della disputa sulla licenza RSA. Per risolvere la contesa PGP 2.6 venne reso incompatibile con le versioni 2.x precedenti, attraverso l'aumento dei numeri di versione di alcune strutture dati interne e usando l'implementazione RSAREF dell'algoritmo. Il codice PGP originale per l'algoritmo RSA poteva essere usato al di fuori degli USA, nelle varianti 'i', come PGP 2.6.3i. C'era più di una buona ragione di ordine tecnico -non solo legale- per fare ciò: l'implementazione dell'algoritmo del gruppo PGP era più veloce di quella dell'RSAREF di più del doppio.
Nel frattempo, negli USA, il team PGP creò PGP 3 (effettivamente rilasciato come PGP 5, vedi sopra) e lo standard IETF OpenPGP venne adottato. I continui problemi di licenza con l'algoritmo RSA li costrinse, insieme al gruppo GnuPG, ad escluderlo. Ma quando il brevetto scadette nel 2000, il supporto per RSA fu riportato in PGP e nello standard OpenPGP, e quindi non c'è più bisogno di una versione "USA" ed una "Internazionale" di ogni versione di PGP.
Sinteticamente, ora è meglio usare una versione recente di un sistema OpenPGP. La cooperazione tra gli sviluppatori di OpenPGP ha essenzialmente eliminato problemi di incopatibilità tra le diverse implementazioni.
[modifica] Voci correlate
- Crittografia a chiave pubblica
- GNU Privacy Guard, alternativa open source a PGP
[modifica] Collegamenti esterni
- Simson Garfinkle ha scritto un libro su PGP (O'Reilly and Associates) e la MIT Press ha pubblicato la documentazione di Zimmermann delle diverse versioni di PGP, insieme al loro codice sorcente di volumi separati. PGP ha incluso a lungo la documentazione di Zimmermann in ogni copia. Non era solo necessaria per capire come usare PGP ma era ed è eccellente.
- http://www.pgp.com - PGP Corporation, l'attuale custode, venditore e sostenitore della versione 'ufficiale' di PGP
- http://www.veridis.com/openpgp/en/index.asp - Una versione PGP compatibile con OpenPGP
- http://www.gnupg.org - The GNU Privacy Guard. Un'implementazione della Free Software Fundation dello standard OpenPGP
- http://openpgp.org - Gruppo standard per la versione 'IETF - RFC 2440' di PGP
- http://www.pgpi.org - Sito web di Ståle Schumacher. Informazioni sulle versioni open source attualmente disponibili di PGP, incluse le versioni 2.x, e informazioni generali su GPG e PGP.
- http://philzimmermann.com - Home Page del creatore di PGP, con numerose informazioni sul programma.
- http://www.privacy.com.au/pgpatk.html - Practical Attacks on PGP, informazioni sulla sicurezza di PGP
- Una canzone filk su PGP: (lyrics) (MP3)
- Un'altra canzone (testo): http://www.rahul.net/starport/xeno/pgp.html
- PGP Corporation's Support Forum community di supporto e contributi dallo staff di supporto di PGP