Contents
- Introduzione
-
Come
- Passo 1: Creare una coppia di chiavi RSA
- Passo 2: generare un certificato di revoca
- Passo 3: Rendere pubblica la propria chiave pubblica
- Passo 4: Stampare la propria chiave
- Passo 5: Dare agli altri l'impronta digitale della propria chiave
- Passo 6: Fare firmare la propria chiave digitale
- Passo 7: Inviare la propria chiave firmata ad un server
- Oltre Debian
- Vedere anche
Introduzione
Lo scopo di questa pagina è di spiegare come creare e firmare una chiave OpenPGP.
Poi, per collegarsi alla rete della fiducia, andare alla pagina di coordinamento per la firma delle chiavi.
Come
Tutorial che spiegano come usare GnuPG:
Se si desidera che la propria chiave OpenPGP sia firmata da almeno un (ma l'ideale sarebbe più di uno) Debian Developer, si devono seguire i seguenti passi.
Passo 1: Creare una coppia di chiavi RSA
gpg --full-gen-key
Vedere anche creare una coppia di chiavi.
Notare che a causa di vulnerabilità scoperte nell'algoritmo di hash SHA1 Debian vuole chiavi RSA più robuste che siano almeno a 4096 bit e preferibilmente SHA2 sebbene Ed25519 sia ancora meglio.
Inoltre vedere le Buone prassi OpenPGP, la documentazione sulle sottochiavi e migrazione da una chiave SHA-1.
Passo 2: generare un certificato di revoca
Generare un certificato di revoca se non se ne ha già uno!
Il resto della pagina presume che la propria fingerprint sia impostata nella variabile ${miaFingerPrint}
gpg --gen-revoke ${miaFingerPrint} > ~/.gnupg/revocation-${miaFingerPrint}.crt
Passo 3: Rendere pubblica la propria chiave pubblica
gpg --send-key ${miaFingerPrint}
Alcuni server di chiavi pubblici:
https://keyring.debian.org (solo gli sviluppatori Debian possono caricare o inviare aggiornamenti di chiavi su questo server)
https://keyserver.ubuntu.com (raccomandato)
https://keys.openpgp.org/ (usato da Thunderbird)
Passo 4: Stampare la propria chiave
Lo stampato della propria impronta digitale deve contenere le seguenti informazioni:
- Nome
- Cognome
- Indirizzi di posta elettronica (quelli usati con la chiave)
- Metodo di cifratura e ID della chiave (es. 4096R/1A2B3C4D5E6F7G8H)
- L'impronta digitale stessa
Per scoprire la propria impronta digitale si può usare questa funzione:
gpg -v --fingerprint ${miaFingerPrint}
Normalmente si fanno diverse stampe su un unico foglio di carta, chiamato anche _keysheet_. Ogni stampa può avere ad esempio le dimensioni di un biglietto da visita.
Uso di un sito web per generare un PDF
Esistono diversi siti web che possono essere usati per generare PDF pronti per la stampa con la propria chiave, per esempio http://openpgp.quelltextlich.at/slip.html o http://keysheet.net.
Uso di gpg-key2ps per generare un PDF
Si può anche usare gpg-key2ps, che fa parte del pacchetto signing-party per creare un foglio con la chiave:
gpg-key2ps -p a4 ${miaFingerPrint} | gs -sDEVICE=pdfwrite -sOutputFile=out.pdf
In alternativa si può stampare su una sola colonna per evitare problemi di stampa (per chiavi molto larghe):
gpg-key2ps -1 -p a4 ${myFingerPrint} | gs -sDEVICE=pdfwrite -sOutputFile=out.pdf
Se si va ad un keysigning party, si dovrà inviare questa informazione in anticipo e verrà stampata poi una lista per ogni partecipante.
Visualizzare la chiave sullo schermo invece di stamparla
In alternativa si possono visualizzare le proprie impronte digitali sullo schermo del portatile in questo modo:
LANG=C gpg --list-secret-keys --fingerprint --keyid-format long | grep -Po 'fingerprint = \K.*' | sed 's/$/\n/; s/ /\n/' | /usr/games/sm -i -
Passo 5: Dare agli altri l'impronta digitale della propria chiave
Le persone che firmeranno la chiave vorranno vedere un qualche tipo di documento di identità ufficiale prodotto da un'autorità governativa (passaporto o documento simile).
È necessario dare lo stampato ad almeno un Debian Developer.
Leggere la pagina ufficiale Debian sulla firma delle chiavi.
Un membro CAcert vorrà vedere due documenti di identità.
Passo 6: Fare firmare la propria chiave digitale
Il Debian Developer con questa ${ddSignersFingerprint} fa quanto segue:
- recupera la chiave dal server
gpg --recv-keys ${miaFingerPrint}
- verifica che le informazioni siano corrette (l'impronta digitale)
gpg --fingerprint ${miaFingerPrint}
- la firma.
gpg --sign-key ${miaFingerPrint}
- la reinvia indietro al proprietario come messaggio email cifrato (Non reinviarla direttamente ad un server). L'invio cifrato è preferito dato che si può verificare che il ricevente possa decifrare il messaggio che riceve.
gpg --armor --export ${miaFingerPrint} | gpg --encrypt -r ${miaFingerPrint} --armor --output ${miaFingerPrint}-signedBy-${miaFingerPrint}.asc
In alternativa lo strumento caff dal pacchetto signing-party automatizza tutto questo processo:
caff ${miaFingerPrint}
Passo 7: Inviare la propria chiave firmata ad un server
Passato un certo periodo di tempo dalla partecipazione ad un evento di firma di chiavi, si potrebbe ricevere come allegato via posta elettronica la propria chiave firmata. Importare le firme:
gpg -d ${miaFingerPrint}-signedBy-${ddSignersFingerprint}.asc | gpg --import
Successivamente si dovrà inviare la propria chiave aggiornata al server:
gpg --send-key ${miaFingerPrint}
Oltre Debian
Per coloro che sono interessati ad espandere la rete di fiducia al di fuori di Debian:
Vedere anche