Je connais pas précisément la technologie de TextSecure/Whisper Systems, mais en effet, je lis qu’il sont partis de OTR et ajoutant quelques fonctions :
▻http://en.wikipedia.org/wiki/TextSecure
En fait, toute l’idée de Whatsapp (qui n’est rien d’autre qu’un chat XMPP) c’est de simplifier à l’extrême l’expérience utilisateur en commençant par supprimer (du point de vue de l’utilisateur) toute la partie authentification. Donc pas de login et pas de mot de passe. C’est le téléphone lui-même qui sert à s’identifier et s’authentifier. Je n’ai pas de compte Whatsapp, mais je suppose qu’à l’inscription il suffit de donner son numéro de téléphone. On reçoit alors un (vrai) SMS avec un PIN code, on l’entre dans l’app et on garanti donc être propriétaire de ce numéro. Là un mot de passe aléatoire est généré et stocké sur le mobile, mais inconnu de l’utilisateur. S’il change de mobile, il recommence l’opération qui vise à obtenir un nouveau mot de passe. Mais impossible d’avoir (sauf en bidouillant) un même compte Whatsapp sur des terminaux différents (une fonctionnalité pourtant offerte par XMPP) et encore moins sur un ordinateur. Et s’il change de numéro, il doit prévenir ses contacts ! Mais il suffit appeler ça du « SMS gratuit »...
De leur côté, Whatsapp fabrique donc une base de donnée de ses utilisateurs avec un identifiant unique et universel : leur numéro de mobile. Ils aspirent le carnet d’adresse de l’utilisateur et sont en mesure de lui dire avec qui il peut utiliser Whatsapp. Et si son correspondant n’a plus Whatsapp parce qu’il a déterré son Nokia 3310, et bien le message n’arrive jamais... Même problème qu’avec iMessage je suppose : ▻http://www.nextinpact.com/news/90848-apple-fournit-enfin-moyen-se-desinscrire-directement-dimessage.htm
Parmi les fonctionnalités ajoutées ou en tous cas revues, il y a les pièces jointes simplifiées, les notification PUSH ou les accusés d’envoi, de réception et de lecture. Et donc aussi maintenant le chiffrement de bout en bout, mais probablement d’autres aussi.
Tout ça c’est pas idiot et le coup du « SMS gratuit » prouve qu’ils ont vu juste.
D’ailleurs c’est incroyable, 100% des gens qui utilisent Whatsapp le voit en effet comme du SMS gratuit. Je leur dit comme le sont souvent les SMS aujourd’hui. Ils répondent « mais là c’est dans le monde entier ». « Et les emails, le chat facebook, Skype... c’est gratuit et c’est dans le monde entier. » "Euh oui, mais non, là c’est du SMS tu comprends". « Oui oui, je comprends, du SMS où t’as besoin d’être connecté à Internet... »
Franchement ça me dépasse. Mais c’est très intéressant de voir à quel point ce qui compte vraiment c’est la simplicité d’installation, d’usage et de fonctionnalités, associés à un bon marketing. C’est un bon enseignement pour les autres applications.
Enfin, pour bien comprendre comment fonctionne Whatsapp, il faut aller voir du côté d’OpenWhatsapp justement :
▻http://openwhatsapp.org
▻https://github.com/tgalal/yowsup ("whatsapp" sur github donne pas mal de résultats)
On apprend aussi ici qu’ils ont forké ejabberd :
►https://chatsecure.org/blog/fixing-the-xmpp-push-problem
Et pas mal de détails par ici aussi :
▻http://highscalability.com/blog/2014/2/26/the-whatsapp-architecture-facebook-bought-for-19-billion.html