La rete della fiducia è un grafico in cui i vertici sono utenti GPG (in realtà, le loro chiavi) ei bordi sono cross-firme. Se mettiamo da parte i problemi di fiducia del proprietario e ipotizziamo che tutti i partecipanti firmino solo dopo aver controllato le impronte digitali delle chiavi, posso fidarmi di una chiave che ha un percorso tra me e la chiave nel web del grafico di fiducia.
Se scrivo un'email a qualcuno nella rete di fiducia, posso quindi crittografare il messaggio e mantenere privato il contenuto dell'email. Non riesco a nascondere i metadati della posta, però: un intercettatore lo scoprirà ancora quando ho inviato una mail ea chi. I metadati raccontano molte cose sulla gente, e ci sono stati sorprendenti (per non dire, spaventosi) risultati nell'indovinare il genere della gente, l'orientamento sessuale, il reddito, ecc. Ad alta probabilità con i metadati del telefono. (Non so se gli studi siano stati fatti con i metadati della posta elettronica, ma mi aspetterei risultati simili)
La domanda è: Come possiamo nascondere i metadati anche nelle e-mail crittografate dal client?
Propongo il seguente protocollo sopra GPG, ispirato a Tor:
- Voglio inviare un'email a Charlie
- Cerco un percorso attraverso la rete di fiducia da me a lui, di lunghezza minima, dì, 3. Supponiamo che passi attraverso Alice e Bob.
- Ora la fase di crittografia multipla:
- Criptico la posta con la chiave di Charlie.
- Quindi crittografo l'indirizzo e di posta già crittografato con la chiave di Mario.
- Quindi crittografo tutto ciò che è e l'indirizzo di Bob con la chiave di Alice.
- L'invio scartare tutto nell'ordine inverso:
- invio a Alice tutto ciò che ho ricevuto dall'ultima operazione di crittografia.
- Alice decrittografa, vede l'indirizzo di Bob e invia tutto ciò che ha decifrato a Bob.
- Bob decodifica ancora una volta e invia tutto a Charlie.
- Finalmente, Charlie decodifica per l'ultima volta.
Se non ho niente di sbagliato, questo ha le seguenti proprietà:
- Solo io e Charlie conosciamo il contenuto della posta.
- Solo io, Charlie e Bob conosciamo il destinatario finale della posta.
- Solo io, Charlie e Alice conoscono il mittente della posta.
Funziona? È praticabile? Perché non inviamo email in questo modo?
Alcuni lati negativi possibili potrebbero essere:
- Qualcuno nella catena potrebbe non essere online. Potrebbe quindi essere intelligente inviare il messaggio lungo più percorsi.
- Il traffico di rete aumenta. Se un intercettatore analizza attentamente ogni e-mail inviata da me, Alice, Bob e Charlie, potrebbero notare che Alice invia un'email a Bob poco dopo che le ho scritto, e così via, tracciando la posta a Charlie. Quante altre risorse ha bisogno di questo? Il ritardo delle e-mail è di breve durata (alcuni minuti) una contromisura efficace e accettabile?