next up previous contents download 9
Next: Public Key Servers Up: La crittografia: programmi e Previous: La crittografia: programmi e   Indice

Subsections

PGP Crittografia a chiave pubblica per tutti

Phil's Pretty Good Software: PGP(tm) Pretty Good(tm) Privacy

estratto dal Manuale d'uso del PGP(tm) Volume I: funzioni essenziali ,di Philip Zimmermann; Ultima revisione 11 Ottobre 94

Tradotto in Italiano da: Marco Giaiotto (marco.giaiotto@rivoli.alpcom.it)

PGP Versione 2.6.2 - 11 Ott. 94 Software di Philip Zimmermann, e molti altri.

Sinopsi

PGP(tm) utilizza la crittografia a chiave pubblica per proteggere e-mail e file di dati. Comunicate in modo sicuro con persone che non avete mai visto, senza bisogno di canali sicuri per lo scambio delle chiavi. PGP ha molte funzioni ed e' veloce, con un sofisticato sistema di gestione delle chiavi, un sistema di firma digitale, comprime i dati ed ha un progetto ergonomicamente valido.

Software e documentazione (c) Copyright 1990-1994 Philip Zimmermann. Tutti i diritti riservati. Per informazioni sulla licenza d'uso di PGP, la distribuzione, il copyright, i brevetti, i marchi, le limitazioni ed i controlli sulle esportazioni, vedere la sezione "Aspetti Legali" nel "Manuale D'uso del PGP Volume II - Funzioni avanzate". Distribuito dal Massachusetts Institute of Technology.

"Qualunque cosa voi facciate sara' insignificante, ma e' molto importante che voi la facciate." -Mahatma Gandhi

Vista d'insieme

Pretty Good(tm) Privacy (PGP), di Phil's Pretty Good Software, e' un applicativo software di crittografia di elevata sicurezza per MSDOS, Unix, VAX/VMS e altri computers. PGP permette alle persone di scambiare files e messaggi con riservatezza, sicurezza di autenticita' e comodita'. Riservatezza significa che solo le persone a cui e' diretto il messaggio possono leggerlo. Sicurezza di autenticita' significa che il messaggio che sembra provenire da una particolare persona puo' solo essere stato inviato da quella persona. Comodita' significa che riservatezza e sicurezza di autenticita' sono raggiunte senza il fastidio di dover gestire le chiavi associate al software di crittografia convenzionale. Non e' richiesto nessun canale sicuro per lo scambio delle chiavi fra gli utenti, per cui PGP e' molto piu' facile da usare. La ragione e' che PGP e' basato su di una nuova potente tecnologia chiamata crittografia "a chiave pubblica".

PGP associa la comodita' del sistema di crittografia a chiave pubblica Rivest-Shamir-Adleman (RSA) con la velocita' della crittografia convenzionale, l'adattamento dei messaggi per la firma digitale, un buon progetto ergonomico ed un sofisticato sistema di gestione delle chiavi. PGP svolge le funzioni associate alle chiavi pubbliche piu' velocemente di molti altri applicativi software. PGP e' la crittografia a chiave pubblica per tutti.

PGP non prevede nessuna funzione interna per la gestione di modems. Dovrete usare per questo un prodotto software separato.

Questo documento, "Volume I: funzioni essenziali", si limita a spiegare i concetti essenziali per l'uso di PGP, e dovrebbe essere letto da tutti gli utilizzatori. Il "Volume II - funzioni avanzate" spiega le possibilita' avanzate di PGP ed altre funzioni speciali, e puo' essere letto dagli utilizzatori di PGP piu' evoluti. Nessuno dei due documenti spiega i dettagli della tecnologia di fondo degli algoritmi di crittografia, o la struttura dei dati.

Perche' vi serve PGP?

E' personale. E' privato. E non sono affari di nessuno tranne vostri. Voi potreste pianificare una campagna politica, discutere delle vostre tasse, o avere una relazione clandestina. Oppure potreste fare qualcosa che sentite che non dovrebbe essere illegale, ma lo e'. Qualunque cosa sia, voi non volete che la vostra posta elettronica privata (e-mail) o i vostri documenti confidenziali vengano letti da altri. Non c'e' niente di sbagliato nel voler affermare il proprio diritto alla riservatezza. La riservatezza e' parte della nostra vita come la Costituzione.

Forse potreste pensare che la vostra e-mail sia sufficientemente legittima da non richiedere cifratura. Ma se siete cittadini rispettosi della legge senza nulla da nascondere, perche' non spedite sempre la vostra posta usando le cartoline? Perche' non vi sottoponete ai test antidroga su semplice richiesta? Perche' richiedere un mandato se la polizia vuole perquisire la vostra casa? State cercando di nascondere qualcosa? Dovete essere dei sovversivi o dei trafficanti di droga se nascondete la vostra posta nelle buste. O forse paranoici. Che bisogno hanno i cittadini rispettosi della legge di cifrare la propria e-mail?

Cosa succederebbe se tutti pensassero che i cittadini rispettosi della legge dovrebbero usare le cartoline per la propria posta? Se qualche spirito coraggioso tentasse di difendere la propria riservatezza usando una busta attirerebbe i sospetti. Forse le autorita' aprirebbero la sua posta per vedere cio' che nasconde. Per fortuna, non viviamo in questo tipo di mondo, perche' tutti proteggono la maggior parte della propria posta con le buste, cosi' nessuno attira sospetti facendo la stessa cosa. C'e' sicurezza nei grandi numeri. Analogamente, sarebbe bello se tutti usassero regolarmente la crittografia per la propria e-mail, innocente o meno, di modo che nessuno attirerebbe sospetti difendendo la propria riservatezza. Pensate a questo come ad una forma di solidarieta'.

Oggi, se il Governo vuole violare il diritto alla riservatezza dei cittadini ordinari, deve impegnare una certa quantita' di denaro e di lavoro per intercettare, aprire col vapore e leggere la posta, e ascoltare e possibilmente trascrivere le conversazioni telefoniche. Questo tipo di sorveglianza ad alto impegno lavorativo non e' pratica se applicata su larga scala. Questo viene fatto solo in casi importanti, quando sembra che valga la spesa.

Una parte sempre crescente delle nostre comunicazioni private si sta dirigendo verso i canali elettronici. La posta elettronica sta gradualmente rimpiazzando la posta tradizionale. I messaggi e-mail sono semplicemente troppo facili da intercettare e controllare ricercando parole significative. Puo' essere fatto semplicemente, regolarmente, automaticamente e senza essere scoperti su vasta scala. I cablogrammi internazionali sono gia' controllati in questo modo su larga scala dalla NSA [National Security Agency, N.d.T.]

Ci stiamo muovendo verso un futuro in cui la nazione sara' attraversata da reti dati in fibra ottica ad alta capacita' che collegheranno fra loro tutti i nostri sempre piu' diffusi personal computers. L'e-mail sara' normale per tutti, non una novita' come oggi. Il Governo proteggera' la nostra posta con protocolli di crittografia progettati dal Governo stesso. Probabilmente la maggior parte delle persone accettera' una simile situazione. Ma forse qualche persona preferira' le proprie misure di protezione personali.

Il progetto di legge 299 del senato, una proposta anti crimine multifunzionale del 1991, conteneva un provvedimento nascosto sconvolgente. Se questa risoluzione non vincolante fosse entrata in vigore, avrebbe costretto i produttori di sistemi di comunicazioni sicure ad inserire delle speciali "trappole" nei loro prodotti, di modo che il Governo potesse leggere i messaggi cifrati di chiunque. Il testo era: "E' volonta' del Congresso che i fornitori di servizi di comunicazione elettronica assicurino che i sistemi permettano al Governo di ottenere il testo in chiaro di voce, dati ed altre comunicazioni quando adeguatamente autorizzato dalla legge." Questa misura venne ritirata dopo rigorose proteste di singoli libertari e gruppi industriali.

Nel 1992 fu presentata al Congresso la proposta di sorveglianza della telefonia digitale dell'FBI. Questa avrebbe richiesto a tutti i produttori di sistemi di comunicazione di includervi speciali "porte" di sorveglianza remota che avrebbero permesso all'FBI di controllare dai propri uffici tutte le forme di comunicazione elettronica. Sebbene la proposta non abbia attratto nessun sostenitore al Congresso nel 1992 a causa dell'opposizione dei cittadini, essa fu ripresentata nel 1994.

Piu' allarmante di tutto e' la baldanzosa nuova politica sulla crittografia della Casa Bianca, sviluppata dalla NSA sin dall'inizio dell'amministrazione Bush, e rivelata il 16 aprile 1993. Il punto centrale di questa iniziativa e' un dispositivo di crittografia costruito dal Governo, chiamato "Clipper", contenente un nuovo algoritmo segreto di crittografia della NSA. Il Governo spinge l'industria privata ad utilizzare il Clipper in tutti i propri prodotti di comunicazione sicura, come telefoni, Fax, ecc. AT$\&$T sta utilizzando il Clipper nei propri prodotti sicuri per trasmissione di voce. Il punto chiave: Al momento della produzione ogni Clipper viene programmato con una sua chiave unica, ed il Governo deve riceverne una copia, che viene tenuta al sicuro. Nessuna preoccupazione comunque il Governo promette che usera' quelle chiavi per decifrare le vostre comunicazioni solo quando debitamente autorizzato dalla legge. Naturalmente il logico passo successivo per rendere il Clipper assolutamente efficace sarebbe quello di rendere illegali le altre forme di crittografia.

Se la propria riservatezza e' fuorilegge, solo i fuorilegge avranno riservatezza. Le agenzie di spionaggio hanno accesso a sistemi di crittografia ottimi, cosi' come i trafficanti di armi e droga, i fornitori della Difesa, le compagnie petrolifere ed altri giganti industriali. Le persone comuni e le organizzazioni politiche minori non hanno generalmente avuto accesso a tecnologie di crittografia a chiave pubblica di "livello militare" a costi abbordabili. Fino ad oggi.

PGP da' alle persone il potere di avere la propria riservatezza nelle proprie mani. C'e' un bisogno sociale crescente di questo. Ecco perche' l'ho scritto.

Come funziona

Sarebbe piu' semplice se voi aveste gia' una conoscenza dei concetti della crittogrfia in generale e di quella a chiave pubblica in particolare. Comunque, ecco alcune note introduttive sulla crittografia a chiave pubblica.

Per cominciare, un po' di terminologia. Supponiamo che io voglia inviarvi un messaggio che solo voi possiate leggere. Posso "criptarlo" o "cifrarlo", ovvero posso modificarlo in un modo terribilmente complicato, rendendolo illeggibile per chiunque tranne voi, il destinatario del messaggio. Io creo una "chiave" crittografica per cifrare il messaggio, e voi dovete usare la stessa chiave per decifrarlo o "decrittarlo". Almeno, il sistema convenzionale a chiave singola funziona cosi'.

Nei sistemi convenzionali, come il DES (US Federal Data Encryption Standard), si usa una sola chiave per cifrare e decifrare. Questo significa che la chiave deve essere trasmessa prima attraverso canali sicuri, in modo che i due corrispondenti la conoscano prima di inviare messaggi cifrati attraverso canali insicuri. Questo puo' essere scomodo. Poi, se avete un canale sicuro per scambiarvi le chiavi, perche' vi serve la crittografia?

Nei sistemi a chiave pubblica, ognuno possiede due chiavi complementari, una conosciuta pubblicamente ed una segreta (spesso chiamata privata). Ogni chiave sblocca il codice che l'altra crea. La conoscenza della chiave pubblica non vi aiuta a dedurre la chiave segreta corrispondente. La chiave pubblica puo' essere distribuita in modo capillare attraverso una rete di comunicazione. Questo protocollo assicura riservatezza senza richiedere l'uso di canali sicuri come quelli necessari per i sistemi di codifica convenzionali.

Chiunque puo' usare la chiave pubblica di una persona per cifrare ed inviare un messaggio, e il destinatario usera' la chiave privata corrispondente per decifrarlo. Nessuno oltre al destinatario potra' decifrarlo, perche' nessuno ha accesso alla chiave segreta. Neppure la persona che ha cifrato il messaggio sara' in grado di decifrarlo.

Si possono anche autenticare i messaggi. La chiave segreta del mittente puo' essere usata per cifrare un messaggio, e quindi "firmarlo". Questo crea nel messaggio una firma digitale che il destinatario (o chiunque) puo' verificare usando la corrispondente chiave pubblica. E' la prova che il mittente e' effettivamente la fonte del messaggio, e che il messaggio non e' stato modificato successivamente da altri, perche' solo il mittente possiede la chiave segreta che ha generato la firma. E' impossibile falsificare un messaggio firmato, ed il mittente non puo' successivamente negare di averlo firmato.

Questi due processi possono essere combinati per assicurare la riservatezza e l'autenticita', prima firmando il messaggio con la vostra chiave segreta, e quindi cifrandolo con la chiave pubblica del destinatario. Il destinatario inverte questo processo, decifrando il messaggio con la propria chiave e controllando la firma con la vostra chiave pubblica. Questi passi sono svolti automaticamente dal software del destinatario.

Siccome l'algoritmo di crittografia a chiave pubblica e' molto piu' lento di un metodo convenzionale, la cifratura e' effettuata meglio usando un metodo convenzionale veloce e di alta qualita' per cifrare il messaggio. Il messaggio originale non cifrato e' chiamato "testo in chiaro". In un processo non visibile all'utilizzatore, una chiave casuale temporanea viene generata, ed usata solo per questa cifratura, per cifrare convenzionalmente il testo in chiaro. Quindi la chiave pubblica del destinatario viene usata per cifrare la chiave temporanea. Questa chiave cifrata viene inviata assieme al testo cifrato al destinatario. Il destinatario usa la propria chiave segreta per ricuperare la chiave temporanea, e quindi la usa con l'algoritmo veloce di cifratura convenzionale a chiave singola per decifrare il messaggio originale.

Le chiavi pubbliche sono conservate in "certificati di chiave" che comprendono l'ID del proprietario (ovvero il suo nome), il momento (tempo) in cui la chiave e' stata generata e la chiave stessa. I certificati pubblici contengono le chiavi pubbliche, mentre i certificati segreti contengono le chiavi segrete. Ogni chiave segreta e' anche cifrata con la propria frase chiave, nel caso venisse rubata. Un file di chiavi, o "portachiavi" contiene uno o piu' di questi certificati. Il portachiavi pubblico contiene certificati pubblici ed il portachiavi segreto contiene certificati segreti.

Le chiavi sono anche indicate nel portachiavi con il loro "id di chiave", che e' un'abbreviazione della chiave pubblica (i 64 bits meno significativi). Quando questo id di chiave e' mostrato, per ulteriore semplicita' si usano solo gli ultimi 32. Mentre molte chiavi possono avere lo stesso ID (nome del proprietario), a tutti i fini pratici non ci sono due chiavi con lo stesso id di chiave.

PGP usa una "selezione del messaggio" per creare le firme. Una selezione del messaggio e' una funzione del messaggio formata da 128 bits. E' qualcosa di simile ad un checksum o al codice di controllo per gli errori di CRC. In essa PGP "rappresenta il messaggio", e serve per controllare se sono avvenuti cambiamenti. A differenza del CRC, pero', non e' pensabile che un estraneo riesca a sostituire il messaggio con un'altro che produca la stessa selezione. La selezione del messaggio viene cifrata con la chiave segreta per formare la firma.

I documenti sono firmati facendoli precedere dai certificati di firma, che contengono l'id di chiave della chiave usata per produrli, una selezione del messaggio firmata con la chiave segreta e il tempo in cui la firma e' stata fatta. L'id di chiave viene usato dal destinatario per trovare la chiave pubblica del mittente e controllare la firma. Il software del destinatario trova automaticamente la chiave pubblica e l'id di chiave nel portachiavi pubblico.

I file cifrati sono preceduti dall'id di chiave della chiave pubblica usata per cifrarli. Il destinatario usa questo id di chiave per trovare la chiave segreta richiesta per decifrare il messaggio. Il suo software la trova automaticamente nel portachiavi segreto.

Questi due tipi di portachiavi sono i metodi principali di conservazione e gestione delle chiavi pubbliche e private. Invece di tenere le singole chiavi in files separati, esse sono raccolte in portachiavi per facilitarne la ricerca automatica per id di chiave o ID. Ogni utilizzatore possiede la sua coppia di portachiavi. Una singola chiave pubblica e' tenuta in un file separato il tempo necessario per inviarla ad un vostro corrispondente che la aggiungera' al suo portachiavi.

Uso di PGP

Funzioni avanzate

La maggior parte delle "Funzioni avanzate" e' descritta nel "Volume II - Funzioni avanzate". Eccone pero' alcune che meritano di essere citate qui.

Vulnerabilita'

Nessun sistema di sicurezza e' inviolabile. PGP puo' essere reso non efficace in molti modi. Le vulnerabilita' potenziali di cui dovreste tener conto, comprendono la compromissione della vostra chiave segreta o della vostra frase chiave, la manomissione della vostra chiave pubblica, i files che dopo essere stati cancellati esistono ancora da qualche parte sul disco, i virus ed i cavalli di Troia, le falle nel vostro sistema di sicurezza, le emissioni elettromagnetiche, l'esposizione tipica dei sistemi multiutente, l'analisi del traffico, e forse anche l'analisi crittografica.

Per un'analisi dettagliata di questi punti, si veda la sezione "Vulnerabilita'" nel "Volume II - Funzioni avanzate"

Guida rapida di PGP

Ecco una guida rapida ai comandi di PGP.

questi sono i capitoli omessi dalla versione originale

   * Installazione di PGP (OMESSA)
   * Attenzione all'"olio di serpente"  (OMESSO)
   * Nota per gli utilizzatori di Macintosh (OMESSO)
   * Aspetti legali (OMESSO)
   * Riconoscimenti (OMESSO)
   * Notizie sull'autore   (OMESSO)
   * Volume II: Funzioni avanzate (OMESSO)


next up previous contents download 9
Next: Public Key Servers Up: La crittografia: programmi e Previous: La crittografia: programmi e   Indice
Paolo Patruno 2002-01-12