Pour parer la surveillance omniprésente de la NSA, le service de microblogging renforce le chiffrement des échanges HTTPS par une méthode d’échange de clés de chiffrement plus contraignante, mais transparente pour l'utilisateur.
Depuis les révélations d’Edward Snowden, on sait que les services secrets tels que la NSA ont tendance à tout enregistrer, même les échanges chiffrés. Quitte à les décoder plus tard, quand la puissance des ordinateurs sera suffisante, ou lorsqu’ils auront eu accès aux clés de chiffrement stockées sur les serveurs. Le premier cas est difficile à parer, mais pour le second il existe des solutions. L’une d’entre elles vient d’être implémentée par Twitter pour protéger les flux de données HTTPS entre ses serveurs et ses utilisateurs.
Ces échanges sont chiffrés par une clé appelée « clé de session », choisie au hasard par le logiciel client côté utilisateur. Jusqu’à présent, cette clé de session est transmise au serveur, pour que celui-ci puisse également coder et décoder les échanges. Cette transmission de clé se fait, là aussi, de manière chiffrée en utilisant la clé publique du serveur. Le problème : si un service secret enregistre cet échange préalable, puis met la main sur la clé privée du serveur, il est capable de retrouver la clé de session et, par conséquent, de déchiffrer l’ensemble des échanges.
Pour combler cette faille de sécurité, Twitter a mis en œuvre une autre méthode d’échange de clé, baptisée Elliptic Curve Diffie-Hellman (ECDH). Basée sur la propriété des nombres premiers, cette méthode permet à deux personnes de convenir d’une clé de chiffrement commune sans que celle-ci n’ait besoin de circuler entre elles. Seules des valeurs partielles et intermédiaires sont échangées, mais elles ne suffisent pas pour reconstituer la clé de session finale. Et comme celle-ci est stockée en local (mémoire RAM) et de manière éphémère, il serait donc impossible d’y accéder dans le futur. Pour mettre en œuvre cette nouvelle procédure, Twitter a été contraint de modifier l’architecture technique de son pool de serveurs.
Commentaires
Enregistrer un commentaire