Che cos’è la crittografia end-to-end?

By | Dicembre 30, 2021
crittografia end-to-end

La crittografia end-to-end è un’importante funzione di sicurezza, ma come funziona esattamente? Dato che utilizziamo molto la corrispondenza digitale nella nostra vita quotidiana, l’argomento caldo della “crittografia end-to-end” appare ogni tanto nelle notizie. Ma cos’è la crittografia end-to-end e in cosa differisce dagli altri tipi di crittografia?


Analizziamo questo metodo di crittografia e vediamo perché è così importante.

Che cos’è la “crittografia end-to-end”?

La crittografia end-to-end è un modo per proteggere le comunicazioni da occhi indiscreti. Se invii un messaggio su Internet a qualcun altro senza un’adeguata crittografia, le persone che osservano la tua connessione possono vedere cosa stai inviando. Questo è noto come attacco man-in-the-middle.

Pertanto, i servizi di messaggistica a volte utilizzano la crittografia end-to-end (E2EE) per proteggere i propri utenti. Alcuni dei migliori servizi di messaggistica istantanea utilizzano E2EE per impedire alle persone di curiosare dei propri utenti.

Per ottenere ciò, il servizio implementa un metodo che consente agli utenti di crittografare automaticamente i propri messaggi. Prima che qualcuno invii un messaggio, lo crittografa utilizzando la cosiddetta “chiave”. Questa chiave rende il messaggio illeggibile, quindi i ficcanaso non possono vedere cosa dice.

Quando il messaggio arriva sul dispositivo del destinatario, l’app utilizza una chiave per sbrogliare il messaggio in ciò che è stato originariamente detto. Ora il destinatario può leggere cosa diceva il messaggio e gli hacker sono tenuti fuori dall’equazione.

Come abilitare e disabilitare la crittografia end-to-end in Zoom

In che modo E2EE differisce dagli altri tipi di crittografia?

Potresti essere confuso su come questo metodo di crittografia sia diverso dagli altri metodi. In verità, i meccanismi reali alla base di E2EE sono simili ad altri tipi di crittografia. La differenza principale, tuttavia, è la risposta a questa domanda: chi detiene le chiavi di crittografia?

Quando utilizzi un servizio con crittografia diversa da E2EE, puoi inviare messaggi al tuo amico utilizzando una chiave fornita dal servizio. Questo è ottimo per impedire agli hacker di sbirciare nelle tue comunicazioni, ma significa che le persone che gestiscono il servizio che stai utilizzando possono tecnicamente leggere ciò che invii.

È come se usassi un’app di messaggistica per parlare con il tuo amico e gli sviluppatori che hanno progettato l’app ti dicessero di usare la chiave “APPLE” per crittografare i tuoi dati. Certo, gli hacker casuali non possono leggere quello che dici, ma gli sviluppatori sanno che stai usando APPLE come chiave. Ciò significa che possono decifrare i tuoi messaggi mentre li invii e leggere tutto ciò che dici.

Quando un’azienda utilizza questo tipo di crittografia, si trasforma in una questione di fiducia. Credi che l’azienda che gestisce l’app di messaggistica chiuda un occhio e ti lasci parlare in privato? O useranno la chiave APPLE per aprire la tua sicurezza e leggere tutti i dettagli succosi?

Questo non è un problema per E2EE. Come ci si potrebbe aspettare dal “end-to-end” nel suo nome, E2EE funziona consentendo a ciascun utente di generare le proprie chiavi di crittografia sul proprio dispositivo. In questo modo, nessuno, nemmeno gli sviluppatori di app di messaggistica, può decrittografare i messaggi senza prendere fisicamente il tuo dispositivo.

Questo è il motivo per cui E2EE è così popolare e perché alcune app di posta elettronica sicure lo utilizzano. Gli utenti non hanno bisogno di fidarsi di un’azienda senza volto. Hanno tutto ciò di cui hanno bisogno per eseguire la crittografia da soli.

Ci sono alcuni modi per ottenere ciò, ma la “crittografia a chiave pubblica” e lo “scambio di chiavi Diffie-Hellman” sono alcuni dei metodi più noti.

Cos’è la crittografia? Cryptanalysis, RC4, CrypTool

Raggiungere E2EE con la crittografia a chiave pubblica

Quando un programma utilizza la crittografia a chiave pubblica, ogni utente del servizio riceve due chiavi. La prima è la loro chiave pubblica, che può essere vista e distribuita liberamente a chiunque. Tuttavia, vale la pena notare che la chiave pubblica può solo crittografare i dati; non può essere utilizzato per decifrarlo.

Ogni utente riceve anche una chiave privata, che non viene mai condivisa e risiede permanentemente sul proprio dispositivo. La chiave privata è progettata in modo che la chiave privata possa decrittografare qualsiasi dato crittografato utilizzando la chiave pubblica. Tuttavia, dovresti anche notare che la chiave privata può solo decrittografare i dati; non è mai usato per crittografarlo.

Quando due persone vogliono parlare tra loro, si scambiano le chiavi pubbliche. Quindi usano la chiave pubblica dell’altra persona per crittografare i loro messaggi. Una volta che una chiave pubblica lo crittografa, può essere decifrato correttamente solo dalla chiave privata del destinatario, che non lascia mai il suo dispositivo.

Un esempio non tecnico di crittografia a chiave pubblica

Per immaginare meglio come funziona questo sistema, immagina che Bob e Alice vogliano parlare tra loro. Per raggiungere questo obiettivo, acquistano una cassetta di sicurezza da una società di sicurezza un po’ eccentrica.

Ecco come funziona.

Una cassetta di sicurezza può essere strisciata con una carta “lucchetto” o “sblocca” per bloccarla o sbloccarla. Ogni utente ha una carta di “blocco” e “sblocco” univoca da utilizzare sulla cassetta di sicurezza. Inoltre, puoi ordinare una copia della carta “sblocca” di una persona specifica dall’azienda, ma non puoi mai ordinare la carta “sblocca” di qualcuno.

Bob ha due carte: BOB LOCK e BOB UNLOCK. Alice ha anche il suo set di carte, ALICE LOCK e ALICE UNLOCK.

Se Bob chiude la cassetta di sicurezza e fa scorrere la carta BOB LOCK, la cassetta di sicurezza si bloccherà da sola. Rimarrà bloccato, anche se Bob passa la carta BOB LOCK una seconda volta. L’unico modo per sbloccarlo è scorrere BOB UNLOCK. Le carte di sblocco di nessun’altra persona funzioneranno.

Ora, diciamo che Bob vuole inviare un messaggio ad Alice. Ha bisogno di ordinare una copia di una delle tessere di blocco di Alice dall’azienda lockbox per farlo. L’azienda lo consente perché non è possibile utilizzare una carta di sicurezza per entrare in una cassetta di sicurezza. Puoi usarlo solo per bloccarne uno.

Bob ordina una carta ALICE LOCK. Quindi scrive una lettera ad Alice, la mette nella cassetta di sicurezza e poi fa scorrere la carta ALICE LOCK. La cassetta di sicurezza è ben chiusa e può essere sbloccata solo se viene strisciata una carta ALICE UNLOCK. La carta di sblocco di Bob è inutile.

Ora Bob può inviare la cassetta di sicurezza ad Alice. Anche se qualcuno interessato alla lettera ordinasse la propria carta ALICE LOCK e dirottasse la scatola, non potrebbe aprirla. Solo una carta ALICE UNLOCK può sbloccarlo e Alice è l’unico proprietario di tale carta.

Alice riceve la cassetta di sicurezza da Bob, usa la sua carta ALICE UNLOCK per aprirla e legge la lettera. Se Alice desidera restituire un messaggio, può ordinare e utilizzare una carta BOB LOCK per restituire la cassetta di sicurezza. Ora, solo la carta BOB UNLOCK può aprirla, cosa che ha solo Bob.

Come crittografare Android, la guida completa

Raggiungere E2EE con lo scambio di chiavi Diffie-Hellman

Se due persone vogliono ottenere E2EE su una rete non sicura, c’è un modo per condividere le chiavi di crittografia in bella vista e non essere hackerate.

Per fare ciò, entrambe le parti prima concordano su una chiave condivisa. Questa chiave è apertamente condivisa e il sistema di scambio di chiavi Diffie-Hellman presuppone che gli hacker scopriranno qual è questa chiave.

Tuttavia, entrambe le parti generano quindi una chiave privata sui propri dispositivi. Quindi aggiungono questa chiave privata a quella condivisa, quindi inviano la loro chiave combinata al destinatario. Quando ricevono la chiave combinata del destinatario, la aggiungono a quella privata per ottenere una chiave segreta condivisa da utilizzare per la crittografia.

Un esempio non tecnico dello scambio di chiavi Diffie-Hellman

Se torniamo a Bob e Alice, diciamo che usano questa tecnica per condividere le informazioni. Innanzitutto, entrambi concordano su un numero condiviso, diciamo il numero tre. Questo viene fatto pubblicamente, quindi un ficcanaso può teoricamente origliare questo numero.

Quindi Bob e Alice scelgono un numero in privato. Diciamo che Bob sceglie il numero otto e Alice sceglie il cinque. Quindi, aggiungono il numero scelto al numero condiviso concordato e danno all’altra persona il risultato.

  • Bob prende la chiave condivisa (3) e la sua chiave privata (8) e ottiene 11 (8+3). Dà il numero 11 ad Alice.
  • Alice prende la chiave condivisa (3) e la sua chiave privata (5) e ottiene 8 (5+3). Dà il numero 8 a Bob.

Questa condivisione viene eseguita anche in pubblico, quindi, ancora una volta, un ficcanaso può potenzialmente vedere che Bob ha condiviso 11 e Alice ha condiviso 8.

Una volta effettuata la condivisione, ciascuna parte aggiunge ciò che ha ricevuto con il proprio numero privato. Ciò si traduce in entrambe le parti che ottengono lo stesso numero a causa di come una somma con la sola aggiunta non si preoccupa dell’ordine.

  • Bob riceve il numero combinato di Alice (8), vi aggiunge il suo numero privato (8) e ottiene 16. (8+8)
  • Alice riceve il numero combinato di Bob (11), vi aggiunge il proprio numero privato (5) e ottiene 16. (11+5)
  • Entrambe le parti possono crittografare i messaggi utilizzando la chiave “16”, di cui nessuno al di fuori di Bob e Alice è a conoscenza.

Ovviamente, in questo esempio, un hacker potrebbe decifrare questo codice molto facilmente. Tutto ciò di cui hanno bisogno è la chiave condivisa, la chiave inviata da Bob e la chiave inviata da Alice, che vengono inviate in pieno giorno.

Tuttavia, i programmatori che implementano lo scambio di chiavi Diffie-Hellman implementeranno equazioni complesse difficili da decodificare per gli hacker e daranno comunque lo stesso risultato indipendentemente dall’ordine in cui vengono inseriti i numeri.

In questo modo, gli hacker rimangono perplessi su ciò che ha generato i numeri mentre Bob e Alice chattano in sicurezza utilizzando la chiave condivisa.

Come crittografare una chiave USB e proteggere i tuoi dati

Invio di dati in modo sicuro utilizzando E2EE

Se non vuoi fidarti delle aziende che non sbirciano i tuoi dati, non devi farlo. Utilizzando i metodi E2EE, nessuno può sbirciare i tuoi messaggi finché non arrivano sani e salvi a destinazione.

Se tutto questo parlare di crittografia ti ha fatto venire voglia di rafforzare la sicurezza del tuo computer, sapevi che ci sono diversi modi per crittografare la tua vita quotidiana?


Author: Presi Fulvio

Mi piacciono gli smartphone, computer e videogiochi. Come hobby scrivo per GuideSmartPhone articoli basati principalmente sulla tecnologia. Spero di esservi stato d'aiuto!