Dopo un lungo periodo dedicato a WhatsApp ho deciso di soffermarmi molto su un’altra applicazione che si è fatta subito notare, parliamo per l’appunto di Telegram.
In questo articolo prevedo una analisi a grandi linee di ciò che è Telegram e come si comporta attualmente sia sul lato client che sul lato server.
Partiamo subito con una piccola introduzione per chi non sa cos’è effettivamente questa applicazione (anche se dubito profondamente che nessuno la conosca).
Telegram è un’applicazione un po’ alla WhatsApp.. A grandi linee non è né di più né di meno di quest’ultimo.
Senza dilungarci molto diciamo brevemente che è stata fondata da fratelli di origine russa che a loro volta sono anche fondatori di un social network di stessa origine ma che non è collegata in nessun modo a Telegram.
Inizialmente, come tutte le applicazioni in generale, Telegram non era in grado di sostituire prontamente WhatsApp (ndr, viene citato in quanto l’unico di valido confronto) per diversi motivi, dalla UX Experience e problemi secondari.
Andiamo ad analizzare alcuni aspetti per vedere lo stato attuale di Telegram.
Tecnologie usate
Per tecnologie usate in questo momento mi piacerebbe parlare più di protocolli usati.
Nell’ambito lavorativo in cui mi trovo, tra developer si dice che è “inutile reinventare la ruota“, perché “il tempo è denaro” (va bene la smetto con le citazioni) e anche perché ciò che vai a ricreare, deve essere soggetto poi a testing ignorando anni e anni di sviluppo e di correzioni sui sistemi di sicurezza passati.
Quindi, potevamo usare XMPP per la comunicazione e sistemi di crittografia RSA/OTR.
E invece? Invece Telegram ha voluto fare di testa propria e inventare un nuovo protocollo di sicurezza denominato Mtproto dove non starò a spiegare il suo funzionamento perché tutto spiegato nei loro paper raggiungibili nel loro sito ufficiale.
Cosa potremmo dire ancora? Beh sicuramente all’inizio aveva qualche bug ma man mano che il tempo passa, migliora a vista d’occhio (senza dimenticare che usa una crittografia end-to-end).
Ma perché devo usare ‘sto programma?
Ecco questa è una bella domanda. Magari perché Telegram è Telegram!
Scherzi a parte, innanzitutto è GRATIS e no, NON CI SONO PUBBLICITA’ NASCOSTE.
Esatto, avete capito bene ma poi la cosa più importante è il fatto che sia Open Source o meglio, diciamo la maggior parte delle cose lo sono (più di WhatsApp) e vedremo se arriveremo alla totalità.
Un’altra cosa su cui mi soffermerei è la presenza di API, e per i non informatici, non parliamo di animali ma parliamo di una Interfaccia di Programmazione di un’applicazione.
Posso dire di esserne rimasto stupito, sono davvero ben documentato e seguendo gli standard stabiliti sono anche ben sviluppate che hanno permesso, oltre alla realizzazione dei client, anche di capire come funziona un sistema di messaggistica quindi, interazione client-server (senza dimenticare la cifratura ovviamente).
Se siete stati attenti, parlando di realizzazione ho messo client al plurale e non al singolare. Vi state chiedendo dov’è l’errore o qual è il motivo?
Ecco qual è il bello dell’Open Source: rendere open le API ha permesso di sviluppare il client su altre piattaforme in modo molto veloce. Un esempio? Beh per i più nerd abbiamo il client tramite riga di comando (per sistemi applettari e linuxiani).
Ma questo approda anche sullo sviluppo di piattaforme che WhatsApp non ha, o meglio che ha ma è dipendente ancora al telefono (e ancora non mi spiego motivo di questa policy).
A cosa mi sto riferendo? Beh, provate ad andare su desktop.telegram.org oppure web.telegram.org e voglio ribadire che sono indipendenti dal telefono.
Ovviamente scontato dire che abbiamo un supporto multipiattaforma ossia la presenza su Firefox OS, Android, iOS, GNU/Linux, OS X, Windows Phone, SailfishOS e Blackberry (in sviluppo).
Vabbè quindi?
E quindi niente, purtroppo Telegram non è abbastanza diffuso considerando che WhatsApp è stata la prima a conquistare e classificarsi come leader del mercato ma è anche vero che sta perdendo colpi con l’acquisto da parte di Facebook.
Cosa dirvi, sinceramente ho paura della mia privacy con Facebook anche se ormai tutti sanno tutto.. Ma perché non proviamo a rimediare il possibile a partire da adesso?
Telegram permette una sicurezza maggiore con il suo sistema complesso di crittografia e quindi potremmo essere sicuri di inviare messaggi usando hotspot pubblici (anche se è ovvio che è meglio evitare se possibile) e quindi aver quel panico che potremmo essere soggetti ad un attacco Man in the Middle ossia, detto volgarmente, colui che sta spiando il traffico di tutti e che può manipolare il tutto.
Fate come me, iniziate a lasciare sempre più l’icona verde e passiamo a quella blu!
Su ogni piattaforma ufficiale che utilizziamo, abbiamo la cronologia delle chat aggiornate in tempo reale totalmente indipendenti dai dispositivi usati e soprattutto abbiamo la possibilità di usare le Chat Segrete (già state a pensare ai pornazzi va là) che utilizzano una chiave di cifratura realizzata sul momento e condivisa tra i due dispositivi mittente-destinatario.
Scontato dire che sono davvero segrete, esempio, mettete il caso che io e te apriamo una chat privata scrivendo da telefono e poi andiamo sull’applicazione desktop o applicazione web, non la vedremo perché appunto non potremmo decifrarla anche se usiamo lo stesso account e quindi abbiamo anche la certezza che le chiavi private/pubbliche non vengono condivise con il server di Telegram.
Cosa state aspettando? Forza, la grafica è uguale, il trasferimento è indolore.
All the best,
Mirko.