GnuPG è uno strumento per comunicare in modo sicuro. Questo capitolo è una breve guida riguardante il nocciolo funzionale di GnuPG; include la creazione di coppie di chiavi, scambio e verifica di chiavi, cifratura e decifratura di documenti e autenticazione di documenti con firme digitali. Non spiega invece nel dettaglio i concetti che stanno dietro alla crittografia a chiave pubblica, alla cifratura e alle firme digitali. Tali argomenti, infatti, vengono trattati nel capitolo 2. Il presente capitolo non spiega nemmeno come usare GnuPG con una certa cognizione di causa; ciò fa parte dei capitoli 3 e 4.
GnuPG utilizza la crittografia a chiave pubblica per permettere a coloro che lo utilizzano di comunicare in sicurezza. In un sistema a chiave pubblica ogni utente ha una coppia di chiavi consistenti in una chiave privata e una chiave pubblica. La chiave privata di una persona viene tenuta segreta; non deve mai essere rivelata. La chiave pubblica può essere data a tutti coloro con i quali l'utente vuole comunicare. GnuPG utilizza uno schema in qualche modo più sofisticato per il quale un utente possiede una coppia di chiavi primaria e zero o più coppie di chiavi subordinate addizionali. La coppia di chiavi primaria e quelle subordinate sono raggruppate assieme per facilitare la gestione delle chiavi e il mazzo così ottenuto può spesso essere considerato semplicemente come un'unica coppia di chiavi.
L'opzione a linea di comando --gen-key è utilizzata per creare una nuova coppia di chiavi primaria.
alice% gpg --gen-key gpg (GnuPG) 0.9.4; Copyright (C) 1999 Free Software Foundation, Inc. This program comes with ABSOLUTELY NO WARRANTY. This is free software, and you are welcome to redistribute it under certain conditions. See the file COPYING for details. Per favore scegli che tipo di chiave vuoi: (1) DSA e ElGamal (default) (2) DSA (firma solo) (4) ElGamal (firma e cifra) Cosa scegli? |
È necessario anche scegliere la dimensione della chiave. La dimensione di una chiave DSA deve essere compresa fra 512 e 1024 bit mentre una chiave ElGamal può essere di qualsiasi dimensione. GnuPG, però, richiede che le chiavi non siano più piccole di 768 bit. Accade quindi che, se si è scelta l'opzione 1 e successivamente si sceglie una dimensione per la chiave maggiore di 1024 bit, la chiave ElGamal avrà la dimensione richiesta, mentre la chiave DSA sarà di 1024 bit.
Sto per generare una nuova coppia di chiavi ELG-E. la dimensione minima è 768 bit la dimensione predefinita è 1024 bit la dimensione massima consigliata è 2048 bit Di che dimensioni vuoi la chiave? (1024) |
Infine è necessario scegliere una data di scadenza. Se è stata scelta l'opzione 1, la data di scadenza verrà utilizzata sia per la coppia di chiavi ElGamal che per quella DSA.
Per favore specifica per quanto la chiave sarà valida. 0 = la chiave non scadrà <n> = la chiave scadrà dopo n giorni <n>w = la chiave scadrà dopo n settimane <n>m = la chiave scadrà dopo n mesi <n>y = la chiave scadrà dopo n anni Chiave valida per? (0) |
È necessario fornire un identificativo utente[2] in aggiunta ai parametri della chiave. Lo User ID viene utilizzato per associare la chiave che si sta creando ad una persona reale.
Ti serve uno User ID per identificare la tua chiave; il software costruisce l'user id a partire da Nome e Cognome, Commento e Indirizzo di Email indicati in questa forma: "Heinrich Heine (Der Dichter) <[email protected]>" Nome e Cognome: |
GnuPG necessita di una ``frase d'ordine''[3] per proteggere le chiavi primarie e subordinate che si possiedono.
Ti serve una passphrase per proteggere la tua chiave segreta. Inserisci la passphrase: |
Una volta che la propria coppia di chiavi è stata creata, si dovrebbe immediatamente generare un certificato di revoca per la chiave pubblica primaria utilizzando l'opzione --gen-revoke. Se ci si dimentica la passphrase o se la propria chiave privata viene compromessa o persa, questo certificato di revoca può essere pubblicato per segnalare ad altri che la chiave pubblica non deve più essere usata. Una chiave pubblica revocata può comunque ancora essere utilizzata per verificare firme fatte in passato, ma non può più essere usata per cifrare futuri messaggi. Inoltre la revoca non influisce sulla propria capacità di decifrare messaggi spediti in passato, se si possiede ancora l'accesso alla chiave privata.
alice% gpg --output revoca.asc --gen-revoke mia_chiave [...] |
[1] | L'opzione 3 serve a generare una coppia di chiavi ElGamal che non è utilizzabile per fare firme. |
[2] | D'ora in poi User ID per rispettare la traduzione del programma. |
[3] | D'ora in poi passphrase come nel testo originale. |