Keysigning

Visto che è possibile incontrare molti sviluppatori, fiere e conferenze rappresentano una buona occasione per farsi firmare la propria chiave GnuPG e migliorare la rete della fiducia. Specialmente per chi è nuovo nel progetto, firmare le chiavi e conoscere altri sviluppatori è molto interessante.

Questo documento vuole aiutarvi a organizzare una sessione di firma delle chiavi. Si noti che tutti gli esempi usano keyring.debian.org come keyserver: se la chiave in questione non è nel portachiavi Debian, sostituite keyring.debian.org con un keyserver pubblico come wwwkeys.pgp.net (che, nonostante il nome, ospita anche chiavi GnuPG).

Una chiave andrebbe firmata solo se sussistono almeno due condizioni:

  1. Il proprietario della chiave convince il firmatario che quella indicata nell'UID della chiave è davvero la propria identità, usando qualunque mezzo di prova che il firmatario accetti come convincente. Di solito questo significa che il proprietario della chiave deve mostrare un documento di identità rilasciato da un autorità statale, che contenga una fotografia e informazioni che identifichino il proprietario della chiave. Alcune persone sanno che i documenti d'identità prodotti dagli stati sono facilmente falsificabili e che il grado di fiducia delle autorità che li emettono è spesso sospetto, quindi potrebbero richiedere documenti di identità aggiuntivi e/o alternativi.
  2. Il proprietario della chiave verifica che l'impronta digitale e la lunghezza della chiave che sta per essere firmata è davvero la sua.

La cosa più importante è che se il proprietario della chiave non partecipa attivamente allo scambio, non è possibile soddisfare nessuno dei due requisiti visti sopra. Per quanto riguarda il primo requisito, nessuno può completare la parte spettante al proprietario della chiave al suo posto, altrimenti chiunque rubi un documento di identità potrebbe facilmente farsi firmare una chiave PGP facendosi passare per un delegato del proprietario. Per quanto riguarda il secondo requisito, nessuno può completare la parte spettante al proprietario della chiave, altrimenti il delegato potrebbe sostituire l'impronta digitale con quella di una nuova chiave PGP che riporta il nome del proprietario, inducendo così a firmare una chiave sbagliata.

Il pacchetto Debian signing-party fornisce alcuni strumenti utili per questa procedura. gpg-key2ps trasforma una chiave GnuPG in un file PostScript, in modo da poter stampare delle strisce di carta con la propria impronta digitale, mentre gpg-mailkeys spedisce una chiave firmata al suo proprietario. Il pacchetto contiene anche caff, uno strumento più avanzato. Si veda la documentazione del pacchetto per maggiori informazioni.

Cosa non dovreste fare

Non dovreste mai firmare la chiave di qualcuno che non avete incontrato di persona. Firmare una chiave basandosi su qualsiasi cosa all'infuori della conoscenza diretta distrugge l'utilità della rete della fiducia. Se un amico si presenta ad altri sviluppatori portando la vostra carta d'identità e la vostra impronta digitale, ma voi non siete lì a verificare che l'impronta digitale appartenga proprio a voi, come possono gli altri sviluppatori collegare l'impronta digitale con l'identità? Hanno solo la parola dell'amico e le altre firme presenti sulla vostra chiave: sarebbe come voler firmare la vostra chiave solo perché altre persone l'hanno già firmata!

È bello avere molte firme sulla propria chiave e potreste essere tentati di sveltire un po' le procedure. Ma avere firme di cui ci si può fidare è più importante che avere molte firme, per questo è molto importante che il processo di firma delle chiavi sia il più rigoroso possibile. Firmando la chiave di qualcuno dichiarate formalmente che avete prove di prima mano sulla sua identità: se lo fate quando non ne siete sicuri, la rete della fiducia non è più degna di fiducia.