Come verificare le firme dei pacchetti
Ciascun file nella pagina di download è accompagnato da un file con lo stesso nome del pacchetto e l'estensione ".asc". Ad esempio, l'attuale Pacchetto di Installazione Windows: dist/vidalia-bundles/vidalia-bundle-0.2.1.26-0.2.9.exe.asc.
Questi file .asc sono firme PGP. Ti permettono di verificare che il file scaricato sia esattamente quello desiderato.
Naturalmente bisogna avere le nostre chiavi pgp nel proprio keyring: se non sai qual'è la chiave pgp, non puoi esser certo che l'abbiamo firmata proprio noi. Le chiavi che usiamo per firmare sono:i
- Roger (0x28988BF5) che di solito firma il codice sorgente.
- Nick (0x165733EA, o la sua sottochiave 0x8D29319A)
- Andrew (0x31B0974B)
- Peter (0x94C09C7F, o la sua sottochiave 0xAFA44BDD)
- Matt (0x5FA14861)
- Jacob (0x9D0FACE4)
Primo: Importa le chiavi
Puoi anche importare le chiavi direttamente da GnuPG:
gpg --keyserver subkeys.pgp.net --recv-keys 0x28988BF5
o cercarle con
gpg --keyserver subkeys.pgp.net --search-keys 0x28988BF5
e quando ne scegli una, verrà aggiunta al tuo keyring.
Secondo: verifica i fingerprint
Verifica i fingerprint pgp con il comando:i
gpg --fingerprint (metti qui il keyid)I fingerprint delle chiavi devono essere:
pub 1024D/28988BF5 2000-02-27
Key fingerprint = B117 2656 DFF9 83C3 042B C699 EB5A 896A 2898 8BF5
uid Roger Dingledine <arma@mit.edu>
pub 3072R/165733EA 2004-07-03
Key fingerprint = B35B F85B F194 89D0 4E28 C33C 2119 4EBB 1657 33EA
uid Nick Mathewson <nickm@alum.mit.edu>
uid Nick Mathewson <nickm@wangafu.net>
uid Nick Mathewson <nickm@freehaven.net>
pub 1024D/31B0974B 2003-07-17
Key fingerprint = 0295 9AA7 190A B9E9 027E 0736 3B9D 093F 31B0 974B
uid Andrew Lewman (phobos) <phobos@rootme.org>
uid Andrew Lewman <andrew@lewman.com>
uid Andrew Lewman <andrew@torproject.org>
sub 4096g/B77F95F7 2003-07-17
pub 1024D/94C09C7F 1999-11-10
Key fingerprint = 5B00 C96D 5D54 AEE1 206B AF84 DE7A AF6E 94C0 9C7F
uid Peter Palfrader
uid Peter Palfrader <peter@palfrader.org>
uid Peter Palfrader <weasel@debian.org>
pub 1024D/5FA14861 2005-08-17
Key fingerprint = 9467 294A 9985 3C9C 65CB 141D AF7E 0E43 5FA1 4861
uid Matt Edman <edmanm@rpi.edu>
uid Matt Edman <Matt_Edman@baylor.edu>
uid Matt Edman <edmanm2@cs.rpi.edu>
sub 4096g/EA654E59 2005-08-17
pub 1024D/9D0FACE4 2008-03-11 [expires: 2010-03-11]
Key fingerprint = 12E4 04FF D3C9 31F9 3405 2D06 B884 1A91 9D0F ACE4
uid Jacob Appelbaum <jacob@appelbaum.net>
sub 4096g/D5E87583 2008-03-11 [expires: 2010-03-11]
(Naturalmente, se vuoi essere certo che siano proprio loro devi confrontare le firme da più fonti, o meglio ancora fare key signing e costruitre un percorso di fiducia a queste chiavi.)
Terzo: verifica i pacchetti scaricati
Se usi GnuPG, metti il file .asc ed il file scaricato nella stessa directory e dai "gpg --verify (quelchesia).asc (quelchesia)". Risponderà qualcosa come "Good signature" o "BAD signature" usando questi comandi:
gpg --verify tor-0.1.0.17.tar.gz.asc tor-0.1.0.17.tar.gz gpg: Signature made Wed Feb 23 01:33:29 2005 EST using DSA key ID 28988BF5 gpg: Good signature from "Roger Dingledine <arma@mit.edu>" gpg: aka "Roger Dingledine <arma@mit.edu>" gpg: WARNING: This key is not certified with a trusted signature! gpg: There is no indication that the signature belongs to the owner. Primary key fingerprint: B117 2656 DFF9 83C3 042B C699 EB5A 896A 2898 8BF5
Noterai che c'è un avviso perché non hai assegnato una fiducia a questo utente. Significa che il programma ha verificato che l'utente ha apposto quella firma. E' l'utente a decidere se quella chiave appartiene veramente agli sviluppatori. Il modo migliore è incontrarli e scambiare i gpg fingerprint. Si possono anche firmare le chiavi. Se vedi le chiavi di Roger o Nick, altre persone hanno detto in sostanza "abbiamo verificato che questo è Roger/Nick". Così se ti fidi di quella terza parte, hai stabilito un livello di fiducia per arma/nick.
Tutto ciò significa che puoi ignorare il messaggio o assegnare un livello di fiducia.
Ad esempio, questo è un esempio di verifica FALLITA. Significa che la firma ed il contenuto del file non corrispondono:
gpg --verify tor-0.1.0.17.tar.gz.asc gpg: Signature made Wed Feb 23 01:33:29 2005 EST using DSA key ID 28988BF5 gpg: BAD signature from "Roger Dingledine <arma@mit.edu>"
Se vedi un messaggio come questo sopra, non devi fidarti del contenuto del file.
Se usi Tor su Debian leggi le istruzioni per importare queste chiavi in apt.
