Come funziona la crittografia end-to-end con il web di whatsapp?

49

Da oggi ho notato che whatsapp usa la crittografia end-to-end. Tuttavia, anche web.whatsapp.com funziona ancora. WhatsApp stabilisce una connessione con il mio telefono per mantenere le cose sicure?

    
posta Mehdi Nellen 05.04.2016 - 19:29
fonte

1 risposta

36

Corretto: il Web-Client sta stabilendo una connessione sicura al telefono. I messaggi inviati tramite WhatsApp Web sono crittografati dal Web Client, decrittografati dal telefono, quindi crittografati per adattarsi allo schema end-to-end e quindi inviati al destinatario. La stessa cosa è il contrario.

Non conosco i dettagli sul protocollo, ma questo è quello che sospetto (o come lo implementerei):

  • All'apertura iniziale di WhatsApp Web viene generata una coppia di chiavi per la crittografia / firma asimmetrica (e memorizzata nella memoria locale del browser . Probabilmente RSA o ECC.
  • Scansionando il codice QR si scambia l'impronta digitale della suddetta chiave pubblica dei keypair. Questo stabilisce la fiducia tra l'installazione del telefono e del browser: il fatto che l'utente abbia scansionato il codice QR implica che l'utente si fida del browser.
  • Quando si utilizza WhatsApp Web, viene stabilita una connessione TLS al telefono (probabilmente con proxy di WhatsApp per superare i problemi di Firewall e NAT). WhatsApp Web esegue l'autenticazione verso il telefono utilizzando la coppia di chiavi inizialmente generata (facendo così affidamento sul trust stabilito in precedenza).
    • La connessione tra il browser e il telefono è completa TLS: autenticazione e PFS inclusi.
risposta data 05.04.2016 - 19:34
fonte

Leggi altre domande sui tag