Verifica della chiave | Autodifesa dalla sorveglianza

Verifica della chiave

Avatar

Leggere prima i concetti chiave nella crittografia se le chiavi di crittografia non sono familiari.

Quando comunichi online utilizzando la crittografia end-to-end , ogni persona a cui invii un messaggio ha la propria chiave pubblica univoca . Utilizzare questa chiave per crittografare i messaggi inviati a loro, in modo che solo loro possano decodificarli.

Ma come fai a sapere quale chiave pubblica usare?

Supponiamo di ricevere un'e-mail che afferma di provenire dalla tua amica Esra'a. L'e-mail include un file di chiave pubblica PGP per proteggere i messaggi futuri. Oppure, supponiamo che qualcuno che afferma di essere Esra'a ti invii una richiesta di chat su un'applicazione di messaggistica crittografata come WhatsApp, Signal o Wire, insieme a un codice di sicurezza che puoi utilizzare per crittografare i messaggi futuri.

Un SMS su uno smartphone che dice che è del tuo amico, Esra'a. Lei dice "Ciao!" e invia un altro messaggio con un file di chiave pubblica (pubkey.asc) e gli emoji per "scintille" e "chiave".

Questi messaggi potrebbero non provenire affatto da Esra'a!

Anche se stai usando quella che ritieni sia la chiave pubblica di Esra'a, potresti crittografare i tuoi messaggi usando una chiave che proveniva da una persona completamente diversa, il che significa che questo falso Esra'a sarà in grado di decodificare tutti i tuoi messaggi futuri.

Per assicurarti di utilizzare la chiave di crittografia corretta di qualcuno (e che altri sappiano che stanno utilizzando la chiave di crittografia corretta per te), è importante eseguire la verifica della chiave .

Quando e dove verificare le chiavi

Diversi sistemi di messaggistica sicura hanno modi diversi per verificare le chiavi, ma tutti incoraggiano a controllare tali chiavi al di fuori del sistema di messaggistica stesso. Questo è chiamato verifica fuori banda. Quindi, nel nostro caso, dovresti trovare un altro modo per verificare che Esra'a online sia lo stesso di Esra'a nella vita reale . Puoi farlo chiamando Esra'a al telefono o incontrando Esra'a di persona per verificare che la chiave di crittografia pubblica che ti ha inviato appartenga effettivamente a lei.

Perché utilizzare la verifica fuori banda?

  • Senza sapere definitivamente da chi proviene una chiave, non puoi fare affidamento su un sistema di messaggistica sicuro poiché non è ancora completamente sicuro!
  • Spesso è più difficile falsificare le comunicazioni di qualcuno in più di un servizio. Ad esempio, se chiedi di verificare le impronte digitali di Signal utilizzando una chat video FaceTime, la persona falsa dovrebbe essere in grado di gestire sia un account Signal falso * che* un account FaceTime falso, e travestirsi da tuo amico in video.

Un'illustrazione di una chat video con Esra'a. Le chiedi di verificare la nuova chiave che ti ha inviato su Signal. Sembra preoccupata e confusa.

Ecco alcune domande che potresti farti:

Domanda: Non posso semplicemente porre online a Esra'a alcune domande di sicurezza per dimostrare che è davvero lei? Ad esempio, se chiedessi: "Se sei il vero Esra'a, cosa indossavo l'ultima volta che ci siamo incontrati?"

Risposta: Il problema è che un falso Esra'a potrebbe parlare con il vero Esra'a allo stesso tempo fingendo di essere te. La falsa Esra'a potrebbe porre alla vera Esra'a le domande che poni e inviarti immediatamente le sue vere risposte! Questo è chiamato attacco "Man-in-the-middle" o "machine-in-the-middle" . Non è comune, ma succede, ed è per questo che la verifica fuori banda è importante per la verifica delle chiavi.

Due persone in possesso di smartphone. La persona a sinistra (il mittente) invia la propria impronta digitale della chiave pubblica tramite chat. Prima che la persona a destra (il destinatario) riceva il messaggio, un cattivo attore (l'uomo nel mezzo) intercetta il messaggio del mittente, modifica alcuni caratteri e numeri dell'impronta digitale e invia una chiave pubblica dall'aspetto simile impronta digitale al ricevitore. Sulla destra c'è una vista del telefono del destinatario. Il messaggio sembra provenire dal mittente originale, ma in realtà è il messaggio falso e corrotto della persona nel mezzo.

Domanda : Cosa succede se sono sicuro di parlare con la persona giusta? Devo ancora verificare le chiavi?

Risposta : Supponiamo che tu abbia ricevuto le tue chiavi da una fonte che ritieni affidabile (come un amico comune). Anche se sei assolutamente sicuro di parlare con la persona giusta, è comunque consigliabile verificare le chiavi. Il processo può essere rassicurante e mostra che entrambi prendi sul serio la sicurezza dei tuoi messaggi.

Domanda : Quando devo verificare le chiavi?

Risposta : Dovresti verificare le chiavi quando usi un nuovo strumento di messaggistica per comunicare o quando le chiavi di qualcuno con cui comunichi cambiano. Di seguito sono riportati alcuni motivi per cui le chiavi di una persona potrebbero cambiare:

  • Un utente PGP potrebbe impostare la scadenza delle vecchie chiavi.
  • Le app di messaggistica del telefono spesso legano una chiave a un telefono particolare, quindi se un utente acquista un nuovo telefono, potrebbe essere necessario utilizzare una nuova chiave.
  • A volte le persone perdono le chiavi o dimenticano le password che usano per proteggere le proprie chiavi. Quando vedi qualcuno che usa una nuova chiave per la prima volta, dovresti verificarla.

Allora, come potremmo controllare queste chiavi?

Verifica chiavi fuori banda

Le chiavi di crittografia sono insiemi di numeri molto lunghi, il che li rende difficili da leggere ad alta voce e controllare manualmente. Per semplificare la verifica della chiave , il software di comunicazione può mostrarti una "impronta digitale" o un "numero di sicurezza", in base alla chiave , che è più breve e più facile da controllare. Le impronte digitali possono essere un numero più piccolo, un insieme di parole comuni o anche un elemento grafico o un'immagine.

Per verificare le chiavi, molto probabilmente il tuo contatto leggerà o ti mostrerà l'impronta digitale della sua chiave, mentre tu la confronti con l'impronta digitale della chiave che hai per loro sul tuo dispositivo. Dopo aver verificato la chiave del tuo contatto, possono verificare la tua chiave chiedendoti di leggere o mostrare loro l'impronta digitale della tua chiave mentre la confrontano con la copia sul loro dispositivo. Una volta che entrambi saprete di avere le chiavi giuste, potrete comunicare in modo più sicuro.

Esistono diversi modi per verificare le chiavi fuori banda. Ecco i metodi più comuni:

  1. Verifica delle chiavi di persona, oppure
  2. Verifica delle chiavi su un supporto diverso da quello su cui stai comunicando.

Verifica chiavi di persona

La verifica delle chiavi di persona è il metodo più ideale. Questo perché è più facile confermare che qualcuno è chi dice di essere quando sei faccia a faccia con lui piuttosto che, ad esempio, quando stai chattando con lui tramite SMS, e-mail o chat sui social media (dove impersonificazione e tentativi di phishing sono più facili).

Di persona, hai la tua impronta digitale della chiave pubblica disponibile e il tuo amico ricontrolla che ogni singolo carattere della tua impronta digitale della chiave pubblica corrisponda a quello che ha per la tua impronta digitale della chiave pubblica. È un po' noioso, ma vale davvero la pena farlo. Il metodo di persona potrebbe verificarsi quando le persone si scambiano biglietti da visita con le impronte digitali della chiave pubblica o quando i colleghi si vedono a una riunione .

Ogni app di messaggistica crittografata end-to-end è diversa e alcune forniscono modi alternativi per controllare le impronte delle chiavi. Attualmente, non esiste un termine universale per come viene chiamata la pratica e come viene implementata. Per un'app potresti dover leggere ogni carattere dell'impronta digitale e assicurarti che corrisponda a ciò che vedi sullo schermo rispetto allo schermo del tuo amico. In un altro, potresti scansionare un codice QR sul telefono di un'altra persona per "verificare" la sua chiave.

Immaginiamo che An Ming incontri la sua amica, Ghassan, a un evento. Decidono che è meglio comunicare tra loro utilizzando un'app di crittografia end-to-end sui loro smartphone, quindi installano Signal o WhatsApp. Sebbene An Ming e Ghassan siano fisicamente vicini l'uno all'altro, sfruttano le capacità di verifica chiave di queste app.

Due persone sollevano i loro smartphone con codici QR e una stringa di lettere e numeri casuali visibili sui loro schermi. Si verificano a vicenda le impronte delle chiavi scansionando il codice QR dell'altra persona con la fotocamera del telefono. Lucchetti e segni di spunta verdi fluttuano sopra i loro telefoni.

Verifica delle chiavi su un altro supporto

Se non riesci a verificare le chiavi di persona, puoi contattare il tuo amico utilizzando un modo diverso di comunicazione, un modo diverso da quello che stai utilizzando per verificare le chiavi.

Ad esempio, se stai cercando di verificare le chiavi PGP con qualcuno, puoi utilizzare il telefono o una chat OTR per farlo. Prova a verificare le chiavi su un supporto più sicuro di quello che stai cercando di proteggere (ad esempio attraverso un'altra comunicazione crittografata). Come mai? Perché sarebbe difficile per un avversario intercettare i tuoi messaggi da tutti questi diversi mezzi contemporaneamente.

Diciamo che An Ming e Ghassan decidono di utilizzare anche PGP. An Ming invia a Ghassan la sua impronta digitale della chiave pubblica PGP attraverso un altro mezzo, come Signal, assicurandosi che ogni personaggio corrisponda alla sua impronta digitale della chiave pubblica. Ghassan avrebbe quindi verificato che ogni carattere dell'impronta digitale della chiave pubblica di An Ming corrisponda alla chiave pubblica che ha in archivio per An Ming.

Un laptop aperto, con una chiave pubblica PGP e 10 impronte digitali a blocchi di quattro lettere e numeri casuali in ogni blocco. È abbinato a una faccia felice. A destra, un secondo metodo di comunicazione crittografato: un telefono aperto all'app di messaggistica crittografata Signal, mostrata con la stessa faccina felice e lo stesso carattere e numero impostati per l'impronta digitale a 10 blocchi.

Indipendentemente dall'app che utilizzi, sarai sempre in grado di localizzare sia la tua chiave che la chiave del tuo interlocutore.

Sebbene la posizione della chiave possa variare in base all'app, i metodi di verifica della chiave rimangono all'incirca gli stessi. Puoi leggere l'impronta digitale della tua chiave ad alta voce (se sei faccia a faccia o usando il telefono) oppure puoi copiarla e incollarla in un programma di comunicazione, ma qualunque cosa tu scelga, è importante controllare ogni singola lettera e numero .

Infine, molte di queste app di crittografia end-to-end indicano se le chiavi cambiano . Come accennato in precedenza, è importante prestare attenzione quando cambiano le chiavi dei tuoi amici: assicurati di verificare che si tratti di un cambiamento previsto con loro. Puoi farlo di persona o su un altro mezzo. Ad esempio, alcune persone inviano un messaggio ai loro amici quando stanno per ricevere un nuovo telefono in modo che i loro amici non siano sorpresi da una nuova notifica chiave.

Avatar

Verifica le chiavi con uno dei tuoi amici. Per informazioni su come verificare le chiavi in ​​un'app specifica, consulta la guida pratica di tale app.

Web of Trust di PGP e altri ausili per la verifica della chiave

La verifica della chiave fuori banda può essere difficile da organizzare, soprattutto se hai molti contatti. Anche se è sempre una buona idea, alcuni strumenti possono aiutarti a darti forti indizi che stai usando la chiave giusta.

PGP ti consente di firmare le chiavi di altre persone, il che significa che garantisci ufficialmente che questa chiave appartiene davvero alla persona da cui dice di provenire. Gli utenti PGP possono incontrarsi alle feste di firma delle chiavi (è come una festa di networking, in cui presenti i tuoi amici ad altri amici), dove controllano le identità reciproche e quindi firmano le loro chiavi. Il tuo software PGP può decidere se fidarti di una chiave in base a quante persone l'hanno firmata e se ti fidi già di quei firmatari. Questa rete di utenti PGP, tutti verificanti e garantiti l'uno per l'altro, è chiamata "la rete della fiducia". La rete della fiducia ti aiuta a valutare la validità delle nuove chiavi, ma è come ricevere una raccomandazione da un amico: non c'è niente di meglio che controllare tu stesso la persona.

Grazie al web of trust, PGP ti consente anche di scaricare chiavi per nuovi contatti dai keyserver PGP. Il tuo software può caricare la tua chiave, legata al tuo indirizzo e-mail su un server di chiavi. Quindi qualsiasi utente PGP può chiedere ai keyserver la chiave giusta per un particolare indirizzo email.

Non c'è niente che impedisca ai malintenzionati di caricare chiavi sbagliate per un indirizzo e-mail o un'identità sui server delle chiavi, in effetti, questo è successo in passato, ma se una chiave è firmata come valida da molte persone che conosci, è più probabile che lo sia vero. Anche in questo caso, se ottieni una chiave da un server delle chiavi, è meglio verificarla direttamente con l'utente, o di persona, il prima possibile.

Avatar

Un cattivo attore potrebbe creare e caricare una chiave la cui impronta digitale è quasi, ma non del tutto, la stessa delle chiavi reali dei server delle chiavi. Ecco perché dovresti controllare attentamente ogni cifra di un'impronta digitale!

Alcuni servizi, come Keybase.io, consentono agli utenti di confermare la validità di una chiave consentendo ai propri utenti di dimostrare la propria identità utilizzando i social media. Questi servizi dimostrano che la persona che utilizza una determinata chiave è anche la persona che gestisce un determinato account Twitter o Facebook. Ancora una volta, aiuta a far capire che una chiave è quella giusta da usare, ma verifica di persona o direttamente per essere assolutamente sicuro!

Per ulteriori informazioni sulle chiavi pubbliche e sul funzionamento della verifica delle chiavi, consulta le nostre guide all'autodifesa della sorveglianza come funzionano i sistemi di crittografia a chiave pubblica? e concetti chiave nella crittografia.