Quando si ottiene una chiave pubblica, come si può verificare che essa appartenga effettivamente all’utente al quale è associata? Per essere sicuri, sarebbe opportuno riceverla dal proprietario in persona, magari su supporto cartaceo. Ma poiché una chiave pubblica è lunga in genere qualche kilobyte, si dovrebbero confrontare qualche migliaio di caratteri per verificare che la chiave pubblica che abbiamo ottenuto in forma elettronica, magari scaricandola da un keyserver, sia quella che appartiene all’utente al quale essa riporta di essere associata. Per questo esiste un meccanismo di verifica della chiave più agevole che si basa sul fingerprint (impronta): il proprietario della chiave pubblica fornisce su supporto cartaceo un insieme di 40 caratteri che rappresentano l’impronta della sua chiave pubblica (una sorta di codice di controllo che dipende strettamente da essa). È sufficiente confrontare questi caratteri per stabilire l’affidabilità della relazione chiave-proprietario.
Per visualizzare il fingerprint delle chiavi presenti nel proprio keyring si può utilizzare il comando
$ gpg --fingerprint
che mostrerà delle indicazioni analoghe a quelle di seguito riportate
/home/daniele/.gnupg/pubring.gpg ----------------------------------------- pub 1024D/8D267827 2005-01-02 [expires: 2006-01-02] Key fingerprint = 6EEC 205F 3577 A542 9F65 2C03 9996 B5F3 8D26 7827 uid Daniele Masini (daniele) <d.masini@tiscali.it> sub 1024g/73FAA737 2005-01-02 [expires: 2006-01-02]
Per visualizzare le eventuali firme apposte sulle chiavi pubbliche presenti nel proprio keyring si può utilizzare il comando
$ gpg --list-sigs
che mostrerà delle indicazioni analoghe a quelle di seguito riportate
/home/daniele/.gnupg/pubring.gpg
-----------------------------------------
pub 1024D/8D267827 2005-01-02 [expires: 2006-01-02]
uid Daniele Masini (daniele) <d.masini@tiscali.it>
sig 3 8D267827 2005-01-02 Daniele Masini (daniele) <d.masini@tiscali.it>
sub 1024g/73FAA737 2005-01-02 [expires: 2006-01-02]
sig 3 8D267827 2005-01-02 Daniele Masini (daniele) <d.masini@tiscali.it>
Per firmare una chiave pubblica si può utilizzare un comando analogo a
$ gpg --sign-key 4E2456A3
che richiederà di inserire la passphrase per accedere alla nostra chiave privata con la quale
firmare la chiave pubblica relativa all’ID 4E2456A3.
Ad ogni chiave pubblica importata nel proprio keyring può anche essere assegnato un livello di fiducia, ovvero un valore che esprime quanto si è sicuri che la chiave pubblica importata appartenga effettivamente a chi è specificato essere il suo proprietario. Questo può essere fatto modificando i parametri relativi alla chiave con il comando
$ gpg --edit-key 4E2456A3
dove 4E2456A3 è l’ID della chiave pubblica da modificare. Tale comando farà aprire
l’interprete di comandi di GnuPG (con un prompt Command>) e per impostare il livello di
fiducia si può digitare il comando trust (fiducia), selezionando successivamente il livello di
fiducia desiderato. Infine si può digitare il comando save per salvare le modifiche ed uscire
dall’interprete oppure quit per uscire senza salvarle.