Come funziona la crittografia dei messaggi WhatsApp?
Il mondo è stupito dalla notizia che "Whatsapp ha abilitato la crittografia End-to-End" ma pochissime persone sanno come funziona tecnicamente. Esploriamo cosa significa questo per la tua privacy.
Prima di tutto vediamo come funziona la crittografia in generale,
PlainText (compresi testo, immagini, video, e tutti gli altri tipi di dati) sono dati non crittografati e CipherText è quello crittografato.
Il TestoPlain è criptato usando la Chiave Segreta per produrre il TestoCifrato
TestoPlain + Chiave Segreta = TestoCifrato (testo illeggibile criptato)
Ora per ottenere il testo originale, CipherText viene decriptato usando la stessa chiave segreta per recuperare PlainText
CipherText + Secret Key = PlainText (Original Text)
Il problema con questa tecnica è che la stessa chiave usata per criptare e decriptare i dati, quindi come fai a trasferire la tua chiave segreta ai destinatari in modo che possano decriptare i tuoi dati (se li trasferisci in rete? qualcuno ruberà la tua chiave e decifrerà i tuoi messaggi) quindi qual è la soluzione?
Usa due chiavi invece di una. Una chiave cifrerà i dati e l'altra li decifrerà. Queste due chiavi sono matematicamente così legate l'una all'altra che una chiave può criptare il testo in chiaro in un testo cifrato che può essere decifrato solo dall'altra corrispondente.
Quindi l'idea è di tenere una chiave per noi stessi privata (chiamata chiave privata) e distribuire la chiave corrispondente a chiunque voglia comunicare con te (chiamata chiave pubblica)
Qualcuno (diciamo Bob) che vuole inviare un messaggio ad Alice lo cripterà usando la chiave pubblica di Alice, che nessun altro può decriptare perché nessun altro oltre ad Alice ha la sua chiave privata (ricordi che poco sopra abbiamo detto che solo la chiave privata corrispondente può decriptare?)
Le tue chiavi private e pubbliche sono generate sul tuo cellulare quando installi (o aggiorni) App. Quindi cosa significa end-2-end?
Come la tua chiave privata è generata sul tuo cellulare, Whatsapp (ISP, programma di sorveglianza o chiunque altro) non hanno modo di decifrare i tuoi messaggi perché nessun altro ha accesso alla tua chiave privata (la tua chiave privata non va mai in rete)
Cos'è la verifica delle impronte digitali?
Quando controlli il profilo del tuo contatto ti dà informazioni sulla chiave che stai usando per criptare i messaggi.
Il numero di 60 cifre mostrato sopra è una forma più breve di aggiunta della tua chiave pubblica e di quella del tuo contatto. Ricorda, tu usi la chiave pubblica del tuo contatto per criptare il messaggio in uscita e il tuo contatto usa la sua chiave privata per decriptare e viceversa.
Scansionare il codice QR o confrontare questi numeri a 60 cifre è un modo per verificare e assicurarsi che stai usando la chiave pubblica corretta del tuo contatto e nessuno (server whatsapp o altri) ti sta copiando con la chiave pubblica sbagliata.
Nota: La crittografia è un argomento molto ampio e ci sono molti altri fattori e concetti importanti da seguire. Questo esempio è solo la base per spiegarlo in termini profani.
Fonte - Come funziona la crittografia end-to-end in WhatsApp?