Nell'ambito della
crittografia
, una
web of trust
(
rete di fiducia
) e un concetto utilizzato da
PGP
,
GnuPG
, e altri sistemi compatibili con
OpenPGP
per stabilire l'autenticita dell'associazione
chiave pubblica
-utente. Sotto alcuni aspetti e un'alternativa all'affidarsi esclusivamente ad una
certificate authority
(o a una gerarchia di esse) tipico dei sistemi
PKI
centralizzati. Cosi come ci sono moltissime
reti di computer
, ci sono molte reti di fiducia indipendenti, e ogni utente (attraverso il suo
certificato d'identita
) puo essere parte e fungere da collegamento tra molte di esse.
Questo sistema di certificazione si poggia sul concetto dei
sei gradi di separazione
e sulla
teoria del mondo piccolo
.
Tutte le implementazioni compatibili con OpenPGP includono uno schema di gestione dei certificati per semplificarne l'uso, definito
rete di fiducia
. Un
certificato di identita
di OpenPGP (che include la
chiave pubblica
e le informazioni sul suo proprietario) puo essere firmata elettronicamente da altri utenti, che, in questo modo, attestano l'effettiva associazione di quella chiave pubblica a quel determinato utente. Questo viene comunemente fatto in riunioni (fisiche) definite
key signing party
.
Inoltre tutte queste implementazioni includono un sistema di voto che puo essere usato per determinare di quali associazioni chiave pubblica - proprietario un utente si puo fidare senza dover per questo incontrare fisicamente la persona. Per esempio, se tre conoscenti parzialmente fidati hanno firmato un certificato (e quindi hanno confermato l'associazione chiave pubblica - utente che questo contiene), oppure se un solo conoscente pienamente fidato l'ha fatto, il certificato viene considerato valido. I parametri sono a scelta dell'utente (e.g., si puo impostare la necessita di una firma da parte di un utente completamente fidato, oppure da parte di 6 parzialmente), e puo essere completamente escluso, se desiderato.
Questo schema e flessibile, diversamente dalla maggior parte dalle altre
infrastrutture a chiave pubblica
, e lascia la scelta del livello di fiducia agli utenti individuali. Non e perfetto e richiede prudenza e attenta supervisione da parte degli utenti. Essenzialmente pero tutte le PKI sono meno flessibili e obbligano gli utenti a fidarsi dei certificati dell'infrastruttura firmati dalla
certificate authority
. La supervisione da parte degli utenti non e ne richiesta ne permessa. Neanche questi sistemi sono ovviamente perfetti.
Al contrario, in un tipico sistema PKI
X.509
ogni certificato puo essere firmato solo una volta da una
certificate authority
(CA). Il certificato della CA puo essere esso stesso firmato da un'altra CA, e cosi via fino ad un certificato 'auto-firmato', chiamato
root certificate
. I root certificates devono essere accessibili da chi usa un certificato CA di livello piu basso, quindi vengono solitamente ampiamente distribuiti. Per esempio, sono inclusi in programmi come
web browser
e di posta elettronica. In questo modo pagine web, email, etc., protette attraverso
SSL/TLS
possono essere autenticate senza richiedere all'utente l'installazione manuale dei root certificates. Solitamente vengono inclusi piu di cento certificati di dozzine di PKI, conferendo la fiducia ad un certificato attraverso la gerarchia a cui si riferisce. Molti di questi certificati vennero creati da societa fallite in seguito, come il caso del collasso di
Dot-com
. A meno che queste PKI siano ancora gestite -nonostante tutto- quasi sicuramente quei root certificates non sono piu affidabili.
La rete di fiducia di OpenPGP e immune da problemi come i fallimenti di societa, e ha continuato a funzionare fino ad oggi senza grandi cambiamenti. Ciononostante, esiste un serio problema. Gli utenti che perdono la loro chiave privata non possono piu decifrare i messaggi che sono stati creati usando la relativa chiave pubblica. I primi certificati
PGP
non contenevano date di scadenza, e quindi avevano durata illimitata. Gli utenti dovevano preparare un certificato di revoca firmato in previsione di un eventuale furto o smarrimento della chiave privata. Un famoso crittografo sta ancora ricevendo messaggi crittati usando una chiave pubblica di cui egli ha perso la chiave privata tempo fa. Non puo fare molto con quei messaggi se non eliminarli e informare il mittente che non e in grado di leggerli, pregandolo di inviarli di nuovo con un'altra chiave pubblica -di cui ha ancora la relativa chiave privata. Le nuove versioni di PGP, e i programmi conformi a OpenPGP, hanno certificati con una data di scadenza che automaticamente li disabilita dopo un certo periodo, evitando (potenzialmente) questi problemi se usata correttamente.
La versione 3 di X.509 e abbastanza flessibile da permettere una rete di fiducia dello stile di OpenPGP. Questa viene pero solitamente usata per creare un intreccio di collegamenti tra CA di alto livello piuttosto che tra singoli utenti.
Una difficolta di tipo sociale (non tecnica) di una rete di fiducia come quella inclusa nei sistemi PGP/OpenPGP e che in ogni rete di fiducia senza un controllore centrale (per esempio, una
CA
), la convalida di un certificato si basa sugli altri utenti della rete. I certificati dei nuovi utenti non saranno immediatamente fidati dagli altri utenti, in particolare da coloro che non hanno ancora incontrato personalmente, finche essi non trovano abbastanza firmatari per il loro certificato. Questo a causa della configurazione di molti utenti, che richiedono la firma di uno o piu utenti totalmente fidati (o da molteplici utenti parzialmente fidati) per utilizzare (preparare messaggi usando la chiave pubblica, credere alla firma, etc.) un certificato sconosciuto.
Nonostante l'ampia diffusione dei sistemi OpenPGP e l'ampia disponibilita di
key servers
, e possibile in pratica non riuscire a trovare una o piu persone disposte a firmare un nuovo certificato (e.g., comparando un documento di identificazione con le informazioni contenute nel certificato). Gli utenti che vivono in aree remote o sottosviluppate, per esempio, potrebbero avere difficolta a raggiungere altri utenti. E se anche il certificato dell'altro utente e nuovo (con nessuna o poche firme), allora la sua firma puo fornire solo un piccolo beneficio. I
Key signing parties
sono un meccanismo abbastanza popolare per risolvere il problema.