L’instant messaging XMPP (Jabber)

Ho già parlato di alcuni software di messaging qui, in riferimento a quelli più diffusi, ma il problema della sicurezza e della privacy degli utenti era e continua a rimanere una piaga aperta su cui i più, purtroppo, buttano semplicemente del sale. Qualsiasi ragionamento facciamo nella direzione della sicurezza/privacy, continua ad albergare all’interno di un’area di approssimazione, più o meno, accettabile.

Ora vorrei parlarvi di Jabber (o XMPP – Extensible Messaging and Presence Protocol – che è la stessa cosa) che l’officina ribelle eigenlab di Pisa ha presentato qualche giorno fa. Si tratta di un servizio di messaging open source che gira sul server di una rete XMPP privata (quella di eigenlab appunto) e che permette l’accesso, sicuro e protetto, alla rete XMPP pubblica.  Al contrario degli altri software come WhatsApp, Telegram o Signal, XMPP è un protocollo “federato”,  nel senso che i client della rete globale dialogano tra loro al di là del server sul quale si sono registrati e quindi  entrano in contatto anche con client di reti che utilizzano protocolli differenti (come OSCAR, .NET, ecc…).

Ovviamente esistono client multiprotocollo, ma a differenza di questi, XMPP (acronimo di “protocollo estendibile di messaggistica e presenza”) risolve la cosa già all’accesso del client sul server, poiché ha già messo insieme tutti i protocolli e le tecnologie necessarie, annullando così l’onere di dover programmare un supporto al protocollo a livello di client.
L’idea di Jabber nasce nel 1998 con Jeremie Miller e un gruppo di sviluppatori indipendenti che riescono a sviluppare una rete di instant messaging aperta ed espandibile a qualsiasi altro servizio di messaggistica già  esistente. Inoltre la filosofia open source garantì, già da subito, uno sviluppo migliore e un controllo generalizzato sulla sincerità e la bontà della sicurezza dei dati.

Per spiegare l’architettura XMPP, Markus Hofmann e Leland R. Beaumont utilizzano i personaggi “Romeo and Juliet” della tragedia shakespeariana. La metafora racconta che Giulietta e Romeo utilizzano account diversi, appartenenti ciascuno al proprio server familiare. Giulietta, con il proprio account juliet@example.com, invia al suo server un messaggio (Art thou not Romeo and a Montague?) per romeo@example.net; il testo viene ricevuto dal server “example.com” che contatterà il server “example.net” (che ospita l’account di Romeo) e verificata la rispondenza di indirizzo e di linguaggio, si stabilirà una connessione tra i due server recapitando così il messaggio al giusto destinatario che potrà rispondere (Neither, fair saint, if either thee dislike) e così via.

In sostanza, anche se gli utenti hanno client e sistemi operativi diversi, i server su cui poggiano gli account faranno in modo di portare a buon fine lo scambio comunicativo.
E’ quello che si chiama “sistema scalabile”: nessun server centrale che si occupa di smistare i messaggi, ma tanti server che diventano nodi di scambio all’interno della rete XMPP. Questo significa che anche se una parte della rete non funzionasse, quella restante continuerebbe a svolgere egregiamente il proprio compito.

XMPP fornisce sia chat singola che di gruppo, ha una rubrica per i contatti, permette di scambiare file e immagini in chat e stabilisce comunicazioni criptate sia singole che di gruppo.

E’ possibile installare una grande quantità di Clients per qualsiasi tipo di piattaforma e qui trovate tutta la lista.  Il migliore per Android è sicuramente Conversations che su Google Play è a pagamento mentre con F-Droid puoi scaricarlo gratis (se volete potete seguire questa guida); mentre per iOS consiglio Monal che trovate gratis sullo store ufficiale.

La sicurezza e la privacy, anche qui, sono affidate a una crittografia end-to-end ed è possibile ricevere messaggi cifrati su più dispositivi, o inviarli anche se il destinatario è offline. La crittografia funziona anche per immagini, file e messaggi vocali. I protocolli crittografici sono implementati in modo trasparente e, grazie allo sviluppo comunitario di questo open source, chiunque può verificare l’assenza di backdoor e di falle di sicurezza nel codice.

Ma per la nostra sicurezza, la domanda giusta è: di chi e di cosa ci fidiamo quando decidiamo di  dialogare con qualcuno?

Qualche esempio, un po’ grossolano, sulla nostra percezione (e sulle pratiche) della sicurezza in tema di conversazioni.

La prima cosa che facciamo quando instauriamo una conversazione è quella di capire/decidere, immediatamente, il livello (pubblico, sociale, privato, intimo) a cui tale tipo di comunicazione appartiene. Al netto di disturbi psicologici, sappiamo come discutere in un bar o nella sala d’attesa di un barbiere/parrucchiere, sappiamo (forse un po’ meno) come e cosa scrivere sulla nostra bacheca di Facebook, comprendiamo che per parlare di cose di famiglia è meglio farlo in casa nostra, allo stesso modo ci appartiamo in luoghi e con distanze opportune (curando bene il “canale”) per dialogare di cose intime.

Basandoci su tale paradigma, risolviamo una semplice proporzione che ci da, approssimativamente, il peso della propagazione dell’informazione, in rapporto al numero delle persone presenti nella conversazione. Ovvero, il potenziale di diffusione parte da un numero imprecisato (teoricamente infinito) “x” della conversazione pubblica e arriva fino a “2” nella conversazione intima (ovviamente parliamo di partecipanti e non di rischio diffusione o intercettazione).

Se, dunque, in analogico possiamo assumere come valore minimo teorico di diffusione il numero “2“, in digitale questo valore minimo dev’essere almeno “3” (i due dialoganti/intimi più colui che gestisce il canale). Questo vuol dire almeno due cose: la prima è che non esistere la condizione di “intimità” in una chat; la seconda che, come conseguenza della prima, la nostra soglia di prevenzione della privacy è diventata un po’ più “lasca”.

Ora, possiamo fare tutti i ragionamenti che vogliamo, sulla proprietà, sui sistemi e anche sulla criptazione o qualcos’altro, ma fondamentalmente dobbiamo sempre fidarci di qualcuno che è “altro” rispetto al nostro interlocutore intimo. In sostanza sta a noi scegliere se questo “altro” debba essere Zuckerberg (Messenger, WhatsApp, Instagram), Durov (Telegram), Google (Hangout e Yahoo! Messanger), Microsoft (MSN MessangerSkype) oppure un’organizzazione no-profit come Open Whisper Systems che gestisce l’open source Signal.

Ecco forse sta proprio qui la chiave di volta: fidarsi di chi  non crede che tutti gli scambi debbano essere per forza di natura economica, di chi non venderà i dati appena possibile, di chi non capitalizzerà il successo e di chi da anni si batte per una rete paritaria e democratica.

 

 

La nostra sicurezza nelle chat

In una ricerca pubblicata qualche giorno fa, Amnesty International ha stilato una classifica di 11 aziende (Apple, Blackberry, Facebook, Google, Kakao Corporation, LINE, Microsoft, Snapchat, Telegram, Tencent e Viber Media), proprietarie di applicazioni di messaggistica istantanea, che hanno maggior rispetto per la privacy dei loro clienti.

<img class=”wp-image-4163 alignleft” src=”http://www this content.vitocola.it/wordpress/wp-content/uploads/2016/10/prism2-300×225.jpg” alt=”prism” width=”440″ height=”330″ srcset=”http://www.vitocola.it/wordpress/wp-content/uploads/2016/10/prism2-300×225.jpg 300w, http://www.vitocola.it/wordpress/wp-content/uploads/2016/10/prism2.jpg 700w” sizes=”(max-width: 440px) 100vw, 440px” />Peccato che sia in testa che in coda alla classifica ci siano gli stessi nomi che dal 2007 al 2013 erano presenti nel famoso caso PRISM.  Amnesty International non ignorava la cosa e ha chiarito di essersi interessata alle aziende “commerciali” con le applicazioni più diffuse. Ecco perché, per esempio, non c’è Signal che appartiene a un gruppo non-profit.

In sostanza Amnesty classifica quelle aziende con più attinenza e rispetto della propria policy in modo da consigliarci un male minore.

I criteri indagati sono stati 5 (1-riconoscere le minacce online alla libertà di espressione e diritto alla privacy come i rischi per i suoi utenti attraverso le sue politiche e le procedure; 2- applica la crittografia “end-to-end” di default; 3-sensibilizza gli utilizzatori sulle minacce alla loro privacy e alla libertà di espressione; 4-rivela i dettagli del richieste del governo per i dati utente; 5-pubblica i dati tecnici del suo sistema della crittografia) ma nessuna analisi tecnica è stata condotta sulla sicurezza globale del servizio di messaggistica.

Precisiamo che neanche con la crittografia “end-to-end”  si è al riparo dagli spioni, poiché sarebbe sempre possibile entrare in possesso delle chiavi crittografiche private con un po’ di “social engineering”, ad esempio, fingendosi uno dei destinatari, oppure assicurandosi il controllo di un nodo della connessione, o anche semplicemente accedendo ai dati di backup del cloud, ecc…., più o meno quello che la NSA faceva con x-keyscore.

Dunque, forse, sarebbe stato più utile considerare “se, dove e come” queste aziende conservano i dati dei clienti.

overall-ranking

Per farla breve ne viene fuori che WhatsApp (il più utilizzato sia per numero di ore che per frequenza di utilizzo e che usa lo stesso protocollo di Signal) è la chat più sicura di tutte, superando anche la concorrente Telegram che, invece, dal 2015  ha messo in palio 300mila dollari per chiunque riesce a superare il proprio sistema di sicurezza.

Ultima cosa importante del documento di Amnesty è che solo la metà delle aziende intervistate, rende pubblico un report sulla quantità di dati degli utenti che viene dato ai governi in seguito a esplicite richieste.

Ma allora, qual è l’app di messaggistica più sicura?

 

ALLO di Google neanche a parlarne. A parte la crittografia traballante c’è quel forte interesse (comune a tutte le aziende) a far soldi con i dati degli utenti che qui viene affinata ancor di più attraverso la “machine learning”. Si tratta di un servizio di profilazione avanzato degli utenti con il quale Google capisce sia il testo che le immagini contenute nei messaggi. In tal modo l’app riesce sia a suggerire frasi automatiche in risposta a delle immagini inviate che consigliare dei risultati di ricerca con una geolocalizzazione rapida su Maps in funzione del contenuto del testo digitato.  Dunque tutto il contrario della privacy dell’utente.

WhatsApp è la più popolare in assoluto, supera il miliardo di utenti e, come dice Amnesty, usa una crittografia end-to-end.  Il problema serio è rappresentato dalla raccolta di dati e metadati (la lista dei contatti, numeri di telefono e a chi si scrive) che Facebook può utilizzare per i propri fini e anche consegnarli alle autorità qualora venissero richiesti. Se poi si sceglie di salvare i contenuti delle conversazioni su cloud si completa il quadro del rischio per l’utente.

Telegram usa il protocollo MTProto definito, però, “traballante” da Thaddeus Grugq. A suo demerito va detto che salva tutti i dati sui propri server in chiaro e a suo merito i “bot” e le api libere per poterli creare, ma sopratutto i “canali” con i quali è possibile comunicare istantaneamente con un grandissimo numero di utenti.

Il migliore è sicuramente Signal e non perchè  l’abbia detto Snowden un anno fa, piuttosto per la sua filosofia di base che lo rende più sicuro.  signalIntanto è un sistema aperto e questo già basta a garantire sulla sicurezza da solo. Anche se può sembrare un ossimoro, in realtà  quando i codici sorgenti sono aperti, chiunque può migliorarli creando patch e sviluppi alternativi attraverso collaborazioni diffuse e riutilizzo del codice.

Inoltre Signal non raccoglie dati e metadati degli utenti da nessuna parte, ma annota soltanto i tempi di connessione. Anche quando chiede di condividere i contatti (in modo da trovare chi usa la stessa app) tutta l’operazione viene subito cancellata dai server.  Non essendo presente la funzione di backup della chat, nel caso si cambiasse smartphone, si dovrà spostare tutto a mano.

E’ stata creata da Open Whispers System, una società no profit che si finanzia solo con le donazioni volontarie. L’unico neo di questa app è quella di essere poco diffusa (sembra che sia stata scaricata da poco più di 1 milione di utenti contro il miliardo di utenti dichiarato da WhatsApp) e probabilmente resterà tale proprio a causa della sua filosofia sulla sicurezza che la rende poco user friendly.

Il futuro è della chat ?

keyGreta Sclaunich, qualche tempo fa sul Corriere,  diceva che il futuro dei social è tutto nelle chat.

Chi si ricorda di IRC ? e di ICQ ?  In Italia forse molti ricorderanno C6…  e ce n’erano anche di più vecchie.   Se non li ricordate  oppure non ne avete mai sentito parlare, sappiate che viviamo ancora nella loro scia. Quando messaggiamo o chiacchieriamo on line,  stiamo usando lo stesso paradigma comunicativo.  LOL, IMHO, AKA, per esempio, facevano parte dello “slang” di queste chat.  Anche la parte “social”, che può sembrare una novità, non è altro che una piccola modifica (ma a pensarci bene neanche tanto) dell’ordinamento di gusti e tendenze che avveniva con i gruppi di discussione e con le “stanze” private.  A parte il maggior numero di emoticon, è quasi tutto uguale. Il grosso cambiamento è stata  la  velocità della rete e poi una immersione più continua.  Le nuove piattaforme hanno fatto il resto e così  le vecchie chat rinvigorite, hanno preso il posto anche degli SMS (Deloitte  ha stabilito che negli ultimi due anni i messaggi in chat sono stati più del doppio degli sms); degli MMS, poi, non ne parliamo proprio.

Qualche numero

I dati Audiweb dicono che a dicembre 2014, in un giorno medio, i giovani da 18 a 24 anni navigano per 2 ore e 22 minuti (con un’ora di incremento rispetto al 2013), nel 67% dei casi da smartphone e l’88% dei quali su chat.
Per aggiungere un’altra manciata di numeri prendiamo il caso di un client fortunato come WhatsApp che (pur se a pagamento) nel 2014 ha superato il mezzo miliardo di utenti, i quali: per prima cosa si scambiano foto, poi messaggi e infine dei video.

Quale futuro?

Se  qualche anno fa mi avessero chiesto  quale sarebbe stato il futuro dei social, avrei risposto, senza esitazioni, “il metaverso” (Second Life, tanto per intenderci).  Un social immersivo e  corporale tutto in divenire  che in breve avrebbe spazzato via  tastiera, mouse,  monitor e chissà cos’altro.   E invece…  a dieci anni di distanza ancora non è pronta quell’interfaccia immaginata da tanti.  Uno schermo indossabile come  Oculus  che avrebbe dato un nuovo impulso a quel mondo immersivo non è ancora pronto. Come se non bastasse, è stato acquistato da Zuckerberg che, dicono i maligni, potrebbe essere interessato alla distribuzione di films o, forse, a collegarlo ai suoi social e a WhatsApp in particolare.

Dunque  la chat è il nostro loop storico?

Philip Rosedale pensa di no e la sua risposta è High Fidelity. Un nuovo metaverso che integrerà Oculus ad altri sensori di movimento e, più in la, a una webcam 3D. Se  non sarà Matrix sarà qualcosa di molto simile, assicura Rosedale nella postfazione al libro di Giuseppe Macario “Il passato, il presente e il futuro del mondo virtuale Second Life“.