In questa guida proviamo a scoprire cos’è la crittografia end-to-end utilizzata da vari servizi come WhatsApp e Signal e in che modo ti protegge da occhi indiscreti.
La semplice risposta è che quando scrivi un messaggio sul tuo telefono Android o su un altro dispositivo, l’app codifica ogni messaggio prima che venga inviato. Solo la persona che riceve il messaggio può decodificarlo. Anche se un’app di messaggistica archivia il tuo messaggio criptato sui suoi server, non ha modo di leggere il tuo messaggio. L’unica persona che può decodificare il messaggio criptato (almeno in teoria) è la persona a cui hai inviato il messaggio.
Chiavi pubbliche e private della crittografia end-to-end
Ogni persona che utilizza la crittografia end-to-end ha due numeri chiamati “chiavi”. Hanno una “chiave pubblica” che chiunque può vedere, insieme a una “chiave privata” che rimane segreta a tutti, inclusa l’app. La chiave pubblica viene utilizzata per codificare un messaggio e questo messaggio codificato può essere decodificato solo utilizzando la chiave privata corrispondente.
Affinché qualcuno ti invii un messaggio crittografato, il suo telefono utilizza la tua chiave pubblica per codificare il messaggio automaticamente. Quindi, invia una serie incomprensibile di parole senza senso su Internet, che il tuo telefono decodifica utilizzando la tua chiave privata.
La matematica fantasiosa dietro la crittografia end-to-end Il trucco dell’intero processo è questo: capire la chiave privata di qualcuno è quasi impossibile usando la tecnologia attuale. La generazione delle due chiavi implica l’utilizzo di quella che viene chiamata una “funzione unidirezionale”. Questa funzione unidirezionale è un calcolo che è facile da eseguire per un computer in un senso ma richiede un’enorme quantità di potenza di calcolo per ricavarne l’operazione inversa.
Quando queste funzioni vengono eseguite su numeri sufficientemente grandi, come una chiave privata di 64 cifre, l’inversione della funzione diventa quasi impossibile.
La crittografia end-to-end modifica la chiave privata costantemente
Una volta che qualcuno scopre questa chiave privata (per fortuna, enormi quantità di tentativi attraverso attacchi forza bruta o convincendo l’utente a condividere la propria chiave), decodificare un messaggio è semplice.
Per risolvere questo problema, molte app che utilizzano la crittografia end-to-end modificano costantemente le chiavi pubbliche e private di un utente. In questo modo, il rilevamento di una singola chiave privata comporta solo la decodifica di alcuni messaggi. Tutto il resto rimane incomprensibile.
La crittografia E2EE non è perfetta
Tutta la crittografia del mondo non impedisce a qualcuno di prendere il tuo telefono, aprire l’app con la tua password e leggere tutti i tuoi messaggi. Inoltre, non impedisce a un’azienda che afferma di fornire la crittografia di installare una backdoor che consente a estranei di leggere i tuoi messaggi.