whatsapp-crittografia-end-to-end

Editoriale: WhatsApp: backdoor o no? Di chi possiamo fidarci?

Giuseppe Tripodi - Spoiler: di nessuno. Ma certamente meglio WhatsApp di tanto altro. Proviamo a fare chiarezza sulla vicenda Backdoor, l'articolo del Guardian e la recente risposta di 70 esperti di crittografia.

Negli ultimi giorni, WhatsApp è stato al centro di una lunga polemica legata alla sicurezza delle chat, anche considerando che la nota app di messaggistica utilizza un sistema di criptazione end-to-end che, per definizione, dovrebbe garantire che nessuno possa accedere alle conversazioni, eccetto chi invia il messaggio e chi lo riceve. Tuttavia, di recente molti hanno parlato di una backdoor, che permetterebbe a WhatsApp (e potenzialmente anche a malintenzionati, governi e quant’altro) di accedere alle chat di chiunque. Ma per spiegare l’intera vicenda e la recente risposta di oltre 70 esperti di crittografia dobbiamo partire dall’inizio.

Il 13 gennaio il famoso quotidiano inglese The Guardian ha pubblicato un articolo in cui sosteneva le tesi del ricercatore di sicurezza e crittografo Tobias Boelter, che afferma proprio che in WhatsApp esiste una backdoor che permette a terzi di accedere alle chat degli utenti. Precisiamo che la prima versione dell’articolo apparsa online titolava esplicitamente WhatsApp backdoor allows snooping on encrypted messages.

Dopo la pubblicazione, la stampa di tutto il mondo (inclusi noi) ha riportato la notizia, che però è stata fortemente criticata da diversi esperti di crittografia: in particolare, il 20 gennaio, Zeynep Tufekci, professoressa associata dell’Università della Carolina del Nord a Chapel Hill ed esperta di sicurezza informatica, ha pubblicato una lettera aperta firmata da oltre 70 esperti di crittografia in cui si chiede al Guardian di rivedere il proprio articolo.

Incipit del post pubblicato da Moxie Marlinspike, fondatore di Open Whisper System, subito dopo la pubblicazione dell'articolo del Guardian
Incipit del post pubblicato da Moxie Marlinspike, fondatore di Open Whisper System, subito dopo la pubblicazione dell’articolo del Guardian

Ma quindi questa backdoor esiste o no? La risposta è nì.Per cercare di far chiarezza sulla questione, spieghiamo ancora una volta il funzionamento delle chat criptate di WhatsApp.

L’app di messaggistica istantanea più famosa al mondo implementa il protocollo open source Signal, realizzato da Open Whisper Systems, gruppo no profit che sviluppa l’omonima app Signal e si occupa proprio di “rendere le comunicazioni private semplici”. Il protocollo (e l’omonima app) rappresentano uno dei massimi standard in termini di sicurezza informatica, non presentano falle conosciute e sono stati raccomandati anche dal famoso whistleblower Edward Snowden.

Tuttavia, l’implementazione eseguita da WhatsApp è diversa rispetto a quella dell’app Signal: la criptazione end-to-end si basa sullo scambio di coppie di chiavi di sicurezza (private e pubbliche), che vengono salvate localmente sul dispositivo e sono necessaria per decifrare i messaggi. Queste coppie di chiavi sono quindi legate allo smartphone e, per questo motivo, possono variare, ad esempio quando un utente cambia smartphone o reinstalla l’applicazione. Ed è qui che arriva il “problema”.

Diagramma che mostra la criptazione di WhatsApp. Immagine via Wired
Diagramma che mostra come funziona la criptazione di WhatsApp. Immagine via Wired

Quando chattiamo con qualcuno, le chiavi di sicurezza sono la garanzia che le chat scambiate non vengano lette da terzi: ma se le chiavi di sicurezza cambiano? In questo caso, nell’app Signal, chi invia un messaggio deve accettare la nuova coppia di chiavi del contatto che ha variato le proprie chiavi; inoltre, può accadere che un messaggio inviato quando il contatto non ha ancora generato delle chiavi di sicurezza vada semplicemente perso.

Quando WhatsApp ha implementato il protocollo Signal, ovviamente, non poteva permettersi il rischio di perdere dei messaggi quando un utente cambia smartphone o reinstalla l’app: per questo, ha inserito la possibilità di forzare da remoto la creazione di nuove chiavi di sicurezza e tenere in sospeso i messaggi sui propri server.

In sostanza, se A e B utilizzano WhatsApp, quel che può avvenire è questo:

  1. A e B installano WhatsApp e, quando iniziano una conversazione, si scambiano delle chiavi di sicurezza: quindi chattano allegramente, certi che nessuno potrà leggere quel che si dicono.
  2. Per qualche ragione (ad esempio cambio di smartphone), B perde le proprie chiavi di sicurezza; la nuova coppia di chiavi verrà generata solo dopo aver configurato nuovamente WhatsApp
  3. A invia un messaggio a B, che però non può essere ricevuto perché B non ha ancora reinstallato WhatsApp
  4. Il messaggio in questione viene inoltrato ai server di WhatsApp, dove rimane in sospeso: qui, in teoria, chi possiede la le chiavi di sicurezza di B, può decifrare e leggere il messaggio
  5. B reinstalla WhatsApp: il server invia il messaggio in sospeso a B, che tuttavia non può essere decifrato, dato che le chiavi di sicurezza di B sono cambiate. Lo smartphone di B, quindi, allega la nuova chiave di sicurezza pubblica al messaggio e lo rispedisce ad A
  6. Lo smartphone di A apprende la nuova chiave di sicurezza pubblica di B, cripta nuovamente il messaggio e lo invia di nuovo a B, che finalmente potrà decifrarlo e leggerlo

Per una specifica scelta di progettazione, WhatsApp ha quindi fatto in modo che i messaggi che non possono essere recapitati vengano conservati sul proprio server; inoltre, quando un utente genera una nuova coppia di chiavi di sicurezza (punto 5), il tutto avviene in maniera trasparente, senza dare comunicazioni agli utenti (a differenza di Signal, dove chi ha inviato il messaggio deve accettare la nuova coppia di chiavi, magari dopo aver verificato l’identità del proprio interlocutore in altri modi).

Su Signal, quando viene cambiata la chiave di sicurezza è necessario accettarla nuovamente
Su Signal, quando viene cambiata la chiave di sicurezza è necessario accettarla nuovamente

Ci siamo cimentati in questa lunga spiegazione per cercare di spiegare al meglio la situazione, quindi adesso proviamo a rispondere alle domande.

Esiste la possibilità, seppur estremamente improbabile, che WhatsApp possa possa “intercettare” i messaggi di un utente, anche considerando la possibilità di forzare da remoto la generazione di nuove chiavi di sicurezza? Sì, esiste questa possibilità, ma è uno scenario decisamente remoto e difficile da realizzare. Inoltre, si può (parzialmente) risolvere il problema andando su Impostazioni > Account > Sicurezza e attivare Mostra notifiche di sicurezza: abilitando questa impostazione, l’utente che invia un messaggio riceverà una notifica se il destinatario ha cambiato chiavi di sicurezza (anche se il messaggio verrà recapitato comunque).

chiave-di-sicurezza-cambiata-whatsapp

Quanto detto finora si può considerare una backdoor? No (ma dipende anche dai pregiudizi di ogni utente). Per definizione, infatti, una backdoor è appunto un accesso secondario, lasciato deliberatamente aperto affinché qualcuno possa entrarci. Ritenere che un’implementazione come quella di WhatsApp sia una backdoor significa credere che l’azienda abbia consapevolmente deciso di tenersi una via secondaria per accedere ai messaggi.

È una linea di pensiero legittima (anche se complottista), ma l’accusa mossa da Zeynep Tufekci e gli altri esperti di sicurezza al Guardian è che, con un tono tanto allarmista, la stampa generalista può allontanare gli utenti da WhatsApp (che, tutto sommato, è decisamente più sicura di altri client) e spingerli magari verso forme di comunicazione estremamente più fragili, come ad esempio gli SMS.

Concludo con una nota del tutto personale: non nutro una particolare simpatia per WhatsApp, ma lo utilizzo comunque tutti i giorni in maniera tranquilla e sono ragionevolmente sicuro che nessuno leggerà ciò che non voglio venga letto. E, se proprio volessi scambiare dei messaggi particolarmente importanti che non vorrei mai finissero in mani sbagliate (i dati della mia carta di credito, ad esempio) utilizzerei Signal, email con cifratura PGP, chat segrete di Telegram con autodistruzione. Ma anche in quest’ultimo caso ci sarebbe da fare un ulteriore discorso.

Non è solo una questione di privacy, ma di fiducia.

A tal proposito, è molto interessante la riflessione di Jon Evans su TechCrunch relativa alla vicenda. Secondo Evans, non si tratta solo di privacy, si tratta di fiducia: per quanti strati di sicurezza si voglia aggiungere, prima o poi bisognerà fidarsi di qualcuno. Volete utilizzare Signal? Benissimo, ottima scelta perché anche lo stesso Snowden l’ha consigliato. Ma avete letto in prima persona il codice sorgente e siete assolutamente sicuri che non ci siano falle? O vi fidate di chi lo ha fatto per voi? E anche se avete letto l’intero codice sorgente, potete essere certi al 100% che Google o Apple non abbiano modificato l’apk/ipa che installate sul vostro smartphone, includendo linee di codice indesiderato? Preferite compilare l’apk da voi? E chi può assicurarvi che il compilatore che utilizzate non sia compromesso o che non abbiate qualche malware su PC che vanifichi i vostri tentativi?

Ovviamente quelle espresse finora sono iperboli, ma la morale è sempre quella: quando si parla di privacy online non si può mai essere certi al 100% di essere al sicuro e, “purtroppo”, si arriva sempre ad un livello dove ci si deve fidare di qualcuno che ne sa di più. Questa famosa vulnerabilità di WhatsApp che permetterebbe a terzi di intercettare i messaggi esiste? Sì, è innegabile. È una backdoor? Molto (molto!) probabilmente no, ma questo dovete sceglierlo voi. Soltanto, se decidete che WhatsApp è brutto e cattivo, state bene attenti a chi affiderete la vostra fiducia in futuro.

  • Pantheon

    Articolo molto interessante 🙂
    Ma visto che io uso parecchio telegram..Perché dici che si dovrebbe parlare a parte delle sue chat segrete ? Perché usa un protocollo proprietario ?

    • juza

      Beh usare un protocollo proprietario non è il massimo della trasparenza.

      • Pantheon

        Beh se dobbiamo dirla tutta WhatsApp è closed source..Potrebbero benissimo averlo implementato male il protocollo e2e nessuno può dirlo

      • Dario · 753 a.C. .

        Protocollo comunque opensource così come il client.

        Invece su WhatsApp vai a fiducia. Come verifichi come è stato implementato il protocollo e cosa fa il client?

        • djxkill

          hai ragione…
          idem, però per telegram come ben sai non è completamente open source.

          Il punto è sempre quello… ti fidi? si, no… bhè alla fine so fatti tuoi hehe.

          • Dario · 753 a.C. .

            Se usi le chat segrete non hai bisogno di leggere il codice che gira lato server ma solo quello lato client

          • djxkill

            bhè Telegram fu studiato per essere multipiattaforma, ma questo fattore se lo sono dimenticati per strada… Di fatti io sono sempre al pc e non posso mettermi con il cell in mano per avere la totale sicurezza… era doverso da parte di Telegram studiare un sistema per avere le chat segrete su tutte le piattaforme….

          • Dario · 753 a.C. .

            Infatti esistono proprio per questo chat segrete e chat cloud, dipende dalle tue esigenze. WhatsApp fa un miscuglio delle due che poi non sono ne luna e ne l’altra.

            Il fatto che le chat segrete non siano sincronizzate ti offre anche maggior sicurezza in caso di attacchi fisici sul dispositivo perché devi preoccuparti di tenere al sicuro solo il cellulare e non tutti i device della casa

          • djxkill

            E nuovamente non ci siamo…
            Le chat segrete non dico che devono essere per forza il continuo della vecchia chat, posso anche crearne due, una la sfrutto da pc e uno da smartphone… Quindi in tutto ciò Telegram pensa alla sicurezza ma si è dimenticata che è multipiattaforma e che doveva obbligatoriamente implementare ovunque l’end-to-end.

            Riguardo l’account, hai la possibilità di attivare la verifica a due passaggi e se pure dovessero bucare questa possibilità, con tentativi fasulli, telegram elimina in automatico tutto ciò che è presente.

          • Dario · 753 a.C. .

            Pensavo parlassi di sincronizzazione tra le chat segrete. Lo sviluppatore desktop ha spiegato su GitHub perché non ci sono, ma magari le metteranno, si evolve sempre così velocemente telegram.

            Per attacco fisico intendevo che sei Al pc dell’ufficio e te ne vai a prender il caffè lasciando il pc così. Il telefono te lo porti dietro il pc no

          • djxkill

            Io personalmente non ho approvato ciò che diceva lo sviluppatore, perchè so io le rotture che passo ogni volta per aprire una chat segreta hehehe.

            Vabbè basterebbe implementare un codice che si avvii in automatico o manualmente e che oscuri la schermata, così se lasci la postazione, nessuno può far niente 🙂

          • Dario · 753 a.C. .

            No ma quello lo dicevo io. Il dev parlava di aspetti tecnici ovvero che serve implementare prima una cache che su desktop non c’è. Su desktop quando apri il client si scaricano i messaggi e quando lo chiude si cancellano, quindi perderesti a ogni apertura e chiusura tutto non essendo in cloud

          • Le chat segrete non dico che devono essere per forza il continuo della vecchia chat, posso anche crearne due

            ti consiglio nuovamente di leggerti il mio messaggio in cui ho spiegato l’assenza della chat segreta su pc.
            è vero che io con te posso avviare chat segrete multiple, ma poter usare chat segrete anche da pc, vorrebbe dire dover gestire tra me e te, tutti i possibili casi:
            1) io da smartphone tu smartphone
            2) io pc tu smartphone
            3) io pc tu pc
            4) io smartphone tu pc
            (e se ampliamo il tutto anche per il tablet e magari per la versione web?? praticamente c’è un’enorme quantità di chat segrete solo tra me e te per tutti i vari dispositivi e app client, inoltre avresti una nuova coppia di chiavi anche per ogni OS, io uso sia linux che a volte windows, quindi il tutto verrebbe visto come 2 differenti PC e quindi aumenta ancora la quantità di conversazioni, capisci che diventa ingestibile)
            se poi io devo scrivere a te sulla chat segreta, dovrei sapere se in quel momento sei da pc o da smartphone quindi dovrei scegliere la conversazione giusta.
            sarebbe una cosa talmente caotica che non ne vale la pena.
            l’unica come ho detto, è implementare una sincronizzazione da smartphone a pc (come fa whatsapp per la sua versione pc) solo per le chat segrete, in questo modo la chat segreta è sempre unica e sempre la stessa (da smartphone a smartphone), però collegando lo smartphone a internet puoi avere la chat segreta anche su pc.

            ma implementare nativamente una chat segreta anche sulle versioni desktop (sia applicazione che web app) è un casino

          • Dario · 753 a.C. .

            Ma comunque io uso entrambe le chat a seconda dell’oggetto della discussione. Se devo cazzeggiare con sticker e gif non vedo perché non usare le chat cloud, se devono parlare di cose più riservate uso la
            Chat segreta

          • djxkill

            Ma pure io faccio così… il discorso è che si sono dimenticati la chat segreta per strada, io su pc non posso farlo… e non è giusto visto che il 90% del mio tempo lo passo li.

          • come ho scritto nel messaggio qua sopra… sarebbe un enorme casino implementare le chat segrete pure su pc, e il motivo l’ho scritto nel commento sopra… se ti interessa dagli un’occhiata

          • Giuseppe Tripodi

            A difesa di Telegram: è letteralmente *impossibile* avere criptazione end-to-end e client multipiattaforma insieme. La chat segreta *deve* rimanere vincolata al dispositivo da cui viene avviata.

          • credo che non sia stato implementato su pc perchè sarebbe un casino e probabilmente la maggior parte delle persone usano solo l’app mobile.
            pensa se io parlassi con te con una chat segreta entrambi da smartphone.
            poi io un giorno ti voglio scrivere da pc (e tu con smartphone) dovrei aprire una nuova chat segreta per poterti scrivere da pc a smartphone, se poi tu sei da pc e vuoi scrivermi devi aprirne una nuova, e se io sono da smartphone creiamo un’altra chat da tu da pc io da smartphone e se io poi voglio parlare con te da pc a pc, dovremmo aprirne un’altra ancora… insomma è un gran casino, poi sarebbe anche impossibile sapere in qualche chat devo scrivere, perchè se tu sei da pc allora devo scriverti nella conversazione che tu hai avviato da pc, se invece sei da smartphone devo scriverti in quella che hai avviato da smartphone, ma io non posso sapere cosa stai usando in questo momento.
            l’unica per le chat segrete sarebbe implementare una sincronizzazione con lo smartphone come fa whatsapp, in questo modo la chat segreta rimane sempre da cell a cell, però puoi vederla e scrivere pure da pc senza problemi di chat multiple anche da pc

    • Giuseppe Tripodi

      Sì, era una precisazione dovuta proprio perché Telegram utilizza un protocollo proprietario. In ogni caso, MTProto è open source (e, quindi, abbastanza verificabile) ma in passato è stato bucato.

      D’altra parte, in passato Durov ha accusato (più o meno velatamente) Moxie e gli altri di Open Whisper Systems di ricevere fondi da enti vicini al governo USA e di non aver concesso la licenza del loro protocollo ad un’app di messaggistica svizzera (di cui in questo momento mi sfugge il nome!)

      • djxkill

        Caro Giuseppe, complimenti per l’articolo.

        Però io sono in dubbio su ciò che hai scritto… MTProto bucato? Quando? Dove? Non so nulla, potresti indicarmi un articolo in cui se ne parla?

        Comunque non c’è da parlare a parte delle chat segrete di Telegram, perchè sono le reali end-to-end, che tutti dovrebbero adoperare, e l’mtproto è sfruttato per le chat normali quelle “cloud” per intenderci, li… si, ti do ragione andrebbe fatto un discorso serio, a parte. Ma se mi dici che sulle chat segrete c’è da parlarne, allora c’è qualcosa che non va. Ti prego di illuminarmi, perchè forse mi sono fatto abbagliare da uno dei pochissimi servizi che realmente fa il suo lavoro.

        Grazie mille.

        • Giuseppe Tripodi

          Grazie per i complimenti.

          In realtà credo di aver (parzialmente) detto una fesseria parlando del protocollo bucato. Evidentemente ricordavo male: non era stato il protocollo ad esser bucato, ma erano stati intercettati messaggi Telegram sfruttando il ben noto problema della segreteria telefonica (comunque risolvibile attivando la verifica in due passaggi).
          La notizia aveva comunque fatto parecchio scalpore:
          https://www.theguardian.com/technology/2016/aug/02/hackers-telegram-messaging-accounts-iran

          Ricordavo una falla in MTProto, ma cercando online sembra che mi sia sbagliato.

          Per quanto riguarda le chat segrete, utilizzano anch’esse un protocollo che è parte di MTProto (vedi https://core.telegram.org/api/end-to-end).

          Il mio discorso sul dover discutere delle chat segrete è relativo principalmente alle solite questioni di fiducia di cui ho parlato nell’articolo. Personalmente mi fido di Telegram e sì, sono d’accordo che le loro chat segrete siano una delle migliori implementazioni di criptazione end-to-end. Ma è pur vero che non sono tanto esperto da aver letto tutto il codice sorgente e aver compreso che non ci sono falle, quindi anche in questo caso mi fido un po’ di quel che si dice in giro.
          E, in giro, gli esperti del settore parlano più della sicurezza di Signal (e di Open Whisper Systems) che di Telegram.
          Insomma, è sempre la solita questione di fiducia e affidabilità, ma non intendevo sollevare dubbi sulle chat segrete di Telegram (alle quali, personalmente, non ho nulla da rimproverare).

          • djxkill

            La criptazione MtProto se non ricordo male viene usata solo per le chiavi quando si usa la chat segreta.

            Vero tutti parlano di Signal, però noto con piacere che questa applicazione assomiglia maledettamente a Telegram o viceversa quando si usa la modalità end-to-end.

  • France

    Interessante la spiegazione tecnica, ma la domanda posta alla fine secondo me è sbagliata e anche il punto sul quale si focalizza l’articolo. Infatti l’articolo del guardian non si preoccupava che whatsapp potesse leggere i messaggi. Il problema non è fidarsi o no di whatsapp, ma se un ente terzo (un governo, la CIA, un ladro informatico, gli alieni ecc.) impone a Whatsapp di sfruttare questo meccanismo per leggere la chat di qualcuno, whatsapp può rifiutarsi dicendo che questo è tecnicamente impossibile? Avere una chat criptata end to end come signal e come whatsapp dice di avere (in ogni chat c’è scritto che nessuno, neanche whatsapp ha la possibilità di leggerla) significa che se l’ente terzo di cui sopra con minacce di vario tipo (ritorsioni economiche, politiche ecc) chiede di leggere una chat, gli si risponde che è impossibile farlo tecnicamente e quindi ciccia. L’articolo del guardian non diceva attenti che whatsapp vi legge le chat, ma “non fidatevi del messaggio di WA che pubblicizza il fatto che solo tu il ricevitore del messaggio potete leggerlo, perché WA si è lasciata di leggerlo e quindi può essere obbligata a farlo leggere a qualcun’altro”. Quindi io faccio questa domanda: E’ vero che il messaggio che c’è all’inizio di ogni chat di WA (i messaggi che invii in questa chat e le chiamate sono ora protetti con la crittografia end-to-end, il che significa che WA e terze parti non possono leggerli o ascoltarli) è fuorviante e falso?

    • juza

      Ma non è falso, anzi è l’unico strumento fornito che da un avviso.. è ben descritto sull articolo.

      • France

        cito l’articolo “Esiste la possibilità, seppur estremamente improbabile, che WhatsApp possa possa “intercettare” i messaggi di un utente, anche considerando la possibilità di forzare da remoto la generazione di nuove chiavi di sicurezza? Sì, esiste questa possibilità”
        Io a dir la verità non ho capito di preciso come, ma la possibilità c’è mi pare di capire.

        • Leonardo Banchi

          Però è importante precisare una cosa: sfruttando questo metodo, un “ente terzo” come un governo può imporre a whatsapp di intercettare i messaggi futuri di una chat, ma non può comunque recuperare quelli passati, che poi sono generalmente quelli a cui si mira in caso di indagini.
          Inoltre, anche se questo avvenisse, il client whatsapp del destinatario legittimo smetterebbe di ricevere messaggi, e quello del mittente potrebbe essere impostato per ricevere un avviso sul cambiamento di chiavi.
          Insomma, anche ad accettare di fare i complottisti, come backdoor è piuttosto debole…

          • France

            Ok questo mi convince di più

    • Giuseppe Tripodi

      Grazie della precisazione.
      Sono piuttosto d’accordo con te e mi “scuso” se da questo lungo editoriale non era chiaro il messaggio: ovviamente, di per sé WhatsApp non ha interesse a leggere le conversazioni (a Facebook bastano i metadati!), ma enti terzi (principalmente governi) potrebbero costringere con pressioni politiche/economiche/legali WhatsApp o chi per lui a fornire i dati richiesti.

      Per questo motivo, in un primo momento, avevo dato ciecamente ragione al Guardian, che effettivamente metteva in primo piano proprio questo aspetto: se stai usando WhatsApp per evitare di essere tracciato da governi/enti repressivi etc, passa ad altro.

      Tuttavia, l’obiezione mossa dal gruppo di esperti che hanno firmato la lettera ha estremamente senso.
      Seppur potenzialmente possibile, la possibilità di accedere a messaggi scambiati tramite WhatsApp è estremamente remota e richiede una combinazione di fattori non di poco conto. Al contrario, moltissimi altri client di messaggistica, gli stessi SMS e buona parte delle comunicazioni che avvengono via web sono molto più a rischio.
      La critica mossa al Guardian nella lettera aperta riguardava proprio questo: se un giornale di stampa generalista grida alla backdoor su WhatsApp, rischia di far allontanare gli utenti da questo servizio che, paradossalmente, offre uno dei miglior sistemi di criptazione disponibili sul mercato.
      In questo modo ci perdono tutti: i comuni utenti che non capiscono nulla di informatica non comprendono quali siano i rischi e quanto siano gravi e, considerando che è difficile far passare tutti a Signal, magari i suddetti utenti utilizzeranno strumenti infinitamente più insicuri di WhatsApp, come chiamate ed SMS.

      Per quanto riguarda il messaggio ad inizio chat, sì è veritiero. Le conversazioni su WhatsApp sono criptate e non c’è modo che WhatsApp o terzi possano *normalmente* accedere a quanto tu abbia scritto in chat. Tuttavia, esiste quel “problema” oggetto dell’articolo, relativo a quando qualcuno cambia smartphone o reinstalla WhatsApp. La cosa migliore è attivare l’opzione “Mostra notifiche di sicurezza” per sapere subito quando le chiavi di cifratura sono cambiate e, ovviamente, non conservare alcun backup delle chat.

      In alternativa, chi vuole evitare governi repressivi o altro, può utilizzare Signal, la criptazione delle email tramite PGP o anche le chat segrete di Telegram.

      Concludendo, il mio discorso sulla fiducia era relativo proprio a questo: in molti non si fidano di WhatsApp perché è stato acquisito da Facebook. È una scelta legittima, anche considerando che i recenti governi statunitensi sono sempre stati molto vicini alla Silicon Valley e abbiamo visto di cosa è capace l’NSA. Per lo stesso motivo, molti si fidano di più di Telegram, anche perché è gestita da Durov, informatico eclettico e “anarchico” che non sembra proprio il tipo di persona che fornisce i dati degli utenti al primo governo che li richiede.
      Tuttavia, ha senso non fidarsi di WhatsApp/Facebook ma per cocciutaggine ignorare anche quel che dicono 70 esperti mondiali di crittografia?

      • France

        Ok capisco quello che vuoi dire. È vero però che il Guardian è probabilmente il migliore e più autorevole giornale del mondo e tutti i suoi articoli sono approfonditi e competenti. Quindi anche quell’articolo era dettagliato e non scandalistico e sensazionalistico. Il problema casomai è come poi gli altri riportano la cosa (tipo tutti i giornali italiani). Io poi non uso signal, ma WA e telegram e duvrov mi sta anche un po’antipatico (avrebbe votato Cameron in Inghilterra per dire..).Non ho letto quello che hanno scritto i 70 esperti ma se è come mi pare di capire l’uso di questo metodo è quantomeno complicato quindi boh facciamo che mi fido degli esperti tanto non sono tra quelli che lo devono usare di nascosto da un governo, ma qualche perplessità mi resta.

    • Dario · 753 a.C. .

      È falso! Ma aldilà della backdoor già per il semplicemente fatto che la crittografia non ha senso se i dati vengono conservati in chiaro sui server di Apple è google. Anche se tu non lo fai potrebbe farlo la persona con cui parli e WhatsApp non ti avvisa di cio…

      Quindi end to end ma poi le chat le hanno in chiaro google e apple

  • juza

    Tempo fa avevo letto che WA criptava il testo dei messaggi ma teneva tutto il resto in chiaro: num di telefono, orari e lunghezza dei messaggi, contatti, etc.. è ancora così?

    • Giuseppe Tripodi

      Sì, i metadata vengono ancora conservati e sono di proprietà di Facebook.

    • Dario · 753 a.C. .

      La crittografia end to end è inutile quando poi la cronologia dei messaggi viene conservata IN CHIARO sui server google e Apple dove WhatsApp non ha di certo il controllo

  • Matteo Burroni

    Ottimo articolo, grazie mille della spiegazione!

  • GiaLid

    Aggiungo i miei complimenti all’editorialista per il bell’articolo, ma anche ai partecipanti alla successiva discussione per le puntuali osservazioni educatamente sottoposte nei diversi commenti. Solo un piccolo pensiero alla vicenda. A questo punto, per fugare ogni dubbio, fossi stato nei panni di whatsapp, avrei anche valutato di eliminare il meccanismo che consente di non perdere alcun messaggio in quelle particolari condizioni ottimamente descritte nell’articolo. Piuttosto, quando quella condizione si verifica, potrebbe semplicemente comparire, al mittente e al destinatario, un avvertimento. In fondo non ci vuole molto a ri-scambiarsi un messaggio. Sarebbe senza dubbio scocciante doverlo rifare, ma quante volte potrebbe mai capitare? E soprattutto, vuoi mettere il ritorno che avrebbe whatsapp nel dimostrare la sua buona fede? Così, a mio avviso, anche la fiducia ne ritroverebbe un considerevole maggior “peso”.

    • Dario · 753 a.C. .

      E poi come farebbe WhatsApp a forzare il client a reinviare i messaggi già inviati con una nuova chiave?eheh

      • GiaLid

        appena si riapre il nuovo canale crittografato entrambi gli utenti dovrebbero rispristinare da backup… (scusami, ma forse non ho compreso bene la tua osservazione)

        • Dario · 753 a.C. .

          WhatsApp non avendo il client opensource potrebbe lato server cambiare la chiave di crittografia (magari disabilitando anche la notifica se attiva) e forzare il client a re inviare di nuovo i messaggi già inviati criptandoli con la nuova chiave

    • Giuseppe Tripodi

      Grazie dei complimenti.

      Per quel che mi riguarda, il punto fondamentale della questione qui è che WhatsApp *non* è una chat per chi cerca privacy, ma una chat per il “popolo” (ossia gente che non capisce nulla di quel che avviene dietro, e nemmeno gli interessa).
      La criptazione E2E è un’ottima caratteristica che apprezzo molto, personalmente *non* credo che si possa considerare una backdoor ma il punto è che WhatsApp non farebbe nulla per rafforzare la sicurezza se il prezzo da pagare è “confondere” l’utente medio.

      Il punto non è quanto spesso un avviso di cambio delle chiavi potrebbe capitare, ma che WhatsApp non ha interesse a rischiare anche un singolo messaggio perso al fine di rafforzare la sicurezza (già più che buona per chi chiacchiera solo del più e del meno).

  • magicblack

    Ottimo editoriale, Giuseppe. È davvero una questione di fiducia. Sempre. La stessa e identica fiducia che riponiamo negli sviluppatori della custom ROM che installiamo sul nostro dispositivo, la stessa e identica fiducia che riponiamo nell’applicazione memorizza-password e così via.

    • Dario · 753 a.C. .

      Credo che le rom che usi siano opensource così come gestori di password quindi li c’è fiducia perché non ti vuoi leggere il codice, altrimenti lo leggi e l’unica persona di cui devi fidarti sei tu stesso che l’hai letto bene

      • magicblack

        Non ho le competenze per leggere il codice, come credo la maggior parte degli utenti (medi e non). Quindi, di nuovo, mi devo fidare degli sviluppatori dell’app o di chi legge e controlla il codice al posto mio.

        • Dario · 753 a.C. .

          Appunto! Secondo te con tutte le persone che leggono il codice e che partecipano su github non usciva fuori se c’era qualche cosa losca? Sai che ci sono anche 4-5 client alternativi di telegram tra cui plus messenger che forka il codice di github? Quindi manco lui lo legge??

          • Ok, ma stai anche te implicitamente dicendo che si tratta appunto di fiducia 🙂

          • Dario · 753 a.C. .

            Fiducia in persone esterne all’azienda però che non ha interesse a mentire (al contrario dell’azienda). E comunque fiducia perché non vuoi studiarti il codice tu perché sennò puoi farlo.

          • Si si, ma sempre fiducia è. Non ti dico che non dovresti averne, io spesso ne ho, ma anche il fatto che tu dica che “non ha interesse a mentire” non è una certezza, ma piuttosto un assennato ragionamento basato comunque sulla fiducia.

          • Dario · 753 a.C. .

            Si ma questo sempre se non vuoi studiarti il codice tu stesso.

            Con WhatsApp devi fidarti solo di ciò che ti dice Facebook visto che non è possibile verificare cosa fa il client e non penso verrebbero mai a dirti “abbiamo messo delle backdoor per spiarvi”, cosa che invece potrebbe dirti un ricercatore che non ha nulla a che vedere con l’azienda e legge i codici opensource

          • Non credo che mia mamma, la mia ragazza, il mio commercialista, il mio fornaio e il mio pizzaiolo saprebbero studiarsi il codice 🙂

  • Dario · 753 a.C. .

    Prima di tutto occorre dire che la E2EE su WhatsApp non ha molto senso visto che le conversazioni di default vengono backuppate *in chiaro* sui server google e Apple. Quindi possono averne accesso addirittura terzi e WhatsApp non ha certo il controllo di ciò che avviene sui server google o Apple.

    Voi potete anche disattivare il backup, ma siete sicuri che non lo fa la persona con cui state parlando? WhatsApp non vi avvisa di ciò quindi la E2EE non ha molto senso… scambiare messaggi cifrati punto a punto e poi conservarne la cronologia in chiaro sui server di terzi?

    Veniamo alla backdoor però: innanzitutto non è possibile verificare l’implementazione del protocollo di signal poiché il client non è opensource.
    WhatsApp invia i messaggi anche se la chiave è cambiata e questo non dovrebbe accadere altrimenti è inutile mettere il qr code per verificare che la chiave è uguale se mi viene cambiata. O meglio dovrebbe comparirmi sempre una notifica che la chiave è cambiata e non andrebbero inviati i messaggi pendenti. Di default non si viene avvisati, ma anche se metto l’avviso è tardi. Inoltre chi mi dice che lato server WhatsApp non può cambiare le chiavi a piacimento, non inviare nessuna notifica e addirittura far reinviare al client tutta la cronologia della chat conservata sul dispositivo con la nuova chiave?

    Con telegram, parlando delle chat segrete, non esiste nessun backup su server di altre società ovviamente. Inoltre il client è opensource e si può verificare cosa avviene. Con telegram se cambia la chiave la chat diventa semplicemente non più utilizzabile e occorre aprirne una nuova

    • Giuseppe Tripodi

      Stavo aspettando il tuo commento! 😛

      Come sempre, sul discorso dei backup mi trovi d’accordo: personalmente li ho disabilitati ma, come dici tu, non ho nessuna garanzia che le persone con cui chiacchiero su WhatsApp abbiano fatto lo stesso. Ma, ancora una volta, ti chiedo: perché dici che sono *in chiaro*. Ne avevamo già discusso e, per quel che ne so, sia su iCloud Drive che su Google Drive i dati sono criptati, ma in maniera tale che Apple e Google possano decriptarli in caso di richieste di forza dell’ordine. Tuttavia, vale la pena ricordare che a marzo Apple aveva dichiarato di star lavorando per rafforzare la sicurezza di iCloud.
      http://www.mobileworld.it/2016/03/16/apple-vuole-criptare-dati-icloud-71959/

      Andando oltre: ti sbagli, Signal è completamente open source (non solo il protocollo). Puoi trovare il codice dei client Android e iOS qui:
      – Android: https://github.com/WhisperSystems/Signal-Android
      – iOS: https://github.com/WhisperSystems/Signal-iOS

      Per quanto riguarda la criptazione E2E WhatsApp vs Telegram siamo assolutamente d’accordo: ci sono diversi motivi per cui le chat segrete di Telegram siano più sicure delle normali chat di WhatsApp.

      Il punto della lettera inviata al Guardian dagli esperti di crittografia è che l’articolo creava allarmismi inutili e, potenzialmente, faceva più danni che altro (magari allontanando persone da WhatsApp e spingendole verso SMS o altro).

      • Dario · 753 a.C. .

        Non sono sicuro che lo siano, ma lo dice eff(punto)org e ti avevo già riportato il link mi sembra.
        Non credo siano cifrati perché non devi mettere nessuna password per fare il ripristino ma il client è in grado di ripristinare il backup anche su un nuovo telefono. Quindi seppur fossero criptati sulla base di cosa? Se è qualcosa legato all’account come numero di telefono allora WhatsApp sarebbe in grado di decriptarli. Non vedo come possano essere sicuri quei backup se possono esser ripristinati senza una password scelta dall’utente. Inoltre per i media so per certo che non sono criptati perché lo diceva la stessa app di WhatsApp qualche mese fa a riguardo del backup su drive

      • Dario · 753 a.C. .

        Ah ma tu parli di crittografia dei dati su drive da parte di Google? Io parlo da parte di WhatsApp e da quanto credo WhatsApp li carica in chiaro, poi che Google cripti I dati sul suo cloud credo proprio sia così, ma comunque credo proprio che Google possa decriparli.
        La criptazione dovrebbe avvenire da parte di WhatsApp in mood che Google non abbia le chat in chiaro. A questo mi riferisco con in chiaro, che sono in chiaro per Google!

        La criptazione di quelle chat dovrebbe avvenire prima di di tutto da parte di WhatsApp, ma dubito questo avvenga visto che è ripristinabile anche su altri telefoni senza una password.

        Il punto è che seppur WhatsApp veramente non dovesse avere la possibilità di leggere le chat, possono farlo Google e Apple.

  • Tiwi

    la backdoor esiste, e nessuno lo ha negato..quello che si nega è solo il possibile utilizza da terzi, o la possibilità che wa la ceda a governi (che poi bisognerebbe valutarla bene questa cosa)
    nessuno, e dico nessuno, ha mai detto che wa non possa utilizzare (e non utilizzi già) questo metodo per prendere dati dalle conversazioni degli utenti..

    • Giuseppe Tripodi

      Ripeto: nessuno discute che esista, in potenza, questo “problema”, ma qui è più un discorso sui termini usati che sul codice. Il punto sta nel considerare quella vulnerabilità una “backdoor” o meno.
      Personalmente non credo che lo sia (come spiegava @leonardobanchi:disqus giù, è troppo debole per essere una backdoor), ma questo discorso si può fare con gente che ha un minimo di competenza tecnica. Il problema è se la stampa generalista come il Guardian urla alla backdoor e, magari, spinge le persone verso tecnologie ancor meno sicure di WhatsApp.

      • Tiwi

        capisco benissimo..il mio commento non era rivolto all’articolo comunque, bensi, era il mio pensiero in merito a tutta la vicenda, al di la di guardian, esperti, etc

        comunque la si chiami, per quanto forte o debole sia, per me rimane un modo per wa e fb per integrare i dati degli utenti..e questa cosa nessuno l’ha smentita..

  • Giuseppe Tripodi

    Sì, su questo hai ragione. Come ho scritto su, chi cerca la privacy su WhatsApp deve come minimo disabilitare il backup delle chat (però, appunto, non c’è modo di esser certi che i propri interlocutori abbiano fatto lo stesso).

  • Name

    Direi che la risposta alla domanda “Di chi possiamo fidarci?” sia: non so, ma di sicuro NON di facebook.
    Detto questo, per quanto possa essere vista sotto un’ottica diversa questa backdoor, la risposta molto semplice è: chi ha detto a whatsapp di usare tale sistema per ovviare al problema dei “messaggi persi”, nel caso dovesse presentarsi? O ci sono scimmie a programmare l’app, oppure hanno optato volontariamente su questo tipo di soluzione ben sapendo che ci avrebbero potuto guadagnare! Ed infatti, a riprova di ciò, cosa abbiamo? Abbiamo che a me personalmente ed anche ad altre persone è capitato di parlare su whatsapp di determinate cose e ritrovarci pubblicità su quelle identiche cose su facebook! Mi chiedo come sia possibile se i due servizi sono realmente distinti ed obbligati a non comunicare!

    • Mario Cencio

      beh alla fine fu proprio zuckenberg a dire che le chat sono private ma se necessario avrebbe dato accesso alle forze competenti per eventuali indagini importanti. Se da l’accesso vuol dire che c’è anche qualcosa da visionare… alla fine gira che ti rigira la end-to-end su whatsapp è una bufala!

      • Name

        Ma se lo fanno perchè se sono indagato loro possono dare accesso alle mie chat mi va anche bene, ma se lo usano per propormi prodotti su fb in base alle mie chat e lo fanno illegalmente e con una comunità europe che li ha anche bacchettati che fb e whatsapp non si possono unire…!
        E c’è gente che ha pure il coraggio di dire che whatsapp è meglio di telegram!

  • davide

    Non è una backdoor, è una legittima scelta di design dell’applicazione… Certo è che questa scelta come conseguneza consente a un governo o a fb di impersonare un utente. Punto. La giustificazione è: questo è un software che deve usare anche mia nonna, non vorrete mica che dei messaggi di vostra nonna si perdano se il destinatario cambia telefono o reinstalla whatsapp? e allora abbiamo dovuto implementare questo meccanismo…
    Io dico: ma sarà mica questione di vita o di morte? Se il destinatario cambia telefono o reinstalla whatsapp i messaggi inviati nel frattempo non arrivano… La nonna chiede ma perchè non hai ricevuto i miei messaggi? Perchè ho cambiato telefono e non sono arrivati, rimandameli adesso cliccando ok sullo strano messaggio che compare (la notifica che la chiave del destinatario è cambiata) e voilà risolto il problema… La mia idea è che questa scelta di design è un po una scusa per giustificare questa possibilità… Signal fa così, certo loro dicono ma signal è usato da esperti non dalle nonne, e io rispondo certo ma non mi sembra che ci voglia una laurea in ingegneria per usare Signal, l’unica differenza è che se la chiave del destinatario cambia l’applicazione ti avvisa PRIMA di inviare il messaggio se gli dici che non ti sta bene non lo invia…