-----BEGIN PGP SIGNED MESSAGE----- [Nota: questa e' la documentazione originale della versione 2.6.2 del MIT, inclusa qui senza modifiche. Per una spiegazione delle differenze tra PGP 2.6.2i e 2.6.2 si legga il file readme.1st.] Phil's Pretty Good Software Presenta ======= PGP(tm) ======= Pretty Good(tm) Privacy Crittografia a chiave pubblica per tutti -------------------------- Manuale d'uso del PGP(tm) Volume II: funzioni avanzate -------------------------- di Philip Zimmermann Ultima revisione 11 Ottobre 94 Tradotto in Italiano da: Marco Giaiotto 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 ergonomica- mente 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 limi- tazioni ed i controlli sulle esportazioni, vedere la sezione "Aspetti Legali". Distribuito dal Massachusetts Institute of Technology. Indice ====== Vista d'insieme Funzioni avanzate Selezionare le chiavi tramite l'id di chiave Separare le firme dai messaggi Decifrare un messaggio lasciandovi la firma Inviare file di testo ASCII attraverso macchine e ambienti diversi Usare PGP come un Uuencode migliore Cancellare ogni traccia del testo in chiaro dal disco Presentare il testo decifrato sullo schermo Preparare un messaggio che sara' solo presentato sullo schermo Conservare il nome originale del file in chiaro Modificare il vostro ID o la vostra frase chiave Modificare i parametri di affidabilita' di una chiave pubblica Controllare se nel vostro portachiavi pubblico e' tutto a posto Verificare una chiave pubblica attraverso il telefono Maneggiare portachiavi molto grandi Usare PGP come un filtro stile Unix Soppressione delle domande non necessarie: BATCHMODE Forzare la risposta "Si'" alle domande di conferma: FORCE PGP restituisce uno stato dopo essere uscito allo Shell Variabile di ambiente per la frase chiave Definizione di parametri nel file di configurazione di PGP TMP - Percorso della directory per i files temporanei LANGUAGE - Selettore della lingua da usare MYNAME - ID di default per la generazione di firme TEXTMODE - PGP assumera' che il testo in chiaro sia solo testo CHARSET - Specificare il set di caretteri dei files di testo ARMOR - Abilitare la generazione dell'armatura ASCII ARMORLINES - Formato dei file con armatura divisi in parti KEEPBINARY - Conservare il file cifrato dopo la decifrazione COMPRESS - Abilitare la compressione COMPLETES_NEEDED - Numero richiesto di presentatori completamente affidabili MARGINALS_NEEDED - Numero richiesto di presentatori parzialmente affidabili CERT_DEPTH - Numero massimo di presentazioni secondarie BAKRING - Nome del file di backup del portachiavi segreto PUBRING - Nome del file portachiavi pubblico SECRING - Nome del file portachiavi segreto RANDSEED - Nome del file di semi per i numeri casuali PAGER - Impostare il comando Shell per la visualizzazione del testo in chiaro decifrato SHOWPASS - Visualizzazione della frase chiave durante l'inserimento TZFIX - Regolazione dell'ora locale CLEARSIG - Abilitare l'inclusione di messaggi firmati come testo in chiaro VERBOSE - Messaggi: ridotti, normali, esplanatori INTERACTIVE - Chiedere conferma per l'aggiunta di chiavi NOMANUAL - Abilitare PGP a generare le chiavi senza manuali Una sbirciata nel sottobosco Numeri casuali L'algoritmo di crittografia convenzionale di PGP Compressione dei dati Selezioni di messaggio e firme digitali Compatibilita' con le versioni precedenti e future di PGP Vulnerabilita' Frase chiave e chiave segreta compromesse Manomissione della chiave pubblica Files "non abbastanza cancellati" Virus e cavalli di Troia Violazioni della sicurezza fisica Attacchi elettromagnetici Esposizioni nei sistemi multi-utente Analisi del traffico Proteggersi contro le etichette temporali fasulle Crittoanalisi Aspetti legali Marchi, diritti di copia e garanzie Diritti di brevetto sugli algoritmi Condizione Freeware e restrizioni Restrizioni nell'uso commerciale di PGP Altre limitazioni nella licenza Distribuzione Controlli sulle esportazioni Situazione legale di Philip Zimmermann Altre fonti di informazioni su PGP Come ottenere una versione commerciale di PGP Riferire errori di PGP Posta dei sostenitori, aggiornamenti e notizie Gruppi politici legati ai computer Letture raccomandate Per contattare l'autore Appendice A: Dove procurarsi PGP Vista d'insieme =============== Pretty Good(tm) Privacy (PGP), di Phil's Pretty Good Software, e' un applicativo software di crittografia ad alta sicurezza per MSDOS, Unix, VAX/VMS ed altri computer. PGP unisce la comodita' del sistema di crittografia a chiave pubblica Rivest-Shamir-Adleman (RSA) con la velocita' della crittografia convenzionale, con un buon progetto ergonomico ed un sofisticato sistema di gestione delle chiavi. Questo secondo volume del Manuale d'uso copre le funzioni avanzate non spiegate nel "Volume I - Funzioni essenziali". Dovreste prima leggere il primo volume, o questo manuale non potra' avere molto senso per voi. La lettura di questo secondo volume e' opzionale, eccetto per la sezione dedicata agli aspetti legali, che dovrebbe essere letta da tutti. Funzioni avanzate ================= Selezionare le chiavi tramite l'id di chiave - -------------------------------------------- In tutti i comandi in cui l'utilizzatore inserisce un ID o parte di esso, e' possibile sostituirlo con l'id di chiave esadecimale. Basta inserire l'id di chiave preceduto da "0x" al posto dell'ID. Ad esempio: pgp -kv 0x67F7 Verranno mostrate tutte le chiavi che contengono 67F7 nell'id di chiave. Questa funzione e' particolarmente utile se avete due chiavi della stessa persona con lo stesso ID. Potete scegliere univocamente la chiave specificando l'id di chiave Separare le firme dai messaggi - ------------------------------ Normalmente i certificati di firma sono attaccati fisicamente al testo che certificano. Questo rende comodo il controllo della firma nei casi semplici. In determinate circostanze e' pero' desiderabile poter tenere i certificati separati dai messaggi. E' possibile generare certificati di firma separati dai messaggi firmati aggiungendo l'opzione -b (break) all'opzione -s (sign). Ad esempio: pgp -sb lettera.txt Questo esempio genera un certificato di firma chiamato "lettera.sig". Il contenuto di "lettera.txt" non e' aggiunto al certificato di firma. Dopo aver creato il certificato di firma (lettera.sig nell'esempio precedente), speditelo al destinatario assieme al file di testo originale. Il destinatario ha bisogno di entrambi i files per controllare l'integrita' della firma. PGP, durante il controllo della firma, rileva la mancanza di testo e richiede il nome del file che lo contiene. Solo a questo punto PGP potra' controllare l'integrita' della firma. Se il destinatario sa gia' che firma e testo sono separati, puo' specificarne il nome nella linea di comando: pgp lettera.sig lettera.txt or: pgp lettera lettera.txt In questo caso PGP non avra' bisogno di richiedere il nome del file di testo. Un certificato di firma separato e' utile se volete tenere un archivio separato di questi certificati. Il certificato di firma di un programma eseguibile puo' servire per rilevare una successiva infezione da virus. E' anche utile se un documento deve essere firmato da piu' persone senza subordinare le firme. Ogni firma e' indipendente. Se ricevete un testo cifrato con il certificato di firma incollato ad esso, potete separarlo durante il processo di decrittaggio. Usate l'opzione -b: pgp -b lettera PGP decifra il file lettera.pgp e, se esso contiene una firma, controlla la firma e la stacca salvandola nel file lettera.sig. Decifrare un messaggio lasciandovi la firma - ------------------------------------------- Normalmente si vuole che PGP sbrogli completamente un file cifrato, decifrandolo e controllando l'eventuale firma, togliendo strato dopo strato fino a rimanere con il solo testo in chiaro originale. Qualche volta pero', potreste voler decifrare un file lasciandovi attaccata la firma in esso contenuta, ottenendo un file decifrato firmato. Questo puo' servire se volete spedire una copia firmata di un documento ad una terza persona, magari ricifrandolo. Per esempio, supponete di aver ricevuto un messaggio firmato da Charlie e cifrato per voi. Volete decifrarlo e, lasciandovi la firma di Charlie, inviarlo ad Alice, magari ricifrandolo con la chiave pubblica di Alice. Nessun problema. PGP e' in grado di fare questo per voi. Per decifrare un messaggio lasciandovi la firma intatta, battere: pgp -d lettera Questo decifra lettera.pgp e, se esso contiene una firma, la lascia intatta assieme al testo in chiaro nel file di uscita. Adesso potete archiviarlo o ricifrarlo per mandarlo ad altri. Inviare file di testo ASCII attraverso macchine e ambienti diversi - ------------------------------------------------------------------ Potete usare PGP per cifrare qualunque tipo di testo in chiaro, dati binari ad 8 bits o testo ASCII. E' probabile che l'applicazione piu' comune di PGP sia l'e-mail, dove il testo in chiaro e' ASCII. Il testo ASCII a volte e' rappresentato in modo diverso su macchine diverse. Per esempio sui sistemi MSDOS ogni linea ASCII e' terminata con CR + LF (Carriage Return + Line Feed). Sui sistemi Unix si usa solo LF. Su un Macintosh le linee terminano con il solo CR. E' un fatto triste della vita. I messaggi di testo ASCII non cifrati sono spesso convertiti in qualche forma "canonica" comune nel momento in cui sono trasmessi da una macchina ad un altra. Il testo canonico ha le linee terminate con CR + LF. Per esempio, il diffuso protocollo di comunicazione KERMIT converte il testo in forma canonica mentre lo trasmette ad un altro sistema. Questo testo viene riconvertito nella forma locale dal ricevitore KERMIT. In questo modo e' facile trasmettere file di testo fra sistemi diversi. Il testo cifrato non puo' pero' essere convertito automaticamente dal protocollo di comunicazione, perche' il testo in chiaro e' nascosto dalla cifratura. Per rimediare a questo inconveniente, PGP vi permette di specificare che il testo in chiaro deve essere trattato come un testo ASCII, non binario, e deve quindi essere convertito in forma canonica prima di essere cifrato. Una volta ricevuto, il testo decifrato viene convertito automaticamente nella forma appropriata all'ambiente locale. Perche' PGP assuma che il testo in chiaro deve essere convertito in forma canonica prima di essere cifrato, aggiungete l'opzione -t quando cifrate o firmate un messaggio, cosi': pgp -et lettera.txt dest_ID Questo modo di funzionamento e' escluso automaticamente se PGP rileva che il testo in chiaro contiene apparentemente dati binari. Se dovete utilizzare spesso l'opzione -t, potete attivare l'opzione TEXTMODE nel file di configurazione di PGP. E' quello che faccio io. Per gli utilizzatori di PGP che usano serie di caratteri non Inglesi ad 8 bits, quando PGP converte il testo in forma canonica puo' convertire i dati dalla serie di caratteri locali nella serie LATIN1 (ISO 8859-1 Latin Alphabet 1), tenendo conto dell'impostazione del parametro CHARSET nel file di configurazione di PGP. Il LATIN1 e' una serie di caratteri ASCII estesa, con caratteri supplementari aggiunti per molte lingue Europee. Usare PGP come un Uuencode migliore - ----------------------------------- Molti utenti del mondo Unix spediscono files di dati binari attraverso canali di e-mail utilizzando l'utility "uuencode" di Unix per convertire i files in caratteri ASCII compatibili con la posta elettronica. Non e' richesta nessuna cifratura, cosi' ne' il mittente ne' il destinatario hanno bisogno di chiavi particolari. Il formato uuencode e' stato progettato per uno scopo simile a quello del formato ASCII radix-64 dell'armatura di trasporto descritta nella sezione "Invio di testo cifrato via e-mail: il formato Radix-64", ma non e' cosi' efficiente. Utilizza una serie di caratteri radix-64 diversa. Uuencode ha i suoi problemi, tipo 1) diverse serie di caratteri incompatibili fra loro per le diverse versioni per Unix e MSDOS, e 2) i dati possono essere corrotti da qualche gateway di e-mail che saccheggia i caratteri vuoti di trasporto o modifica in altri modi la serie di caratteri usata da uuencode. PGP puo' essere usato in modo da offrire le stesse funzioni generali di uuencode, piu' altre. Potete chiedere a PGP di limitarsi a convertire un file in formato ASCII radix-64, senza doverlo firmare o cifrare, sicche' non e' richiesta nessuna chiave. Basta usare l'opzione -a da sola: pgp -a nomefile Questo produce un file con armatura radix-64 chiamato "nomefile.asc". Se leggete la sezione "Invio di testo cifrato via e-mail: il formato Radix-64", vedrete che l'approccio di PGP, rispetto a quello di uuencode, offre diversi vantaggi importanti: * PGP dividera' automaticamente in blocchi i file troppo lunghi per i canali e-mail. * PGP aggiungera' un codice CRC per il controllo degli errori alla fine di ogni blocco. * PGP cerchera' di comprimere i dati prima di convertirli. * La serie di caratteri radix-64 usata da PGP e' piu' compatibile di quella usata da uuencode con la conversione dei caratteri operata dai canali e-mail. * I files di testo possono essere convertiti dal mittente in forma canonica, come spiegato nella sezione "Inviare file di testo ASCII attraverso macchine e ambienti diversi". Il destinatario puo' recuperare il nome originale del file riconvertendo il messaggio con l'opzione -p di PGP. Potete usare "PGP -a" in qualunque situazione in cui avreste usato uuencode, se il destinatario ha PGP. PGP e' un uuencode migliore di uuencode. Cancellare ogni traccia del testo in chiaro dal disco - ----------------------------------------------------- Dopo aver prodotto un file cifrato, potete chiedere a PGP di sovrascrivere e cancellare il file in chiaro, togliendone ogni traccia dal disco, in modo che nessuno potra' ricuperarlo usando uno strumento di scansione a blocchi. Questo e' utile se il file in chiaro contiene informazioni riservate che non volete tenere in giro. Per distruggere il file in chiaro dopo averne cifrato il contenuto, aggiungete l'opzione -w (wipe) quando cifrate o firmate un messaggio. Cosi': pgp -esw lettera.txt dest_ID Questo esempio produce il file cifrato "lettera.pgp", e cancella il file "lettera.txt" senza possibilita' di recupero. Naturalmente e' necessario essere attenti nell'uso di questa opzione. Si noti anche che questa opzione non cancellera' gli eventuali frammenti di testo in chiaro che il vostro word processor puo' aver creato sul disco mentre preparavate il messaggio prima di lanciare PGP. Molti word processors creano files di backup, files temporanei o entrambi. Inoltre PGP sovrascrive il file una volta sola, abbastanza per rendere vani gli sforzi dei sistemi convenzionali di recupero, ma insufficiente ad affrontare uno sforzo sofisticato e determinato a recuperare le deboli tracce magnetiche lasciate dai dati per mezzo di attrezzi speciali di recupero dei dischi. Presentare il testo decifrato sullo schermo - ------------------------------------------- Per vedere il testo decifrato sullo schermo (come con il comando Unix "more") senza scriverlo in un file, usate l'opzione -m (more) quando decifrate: pgp -m file cifrato Questo mostra il testo decifrato sullo schermo, pagina per pagina. Preparare un messaggio che sara' solo presentato sullo schermo - -------------------------------------------------------------- Per specificare che il testo decifrato dal destinatario sara' SOLO presentato sullo schermo, e non salvato in un file, aggiungere l'opzione -m: pgp -sem lettera.txt dest_ID Quando il destinatario decifrera' il file con la propria chiave segreta, il testo in chiaro verra' presentato sullo schermo, ma non salvato su disco. Il testo verra' mostrato come se si stesse usando il comando "more" di Unix, una pagina per volta. Se il destinatario vorra' rileggere il messaggio dovra' decifrarlo di nuovo. Questa funzione e' la via piu' sicura per evitare che i vostri messaggi piu' delicati possano essere lasciati inavvertitamente nel disco del destinatario. Ho aggiunto la funzione su richiesta di un utilizzatore che voleva inviare messaggi intimi alla sua amante, ma temeva che lei lasciasse accidentalmente i testi decifrati nel computer del marito. Si noti che questa funzione non impedira' ad una persona intelligente e determinata di trovare un modo per salvare il testo in chiaro sul disco-- serve solo ad evitare che l'utente casuale faccia questo inavvertitamente. Conservare il nome originale del file in chiaro - ----------------------------------------------- PGP assegna normalmente al file decifrato il nome del file cifrato senza estensione. Potete specificare voi stessi un nome diverso, specificandolo nella linea di comando con l'opzione -o. Per la maggior parte dei messaggi e-mail questo e' il modo migliore di procedere, perche' siete voi a dover decidere il nome del file quando lo decifrate, ed il messaggio e-mail tipico aveva in origine un nome inutile per voi, tipo "a_Phil.txt". Quando pero' PGP cifra un file, salva sempre il nome originale allegandolo al testo in chiaro prima di comprimerlo e cifrarlo. Normalmente questo nome nascosto viene scartato da PGP quando decifra il file, ma voi potete decidere di utilizzarlo per nominare il file cifrato. Questo e' utile quando PGP viene usato per files il cui nome e' significativo. Per ricuperare il nome originale del file in chiaro, aggiungere l'opzione -p, cosi': pgp -p filecifrato Normalmente io non uso questa opzione, perche' se lo facessi circa meta' della posta che ricevo sarebbe decifrata verso lo stesso file in chiaro chiamato "a_phil.txt" o "prz.txt". Modificare il vostro ID o la vostra frase chiave - ------------------------------------------------ A volte potreste aver bisogno di cambiare la vostra frase chiave, ad esempio perche' qualcuno guardava da dietro le vostre spalle mentre la battevate. O potreste voler cambiare il vostro ID, per esempio perche' dopo il matrimonio avete cambiato il vostro nome, oppure avete cambiato il vostro indirizzo di e-mail. O ancora potreste voler aggiungere un secondo od un terzo ID alla vostra chiave, perche' siete conosciuti con piu' di un nome o indirizzo di e-mail o titolo. PGP vi permette di assegnare piu' di un ID alla vostra chiave, ognuno dei quali potra' essere usato per trovare la vostra chiave in un portachiavi. Per modificare il vostro ID o la vostra frase chiave: pgp -ke ID [portachiavi] PGP vi richiede un nuovo ID o una nuova frase chiave. Se voi inserite un nuovo ID, PGP effettivamente lo aggiunge, senza togliere quello vecchio. Se volete toglierlo, dovrete farlo con una operazione separata. Il parametro opzionale [portachiavi], se specificato, deve essere un portachiavi pubblico, non segreto. Il campo ID deve essere il vostro proprio ID, che PGP riconosce perche' e' presente anche nel vostro portachiavi segreto. Entrambi i portachiavi verranno aggiornati, anche se voi avete specificato solo quello pubblico. Il comando -ke si comporta in maniera diversa se lo usate per una chiave pubblica o segreta. Puo' anche essere usato per modificare i parametri di affidabilita' di una chiave pubblica. Modificare i parametri di affidabilita' di una chiave pubblica - -------------------------------------------------------------- A volte vi puo' capitare di dover modificare i parametri di affidabilita' di una chiave pubblica nel vostro portachiavi. Per una discussione sul significato di questi parametri, si veda la sezione "Come fa PGP a tener traccia delle chiavi valide?" del "Volume I" del Manuale. Per modificare i parametri di affidabilita' di una chiave pubblica: pgp -ke ID [portachiavi] Il parametro opzionale [portachiavi], se specificato, deve essere un portachiavi pubblico, non segreto. Controllare se nel vostro portachiavi pubblico e' tutto a posto - --------------------------------------------------------------- Normalmente PGP controlla automaticamente ogni nuova chiave o firma nel vostro portachiavi pubblico, e aggiorna tutti i parametri di affidabilita' ed i punti di validita'. In teoria tiene aggiornate tutte le informazioni sulla validita' di una chiave man mano che il materiale viene aggiunto o tolto dal vostro portachiavi pubblico. E' possibile pero' che voi vogliate forzare PGP ad effettuare un'analisi completa del portachiavi, controllando tutte le firme di certificazione ed i parametri di affidabilita', aggiornando tutti i punti di validita', e confrontando la vostra propria chiave assiomaticamente affidabile con una copia di backup conservata su un disco protetto da scrittura. Sarebbe una buona idea effettuare questa manutenzione "igienica" periodicamente, per essere sicuri che nel vostro portachiavi pubblico sia tutto in ordine. Per forzare PGP ad effettuare un'analisi completa del vostro portachiavi pubblico, usate il comando -kc (key ring check): pgp -kc Potete anche forzare PGP a controllare tutte le firme per una singola chiave pubblica: pgp -kc ID [portachiavi] Per ulteriori informazioni sul modo in cui viene controllata la vostra propria chiave, si veda la descrizione del parametro BAKRING nella sezione che si occupa del file di configurazione. Verificare una chiave pubblica attraverso il telefono - ----------------------------------------------------- Se ricevete una chiave pubblica non certificata da qualcuno di cui vi fidate, come potete dire se la chiave e' autentica ? Il modo migliore per verificare una chiave non certificata e' verificarla attraverso un canale indipendente da quello attraverso cui vi e' arrivata. Un modo comodo, se conoscete il proprietario della chiave e potete riconoscerlo al telefono, e' chiamarlo e verificare la chiave. Piuttosto che leggere l'intera chiave (con armatura ASCII) al telefono, potete leggerne la sola "impronta digitale". Per vedere questa impronta digitale, usate il comando -kvc: pgp -kvc ID [portachiavi] Questo mostrera' una selezione di 16 bytes dei componenti della chiave pubblica. Leggete questa impronta digitale di 16 bytes al proprietario, che fara' lo stesso con la sua copia, usando lo stesso comando -kvc. Potete verificare reciprocamente le rispettive chiavi in questo modo, e poi firmarle tranquillamente. E' un modo sicuro e conveniente per iniziare la rete di fiducia tra i vostri amici. Si noti che il modo migliore per verificare una chiave non e' inviarne l'impronta digitale per e-mail, perche' puo' essere intercettata e modificata. E' meglio usare un mezzo indipendente da quello che avete usato per inviare la chiave stessa. Una buona combinazione e' inviare la chiave per e-mail e verificarne l'impronta digitale attraverso una conversazione telefonica. Alcune persone distribuiscono l'impronta della propria chiave scrivendola sui biglietti da visita, cosa che sembra abbastanza sfacciata. Nella versione corrente di PGP, l'impronta digitale della chiave e' ricavata usando la funzione di "mescolamento" MD5. Una futura versione di PGP permettera' di usare come opzione una funzione nuova, SHA, invece di MD5. Se non mi conoscete, per favore non chiamatemi per verificare la mia chiave-- Ricevo troppe chiamate del genere. Siccome ogni utilizzatore di PGP possiede una copia della mia chiave, nessuno puo' manometterle tutte. Le differenze sarebbero presto notate da qualcuno che la controllasse usando piu' di una fonte, e la voce sarebbe presto sparsa su Internet. Per coloro che volessero verificare la mia chiave pubblica (inclusa nel pacchetto standard di rilascio di PGP), eccone i particolari: ID: "Philip R. Zimmermann " Formato: 1024 bits; Data : 21 May 1993; id di chiave: C7A966DD Impronta: 9E 94 45 13 39 83 5F 70 7B E7 D8 ED C4 BE 5A A6 Queste informazioni potrebbero ancora essere manomesse nell'edizione elettronica di questo manuale. Se pero' state leggendo la versione stampata, disponibile nelle librerie ed edita da MIT press, e' sicuro assumere che questa sia effettivamente l'impronta digitale della mia chiave. Maneggiare portachiavi molto grandi - ----------------------------------- In origine PGP e' stato progettato per gestire piccoli portachiavi personali in cui conservare le chiavi dei vostri amici, come in un'agenda. Il contenuto ragionevole di un simile portachiavi e' di qualche centinaio di chiavi. Essendo pero' PGP diventato molto popolare, molte persone stanno tentando di aggiungere il contenuto di portachiavi molto grossi al proprio portachiavi pubblico. A volte questo significa aggiungere migliaia di chiavi. PGP, nella sua forma attuale, non e' in grado di eseguire questa operazione in un tempo ragionevole, mentre voi attendete davanti alla vostra tastiera. Almeno non per portachiavi enormi. Potreste pero' voler aggiungere un portachiavi "enorme" al vostro portachiavi perche' siete interessati a poche dozzine di chiavi fra quelle contenute. Se questo e' tutto quello che volete, sarebbe piu' efficiente estrarre le poche chiavi che vi interessano dal portachiavi grosso, e poi aggiungere solo queste chiavi al vostro portachiavi. Usate il comando -kx per estrarle dal portachiavi grosso, specificando il nome di questo portachiavi nella linea di comando. Quindi aggiungetele al vostro portachiavi pubblico. La soluzione vera consiste nel migliorare PGP per fargli usare tecniche avanzate di database. Stiamo lavorando su questo, e dovremmo essere pronti molto presto. Fino ad allora, dovrete usare portachiavi piu' piccoli, o essere pazienti. Usare PGP come un filtro stile Unix - ----------------------------------- Gli amanti di Unix sono abituati ad usare i collegamenti Unix per far lavorare insieme due applicazioni. L'uscita di un'applicazione puo' essere inviata attraverso un collegamento per fungere da ingresso per un'altra. Perche' questo funzioni, l'applicazione deve essere in grado di leggere il materiale su cui deve lavorare dallo "standard input" e scrivere i risultati nello "standard output". PGP puo' funzionare in questo modo. Se non capite cosa questo significhi, probabilmente questa funzione non vi serve. Per usare un modo di filtro stile Unix, leggendo dallo standard input e scrivendo nello standard output, aggiungere l'opzione -f, cosi': pgp -feast dest_ID outputfile Questa funzione rende piu' facile l'uso di PGP con applicazioni di posta elettronica. Usando PGP nel modo filtro per decifrare un file, potreste trovare utile usare la variabile di ambiente PGPPASS per conservare la frase chiave, in modo che non vi venga richiesta. La funzione PGPPASS e' spiegata piu' avanti. Soppressione delle domande non necessarie: BATCHMODE - ---------------------------------------------------- Abilitando il flag BATCHMODE nella linea di comando, PGP non richiedera' informazioni non necessarie o nomi di files alternativi. Ecco un esempio di come abilitare questo flag: pgp +batchmode filecifrato E' utile per avviare PGP in modo non interattivo da uno shell script di Unix o da un file batch di MSDOS. Alcuni comandi di gestione delle chiavi richiedono interazione anche quando BATCHMODE e' attivo, quindi gli shell scripts potrebbero doverli evitare. BATCHMODE puo' anche essere abilitato per controllare la validita' di una firma in un file. Se non ci sono firme, il codice di uscita e' 1. Se c'e' una firma valida il codice di uscita e' 0. Forzare la risposta "Si'" alle domande di conferma: FORCE - --------------------------------------------------------- Questo flag impostato nella linea di comando obbliga PGP ad assumere come affermative le conferme per la sovrascrittura di files esistenti, o per la rimozione di chiavi dal portachiavi con il comando -kr. Ecco un esempio: pgp +force filecifrato o: pgp -kr +force Smith Questa funzione e' utile per lanciare PGP in modo non interattivo da uno shell script di Unix o da un file batch di MSDOS. PGP restituisce uno stato dopo essere uscito allo Shell - ------------------------------------------------------- Per semplificare la gestione di PGP in modo "batch", per esempio da un file ".bat" di MSDOS o da uno shell script di Unix, PGP restituisce uno stato allo shell. Uno stato 0 indica funzionamento normale, mentre un valore diverso indica il verificarsi di qualche tipo di errore. Errori diversi provocano il ritorno di valori diversi allo shell. Variabile di ambiente per la frase chiave - ----------------------------------------- Normalmente PGP richiede all'utilizzatore di inserire una frase chiave laddove sia richiesta per sbloccare una chiave segreta. E' pero' possibile inserire questa chiave in una variabile di sistema, operando dallo shell. La variabile PGPPASS puo' quindi contenere la frase chiave che PGP tentera' di usare per prima. Se la frase contenuta in PGPPASS non e' corretta, PGP la chiedera' all'utilizzatore. Per esempio, in ambiente MSDOS, il comando shell: SET PGPPASS=zaphod beeblebrox for president eliminerebbe la richiesta della frase chiave, se questa effettivamente fosse "zaphod beeblebrox for president". (L'esempio non e' stato tradotto, perche' qualunque frase serve allo scopo. Inoltre, per chi conosce il riferimento e' proprio una bella frase. N.d.T.) Questa pericolosa funzione vi rende la vita piu' comoda se dovete lavorare regolarmente con un gran numero di messaggi indirizzati alla vostra chiave segreta, eliminando la necessita' di inserire ripetutamente la vostra frase. Ho aggiunto questa funzione dopo diffuse richieste. Comunque, si consideri che la funzione e' in qualche modo pericolosa, perche' immagazzina la vostra frase chiave in un posto diverso dal vostro cervello. Ancora peggio, se siete particolarmente imprudenti, potreste memorizzarla su un disco nello stesso computer in cui conservate la vostra chiave segreta. Sarebbe particolarmente pericoloso e stupido se installaste questo comando in un file batch o uno script, come il file "AUTOEXEC.BAT" di MSDOS. Qualcuno, durante la pausa del pranzo, potrebbe rubare sia il vostro portachiavi segreto che il file che contiene la frase chiave. Non potro' mai dare abbastanza enfasi a questo rischio. Se state pensando di usare questa funzione, assicuratevi di aver letto le sezioni "Esposizioni nei sistemi multi-utente" e "Come proteggere il portachiavi segreto dall'apertura", in questo volume e nel "Volume I". Se dovete usare questa funzione, il modo piu' sicuro di farlo sarebbe battere il comando shell per impostare PGPPASS ogni volta che iniziate ad usare PGP, e quindi cancellare la variabile o spegnere il computer appena avete finito. Inoltre non dovreste assolutamente fare questo in un ambiente in cui altre persone possono avere accesso alla vostra macchina. Qualcuno potrebbe semplicemente chiedere al vostro computer di visualizzare il contenuto di PGPPASS. In alcuni casi potreste voler passare la frase chiave a PGP da un'altra applicazione, ad esempio un pacchetto e-mail. Non e' pero' sempre desiderabile utilizzare la variabile PGPPASS per questo scopo. Esiste un altro modo per fare questo. Usate l'opzione -z nella linea di comando. La frase chiave segue l'opzione -z. I rischi associati a questo approccio sono simili a quelli gia' descritti per l'uso della variabile PGPPASS. Definizione di parametri nel file di configurazione di PGP ========================================================== PGP riconosce un certo numero di parametri che possono essere definiti dall'utilizzatore all'interno di un file di configurazione chiamato "config.txt". Il file si deve trovare nella directory definita nella variabile di ambiente PGPPATH. Il fatto di avere un file di configurazione permette all'utente di definire diversi flag e parametri usati da PGP, senza il fastidio di doverli sempre definire nella linea di comando. Il nome "config.txt" e' stato usato da PGP per lungo tempo, ma alcune persone hanno fatto notare come potrebbe non essere compatibile con le convenzioni usate per nominare i files di configurazione in diversi sistemi operativi. PGP, per evitare il problema, tentera' di aprire questo file solo dopo aver cercato il file ".pgprc" nelle piattaforme Unix, o "pgp.ini" in altri ambienti, nella stessa directory in cui cercherebbe "config.txt". Ai parametri di configurazione possono essere assegnati valori numerici interi, stringhe o valori on/off, relativamente al tipo di parametro. Un file di configurazione standard e' fornito assieme a PGP, in modo che possiate vedere degli esempi. Nel file di configurazione, le linee vuote sono ignorate, cosi' come qualunque cosa venga dopo il carattere di commento "#". Non importa che le parole chiave siano maiuscole o minuscole. Ecco un esempio tipico di un pezzo di file di configurazione: # TMP e' la directory per i file temporanei di PGP (tipo RAM disk) TMP = "e:\" # Puo' essere scavalcato dalla variabile di ambiente # TMP. Armor = on # Usa il comando -a (armatura ASCII) ogni volta che # e' applicabile. # CERT_DEPTH indica la profondita' della catena di affidabilita', # ovvero per quanti livelli un presentatore puo' presentarne un # altro. cert_depth = 3 Se alcuni parametri non sono definiti nel file di configurazione, se non esiste un file di configurazione, o se PGP non lo trova, i valori dei parametri sono impostati a dei default ragionevoli. Si noti che e' possibile impostare questi parametri direttamente dalla linea di comando, facendo precedere l'impostazione del parametro da un carattere "+" . Per esempio i due comandi che seguono producono lo stesso effetto: pgp -e +armor=on lettera.txt smith o: pgp -ea lettera.txt smith Di seguito e' riportato un sommario dei vari parametri definibili nel file di configurazione. TMP - Percorso della directory per i files temporanei - ----------------------------------------------------- Valore di default: TMP = "" Il parametro TMP specifica la directory da usare per i files temporanei. Il posto migliore, se ne avete uno, e' un RAM disk. La velocita' aumenta leggermente, ed in qualche modo anche la sicurezza. Se TMP non e' definito, i files temporanei saranno salvati nella directory corrente. Se la variabile ambiente TMP e' definita, PGP usera' comunque la directory specificata in questa variabile. LANGUAGE - Selettore della lingua da usare - ------------------------------------------ Valore di default: LANGUAGE = "en" PGP visualizza diverse richieste, messaggi di avviso e consigli per l'utente sullo schermo. Ad esempio messaggi come "File non trovato" o "Inserire la frase chiave:". I messaggi sono normalmente visualizzati in Inglese. E' pero' possibile forzare PGP ad usare un'altra lingua, senza dover modificare il programma eseguibile. Molte persone in diversi Paesi hanno tradotto tutti i messaggi presentati da PGP sullo schermo nella loro lingua madre. Queste centinaia di stringhe tradotte sono state piazzate in uno speciale file di testo chiamato "language.txt", distribuito assieme a PGP. I messaggi sono immagazzinati in questo file in Inglese, Spagnolo, Olandese, Tedesco, Francese, Italiano, Russo, Lettone e Lituano. Altre lingue possono essere aggiunte successivamente. Il parametro LANGUAGE specifica quale lingua deve essere usata da PGP. Puo' essere impostato con il valore "en" per l'Inglese, "es" per lo Spagnolo, "de" per il Tedesco, "nl" per l'Olandese, "fr" per il Francese, "it" per l'Italiano, "ru" per il Russo, "lt3" per il Lituano, "lv" per il Lettone, "esp" per l'Esperanto. Per esempio, se nel file di configurazione appare questa linea: LANGUAGE = "fr" PGP utilizzera' il Francese per i suoi messaggi. La lingua di default e' l'Inglese. Quando PGP deve visualizzare un messaggio, cerca nel file "language.txt" la stringa equivalente tradotta nella lingua richiesta e usa questa per la visualizzazione. Se PGP non trova il file, se la lingua richiesta non e' presente nel file, o se quella frase manca dal file, usa la lingua Inglese. Per risparmiare spazio sui dischi, la maggior parte delle traduzioni non e' distribuita con il pacchetto standard di PGP, ma e' disponibile separatamente. MYNAME - ID di default per la generazione di firme - -------------------------------------------------- Valore di default: MYNAME = "" Il parametro MYNAME specifica l'ID di default che PGP usera' per selezionare la frase segreta e generare le firme. Se MYNAME non e' definito, PGP usera' la chiave che e' stata inserita piu' di recente nel vostro portachiavi segreto. L'utilizzatore puo' scavalcare questa impostazione specificando un ID nella linea di comando con l'opzione - -u. TEXTMODE - PGP assumera' che il testo in chiaro sia solo testo - -------------------------------------------------------------- Valore di default: TEXTMODE = off Il parametro TEXTMODE e' equivalente al comando -t. Se e' abilitato, forza PGP a considerare il testo in chiaro come testo puro, non binario, e a convertirlo in forma canonica prima di cifrarlo. Il testo in forma canonica ha CR + LF al termine di ogni linea. Questo modo di funzionamento verra' posto automaticamente nello stato "off" nel momento in cui cio' che sembra essere un insieme di dati binari verra' trovato nel file. Se intendete usare PGP principalmente per l'e-mail, dovreste impostare TEXTMODE=ON. Per i sistemi VAX/VMS, la versione attuale di PGP ha default TEXTMODE=ON. Per maggiori dettagli, si veda la sezione "Inviare file di testo ASCII attraverso macchine e ambienti diversi". CHARSET - Specificare il set di caretteri dei files di testo - ------------------------------------------------------------ Valore di default: CHARSET = NOCONV Siccome PGP deve lavorare su messaggi scritti in molte lingue diverse dall'Inglese, con serie di caratteri non ASCII, potreste dovergli dire quale serie la vostra macchina usa. Questo specifica che conversione di caratteri dovra' essere effettuata durante la trasformazione da e verso la forma canonica. Avrete questo problema solo se lavorate in un ambiente non Inglese e non ASCII. Il parametro CHARSET seleziona la serie di caratteri locali. le scelte possibili sono NOCONV (nessuna conversione), LATIN1 (ISO 8859-1 Latin Alphabet 1), KOI8 (usato dalla maggior parte dei sistemi Unix Russi), ALT_CODES (usato dai sistemi MSDOS Russi), ASCII e CP850 (usato dalla maggior parte delle lingue Europee occidentali sui PC MSDOS standard). LATIN1 e' la rappresentazione interna usata da PGP per il testo canonico, quindi non viene effettuata nessuna conversione se lo selezionate. Si noti che anche KOI8 e' trattato come LATIN1, sebbene sia un carattere totalmente diverso (Russo), perche' il tentativo di convertire KOI8 sia in LATIN1 che CP850 sarebbe comunque futile. Tutto questo significa che impostare CHARSET a NOCONV, LATIN1 o KOI8 e' equivalente. Se usate MSDOS e ritenete di dover inviare o ricevere messaggi scritti usando delle lingue Europee occidentali, impostate CHARSET= "CP850". PGP convertira' il testo canonico ricevuto da LATIN1 a CP850 dopo averlo decifrato. Se usate l'opzione -t (textmode) per convertire in testo canonico, PGP convertira' il vostro testo CP850 in LATIN1 prima di cifrarlo. Per maggiori dettagli, si veda la sezione "Inviare file di testo ASCII attraverso macchine e ambienti diversi". ARMOR - Abilitare la generazione dell'armatura ASCII - ---------------------------------------------------- Valore di default: ARMOR = off Il Parametro ARMOR e' equivalente all'opzione -a della linea di comando. Se abilitato forza PGP a generare file cifrati o chiavi in formato ASCII radix-64, adatto a viaggiare attraverso canali di posta elettronica. I files prodotti avranno l'estensione ".asc". Se intendete usare PGP principalmente per l'e-mail, dovreste impostare ARMOR=ON. Per maggiori dettagli, si veda la sezione "Invio di testo cifrato via e-mail: il formato Radix-64" del "Volume I". ARMORLINES - Formato dei file con armatura divisi in parti - ---------------------------------------------------------- Valore di default: ARMORLINES = 720 Quando PGP genera un file ".asc" in formato radix-64 molto grande, per spedire testo cifrato o chiavi attraverso i canali di e-mail, lo spezza in blocchi abbastanza piccoli da essere compatibili con le funzioni e-mail di Internet. Normalmente, i servizi di posta di Internet proibiscono l'invio di files piu' grandi di 50000 bytes, il che significa che se noi limitiamo il numero di linee a circa 720 siamo tranquillamente al di sotto dei limiti. I blocchi che costituiscono il file avranno estensioni ".as1", ".as2", ".as3", ... Il parametro ARMORLINES specifica il numero massimo di linee contenute in ogni blocco costituente un file ".asc". Se lo impostate al valore zero, PGP non spezzera' il file in blocchi. I files di e-mail di Fidonet hanno un limite di 32k bytes, quindi 450 linee costituiranno il valore adatto per quell'ambiente. Per maggiori dettagli, si veda la sezione "Invio di testo cifrato via e-mail: il formato Radix-64" del "Volume I". KEEPBINARY - Conservare il file cifrato dopo la decifrazione - ------------------------------------------------------------ Valore di default: KEEPBINARY = off Quando PGP legge un file ".asc", riconosce il formato radix-64 e lo converte in formato binario prima di proseguire con il processo normale. Nel fare questo, PGP produce un file intermedio ".pgp" che contiene il file cifrato in formato binario. Dopo aver decifrato questo file, PGP produce un file finale contenente il testo in chiaro. Voi potreste voler cancellare il file binario ".pgp". PGP puo' farlo automaticamente. Se doveste voler decifrare nuovamente il file, vi bastera' ripartire dal file originale ".asc". Il parametro KEEPBINARY abilita o disabilita la conservazione del file intermedio ".pgp" dopo averlo decifrato. Per maggiori dettagli, si veda la sezione "Invio di testo cifrato via e-mail: il formato Radix-64" del "Volume I". COMPRESS - Abilitare la compressione - ------------------------------------ Valore di default: COMPRESS = on Il parametro COMPRESS abilita o disabilita la compressione dei dati prima della cifratura. E' usato principalmente per effettuare il debug di PGP. Normalmente PGP comprime il testo in chiaro prima di cifrarlo. Dovreste generalmente lasciare stare questo parametro e permettere a PGP di comprimere. COMPLETES_NEEDED - Numero richiesto di presentatori completamente affidabili - ----------------------------------------------------------------- Valore di default: COMPLETES_NEEDED = 1 Il parametro COMPLETES_NEEDED specifica il numero minimo di presentatori completamente affidabili necessari per validare una chiave nel vostro portachiavi pubblico. Questo vi permette di regolare lo scetticismo di PGP. Per maggiori dettagli, si veda la sezione "Come fa PGP a tener traccia delle chiavi valide?" nel "Volume I". MARGINALS_NEEDED - Numero richiesto di presentatori parzialmente affidabili - ---------------------------------------------------------------- Valore di default: MARGINALS_NEEDED = 2 Il parametro MARGINALS_NEEDED specifica il numero minimo di presentatori parzialmente affidabili necessari per validare una chiave nel vostro portachiavi pubblico. Questo vi permette di regolare lo scetticismo di PGP. Per maggiori dettagli, si veda la sezione "Come fa PGP a tener traccia delle chiavi valide?" nel "Volume I". CERT_DEPTH - Numero massimo di presentazioni secondarie - ------------------------------------------------------- Valore di default: CERT_DEPTH = 4 Il parametro CERT_DEPTH specifica quanti livelli di presentazioni secondarie PGP dovra' accettare per certificare altri presentatori. Per esempio, se CERT_DEPTH vale 1, puo' esistere un solo livello di presentatori al di sotto della vostra chiave completamente affidabile. Se questo e' il caso, dovrete certificare personalmente le chiavi di tutti i presentatori da voi definiti affidabili. Se CERT_DEPTH vale 0, non potrete avere nessun presentatore, e dovrete certificare ogni chiave presente nel vostro portachiavi pubblico per poterla usare. Il valore minimo di CERT_DEPTH e' 0, il massimo 8. Per maggiori dettagli, si veda la sezione "Come fa PGP a tener traccia delle chiavi valide?" nel "Volume I". BAKRING - Nome del file di backup del portachiavi segreto - --------------------------------------------------------- Valore di default: BAKRING = "" Tutte le certificazioni di chiavi effettuate da PGP nel vostro portachiavi pubblico, alla radice risalgono alla vostra(e) chiave(i) pubblica(he). Per scoprire una manomissione del vostro portachiavi pubblico, PGP deve controllare che non sia stata manomessa questa chiave. Per farlo, PGP deve confrontare la vostra chiave pubblica con una copia di backup della vostra chiave segreta conservata in un posto resistente alla manomissione, come per esempio un floppy disk protetto da scrittura. La chiave segreta contiene tutte le informazioni presenti anche nella vostra chiave pubblica, piu' alcune componenti segrete. Questo significa che PGP puo' verificare la vostra chiave pubblica usando come campione una copia di quella segreta. Il parametro BAKRING specifica il percorso ed il nome del file di backup del vostro portachiavi segreto. In un sistema MSDOS, potete impostarlo come "a:\secring.pgp", per indicare una copia di backup del portachiavi segreto conservata su un floppy disk protetto da scrittura. Questo controllo viene effettuato solo quando eseguite l'opzione -kc di PGP per controllare il vostro intero portachiavi pubblico. Se BAKRING non e' definito, PGP non effettuera' il controllo della vostra chiave. Per maggiori dettagli, vedere le sezioni "Come proteggere il vostro portachiavi pubblico dalle manomissioni" e "Come fa PGP a tener traccia delle chiavi valide?" nel "Volume I". PUBRING - Nome del file portachiavi pubblico - -------------------------------------------- Valore di default: PUBRING = "$PGPPATH/pubring.pgp" Se volete tenere il vostro portachiavi pubblico in una directory diversa da quella che contiene il file di configurazione potete specificarne il nome ed il percorso con il parametro PUBRING. Per esempio, in un sistema MSDOS, potreste tenere il portachiavi in un floppy disk specificando: PUBRING = "a:pubring.pgp" Questa funzione e' particolarmente pratica per evitarvi di specificare un portachiavi alternativo nella linea di comando. SECRING - Nome del file portachiavi segreto - ------------------------------------------- Valore di default: SECRING = "$PGPPATH/secring.pgp" Se volete tenere il vostro portachiavi segreto in una directory diversa da quella che contiene il file di configurazione potete specificarne il nome ed il percorso con il parametro SECRING. Questo e' particolarmente pratico se volete tenere il portachiavi segreto in una directory o su un apparato piu' protetto di quello in cui tenete il portachiavi pubblico. Per esempio, in un sistema MSDOS, potreste tenere il portachiavi in un floppy disk specificando: SECRING = "a:secring.pgp" RANDSEED - Nome del file di semi per i numeri casuali - ----------------------------------------------------- Valore di default: RANDSEED = "$PGPPATH/randseed.bin" Se volete tenere il vostro file di semi per la generazione di numeri casuali (per generare le chiavi temporanee) in una directory diversa da quella del file di configurazione, potete specificarne nome e percorso col parametro RANDSEED. Puo' essere utile se volete tenere il file su di un supporto piu' protetto di quello su cui tenete il vostro portachiavi pubblico. Ad esempio, in un sistema MSDOS, potreste voler tenere il file in un floppy disk: RANDSEED = "a:randseed.bin" PAGER - Impostare il comando Shell per la visualizzazione del testo in chiaro decifrato - ------------------------------------------------------------------- Valore di default: PAGER = "" PGP vi permette di vedere il testo decifrato sullo schermo (come con il comando "more" di Unix) senza salvarlo in un file, usando l'opzione -m nella linea di comando per decifrare. Vedrete il testo decifrato una pagina alla volta. Se preferite usare un'applicazione diversa da quella interna a PGP per vedere il vostro testo, potete specificarne il nome col parametro PAGER. PAGER specifica il comando che PGP dovra' eseguire per richiamare ,l'applicazione. Ad esempio, potreste voler usare il popolare programma shareware "list.com" per MSDOS. Dovrete specificare: PAGER = "list" Comunque, se il mittente ha specificato che il file deve solo essere presentato sullo schermo, PGP usera' sempre la propria funzione interna. Per maggiori dettagli, si veda la sezione "Presentare il testo decifrato sullo schermo". SHOWPASS - Visualizzazione della frase chiave durante l'inserimento - ------------------------------------------------------------------- Valore di default: SHOWPASS = off PGP non vi permette normalmente di vedere la vostra frase chiave mentre la battete. Questo rende piu' difficile per qualcuno che potrebbe guardare da dietro le vostre spalle mentre la battete impararla. Purtroppo alcune persone con problemi di battitura trovano molto difficile battere correttamente la propria frase senza vederla, ed inoltre potrebbero usare PGP protetti dalla sicurezza delle proprie case. Cosi' e' stato richiesto che PGP potesse essere configurato per visualizzare la frase durante la battitura. Il parametro SHOWPASS abilita PGP a darvi un riscontro a video di cio' che battete quando inserite la vostra frase chiave. TZFIX - Regolazione dell'ora locale - ----------------------------------- Valore di default: TZFIX = 0 PGP aggiunge alle vostre chiavi ed alle vostre firme un'etichetta contenente l'ora della generazione in Greenwich Mean Time (GMT), o Coordinated Universal Time (UTC), che per questa applicazione significano la stessa cosa. Quando PGP interroga il sistema per ritrovare l'ora, assume che il sistema la fornisca in GMT. A volte pero', a causa di un sistema MSDOS configurato in modo improprio, il tempo e' restituito in US Pacific Standard Time piu' 8 ore. Sembra bizzarro, vero ? Forse succede perche' a causa di qualche tipo di sciovinismo della costa occidentale degli Stati Uniti, MSDOS presume che l'ora locale sia comunque US Pacific Time, e la corregge per ricavarne l'ora GMT. Questo naturalmente influenza in maniera errata il comportamento della funzione interna a MSDOS che PGP richiama e che dovrebbe restituire il tempo GMT. Comunque, se la variabile di ambiente MSDOS TZ e' gia' definita correttamente, questo corregge la concezione errata di MSDOS che tutto il mondo viva sulla costa occidentale degli Stati Uniti. Il parametro TZFIX specifica il numero di ore da aggiungere al tempo restituito dal sistema per ottenere il tempo GMT ed utilizzarlo per creare l'etichetta da aggiungere alle vostre chiavi ed alle vostre firme. Se la variabile di ambiente MSDOS TZ e' definita correttamente, potete lasciare TZFIX=0. I sistemi Unix normalmente non richiedono nessuna impostazione di TZFIX. Se state pero' usando qualche altro oscuro sistema operativo che non sa cosa sia il GMT, probabilmente dovrete impostare TZFIX in modo da correggere il tempo restituito dal sistema. Sui sistemi MSDOS in cui TZ non e' definita all'interno dell'ambiente, dovreste definire TZFIX=0 per la California, -1 per il Colorado, -2 per Chicago, -3 per New York, -8 per Londra, -9 per Amsterdam. D'estate con l'ora legale, dovreste diminuire manualmente questi valori di 1. Che pasticcio. Sarebbe molto piu' pulito definire la vostra variabile ambiente MSDOS TZ all'interno del file "AUTOEXEC.BAT", piuttosto che usare la correzione TZFIX. MSDOS vi fornira' delle etichette di tempo corrette, e terra' conto dell'ora legale per voi. Ecco alcuni esempi di linee da inserire in AUTOEXEC.BAT per le diverse zone: Per Los Angeles: SET TZ=PST8PDT Per Denver: SET TZ=MST7MDT Per l' Arizona: SET TZ=MST7 (L'Arizona non usa mai l'ora legale) Per Chicago: SET TZ=CST6CDT Per New York: SET TZ=EST5EDT Per Londra: SET TZ=GMT0BST Per Amsterdam: SET TZ=MET-1DST Per Mosca: SET TZ=MSK-3MSD Per Aukland: SET TZ=NZT-13 CLEARSIG - Abilitare l'inclusione di messaggi firmati come testo in chiaro - ----------------------------------------------------------------- Valore di default: CLEARSIG = on Normalmente, i messaggi firmati, ma non cifrati, da PGP hanno un certificato di firma allegato in formato binario. Il messaggio inoltre e' compresso, per cui e' illeggibile anche senza essere cifrato. Per inviare questi dati attraverso un canale e-mail a 7 bit, si applica l'armatura ASCII radix 64 (si veda il parametro ARMOR). Comunque, anche se PGP non comprime il messaggio, l'armatura ASCII lo rende sempre illeggibile. Il destinatario dovra' sempre usare PGP per togliere l'armatura, o decomprimere il messaggio, o entrambi, prima di poter leggere. Se il messaggio originale e' composto da solo testo (non binario) e' possibile firmarlo, non comprimerlo ed applicare l'armatura ASCII solo alla firma, lasciando intatto e leggibile il messaggio. Il flag CLEARSIG abilita questa utile funzione, rendendo possibile produrre un testo firmato leggibile senza l'uso di PGP. Naturalmente PGP servira' a verificare la firma. Il valore di default di CLEARSIG e' "on" a partire da PGP versione 2.5. Per abilitare pienamente CLEARSIG, bisogna porre ad "on" anche ARMOR e TEXTMODE. Si impostino ARMOR=ON (o si usi l'opzione -a) e TEXTMODE=ON (o opzione -t). Se nel vostro file di configurazione impostate CLEARSIG ad "off", potete ancora abilitarlo dalla linea di comando, cosi': pgp -sta +clearsig=on lettera.txt Questa rappresentazione del messaggio e' analoga a quella usata dal PEM (Internet Privacy Enhanced Mail) per i messaggi di tipo MIC-CLEAR. E' importante notare come siccome l'armatura ASCII e' applicata solo alla firma, e non al messaggio, ci siano dei rischi che quest'ultimo possa subire delle manomissioni accidentali strada facendo. Puo' capitare durante il passaggio dai gateway tra i diversi sistemi che effettuano una conversione della serie di caratteri, oppure possono aggiungere o togliere degli spazi al termine delle righe. Se avviene questo, la verifica della firma dara' esito negativo, dandovi una falsa indicazione di una manomissione intenzionale. Siccome pero' il PEM ha questa stessa vulnerabilita', apparentemente vale la pena di avere questa funzione nonostante i rischi. A partire da PGP 2.2, gli spazi aggiuntivi su ogni linea sono ignorati durante la generazione della firma nel modo CLEARSIG. VERBOSE - Messaggi: ridotti, normali, esplanatori - ------------------------------------------------- Valore di default: VERBOSE = 1 VERBOSE puo' valere 0, 1 o 2, e specifica quanto volete che siano dettagliati i messaggi diagnostici di PGP. In particolare: 0 - Visualizza i messaggi solo in caso di problemi. Gli appassionati di Unix hanno richiesto questo "modo silenzioso". 1 - Impostazione normale di default. Visualizza una quantita' ragionevole di dettagli nei messaggi diagnostici o di avviso. 2 - Visualizza tutte le informazioni disponibili, normalmente per diagnosticare dei problemi di PGP. Non e' consigliabile per l'uso normale. D'altra parte PGP non ha problemi, giusto ? INTERACTIVE - Chiedere conferma per l'aggiunta di chiavi - -------------------------------------------------------- Valore di default: INTERACTIVE = off L'abilitazione di questo modo di funzionamento forzera' PGP a chiedere conferma prima di aggiungere al vostro portachiavi pubblico ognuna delle chiavi contenute in un file esterno. NOMANUAL - Abilitare PGP a generare le chiavi senza manuali - ----------------------------------------------------------- Valore di default: NOMANUAL = off E' importante che la versione freeware di PGP non sia distribuita senza la documentazione che normalmente fa parte del pacchetto di rilascio standard. Questo manuale contiene informazioni importanti sull'uso di PGP e sugli aspetti legali del suo utilizzo. Alcune persone hanno pero' distribuito versioni precedenti di PGP senza manuali, causando molti problemi alle persone che le hanno ricevute. Per scoraggiare la distribuzione di PGP senza la documentazione richiesta, il software e' stato modificato in modo da verificare che i manuali d'uso si trovino da qualche parte nel vostro computer (per esempio nella directory di PGP), prima di permettervi di generare una coppia di chiavi. D'altra parte, alcuni utilizzatori usano PGP su di un piccolo palmtop con capacita' di registrazione limitate, sicche' vorrebbero poter evitare di occupare spazio con i manuali. Per soddisfare questa esigenza, PGP puo' essere indotto a soprassedere a questo controllo, abilitando il flag NOMANUAL durante la generazione delle chiavi, cosi': pgp -kg +nomanual Il flag NOMANUAL puo' essere impostato solo dalla linea di comando, non nel file di configurazione. Siccome voi dovete aver letto questo manuale per imparare ad abilitare questa funzione, spero che questa protezione sia ancora effettiva per scoraggiare la distribuzione di PGP senza manuali. Alcune persone possono avere obiezioni al fatto che PGP pretenda di trovare i manuali da qualche parte nelle vicinanze per generare una chiave. Costoro si adirano per questo atteggiamento apparentemente autoritario. Alcune persone hanno persino modificato PGP per togliere questa funzione, ed hanno ridistribuito la loro versione ad altri. Questo mi crea dei problemi. Prima che aggiungessi questa funzione, circolavano delle versioni storpiate del pacchetto di distribuzione senza manuali. Una di esse e' stata caricata su Compuserve, e distribuita ad un numero enorme di utilizzatori che mi hanno chiamato al telefono per chiedermi come mai un programma cosi' complicato non avesse nessun manuale. Questo pacchetto e' poi finito su delle BBS in giro per tutto il Paese. Inoltre un distributore di freeware ha preso il pacchetto da Compuserve e lo ha inserito in un CD-ROM, distribuendo migliaia di copie senza manuale. Che confusione. Una sbirciata nel sottobosco ============================ Diamo un'occhiata ad alcune funzioni interne di PGP. Numeri casuali - -------------- PGP usa un generatore di numeri pseudocasuali crittograficamente forte per creare delle chiavi temporanee da utilizzare per la crittografia convenzionale. Il file di semi per questa funzione si chiama "randseed.bin". Puo' essere contenuto in qualunque directory abbiate inserito nella variabile di ambiente PGPPATH. Se questo file non esiste viene creato automaticamente e riempito con dei numeri effettivamente casuali derivati dal tempo che intercorre fra le vostre battute. Il generatore rinnova il file ogni volta che viene usato mescolandogli nuovo materiale derivato in parte dall'ora del giorno ed in parte da altre fonti effettivamente casuali. Esso usa l'algoritmo di crittografia convenzionale come motore per generare numeri casuali. Il file di semi contiene sia semi casuali che chiavi casuali da usarsi per attivare il motore (la crittografia convenzionale) e generare nuovi numeri. Questo file di semi dovrebbe come minimo essere un po' protetto dall'apertura, per ridurre il rischio che un intruso riesca a ricavare la vostra ultima o prossima chiave temporanea. L'intruso avrebbe delle serie difficolta' a trovare qualcosa di utile in questo file, perche' esso viene ripulito crittograficamente prima e dopo ogni utilizzo. Tuttavia, sembra come minimo prudente cercare di tenerlo lontano dalle mani sbagliate. Se non vi sentite a vostro agio dovendovi fidare di una sorgente di numeri casuali derivante da un algoritmo, per quanto forte, ricordatevi che vi state gia' fidando dello stesso algoritmo per proteggere i vostri messaggi. Se e' abbastanza forte per questo, dovrebbe essere abbastanza forte da essere usato come sorgente di una chiave temporanea. Si noti che PGP usa dei numeri realmente casuali ricavati da sorgenti fisiche (principalmente gli intervalli fra le battute), per generare le coppie di chiavi pubblica/segreta da usarsi per lungo tempo. L'algoritmo di crittografia convenzionale di PGP - ------------------------------------------------ Come gia' descritto in precedenza, PGP sfrutta un algoritmo di crittografia convenzionale a chiave singola, usando un algoritmo a chiave pubblica per cifrare la chiave temporanea, e quindi sfruttando tale chiave per cifrare il messaggio in modo convenzionale piu' veloce. Parliamo quindi di questo algoritmo di cifratura convenzionale. Non e' il DES. Il DES (Federal Data Encryption Standard) era un buon algoritmo per la maggior parte delle applicazioni commerciali. Il Governo non si e' pero' mai fidato del DES per proteggere i propri dati classificati, perche' la chiave del DES e' di soli 56 bits, abbastanza corta da soccombere ad un attacco condotto con la forza bruta. Anche il DES completo a 16 passaggi e' stato attaccato con qualche successo da Biham e Shamir con l'uso della crittoanalisi differnziale, e da Matsui con l'uso della crittoanalisi lineare. Il piu' devastante attacco pratico portato al DES e' stato descritto alla conferenza Crypto '93, dove Michael Wiener del Bell Northern Research ha presentato un documento sull'apertura del codice DES con una macchina speciale. Egli aveva sviluppato e verificato un chip che provava 50 milioni di codici DES al secondo, fino a trovare quello giusto. Sebbene fino ad ora egli si sia astenuto dal produrre il componente in serie, puo' ottenerne la produzione per 10.50 $ al pezzo, e puo' inserirne 57000 in una macchina speciale con un costo di 1 milione di dollari. Questa macchina puo' provare tutte le chiavi DES in 7 ore, ottenendo la soluzione mediamente in 3,5 ore. Si puo' stornare e nascondere 1 milione di dollari dal budget di molte societa'. Spendendo 10 milioni di dollari la soluzione e' ottenuta in 21 minuti, e 100 milioni di dollari assicurano un tempo di 2 soli minuti. Avendo a disposizione il budget di un qualunque governo per esaminare il traffico DES, il codice puo' essere violato in alcuni secondi. Tutto questo significa che il DES a 56 bits ormai e' morto per cio' che riguarda le applicazioni serie di sicurezza dei dati. Un possibile successore del DES potrebbe essere una variazione conosciuta come "triplo DES", che usa due chiavi DES per cifrare tre volte , raggiungendo una lunghezza effettiva della chiave di 112 bits. Questo sistema e' pero' tre volte piu' lento del DES normale. Una versione futura di PGP potrebbe supportare il triplo DES come opzione. PGP non usa il DES come algoritmo a chiave singola, bensi' un algoritmo a chiave singola di cifratura a blocchi chiamato IDEA(tm). Per le persone crittograficamente curiose, la cifratura IDEA utilizza blocchi di 64 bits per il testo sia in chiaro che cifrato. Essa utilizza una chiave di 128 bits. E' basata sulla filosofia della miscelazione di operazioni da diversi gruppi algebrici. E' molto piu' veloce del DES e, come il DES, puo' essere usata in modo CFB (cipher feedback) o CBC (cipher block chaining). PGP usa l'IDEA in modo CFB a 64 bits. La cifratura a blocchi IPES/IDEA e' stata sviluppata all'ETH di Zurigo da James L. Massey e Xuejia Lai, e pubblicata nel 1990. Non e' un algoritmo "casalingo". I suoi progettisti hanno un'ottima reputazione nella comunita' dei crittografi. I primi documenti pubblicati chiamavano l'algoritmo IPES (Improved Proposed Encryption Standard), ma piu' tardi il nome e' stato cambiato in IDEA (International Data Encryption Algorithm). Fino ad ora, IDEA ha resistito agli attacchi molto meglio di altri algoritmi come FEAL, REDOC-II, LOKI, Snefru e Khafre. Prove recenti fanno ritenere che l'IDEA sia anche piu' resistente del DES agli attacchi portati da Biham e Shamir con la loro efficientissima crittoanalisi differenziale. Biham e Shamir hanno esaminato a fondo l'IDEA per trovare debolezze, senza successo. Gruppi accademici di crittoanalisti in Belgio, Inghilterra e Germania stanno cercando di attaccare l'IDEA, cosi' come i servizi militari di diversi Paesi Europei. Man mano che questo nuovo algoritmo attira le attenzioni e gli sforzi dei piu' formidabili gruppi del mondo della crittoanalisi, la fiducia in esso cresce col passare del tempo. Ogni tanto ricevo una lettera da qualcuno che ha appena scoperto la terribile verita': PGP non usa la pura tecnica RSA per cifrare i dati. Costoro sono preoccupati dal fatto che l'intero pacchetto sia indebolito usando un sistema ibrido a chiave pubblica e convenzionale solo per rendere le cose piu' veloci. Dopo tutto, una catena e' forte come il suo anello piu' debole. Essi chiedono una spiegazione di questo apparente "compromesso" nella solidita' di PGP. Questo puo' succedere perche' sono stati presi dalla pubblica reverenza e dalla soggezione per la forza ed il misticismo dell'RSA, credendo in maniera erronea che l'RSA sia intrinsecamente piu' forte di ogni sistema di cifratura convenzionale. Bene, non lo e'. Persone che lavorano nella ricerca industriale affermano che il carico di lavoro richiesto per esaurire tutte le chiavi possibili a 128 bits nel sistema di cifratura IDEA sarebbe grosso modo uguale a quello richiesto per violare una chiave RSA a 3100 bits, ovvero abbastanza piu' grande della chiave a 1024 che la maggior parte delle persone utilizza per le proprie applicazioni di elevata sicurezza. Data questa gamma di dimensioni delle chiavi, e supponendo che la cifratura convenzionale non contenga debolezze nascoste, l'anello debole di questa impostazione ibrida di PGP e' nell'algoritmo a chiave pubblica, e non in quello convenzionale. Non e' ergonomicamente pratico utilizzare l'RSA puro con chiavi di elevate dimensioni per cifrare e decifrare messaggi lunghi. Una chiave RSA di 1024 bits decifrerebbe un messaggio in maniera circa 4000 volte piu' lenta della cifratura IDEA. Assolutamente nessuno fa questo nel mondo reale. Molte persone poco esperte di crittografia non capiscono che l'attrattiva di un sistema a chiave pubblica non e' la sua maggiore forza intrinseca, ma la semplicita' di gestione delle chiavi. L'RSA non e' solo troppo lento nel maneggiare ammassi di dati, ma ha anche certe debolezze che possono essere sfruttate in casi speciali di messaggi particolari forniti in ingresso, anche con chiavi molto grosse. Questi casi speciali possono essere evitati con l'approccio ibrido che usa l'RSA per cifrare una chiave temporanea per una crittografia convenzionale, come fa PGP. Quindi la linea di fondo e' questa: usare l'RSA puro per ammassi di dati e' l'approccio sbagliato, punto. E' troppo lento, non e' piu' forte, e puo' perfino essere piu' debole. Se trovate un'applicazione software che usa l'RSA per ammassi di dati, probabilmente significa che chi l'ha sviluppata non ha capito questi punti, il che implica che probabilmente non ha capito nemmeno altri concetti importanti della crittografia. Compressione dei dati - --------------------- PGP normalmente comprime il testo in chiaro prima di cifrarlo. Sarebbe troppo tardi cercare di comprimerlo dopo la cifratura; il testo cifrato e' incomprimibile. La compressione dei dati fa risparmiare tempo nella trasmissione via modem, spazio sul disco, e soprattutto aumenta la sicurezza della cifratura. Molte tecniche di crittoanalisi sfruttano le ridondanze presenti nel testo in chiaro per violare la cifratura. La compressione dei dati riduce questa ridondanza nel testo in chiaro, migliorando molto la resistenza a questo tipo di analisi. Comprimere il testo richiede tempo, ma dal punto di vista della sicurezza sembra valga il disturbo, almeno secondo la mia cauta opinione. I files troppo corti, o che semplicemente non si comprimono bene, non sono compressi da PGP. Se preferite, potete usare PKZIP per comprimere il testo in chiaro prima di cifrarlo. PKZIP, di PKWare, Inc., e' un' applicazione di compressione shareware per MSDOS molto efficace e disponibile ovunque. Potete anche usare ZIP, un' applicazione freeware per Unix compatibile con PKZIP disponibile presso Jean-Loup Gailly. In alcuni casi avrete dei vantaggi usando PKZIP o ZIP perche', a differenza della funzione di compressione di PGP, PKZIP e ZIP danno la simpatica possibilita' di immagazzinare piu' di un file nello stesso file compresso. PGP non tentera' di comprimere un file gia' compresso. Dopo la decifrazione, il destinatario potra' decomprimere il testo in chiaro usando PKUNZIP. Se il file decifrato e' un file compresso con PKZIP, PGP lo riconosce automaticamente e lo segnala al destinatario. Per i lettori tecnicamente curiosi, la versione corrente di PGP usa la routine freeware ZIP scritta da Jean-Loup Gailly, Mark Adler e Richard B. Wales. Questo software ZIP usa un algoritmo di compressione funzionalmente equivalente a quello usato da PKZIP 2.0 di PKWare. E' stato scelto ZIP principalmente per la disponibilita' del codice sorgente in C liberamente portabile, perche' ha un rapporto di compressione veramente buono, e perche' e' veloce. Peter Gutmann ha scritto una bella applicazione di compressione chiamata HPACK disponibile liberamente presso molti siti FTP di Internet. Essa cifra gli archivi compressi usando il formato dei dati di PGP ed i portachiavi. Egli ha voluto che la menzionassi qui. Selezioni di messaggio e firme digitali - --------------------------------------- Per creare una firma digitale, PGP effettua una cifratura con la vostra chiave segreta. PGP non cifra effettivamente tutto il messaggio con la chiave segreta-- ci vorrebbe troppo tempo. In effetti cifra una "selezione del messaggio". La selezione del messaggio e' un "distillato" compatto (128 bits) del messaggio, simile come concetto ad un checksum. Potete anche pensare ad esso come ad un'"impronta digitale" del messaggio. La selezione di messaggio "rappresenta" il vostro messaggio, cosicche' qualunque alterazione del messaggio stesso fara' si' che esso produca una selezione differente. Questo rende possibile controllare se una simile alterazione e' effettivamente avvenuta ad opera di un falsario. La selezione di messaggio e' calcolata usando una funzione di complicazione a senso unico e crittograficamente forte. Sarebbe praticamente impossibile per un estraneo riuscire a realizzare un messaggio falso che produca la stessa selezione. Da questo punto di vista, una selezione di messaggio e' migliore di un semplice checksum, perche' e' abbastanza facile sviluppare un messaggio che produca un checksum uguale. Come per un checksum comunque, e' impossibile ricavare un messaggio partendo dalla sua selezione. Una selezione da sola non e' sufficiente ad autenticare un messaggio. L'algoritmo di generazione e' conosciuto pubblicamente, e non richiede la conoscenza di nessuna chiave per essere applicato. Se tutto cio' che facciamo e' allegare una selezione al messaggio, un falsario puo' alterare il messaggio e semplicemente allegare una nuova selezione ricavata dal messaggio falso. Per effettuare una vera autenticazione, il mittente deve cifrare (firmare) la selezione del messaggio con la propria chiave segreta. La selezione di messaggio e' calcolata dal mittente, che usa la propria chiave segreta per cifrarla assieme ad un'etichetta di tempo, creando cosi' una firma digitale, o certificato di firma. Questa firma e' poi spedita allegandola al messaggio. Il destinatario riceve il messaggio e la firma e ricupera la selezione originale decifrandola con la chiave pubblica del mittente. Se selezione e messaggio corrispondono, il messaggio non e' stato alterato, e proviene dal proprietario della chiave pubblica usata per controllare la firma. Un potenziale falsario dovrebbe produrre un messaggio che crei la stessa selezione (e non e' praticabile), oppure creare una nuova firma partendo dal messaggio falso (e non e' praticabile senza possedere la chiave segreta del mittente). Le firme digitali provano l'identita' del mittente, e la genuinita' del messaggio (il messaggio non e' stato alterato ne' per errore, ne' per dolo). Inoltre le firme impediscono di ripudiare il messaggio, perche' per il mittente non e' semplice rinnegare la propria firma apposta con la propria chiave segreta. Oltre ad essere piu' veloce che firmare direttamente tutto il messaggio, l'uso delle selezioni presenta altri vantaggi. La firma puo' essere di un formato piccolo e standard, indipendente dal formato del messaggio. Il software puo' controllare automaticamente l'integrita' del messaggio, in modo simile all'uso del checksum. La firma puo' restare separata dal messaggio, forse addirittura in un archivio pubblico, senza rivelare informazioni importanti sul messaggio stesso, perche' nessuno puo' ricavare il contenuto del messaggio dalla sua selezione. L'algoritmo di selezione del messaggio usato qui e' l'MD5 Message Digest Algorithm, reso di pubblico dominio dalla RSA Data Security, Inc. Il progettista, Ronald Rivest, ha scritto di MD5 quanto segue: "Si suppone che la probabilita' di trovare due messaggi che producano la stessa selezione sia di 1 contro 2^64, mentre la probabilita' di riuscire a scrivere un messaggio che produca una selezione data e' dell'ordine di 1 contro 2^128. L'algoritmo MD5 e' stato verificato scrupolosamente per trovare delle debolezze. Comunque e' un algoritmo relativamente nuovo, ed ulteriori analisi sulla sua sicurezza sono ovviamente giustificate, come per ogni nuovo prodotto di questo tipo. Il livello di sicurezza fornito da MD5 dovrebbe essere sufficiente per sviluppare schemi ibridi di firma digitale altamente sicuri basati su di esso e sul sistema di cifratura a chiave pubblica RSA." Compatibilita' con le versioni precedenti e future di PGP ========================================================= PGP versione 2.6 puo' leggere qualunque cosa prodotta con le versioni da 2.3 a 2.7. A causa di un accordo negoziato tra il MIT e l'RSA pero'. PGP 2.6 e' stato programmato in modo da cambiare leggermente il suo comportamento a partire dal 1 settembre 1994. Da quella data, PGP comincera' ad utilizzare un formato nuovo e leggermente diverso per i messaggi, le firme e le chiavi. Sara' ancora in grado di leggere ed elaborare messaggi, firme e chiavi prodotti con il vecchio formato, ma generera' quello nuovo. Questo cambiamento e' teso a scoraggiare l'uso delle versioni vecchie (2.3a o piu' vecchie) di PGP, i cui contenuti Publc Key Partners possono violare il brevetto RSA (si veda la sezione dedicata agli aspetti legali). Il PGP di ViaCrypt (si veda la sezione "Come ottenere una versione commerciale di PGP"), versioni 2.4 e 2.7, evita i problemi di brevetti grazie agli accordi di licenza con Public Key Partners. PGP 2.5 e 2.6 evitano questi problemi usando RSAREF(tm) Cryptographic Toolkit, su licenza di RSA Data Security, Inc. Al di fuori degli Stati Uniti, il brevetto RSA non e' valido, cosi' gli utilizzatori di PGP sono liberi di usare implementazioni non basate su RSAREF e sulle sue restrizioni. Si vedano le note sulle versioni internazionali nella sezione di questo manuale dedicata agli aspetti legali. Sembra probabile che qualunque versione di PGP preparata al di fuori degli Stati Uniti accettera' il nuovo formato, la cui descrizione dettagliata e' disponibile presso il MIT. Se tutti acquisiranno le versioni nuove prima di settembre 1994, o poco dopo, ci saranno pochi problemi di interoperabilita'. Questo cambio di formato a partire dalla versione 2.6 e' simile al processo naturale per cui, quando si aggiungono nuove funzioni, le versioni vecchie di PGP non sono in grado di leggere il materiale prodotto dalle versioni nuove, mentre le versioni nuove conservano la capacita' di leggere quello prodotto dalle versioni vecchie. L'unica differenza in questo caso, e' che si tratta di un aggiornamento "legale" invece che tecnico. Vale la pena di effettuare questo cambiamento, se puo' portare la pace nei nostri giorni. Secondo ViaCrypt, che vende la versione commerciale di PGP, il suo PGP si evolvera' per mantenere l'interoperabilita' con la versione freeware. Un'altro cambiamento influenza l'interoperabilita' con le versioni precedenti di PGP. Sfortunatamente, a causa dei limiti sul formato dei dati imposti da RSAREF, PGP 2.5 e 2.6 non possono interpretare nessun messaggio o firma prodotti con le versioni 2.2 o precedenti. Siccome non abbiamo altra scelta se non usare il nuovo formato, a causa della necessita' di utilizzare RSAREF, non possiamo fare niente per risolvere questo problema. A partire dalla versione 2.4 (ovvero la prima versione di ViaCrypt) fino almeno alla 2.6, PGP non vi permette di generare chiavi piu' lunghe di 1024 bits. Si e' sempre pensato al limite superiore di 1024 bits -- deve esserci un limite superiore, per ragioni di prestazioni ed interoperabilita'. A causa pero' di un difetto nelle versioni precedenti di PGP, era possibile generare chiavi piu' lunghe di 1024 bits. Queste chiavi piu' grandi causavano problemi di interoperabilita' fra le diverse versioni piu' vecchie di PGP, che usavano algoritmi aritmetici differenti con formati diversi delle parole. Su alcune piattaforme PGP si inchiodava sulle chiavi piu' grosse. Oltre a questi vecchi problemi di formato di chiavi, il limite di 1024 bits e' ora anche imposto da RSAREF. Una chiave di 1024 bits e' molto probabilmente al di la' delle possibilita' di attacco dei principali governi. Nelle versioni future, PGP potra' maneggiare chiavi piu' grosse. In generale c'e' compatibilita' dalla versione 2.0 fino alla 2.4. A causa dell'aggiunta di nuove funzioni, le versioni piu' vecchie potrebbero non essere sempre in grado di maneggiare alcuni files creati con le versioni piu' nuove. A causa poi di importanti cambiamenti negli algoritmi e nella struttura dei dati, la versione 2.0 e quelle successive non sono minimamente compatibili con la versione 1.0, che comunque non e' piu' usata da nessuno. Le versioni future di PGP potranno dover cambiare il formato dei dati nei messaggi, nelle firme, nelle chiavi e nei portachiavi, per poter sviluppare nuove importanti funzioni. Ci sforzeremo di sviluppare nuove versioni che maneggino chiavi, firme e messaggi prodotti dalla versione presente, ma non e' garantito che ci riusciremo. I futuri rilasci potranno contenere delle applicazioni per convertire le chiavi vecchie, ma potreste dover eliminare tutti i vecchi messaggi creati col vecchio PGP. Inoltre, la versione corrente potrebbe non essere in grado di leggere il materiale prodotto dalle versioni future. Vulnerabilita' ============== Nessun sistema per la sicurezza dei dati e' impenetrabile. PGP puo' essere raggirato in molti modi. A proposito di ogni sistema di sicurezza, dovete chiedervi se le informazioni che cercate di proteggere hanno per l'intruso un valore superiore al costo dell'intrusione. Questo dovrebbe guidarvi a proteggervi dagli attacchi piu' economici, senza preoccuparvi di quelli che comportano alti costi. Alcuni dei punti che seguono possono sembrare indebitamente paranoici, ma questo tipo di atteggiamento e' appropriato per una discussione ragionevole sui temi della vulnerabilita'. Frase chiave e chiave segreta compromesse - ----------------------------------------- E' probabile che l'attacco piu' semplice sia quello che puo' essere portato se scrivete da qualche parte la frase chiave che sblocca la vostra frase segreta. Se qualcuno la ottiene, assieme al vostro portachiavi segreto, puo' leggere i vostri messaggi e firmare a vostro nome. Non usate parole chiave ovvie facilmente intuibili, come i nomi dei vostri figli o di vostra/o moglie/marito. Se come frase chiave usate una sola parola, essa puo' essere scoperta facilmente con un computer che provi tutte le parole del dizionario fino ad individuare quella giusta. E' per questo che una frase chiave e' molto meglio di una parola chiave. Un attaccante piu' sofisticato potrebbe utilizzare il suo computer per cercare in un libro di citazioni famose la vostra frase chiave. Una frase chiave facile da ricordare e difficile da indovinare puo' essere ricavata da certi modi di dire creativi e senza senso, oppure da citazioni letterarie veramente oscure. Per maggiori dettagli si veda la sezione "Come proteggere il portachiavi segreto dall'apertura" nel "Volume I". Manomissione della chiave pubblica - ---------------------------------- Una vulnerabilita' maggiore puo' esistere se la vostra chiave pubblica e' stata manomessa. Questa puo' essere la vulnerabilita' piu' cruciale di un sistema di crittografia a chiave pubblica, in parte perche' alcuni nuovi utilizzatori potrebbero non riconoscerla immediatamente. L'importanza di questa vulnerabilita' e le appropriate contromisure sono dettagliate nella sezione "Come proteggere il vostro portachiavi pubblico dalle manomissioni" nel "Volume I". Per riassumere: quando usate la chiave pubblica di qualcuno, siate certi che non sia stata manomessa. Vi dovete fidare di una nuova chiave pubblica che avete ricevuto solo se l'avete ricevuta direttamente dal proprietario, o se e' firmata da qualcuno di cui vi fidate. Siate sicuri che nessuno possa manomettere il vostro portachiavi pubblico. Mantenete il controllo fisico dei vostri portachiavi sia pubblico che segreto, preferibilmente sul vostro PC piuttosto che in un sistema remoto multiutente. Conservate una copia di backup di entrambi i portachiavi. Files "non abbastanza cancellati" - -------------------------------- Un altro potenziale problema per la sicurezza e' causato dal modo in cui la maggior parte dei sistemi operativi cancella i files. Quando voi cifrate un file e poi cancellate il testo in chiaro, il sistema operativo non cancella effettivamente e fisicamente i dati. Semplicemente etichetta il settore di disco come cancellato, permettendone un uso successivo. E' come eliminare dei documenti cartacei classificati mettendoli nel cestino della carta da riciclare, anziche' nel distruggi-documenti. Il settore di disco continua a contenere i dati classificati che volevate cancellare, e sara' probabilmente sovrascritto da dati nuovi nel futuro. Se un intruso legge questo settore di disco poco dopo il vostro utilizzo, puo' recuperare il vostro file. In effetti questo puo' anche accadere accidentalmente, se per qualche ragione capita qualcosa di strano al disco e dei files vengono cancellati o corrotti. Qualcuno puo' utilizzare un programma di recupero del disco per ricostruire i files danneggiati, ma spesso questo significa che anche altri files cancellati in precedenza sono ripristinati insieme al resto. I vostri files classificati, da voi ritenuti distrutti per sempre, possono riapparire ed essere esaminati da chiunque stia cercando di recuperare il disco danneggiato. Anche quando state producendo il messaggio originale con un word processor, il programma potrebbe creare diverse copie temporanee del vostro testo sul disco, a causa del suo modo di funzionare. Queste copie temporanee sono cancellate dal word processor a fine lavoro, ma i dati sono ancora da qualche parte nel disco. Lasciatemi raccontare una vera storia dell'orrore. Una mia amica, sposata e con figli piccoli, una volta ha avuto una breve relazione, niente di serio. Scrisse una lettera al suo amante usando un word processor, e la cancello' dopo averla spedita. Tempo dopo, a storia finita, il floppy disk fu danneggiato in qualche modo, e dovette recuperarlo, perche' conteneva altri documenti importanti. Chiese a suo marito di salvare il disco, cosa che le sembrava completamente sicura perche' sapeva di aver cancellato la lettera incriminante. Il marito utilizzo un pacchetto commerciale di recupero dei dischi, e recupero' tutti i files, compresa la lettera cancellata. La lesse, e questo diede luogo a tutta una tragica catena di eventi. L'unico modo per prevenire la ricomparsa di un file cancellato e' sovrascriverlo in qualche modo. A meno che non siate sicuri che i settori di disco cancellati saranno presto riusati, dovete prendere le vostre misure per effettivamente sovrascrivere il testo in chiaro e tutti i frammenti sparsi sul disco dal vostro word processor. Potete sovrascrivere il testo in chiaro originale dopo averlo cifrato usando l'opzione -w (wipe) di PGP. Potete prendervi cura dei frammenti sparsi sul vostro disco usando qualunque programma di gestione dei dischi disponibile che possa sovrascrivere tutti i blocchi non usati. Ad esempio le Norton Utilities per MSDOS contengono questa funzione. Anche se avete sovrascritto i dati sul vostro disco, un aggressore determinato e ricco di risorse potrebbe ancora recuperarli. Delle deboli tracce magnetiche dei dati originali rimangono sul disco dopo la sovrascrittura. Degli apparati sofisticati per il recupero dei dischi possono talvolta essere usati per il recupero di questo tipo di dati. Virus e cavalli di Troia - ------------------------ Un'altro attacco puo' essere portato da qualche forma di virus o"verme" ostile e dedicato che potrebbe infestare PGP o il vostro sistema operativo. Questo virus ipotetico potrebbe essere progettato per catturare la vostra frase chiave, la vostra chiave segreta o i messaggi decifrati, e scrivere di nascosto le informazioni in un file, o inviarle attraverso una rete al suo padrone. Oppure potrebbe influenzare il comportamento di PGP per far si' che non controlli le firme in maniera completa. Questo tipo di attacco e' piu' economico di quello crittoanalitico. La difesa da questo attacco rientra nella categoria generale della difesa dalle infezioni virali. Sono disponibili commercialmente alcuni anti-virus moderatamente efficaci, e ci sono delle procedure igieniche da seguire che riducono molto il rischio di queste infezioni. Una trattazione completa sulle contromisure anti-virus e anti-vermi e' al di la' degli scopi di questo documento. PGP non ha difese contro i virus, ed assume che il vostro personal computer sia un ambiente di esecuzione degno di fiducia. Se questo tipo di virus o di verme dovesse apparire, e' auspicabile che la notizia sarebbe diffusa presto, avvisando tutti. Un'altro attacco simile potrebbe essere portato da qualcuno capace di creare un'intelligente imitazione di PGP che si comporti come PGP per la maggior parte degli aspetti, ma che non lavori nel modo atteso. Per esempio, potrebbe essere deliberatamente menomata per non controllare le firme nel modo necessario, permettendo l'accettazione di certificati di chiave fasulli. Questa versione "cavallo di Troia" di PGP non e' difficile da creare per un assalitore, perche' il codice sorgente di PGP e' largamente disponibile, quindi chiunque potrebbe modificarlo e produrre uno zombie lobotomizzato ad imitazione di PGP che sembri reale, ma esegua i voleri del suo diabolico padrone. Questa versione cavallo di Troia di PGP potrebbe quindi essere distribuita largamente ed attribuita a me. Molto insidioso. Dovreste fare uno sforzo per procurarvi la vostra copia di PGP presso una fonte affidabile, qualunque cosa questo significhi. Oppure procuratevela presso piu' fonti indipendenti, e comparate le diverse copie con un'applicazione di confronto di files. Ci sono altri modi per controllare che PGP non sia stato manomesso, con l'impiego delle firme digitali. Se qualcuno di cui vi fidate firma la versione eseguibile di PGP, garantendo il fatto che non e' stata infettata o manomessa, potete essere ragionevolmente sicuri di avere una copia genuina. Potete usare una versione precedente ed affidabile di PGP per controllare la firma sulla versione nuova e sospetta. Questo pero' non vi aiutera' per niente se il vostro sistema operativo e' infetto, e non scoprira' se la vostra copia originale di PGP.EXE e' stata maliziosamente alterata in modo da comprometterne la capacita' di controllare le firme. Questo tipo di controllo parte anche dall'assunzione che voi possediate una copia affidabile della chiave pubblica che usate per verificare la firma. Vi raccomando di non fidarvi della vostra copia di PGP, a meno che non sia stata originariamente distribuita dal MIT o da ViaCrypt, oppure abbia un mio visto firmato. Ogni nuova versione e' distribuita assieme ad una o piu' firme digitali comprese nel pacchetto, firmate dall'autore del pacchetto stesso. Normalmente si tratta di qualcuno che rappresenta il MIT o ViaCrypt, o chiunque abbia rilasciato la versione. Controllate le firme della versione che prendete. Ho effettivamente visto delle versioni fasulle del pacchetto di distribuzione di PGP, anche presso canali di distribuzione di freeware apparentemente affidabili, come distributori di CD-ROM e Compuserve. Controllate sempre la firma quando prendete una nuova versione. Violazioni della sicurezza fisica - --------------------------------- Una breccia nella vostra sicurezza fisica puo' permettere a qualcuno di acquisire (fisicamente appunto) i vostri files in chiaro o i vostri messaggi stampati. Un avversario determinato puo' realizzare questa breccia con il furto, la raccolta dei rifiuti, sequestri e perquisizioni irragionevoli, la truffa, il ricatto o l'inserimento di infiltrati fra il vostro personale. Alcuni di questi attacchi sono particolarmente applicabili ai danni di organizzazioni politiche di base che dipendono da personale in larga parte volontario. E' stato ampiamente riportato dalla stampa che il programma COINTELPRO dell'FBI ha utilizzato il furto, l'infiltrazione e l'uso illegale di microfoni nascosti ai danni di gruppi contro la guerra e di difesa dei diritti umani. E guardate cosa e' successo all'hotel Watergate. Non cullatevi in un falso senso di sicurezza solo perche' possedete un programma di crittografia. Le tecniche di crittografia proteggono i vostri dati solo finche' sono cifrati-- la violazione della sicurezza fisica puo' ancora compromettere i dati in chiaro o le informazioni scritte e dette. Questo tipo di attacco e' piu' economico della crittoanalisi. Attacchi elettromagnetici - ------------------------- Un altro tipo di attacco che e' stato condotto da oppositori ben equipaggiati comporta il rilevamento dei segnali elettromagnetici emessi dal vostro computer. Questo attacco, costoso in termini di denaro e di carico di lavoro, e' probabilmente ancora piu' economico di un attacco crittoanalitico diretto. Un furgone appropriatamente strumentato viene parcheggiato vicino al vostro ufficio, e rileva da lontano tutte le vostre battute sulla tastiera ed i messaggi visualizzati sullo schermo. Questo comprometterebbe tutto: parole chiave, messaggi, ecc. Questo attacco puo' essere reso vano schermando adeguatamente tutti i componenti del vostro computer ed i cavi di rete, in modo che non emettano nessun segnale. Questa tecnologia di schermatura e' conosciuta come "Tempest", ed e' utilizzata da alcune agenzie governative e dai fornitori della difesa. Esistono dei venditori di hardware che forniscono commercialmente la schermatura Tempest, sebbene essa potrebbe essere legata a qualche tipo di licenza rilasciata dal Governo. Ora, per quale motivo potete supporre che il Governo restringerebbe l'accesso alla schermatura Tempest ? Esposizioni nei sistemi multi-utente - ------------------------------------ PGP e' stato originariamente progettato per una macchina MSDOS a singolo utente e sotto il vostro diretto controllo fisico. Io uso PGP a casa sul mio PC e, a meno che qualcuno entri con la forza in casa mia o monitorizzi le emissioni elettromagnetiche, probabilmente nessuno potra' vedere i miei testi in chiaro o le mie chiavi segrete. Adesso pero', PGP gira anche su sistemi multi-utente, come Unix e VAX/VMS. Su questi sistemi, il rischio che i vostri testi in chiaro o le vostre frasi chiave siano esposti e' piu' grande. L'amministratore del sistema Unix o un intruso intelligente possono leggere il vostro testo in chiaro, o forse anche usare programmi speciali per rilevare di nascosto le vostre battute sulla tastiera o cio' che si vede sul vostro schermo. In un sistema Unix, qualunque altro utente puo' leggere le informazioni sul vostro ambiente semplicemente usando il comando "ps". Esistono problemi simili per le macchine MSDOS connesse ad una rete locale. I rischi effettivi per la sicurezza dipendono dalla vostra particolare situazione. Alcuni sistemi multi-utente possono essere sicuri perche' tutti gli utilizzatori sono fidati, o perche' hanno misure di sicurezza di sistema in grado di fronteggiare gli attacchi possibili da parte degli intrusi, o ancora semplicemente perche' non ci sono sufficienti potenziali intrusi interessati. Alcuni sistemi Unix sono sicuri perche' hanno un solo utente-- Ci sono persino alcuni notebook con l'ambiente Unix. Sarebbe irragionevole decidere semplicemente di escludere PGP da tutti i sistemi Unix. PGP non e' nato per proteggere i vostri dati mentre sono in chiaro o su di un sistema compromesso. Non puo' nemmeno impedire che un intruso utilizzi misure sofisticate per leggere la vostra chiave segreta mentre la usate. Voi dovrete semplicemente riconoscere questi rischi in un sistema multi-utente, e regolare di conseguenza le vostre aspettative ed il vostro comportamento. Forse la vostra situazione e' tale da consigliarvi di usare PGP solo su di un sistema isolato a singolo utente e sotto il vostro diretto controllo fisico. E' cio' che faccio io, ed e' cio' che raccomando. Analisi del traffico - -------------------- Anche se un assalitore non puo' leggere il contenuto dei vostri messaggi cifrati, egli potrebbe essere capace di dedurre come minimo alcune informazioni utili osservando da dove arrivano i messaggi e dove sono diretti, le dimensioni dei messaggi e l'ora del giorno in cui sono stati spediti. E' equivalente alla sorveglianza che puo' essere effettuata controllando la vostra bolletta del telefono per vedere chi avete chiamato, quando e quanto e' durata la conversazione anche senza conoscere l'effettivo contenuto di quest'ultima. Si chiama analisi del traffico. PGP da solo non puo' proteggervi dall'analisi del traffico. La soluzione di questo problema richiederebbe l'uso di protocolli di comunicazione specializzati nel ridurre l'esposizione del vostro ambiente operativo, possibilmente con l'assistenza di un po' di crittografia. Proteggersi contro le etichette temporali fasulle - ------------------------------------------------- Una vulnerabilita' di PGP in qualche modo oscura e' causata da utenti disonesti che possono creare delle etichette temporali fasulle sui propri certificati di chiave o sulle proprie firme. Potete tralasciare la lettura di questa sezione se siete utilizzatori casuali, e non siete coinvolti profondamente nei protocolli oscuri delle chiavi pubbliche. Non c'e' niente che possa impedire ad un utilizzatore disonesto di alterare l'orologio interno del suo sistema, creando un certificato di chiave od una firma che sembrino creati in un momento diverso. Egli puo' simulare di aver firmato qualcosa prima o dopo rispetto a quando l'ha effettivamente fatto, oppure di aver generato una coppia di chiavi prima o dopo. Questo puo' portargli dei benefici legali o finanziari, per esempio creando qualche tipo di scappatoia che potrebbe permettergli di ripudiare una firma. A mio giudizio, il problema delle etichette temporali fasulle nelle firme digitali non e' peggiore di quello gia' esistente per le firme scritte. Chiunque puo' scrivere vicino alla propria firma su di un contratto la data che preferisce, eppure nessuno sembra preoccuparsi piu' di tanto per questo stato di cose. In alcuni casi, una data "inesatta" vicino ad una firma puo' anche non essere associata con una truffa effettiva. La data vicino alla firma puo' indicare il momento in cui il documento e' stato firmato, oppure il momento in cui si vuole che acquisti validita'. In situazioni in cui si ritiene essenziale avere la certezza che la data sia veritiera, le persone si rivolgono ai notai, che presenziano durante la scrittura della firma e appongono la data. La situazione corrispondente nel campo delle firme digitali consiste nell'avere una terza persona fidata che firmi il certificato di firma stesso, applicando un'etichetta di tempo valida. Non serve nessun protocollo esotico od eccessivamente formale per fare questo. Le firme dei testimoni sono da lungo tempo considerate come una maniera legittima di determinare quando un documento e' stato firmato. Un'autorita' di certificazione degna di fiducia od un notaio possono generare firme notarili con un'etichetta di tempo affidabile. Questo non richiederebbe necessariamente un'autorita' centralizzata. Forse qualunque presentatore affidabile o qualunque parte disinteressata potrebbe assolvere questa funzione, nello stesso modo in cui e' svolta dai notai pubblici. Quando un notaio sottoscrive le firme di altre persone, crea un certificato di firma di un certificato di firma. Questo serve come testimonianza nello stesso modo in cui i veri notai ora testimoniano per le firme scritte. Il notaio potrebbe inserire il certificato di firma separato dal documento (e senza l'intero documento) in uno speciale registro da lui gestito e leggibile da tutti. La firma del notaio avrebbe un'etichetta di tempo fidata, che potrebbe avere una credibilita' piu' grande o piu' valore legale dell'etichetta allegata alla firma originale. Un'ottima trattazione di questo argomento e' contenuta in un articolo di Denning del 1983 apparso su IEEE Computer (si vedano i riferimenti). Futuri miglioramenti di PGP potranno contenere delle funzioni per maneggiare facilmente le firme notarili con etichette di tempo affidabili. Crittoanalisi - ------------- Un attacco crittoanalitico formidabile e costoso potrebbe essere organizzato da qualcuno che abbia accesso a vaste risorse di supercomputer, come un'agenzia di informazioni governativa. Costoro potrebbero aprire la vostra chiave RSA usando qualche nuova scappatoia segreta. Forse puo' succedere, ma e' utile notare che il Governo degli Stati Uniti si fida dell'algoritmo RSA abbastanza da usarlo in certi casi per proteggere le proprie armi nucleari, secondo Ron Rivest. Inoltre le accademie civili attaccano intensivamente e senza successo questo codice sin dal 1978. E' possibile che il Governo abbia qualche metodo classificato per violare l'algoritmo di crittografia convenzionale IDEA(tm) usato da PGP. Questo e' il peggiore incubo di ogni crittografo. Nelle applicazioni pratiche della crittografia la sicurezza assoluta e garantita non esiste. Eppure, un po' di ottimismo sembra giustificato. I progettisti di IDEA sono fra i migliori crittografi Europei. Ci sono state profonde ed intensive analisi di sicurezza da parte di alcuni dei migliori crittografi del mondo non classificato. IDEA sembra avere alcuni vantaggi di progetto rispetto al DES per affrontare la crittoanalisi lineare e differenziale, usata per violare il DES. D'altra parte, anche se questo algoritmo avesse qualche sottile debolezza sconosciuta, PGP comprime il testo in chiaro prima di cifrarlo, cosa che dovrebbe ridurre fortemente i rischi. E' probabile che il carico di lavoro necessario per rompere questo codice sia di gran lunga piu' costoso di quello che e' il valore del messaggio. Se la vostra situazione giustifica le preoccupazioni per un attacco di questo calibro, forse dovreste rivolgervi a qualche consulente per la sicurezza dei dati per sviluppare un sistema di sicurezza dedicato alle vostre specifiche necessita'. La Boulder Software Engineering (indirizzo e telefono sono riportati alla fine di questo documento) puo' fornire questo tipo di servizio. Riassumendo, senza una protezione crittografica adeguata delle vostre trasmissioni di dati, puo' essere praticamente un lavoro privo di sforzi, o addirittura di routine intercettare i vostri messaggi, specialmente se inviati con un modem o attraverso i canali e-mail. Se usate PGP ed adottate delle precauzioni ragionevoli, gli aggressori dovranno impiegare molti piu' sforzi ed affrontare molte spese per violare la vostra riservatezza. Se vi proteggete contro gli attacchi piu' semplici, e vi sentite sicuri del fatto che la vostra riservatezza non sara' violata da aggressori determinati e ricchi di risorse, probabilmente sarete al sicuro usando PGP. PGP vi dara' una riservatezza abbastanza buona (Pretty Good Privacy). Aspetti legali ============== Marchi, diritti di copia e garanzie - ----------------------------------- "PGP", "Pretty Good Privacy", "Phil's Pretty Good Software", e l'etichetta "Pretty Good" per i prodotti hardware e software per i computer sono marchi registrati di Philip R. Zimmermann. PGP e' (c) Copyright Philip R. Zimmermann, 1990-1994. Tutti i diritti sono riservati. Anche questo manuale d'uso di PGP e' Copyright Philip R. Zimmermann 1990-1994. Tutti i diritti sono riservati. Questi diritti includono, ma non sono limitati a questo, anche tutte le traduzioni in qualunque lingua del manuale o del software, e tutto il lavoro che da essi puo' derivare. Il MIT puo' avere diritto di copia sul particolare pacchetto di distribuzione disponibile nel suo sito FTP. Questo Copyright sulla compilazione del pacchetto di distribuzione non implica in nessun modo che il MIT abbia dei diritti di copia sul PGP stesso, o sulla documentazione d'uso. L'autore non assume nessuna responsabilita' per i danni che possano derivare dall'uso di questo software, anche se dovessero essere causati da difetti del software stesso, e non da' alcuna indicazione a proposito del valore di mercato di questo software o della sua applicabilita' a specifiche situazioni. Il software e' fornito "cosi' come e'", senza garanzie esplicite o implicite di qualsiasi tipo. Siccome determinate azioni possono portare alla cancellazione di files o alla loro irrecuperabilita', l'autore non assume nessuna responsabilita' per la perdita o modifica di qualunque dato. Diritti di brevetto sugli algoritmi - ----------------------------------- Il sistema di crittografia a chiave pubblica e' stato sviluppato dal MIT, che detiene un brevetto su di esso (U.S. patent #4,405,829, del 20 settembre 1983). Una societa' californiana, la Public Key Partners, detiene una licenza commerciale esclusiva per vendere il sistema o autorizzarne l'impiego. Il MIT distribuisce una versione freeware di PGP secondo i termini della licenza RSAREF rilasciata da RSA Data Security, Inc. (RSADSI). Al momento della stesura di questo documento (settembre 1994), sembra che PKP potrebbe presto cessare di esistere, nel qual caso il brevetto che detiene potrebbe cadere in altre mani. Il brevetto RSA potrebbe finire con RSADSI. Gli utilizzatori di PGP al di fuori degli USA dovrebbero tener conto che il brevetto RSA non e' applicabile fuori dai confini e, almeno al momento della stesura del documento, l'autore non e' al corrente di nessun brevetto RSA in altri Paesi. Alcune agenzie federali potrebbero usare l'algoritmo RSA, poiche' il suo sviluppo e' stato finanziato dal Governo con sovvenzioni dalla National Science Foundation e dalla Marina. Nonostante il fatto che gli utilizzatori governativi abbiano accesso libero all'algoritmo RSA, l'uso di PGP da parte del Governo ha delle restrizioni addizionali imposte dall'accordo esistente tra me e ViaCrypt, come spiegato piu' avanti. Io ho scritto il mio software PGP da zero, con una mia implementazione sviluppata indipendentemente dell'algoritmo RSA. Prima di pubblicare PGP nel 1991, ho ottenuto un'opinione legale scritta e formale da un avvocato specializzato in brevetti con una grande esperienza in brevetti sul software. Sono convinto che la pubblicazione di PGP cosi' come e' stata fatta non viola le leggi sui brevetti. PKP non si e' limitata ad acquisire i diritti esclusivi di brevetto per il sistema di crittografia RSA, ma ha anche acquisito quelli relativi a tre altri schemi a chiave pubblica inventati da altri alla Stanford University, e finanziati sempre da fondi federali. Questa singola societa' pretende di avere negli Stati Uniti un diritto legale su quasi tutti i sistemi di crittografia a chiave pubblica praticamente applicabili. Sembra anche che affermino di avere diritti di brevetto sul concetto stesso di crittografia a chiave pubblica, senza tener conto di quali algoritmi originali ed intelligenti possano essere inventati indipendentemente da altri. Io trovo questo tipo di monopolio problematico, perche' penso che la crittografia a chiave pubblica sia destinata a diventare una tecnologia cruciale per la protezione della nostra riservatezza e delle nostre liberta' civili nella nostra societa' sempre piu' collegata. Come minimo questo attrezzo vitale viene messo a rischio se si permette al Governo di creare un singolo punto di pressione sotto la sua influenza. A partire da PGP 2.5 (distribuito dal MIT, detentore del brevetto originale), la versione freeware utilizza le librerie di subroutines RSAREF per effettuare le elaborazioni RSA, dietro licenza RSAREF, che ne permette l'uso non commerciale negli USA. RSAREF e' un pacchetto di subroutines sviluppato da RSA Data Security, Inc, che implementa l'algoritmo RSA. Le soubroutines RSAREF sono utilizzate al posto delle subroutines originali di PGP per implementare le funzioni RSA all'interno del programma. Si veda la licenza RSAREF per i termini e le condizioni d'uso di questa applicazione. PGP 2.5 e' stato rilasciato dal MIT per un breve periodo di prova nel maggio 1994, prima di rilasciare la versione 2.6. PGP 2.5 e' stato rilasciato sotto la licenza RSAREF del 16 marzo 1994, che e' una licenza a tempo indeterminato, per cui questa versione potrebbe essere usata negli USA per sempre. Sarebbe meglio pero' per il futuro legale e politico di PGP che gli utilizzatori negli Stati Uniti si aggiornassero alla versione 2.6 o successive per favorire la scomparsa di PGP 2.3a o di quelle precedenti. Inoltre, PGP 2.5 contiene degli errori corretti in PGP 2.6, e PGP 2.5 non sara' in grado di leggere il formato nuovo generato a partire dal 1 settembre 1994. (si veda la sezione "Compatibilita' con le versioni precedenti e future di PGP"). La versione 2.0 di PGP e' stata il risultato degli sforzi comuni compiuti da un gruppo internazionale di tecnici software, che hanno implementato molti miglioramenti al PGP originale sotto la mia guida di progetto. La versione e' stata rilasciata da Branko Lankester in Olanda e da Peter Gutmann in Nuova Zelanda, fuori portata delle leggi statunitensi sui brevetti. Sebbene sia stata rilasciata solo in Europa ed in Nuova Zelanda, si e' spontaneamente diffusa negli Stati Uniti senza nessun intervento mio o del gruppo di sviluppo. La cifratura convenzionale a blocchi IDEA(tm) usata da PGP e' coperta da brevetto in Europa. Il brevetto e' detenuto dall'ETH e da una societa' svizzera chiamata Ascom-Tech AG. Il brevetto USA e' il numero 5,214,703, mentre quello Europeo si chiama EP 0 482 154 B1. IDEA(tm) e' marchio registrato da Ascom-Tech AG. Non e' richiesto il pagamento di nessuna licenza per l'uso non commerciale di IDEA. Gli utilizzatori commerciali possono ottenere i dettagli sulle licenze da Dieter Profos, Ascom-Tech AG, Teleservices Section, Postfach 151, 4502 Solothurn, Svizzera, Tel. +41 65 242885, Fax +41 65 235761. Ascom-Tech ha reso disponibile il permesso relativo alla versione freeware di PGP, che quindi puo' usare IDEA per usi non commerciali ovunque. Negli Stati Uniti ed in Canada, tutti gli utilizzatori governativi e commerciali devono ottenere una versione con licenza da ViaCrypt, che possiede una licenza di Ascom-Tech per l'uso di IDEA. Ascom-Tech ha recentemente cambiato la sua politica sull'uso di IDEA all'interno di PGP per scopi commerciali al di fuori degli Stati Uniti, e sembra che questa nuova linea politica sia ancora in evoluzione. Mi hanno detto che la loro posizione attuale e' la seguente: permetteranno agli utilizzatori commerciali di PGP al di fuori di USA e Canada di utilizzare IDEA all'interno di PGP senza pagarne i diritti, perche' attualmente non e' possibile ottenere una versione licenziata di PGP al di fuori di quelle nazioni. Se la situazione legale negli Stati Uniti cambiera', in modo che gli utilizzatori esteri possano acquistare una versione commerciale di PGP (da ViaCrypt, da me, o da una societa' estera che possieda una mia licenza), allora Ascom-Tech fara' valere i suoi diritti di brevetto sugli utilizzatori commerciali. Per ottenere notizie piu' aggiornate su questo, contattate direttamente la Ascom-Tech AG. Le routines di compressione ZIP di PGP provengono da codici sorgenti freeware con il permesso dell'autore. Non sono al corrente di alcun brevetto sugli algoritmi di compressione usati in queste routines. Freeware e restrizioni - ---------------------- PGP non e' shareware, ma freeware. Pubblicato come un servizio per la comunita'. Distribuire PGP gratis incoraggera' molte piu' persone ad usarlo, con un impatto sociale piu' grande. Sentitevi liberi di distribuire il pacchetto di rilascio di PGP completo e senza modifiche a quante piu' persone potete, ma siate attenti a non violare le leggi sul controllo delle esportazioni se vivete negli USA. Datelo a tutti i vostri amici. Se avete accesso a delle BBS, caricatevi il pacchetto eseguibile completo. Potete anche distribuire il pacchetto di rilascio con i codici sorgenti. Il codice sorgente di PGP e' pubblicato per permettere il controllo da parte di chiunque per trovare debolezze nascoste o porte di servizio, e per aiutare le persone a trovare eventuali errori e riportarli. Ricompilatelo, e portatelo su nuove macchine. Fate esperimenti con il codice ed imparate da esso. Io non pongo nessun limite alle modifiche che potreste fare al codice sorgente per adattarlo alle vostre esigenze. Comunque, non distribuite una versione modificata con il nome "PGP" senza prima aver ottenuto il mio permesso. Vi prego di rispettare questa restrizione. La reputazione di PGP per l'integrita' della crittografia dipende dallo stretto controllo di qualita' sugli algoritmi e sui protocolli. Oltre a questo, i "miglioramenti" di PGP possono influenzare l'interoperabilita', creando confusione per gli utilizzatori e problemi di compatibilita' che potrebbero danneggiarne la reputazione (oltre a danneggiare la mia), e minare l'affidabilita' guadagnata dal marchio registrato PGP. Questo e' gia' successo, ed e' il motivo per cui lo sottolineo qui. E' una cosa che crea mal di testa per l'assistenza tecnica, e ricevo telefonate da utenti confusi che hanno dei problemi o perche' possiedono loro stessi una versione mutante di PGP, o perche' stanno cercando di lavorare con una chiave, una firma o un messaggio prodotti da una versione mutante ed incompatibile. Il codice sorgente non e' stato reso pubblico per aiutare a generare questi mutanti. Se volete distribuire una versione modificata di PGP, od usare una versione modificata per inviare messaggi, dovreste rinominare il programma in modo che nessuno possa scambiarlo per PGP. I messaggi, le firme e le chiavi prodotti da questa versione dovrebbero essere etichettati in modo che nessuno possa scambiarli per materiale prodotto da PGP. Se sentite di dover modificare la vostra copia di PGP, e ci sono possibilita' che questa copia possa venir distribuita, per favore contattatemi prima. Potremo discutere di alcuni semplici metodi per evitare che la gente scambi la vostra versione per il PGP originale. Potremmo anche decidere che le vostre modifiche sono adatte ad essere incorporate nella versione standard rilasciata. Dovreste anche notare che la versione eseguibile ufficiale di PGP e' sempre rilasciata con le firme degli sviluppatori, in modo che possiate controllare l'integrita' del pacchetto. Se trovate una copia corrotta di PGP, o avete notizia della sua distribuzione, per favore contattate chi la sta distribuendo e suggeritegli di sostituirla con una versione autentica. Alcune versioni vecchie di PGP sono state pubblicate secondo i termini della General Public License (GPL), una licenza pensata dalla Free Software Foundation per proteggere lo stato di freeware. Le versioni freeware piu' nuove di PGP non sono piu' pubblicate sotto GPL. I termini della licenza RSAREF sono piu' restrittivi di quelli della GPL. Pero', anche se una versione di PGP e' pubblicata senza RSAREF, in una situazione od in un posto dove il brevetto RSA non e' applicabile, non voglio che la GPL sia applicata a PGP, per una quantita' di motivi, non ultimo il fatto che la GPL non e' ottimale per proteggere PGP dall'essere ripubblicato con dei "miglioramenti" ad-hoc. Fuori dagli Stati Uniti, il brevetto RSA non e' valido, sicche' gli utilizzatori di PGP sono liberi di usarne implementazioni non basate su RSAREF e sulle sue restrizioni. I Canadesi possono usare PGP senza usare RSAREF, ed esistono modi legali per esportare PGP in Canada. In Canada, dove RSAREF non e' necessario, e' facile modificare e ricompilare il codice di PGP in modo che esegua i calcoli RSA senza usare la libreria RSAREF, come e' stato fatto per PGP 2.3a. In casi del genere, questo PGP modificato puo' essere ri-rilasciato sotto gli stessi termini di licenza della versione ufficiale freeware corrispondente, ma senza le restrizioni specifiche RSAREF. Non puo' essere rilasciato sotto GPL, come alcune versioni piu' vecchie. Inoltre questo manuale deve comunque essere allegato. La versione modificata di PGP non puo' essere usata in ambienti dove RSAREF e' richiesto. Restrizioni nell'uso commerciale di PGP - --------------------------------------- La versione freeware di PGP e' per l'uso personale, non commerciale. Per un uso commerciale in USA o Canada, contattate ViaCrypt a Phoenix, Arizona (Tel. +1 602 944-0773, email viacrypt@acm.org). Ho raggiunto un accordo con ViaCrypt nell'estate 1993 per licenziare in esclusiva i diritti commerciali su PGP, sicche' c'e' per le societa' un modo di utilizzare PGP senza rischi di persecuzioni legali da parte di PKP per aver infranto i diritti di brevetto. Perche' PGP possa a lungo termine diventare uno standard industriale, questo marchio d'infamia legale associato ai diritti di brevetto RSA deve essere risolto. ViaCrypt ha gia' ottenuto una licenza da PKP per produrre, usare e vendere prodotti che utilizzino RSA. ViaCrypt offre una via di uscita dal pantano dei brevetti perche' PGP possa penetrare nell'ambiente delle societa'. Essi possono vendere una versione pienamente licenziata di PGP, ma solo se io do loro la mia licenza in questi termini. Quindi abbiamo raggiunto un accordo, aprendo la porta al futuro di PGP nel settore commerciale, cosa necessaria per il suo futuro politico a lungo termine. Quindi, senza tener conto delle restrizioni complesse e parzialmente sovrapposte generate da tutti i termini e condizioni imposti dai vari brevetti e diritti di copia (RSA, RSAREF e IDEA), una restrizione addizionale sull'uso di PGP che sovrasta tutte le altre e' imposta dal mio accordo con ViaCrypt: la versione freeware di PGP e' solo per uso personale, non commerciale-- tutti gli altri utilizzatori in USA e Canada devono ottenerne una copia licenziata da ViaCrypt. Le restrizioni imposte dal mio accordo con ViaCrypt non sono applicabili al di fuori di USA e Canada. Infine, se volete trasformare PGP in un prodotto commerciale e guadagnare denaro vendendolo, in questo caso dobbiamo accordarci su un modo in cui parte del guadagno venga a me. Se usate PGP in un modo per cui dobbiate pagare dei diritti sui brevetti o ogni altro tipo di licenza sul software ai detentori dei brevetti stessi, allora dobbiamo trovare un modo per cui sia pagato anch'io. Acquistare PGP da ViaCrypt e' un modo che soddisfa questo requisito. Altre limitazioni nella licenza - ------------------------------- PGP non puo', in nessuna circostanza, essere distribuito senza documentazione, compreso questo manuale d'uso. Inoltre, assumendo che questa sia la versione RSAREF di PGP, l'accordo di licenza deve essere tenuto allegato. Dovete anche conservare le informazioni sui diritti di copia, i brevetti ed i marchi registrati di PGP e della sua documentazione. Il rilascio standard freeware di PGP e' principalmente distribuito in forma elettronica, come un singolo file di archivio compresso contenente una collezione di files in un pacchetto a sua volta compresso. Questo pacchetto non dovrebbe essere aperto per distribuirne i componenti in modo separato-- Nell'interesse del controllo di qualita' vogliamo rendere difficile per gli utenti ottenere PGP senza prendere il pacchetto completo di rilascio. Distribuzione - ------------- Negli Stati Uniti, PGP e' disponibile gratuitamente presso il Massachusetts Institute of Technology, con le restrizioni gia' descritte. Il sito primario di rilascio di PGP e' il MIT, presso il suo sito FTP "net-dist.mit.edu", nella directory /pub/PGP. Potete ottenere da questo sito o da tutti i siti o le BBS in cui PGP si e' diffuso, copie gratuite di PGP o aggiornamenti. Non chiedetemi di inviarvene una copia, specialmente se vivete fuori dagli USA e dal Canada. Vi raccomando di non usare nessuna copia che non provenga dal MIT, da ViaCrypt o da me, a meno che non sia accompagnata da una mia autorizzazione firmata. Potete trovare il software rilasciato ufficiale presso molti altri siti di distribuzione "a valle" del MIT. E' sperabile che anche questi siti rispettino i controlli degli Stati Uniti sulle esportazioni. Il pacchetto di rilascio dell'eseguibile 2.6.2 per MSDOS contiene il programma eseguibile, la documentazione, la licenza RSAREF, un portachiavi di esempio contenente la mia chiave pubblica, e le firme del software e di questo manuale, tutto in un unico file compresso PKZIP chiamato pgp262.zip. Il pacchetto di rilascio dei sorgenti contiene tutti i files sorgenti in C in un file compresso PKZIP chiamato pgp262s.zip. I nomi dei files sono ricavati dal numero della versione. Controlli sulle esportazioni - ---------------------------- Il Governo degli Stati Uniti ha reso illegale nella maggior parte dei casi l'esportazione di tecnologia crittografica, e questo puo' includere PGP. Considerano questo tipo di software esattamente come considerano le munizioni. Questo non e' determinato dalla legislazione, ma dalle politiche amministrative del Dipartimento di Stato, del Dipartimento della Difesa e del Dipartimento del Commercio. Il Governo sta usando le restrizioni sulle esportazioni come un mezzo per sopprimere la disponibilita' di tecnologie crittografiche sia all'interno del Paese, sia all'estero. In particolare, sta cercando di sopprimere l'emergenza di uno standard internazionale per i protocolli di crittografia, finche' non potranno imporre come standard dominante l'Escrowed Encryption Standard (il chip Clipper). Tutte le restrizioni sull'esportazione di PGP sono imposte dal Governo degli Stati Uniti. Questo non implica che il MIT o io siamo d'accordo con queste restrizioni. Semplicemente ci adeguiamo. Non imponiamo ulteriori restrizioni di licenza sull'uso di PGP fuori dagli Stati Uniti oltre a quelle gia' esistenti all'interno. PGP puo' essere soggetto a controlli sulle esportazioni. Chiunque desideri esportarlo dovrebbe prima consultare l'ufficio di controllo sul commercio della difesa del Dipartimento di Stato. Io non esportero' questo software fuori dagli Stati Uniti o dal Canada se e' illegale fare questo sotto il controllo degli USA, e raccomando alle altre persone di non farlo. Se vivete fuori dagli USA e dal Canada, vi raccomando di non violare le leggi degli USA sulle esportazioni prendendo una versione di PGP in un modo non legale. Siccome migliaia di utilizzatori all'interno del Paese si sono procurati PGP dopo la sua pubblicazione, in qualche modo il software e' uscito dagli USA e si e' sparso largamente all'estero, come i semi di dente di leone portati dal vento. A partire dalla versione 2.0 e poi fino alla 2.3a, il punto di rilascio del software e' stato al di fuori degli USA, su computers pubblicamente accessibili in Europa. Ogni rilascio e' stato inviato negli USA e posto su computers accessibili pubblicamente da attivisti della riservatezza PGP di Paesi stranieri. Negli USA esistono delle restrizioni sull'importazione di munizioni, ma non mi risulta nessun caso in cui siano state applicate all'importazione di software crittografico. Immagino che un'azione legale di questo tipo creerebbe un bello spettacolo di polemica. Il PGP ViaCrypt e' venduto in USA e Canada e non e' per l'esportazione. La frase seguente e' stata fornita dal Governo USA perche' fosse inclusa nella documentazione di ViaCrypt: "L'esportazione di PGP e' limitata dall'Ufficio dell'Amministrazione delle Esportazioni del Dipartimento del Commercio e dall'Ufficio di Controllo del Commercio della Difesa e delle Munizioni del Dipartimento di Stato. PGP non puo' essere esportato o riesportato direttamente o indirettamente, (a) senza tutte le licenze di esportazione o riesportazione e le approvazioni del Governo richieste da ogni legge applcabile, o (b) in violazione di qualunque proibizione contro l'esportazione di qualsiasi parte di PGP." Il Governo potrebbe assumere le stesse posizioni nei confronti delle versioni freeware di PGP. Le versioni freeware 2.5 e 2.6 di PGP sono state rilasciate caricandole su di un sito FTP controllato gestito dal MIT. Questo sito ha delle restrizioni e limitazioni che sono state gia' usate da altri FTP per adeguarli ai requisiti per il controllo delle esportazioni di altri software di crittografia come Kerberos e altri provenienti da RSA Data Security, Inc. Vi raccomando di non fare niente che possa indebolire questi controlli o facilitare l'esportazione impropria di PGP. Sebbene PGP sia diventato di fatto uno standard mondiale per la cifratura dell'e-mail, e sia largamente disponibile all'estero, continuo a ricevere telefonate da persone residenti fuori dagli USA che mi chiedono se sia legale usarlo nei loro Paesi, nelle versioni gia' disponibili. Per favore non contattatemi per chiedermi se sia legale usare PGP nel vostro Paese, se vivete fuori dagli USA. La domanda non riguarda me. Ho gia' abbastanza problemi giudiziari per questioni di controllo sulle esportazioni, senza essere coinvolto dandovi consigli legali attraverso il mio telefono. Potrebbe persino farmi correre dei rischi con la legge il semplice fatto di rispondere ad una domanda del genere posta da uno straniero. Se questa questione vi preoccupa, chiedete a qualcun altro, per esempio ad un avvocato. Potreste dover usare PGP per applicazioni commerciali al di fuori di USA e Canada. Sfortunatamente, al momento della stesura di questo documento, non c'e' nessun modo di ottenere una versione commerciale al di fuori di questi Paesi. Sto cercando un modo legale per rendere disponibile anche all'estero una versione licenziata, ma fino ad ora le restrizioni USA sulle esportazioni lo rendono difficile senza espormi a rischi legali. Questa situazione potrebbe cambiare. Alcuni governi stranieri impongono pesanti punizioni a chiunque all'interno del loro Paese usi delle comunicazioni cifrate. In alcuni Paesi potrebbero perfino uccidervi per questo. Se pero' vivete in Paesi cosi', forse PGP vi serve ancora di piu'. Situazione legale di Philip Zimmermann - -------------------------------------- Al momento della scrittura di questo documento, sono oggetto di indagine criminale da parte della Dogana USA nel Distretto Settentrionale della California. Un'indagine criminale non e' una prosecuzione civile. La prosecuzione civile non comporta pene carcerarie. Il mio avvocato difensore ha saputo dall'avvocato d'ufficio che l'area legale di cui si interessa l'indagine riguarda i controlli sulle esportazioni del software crittografico. Le indicazioni federali sulle sentenze obbligatorie per questo reato raccomandano un periodo da 41 a 51 mesi in una prigione federale. Sembra che la Dogana USA abbia deciso di assumere la posizione per cui la pubblicazione elettronica di software crittografico all'interno del Paese sia equivalente alla sua esportazione. La pubblica accusa ha presentato molte citazioni di grand jury federali. Possono passare mesi prima che venga raggiunta una decisione sulla mia incriminazione. Questa situazione puo' cambiare in ogni momento, sicche' questa descrizione potra' essere sorpassata quando la leggerete. Leggete i giornali per conoscere gli sviluppi. Se saro' incriminato e si arrivera' ad un processo, sara' un caso destinato a creare dei precedenti importanti. Per questo caso, e' stato creato un fondo per la mia difesa legale. Fino ad ora, non ci sono altre organizzazioni che raccolgano fondi per me, quindi dipendo da persone come voi, che contribuiscono direttamente a questa causa. Se voi vi preoccupate per il futuro delle vostre liberta' civili nella societa' dell'informazione, forse potete anche preoccuparvi di questo caso. Le tariffe legali sono elevate, il tassametro gira ed io ho bisogno del vostro aiuto. Il fondo e' gestito dal mio avvocato difensore, Phil Dubois, a Boulder. Se volete, inviate i vostri contributi a: Philip L. Dubois, Lawyer 2305 Broadway Boulder, Colorado 80304 USA Phone (303) 444-3885 E-mail: dubois@csn.org (Esiste un punto di raccolta in Europa per evitare le spese del trasferimento di fondi negli USA. Contattare Phil Dubois per i dettagli. N.d.T.). Potete anche effettuare la vostra donazione per telefono caricandola sulla vostra Visa o Mastercard. Se volete essere veramente impudenti, potete mandare il vostro contributo via e-mail, cifrando il messaggio con PGP perche' nessuno possa intercettare il vostro numero di carta di credito. Nell'e-mail includete il numero di carta, la data di scadenza, l'intestatario della carta e l'ammontare della donazione. Firmate quindi il messaggio con la vostra chiave e cifratelo con la chiave pubblica di Phil Dubois (questa chiave e' inclusa nel pacchetto di distribuzione standard di PGP, nel file "key.asc"). Scrivete nella linea del soggetto che il messaggio contiene una donazione per il mio fondo di difesa legale, in modo che il Sig. Dubois lo decifri subito. Per favore, non inviategli un mucchio di posta varia cifrata-- Preferirei che usasse il suo prezioso tempo a lavorare sul mio caso. Se volete leggere alcune storie riportate dalla stampa, per capire perche' questo caso e' importante, ecco dei riferimenti: 1) William Bulkeley, "Cipher Probe", Wall Street Journal, giovedi' 28 aprile 1994, prima pagina. 2) John Cary, "Spy vs. Computer Nerd: The Fight Over Data Security", Business Week, 4 ottobre 1993, pagina 43. 3) Jon Erickson, "Cryptography Fires Up the Feds", Dr. Dobb's Journal, dicembre 1993, pagina 6. 4) John Markoff, "Federal Inquiry on Software Examines Privacy Programs", New York Times, martedi' 21 settembre 1993, pagina C1. 5) Kurt Kleiner, "Punks and Privacy", Mother Jones Magazine, gennaio/febbraio 1994, pagina 17. 6) Steven Levy, "Battle of the Clipper Chip", New York Times Magazine, domenica 12 giugno 1994, pagina 44. 7) Steven Levy, "Crypto Rebels", WIRED, maggio/giugno 1993, pagina 54. 8) John Markoff, "Cyberspace Under Lock and Key", New York Times, domenica 13 febbraio 1994. 9) Philip Elmer-DeWitt, "Who Should Keep the Keys", Time, 14 Marzo 1994, pagina 90. Ci sono molti altri articoli su PGP pubblicati in tutto il mondo. Terro' un album di ritagli. Altre fonti di informazioni su PGP ================================== Come ottenere una versione commerciale di PGP - --------------------------------------------- Per avere una versione con licenza per l'uso di PGP in USA e Canada, contattare: ViaCrypt 9033 North 24th Avenue, Suite 7 Phoenix, Arizona 85021 USA Tel.: +1 602 944-0773, o +1 800 536-2664 Fax: +1 602 943-2601 E-mail: viacrypt@acm.org Via Crypt puo' fornire una versione di PGP per MSDOS, e diverse piattaforme Unix, oltre ad uno shell per Windows. Altre versioni sono in corso di sviluppo, compresa una versione per Macintosh. Se avete la necessita' di utilizzare PGP in un ambiente commerciale o governativo e ViaCrypt ha la versione per la vostra piattaforma, dovreste usare questa. ViaCrypt ha ottenuto tutte le licenze necessarie da PKP, AscomTech AG e Philip Zimmermann per vendere PGP per l'uso in ambienti commerciali e governativi. Il PGP ViaCrypt e' sicuro come la versione freeware, ed e' interamente compatibile. Il PGP ViaCrypt e' il modo perfetto per portare nel vostro ambiente aziendale una versione provvista di licenza di PGP. Se lavorate in una grande azienda e siete un sostenitore di PGP, vi raccomando di cercare di convincere la vostra societa' ad acquistare molte copie di PGP da ViaCrypt. Non solo perche' questo mi farebbe guadagnare le royalties. Se ViaCrypt potra' fare di PGP un successo commerciale, sara' un buon passo per cementarne il futuro politico come uno standard ormai non arrestabile per la cifratura nel mondo delle aziende. Il mondo delle aziende va dove e' il denaro, e non c'e' niente altro che influenzi di piu' la politica pubblica. Questo comprende la politica del Governo per la soppressione della crittografia forte. Riferire errori di PGP - ---------------------- Eventuali errori di PGP dovrebbero essere riportati via e-mail al MIT, il sito di distribuzione ufficiale. L'indirizzo per riferire errori e': pgp-bugs@mit.edu. Il MIT mi fara' avere copia della vostra segnalazione. Quando riportate degli errori, assicuratevi di specificare la macchina ed il sistema operativo che usate e la versione di PGP che possedete, oltre a dettagli sufficienti a riprodurre il problema. Sarebbe anche una buona idea informarvi prima per sapere se la vostra versione di PGP e' l'ultima, perche' e' possibile che l'errore sia gia' stato corretto. Sarebbe meglio anche accertarsi di aver effettivamente trovato un errore prima di riferirlo. RTFM. Posta dei sostenitori, aggiornamenti e notizie - ---------------------------------------------- Dopo tutto questo lavoro devo ammettere che non mi dispiacerebbe ricevere un po' di posta dai sostenitori di PGP, per misurarne la popolarita'. Fatemi sapere cosa ne pensate, e quanti vostri amici ne fanno uso. Mi fa piacere anche ricevere segnalazioni di errori e suggerimenti per futuri miglioramenti. E' possibile che una prossima versione di PGP rifletta i vostri suggerimenti. Questo progetto non e' stato finanziato, e mi ha quasi mangiato vivo. Questo significa che normalmente non rispondero' alla vostra posta, a meno che vi serva solo una risposta breve ed includiate una busta indirizzata e affrancata. Pero' rispondo spesso all'e-mail. Per favore scrivete in Inglese, siccome le mie capacita' con le lingue straniere sono deboli. Se mi telefonate e non mi trovate, la cosa migliore e' riprovare piu' tardi. Normalmente non restituisco le chiamate provenienti da lontano, a meno che non lasciate un messaggio in cui mi autorizziate a chiamarvi a vostro carico, ed anche in questo caso non e' detto che vi richiami. Se vi serve una quantita' significativa del mio tempo, sono disponibile a fornire consulenze pagate, e rispondo sempre a queste chiamate. La posta piu' scomoda che ricevo, proviene da alcune persone benintenzionate che mi mandano un po' di dollari chiedendomi una copia di PGP. Io non gliela mando, perche' preferisco evitare qualunque problema legale con PKP. Peggio ancora, a volte queste richieste arrivano dall'estero, e rischierei di violare le leggi USA sull'esportazione di software crittografico. Comunque, anche quando non ci sono complicazioni legali normalmente non mi mandano una somma sufficiente a coprire l'uso del mio tempo. Semplicemente io non sono organizzato per gestire un'attivita' di vendita per corrispondenza di quantita' limitate di merci a basso costo. Inoltre non posso ignorare la richiesta e tenermi il denaro, perche' il mittente probabilmente lo considera come un pagamento perche' io soddisfi le sue richieste. Se restituisco il denaro, devo prendere la mia auto, guidare fino all'ufficio postale e comprare dei francobolli, perche' raramente mi allegano una busta indirizzata ed affrancata. Inoltre devo impiegare tempo per scrivere una cortese risposta spiegando che non posso fare cio' che mi si chiede. Se rimando queste operazioni ed appoggio la lettera sulla mia scrivania, in pochi minuti puo' essere sepolta, e non vedra' di nuovo la luce del giorno per mesi. Moltiplicate questi piccoli inconvenienti per il numero di richieste che ricevo, e capirete il problema. Non basta che il software sia gratuito ? Sarebbe piu' bello se le persone potessero cercare di prenderne una copia dalle miriadi di fonti disponibili. Se non avete un modem, chiedete ad un amico di prendere una copia di PGP per voi. Se non riuscite comunque a trovarlo, non mi dispiacera' rispondere ad una breve chiamata telefonica. Chiunque abbia la volonta' di migliorare PGP, me lo faccia sapere. Un po' di lavoro in piu' sara' certamente utile. L'inserimento di alcune funzioni e' stato rimandato in attesa del tempo necessario. Molti utilizzatori di PGP hanno gia' offerto il loro tempo per portare il software su Unix sulle Sun SPARCstations, su Ultrix, su VAX/VMS, su OS/2, su Amiga e sull'Atari ST. Forse voi potete dare il vostro contributo per portarlo su altri ambienti. Solo, per favore parlatemi dei vostri progetti per portare PGP su altri ambienti o per migliorarlo prima di iniziare il lavoro, per evitare di duplicare gli sforzi e di partire magari con una versione obsoleta del codice sorgente. Siccome sono state prodotte molte traduzioni in lingua straniera di PGP, la maggior parte di esse non e' distribuita col pacchetto standard, perche' questo richiederebbe troppo spazio sui dischi. Dei "kits" separati di traduzione sono disponibili presso numerose fonti indipendenti, e talvolta sono disponibili presso gli stessi centri di distribuzione dove avete trovato il pacchetto standard. Questi kits comprendono le versioni tradotte dei files LANGUAGE.TXT, PGP.HLP e dei manuali d'uso. Se volete scrivere una traduzione nella vostra lingua, prima contattatemi per avere le ultime informazioni ed alcune direttive standard, ed anche per verificare che il lavoro non sia gia' stato fatto. Per sapere dove trovare un kit per la vostra lingua, potete controllare i newsgroups di Internet, oppure chiedere a Mike Johnson (mpj@csn.org). Se avete accesso ad Internet, cercate gli annunci di rilascio di una nuova versione di PGP sul newsgroup "sci.crypt" e sul newsgroup di PGP, "alt.security.pgp". Se volete sapere dove prendere PGP, il MIT e' il sito primario di distribuzione (net-dist.mit.edu). Potete chiedere a Mike Johnson (mpj@csn.org) una lista di siti FTP su internet e di numeri telefonici di BBS. Gruppi politici legati ai computer - ---------------------------------- PGP e' un software fortemente politico. Sembra dunque appropriato menzionare qui alcuni gruppi di attivisti collegati al mondo del computer. Tutti i dettagli su questi gruppi, ed il modo di aderirvi, sono forniti in un file separato del pacchetto di rilascio di PGP. L'Electronic Privacy Information Center (EPIC) e' un centro ricerche di pubblico interesse di Washington, DC. E' stato fondato nel 1994 per focalizzare la pubblica attenzione sulle questioni emergenti relative alla National Information Infrastructure, come il chip Clipper, il progetto di legge sulla telefonia digitale, la riservetezza degli archivi medici e la vendita di dati sui consumatori. EPIC e' sponsorizzato dal Fund for Constitutional Government e da Computer Professionals for Social Responsibility. EPIC pubblica l'EPIC Alert e gli EPIC Reports, segue la vertenza sul Freedom of Information Act, e conduce ricerche politiche sulle questioni di riservatezza emergenti. Per maggiori informazioni: EPIC, 666 Pennsylvania Ave., SE, Suite 301, Washington, DC 20003. Tel.:+1 202 544 9240 Fax:+1 202 547 5482 e-mail info@epic.org La Electronic Frontier Foundation (EFF) e' nata nel 1994 per assicurare la liberta' di espressione attraverso i mezzi digitali, con particolare enfasi per cio' che riguarda l'applicazione dei principi contenuti nella Costituzione degli Stati Uniti e nella Carta dei Diritti alle comunicazioni basate sui computer. Puo' essere raggiunta a Washington DC, tel. +1 202 347-5400. Internet e-mail: eff@eff.org. Computer Professionals For Social Responsibility (CPSR) da' la possibilita' ai professionisti ed agli utilizzatori di computer di sostenere l'uso responsabile delle tecnologie dell'informazione, e permette a tutti coloro che usano la tecnologia dei computers di partecipare a dibattiti politici pubblici sugli impatti dei computers stessi sulla societa'. Possono essere raggiunti a Palo Alto, tel.: +1 415 322-3778. e-mail: cpsr@csli.stanford.edu. La League for Programming Freedom (LPF) e' un'organizzazione di base di insegnanti, studenti, uomini di affari, programmatori ed utilizzatori dedicata a ripristinare la liberta' nella scrittura dei programmi. Essi considerano i brevetti sugli algoritmi dei computers dannosi per l'industria del software Statunitense (e' esattamente cio' che penso io !). Possono essere raggiunti al numero +1 617 433-7071. e-mail: lpf@uunet.uu.net. Per maggiori dettagli su questi gruppi, si veda il documento allegato al pacchetto di rilascio di PGP. Letture raccomandate - -------------------- Letture introduttive 1) Bruce Schneier, "Applied Cryptography: Protocols, Algorithms, and Source Code in C", John Wiley & Sons, 1993 (Questo libro e' uno spartiacque sull'argomento.) 2) Dorothy Denning, "Cryptography and Data Security", Addison-Wesley, Reading, MA 1982 3) Dorothy Denning, "Protecting Public Keys and Signature Keys", IEEE Computer, febbraio 1983 4) Martin E. Hellman, "The Mathematics of Public-Key Cryptography," Scientific American, agosto 1979 5) Steven Levy, "Crypto Rebels", WIRED, maggio/giugno 1993, pagina 54. (Un articolo fondamentale su PGP ed altre questioni collegate.) 6) Steven Levy, "Battle of the Clipper Chip", New York Times Magazine, domenica 12 giugno 1994, pagina 44. (Grande articolo e grandi foto.) 7) William Bulkeley, "Cipher Probe", Wall Street Journal, 28 aprile 1994, prima pagina. (Un articolo su PGP e Zimmermann.) Altre letture 8) Ronald Rivest, "The MD5 Message Digest Algorithm", MIT Laboratory for Computer Science, 1991 9) Xuejia Lai, "On the Design and Security of Block Ciphers", ETH Series on Information Processing (Ed. J. L. Massey), Vol. 1, Hartung-Gorre Verlag, Costanza, Svizzera, 1992 10) Philip Zimmermann, "A Proposed Standard Format for RSA Cryptosystems", Advances in Computer Security, Vol III, Pubblicato da Rein Turn, Artech House, 1988 11) Paul Wallich, "Electronic Envelopes", Scientific American, febbraio 1993, pagina 30. (Un articolo su PGP) 12) William Stallings, "Pretty Good Privacy", BYTE, luglio 1994, pagina 193 13) Philip Zimmermann, "The Official PGP User's Guide", MIT Press, 1994 (in corso di stampa) 14) Philip Zimmermann, "PGP Source Code and Internals", MIT Press, 1994 (in corso di stampa) Per contattare l'autore - ----------------------- Philip Zimmermann Puo' essere raggiunto a: Boulder Software Engineering 3021 Eleventh Street Boulder, Colorado 80304 USA Internet: prz@acm.org Tel.: +1 303 541-0140 (voce) (10:00am - 7:00pm Mountain Time) E' disponibile un fax, accordandosi prima per telefono. Appendice A: Dove procurarsi PGP ================================ Questa appendice descrive come procurarsi il programma freeware di crittografia a chiave pubblica PGP (Pretty Good Privacy) da un sito FTP anonimo su Internet, o da altre fonti. Di fatto PGP e' diventato uno standard mondiale per la cifratura di e-mail. PGP ha una gestione sofisticata delle chiavi, uno schema di cifratura ibrido RSA/convenzionale, la generazione di una selezione del messaggio per la firma digitale ed un buon progetto ergonomico. PGP e' funzionale e veloce, ed ha un'eccellente documentazione d'uso. Il codice sorgente e' liberamente disponibile. Il Massachusetts Institute of Technology e' il distributore di PGP 2.6. La distribuzione e' limitata agli Stati Uniti. PGP e' disponibile presso "net-dist.mit.edu", un sito FTP controllato con restrizioni e limitazioni simili a quelle gia' usate da RSA Data Security, Inc., per rispettare i requisiti del controllo sulle esportazioni. Il software risiede nella directory /pub/PGP. Un richiamo: impostate il modo come binario o immagini prima di effettuare il trasferimento FTP. Se effettuate un trasferimento kermit verso il vostro PC, specificate il modo binaro ad 8 bits su entrambi i terminali. Ci sono due files di archivio compressi nel rilascio standard. Il nome dei files deriva dalla versione del rilascio. Per avere PGP 2.6.2, dovete prendere il file pgp262.zip che contiene l'eseguibile MSDOS e i manuali d'uso. Opzionalmente potete anche prendere il file pgp262s.zip che contiene tutto il codice sorgente. Questi files possono essere decompressi con il programma di decompressione shareware per MSDOS PKUNZIP.EXE, versione 1.10 o successive. Per gli utilizzatori Unix che non dispongono della funzione UNZIP, il codice sorgente puo' anche essere trovato nel file compresso tar pgp262s.tar.Z. Se non avete nessun numero telefonico di BBS comodo, ecco una BBS che potreste provare. La Catacombs BBS, gestita da Mike Johnson a Longmont, Colorado, distribuisce il PGP solo in USA e Canada. Il numero di telefono (modem) e' +1 303-772-1062. Il numero di telefono di Mike Johnson e' +1 303-772-1773, e l'indirizzo e-mail e' mpj@csn.org. Mike distribuisce PGP solo in USA e Canada anche tramite un sito FTP di Internet. Il nome del sito e' csn.org, la directory e' /mpj/ e dovete leggere il file README.MPJ per prendere PGP. Per ottenere una versione con licenza di PGP per l'uso in USA e Canada, contattate ViaCrypt a Phoenix, Arizona. Il telefono e' +1 602-944-0773. ViaCrypt ha ottenuto tutte le licenze necessarie da PKP, AscomTech AG e Philip Zimmermann per vendere PGP per l'uso in ambienti commerciali e governativi. Il PGP ViaCrypt e' sicuro come la versione freeware, ed e' interamente compatibile. Il PGP ViaCrypt e' il modo perfetto per portare nel vostro ambiente aziendale una versione provvista di licenza di PGP. Di seguito trovate un elenco di alcune persone di diversi Paesi e dei loro indirizzi e-mail o numeri di telefono. Potete contattare queste persone per chiedere informazioni sulla disponibilita' locale delle versioni di PGP precedenti la 2.5: Peter Gutmann Hugh Kennedy pgut1@cs.aukuni.ac.nz 70042.710@compuserve.com Nuova Zelanda Germania Branko Lankester Miguel Angel Gallardo branko@hacktic.nl gallardo@batman.fi.upm.es +31 2159 42242 +341 474 38 09 Olanda Spagna Hugh Miller Colin Plumb hmiller@lucpul.it.luc.edu colin@nyx.cs.du.edu +1 312 508-2727 Toronto, Ontario, Canada USA Jean-loup Gailly jloup@chorus.fr Francia -----BEGIN PGP SIGNATURE----- Version: 2.6.2i Comment: Requires PGP version 2.6 or later. iQCVAwUBMCTqPPCO75U2Gw0pAQERhQP8DEJB5k6jcGin1lfZLQVKbP480lGUQ73Q YbhFVh6MRumJUDbII8fzC6PaZOg53D5vzHIw7oMbvxQYkX4sSr3xoX1z7/proPpv YPwCUbNjYDgak6vML/nhr8b9fYrBpsf9HU3asaqnqXIDHhQCnakp4Cp3/DSHZEjI BlH86v8mKYQ= =3ht+ -----END PGP SIGNATURE-----