Bien le bonjour,
Ça faisait un petit moment que je n'avais pas écrit, je suis tombé dans plusieurs terriers de lapin dont j'aurais probablement l'occasion de rediscuter à l'avenir, je voulais simplement partager quelques réflexions, que j'ai eues sous la douche ou ailleurs.
Il y avait une question qui me perturbait, comment ça se fait qu'on dispose d'autant de techniques, protocoles cryptographiques afin de sécuriser nos communications mais notre vie privée a atteint l'un des points les plus bas jamais vus dans l'histoire. C'est dire, si on compare à nos grands-parents voire plus, il y avait peu de questions au sujet de la vie privée, pourtant tous avaient une confidentialité bien plus développée que nous tous ici.
Et pourtant AES, RSA n'existaient pas à l'époque. Les techniques sont restées inviolées depuis les années 90, mais nos données sont revendues à tire-larigot aux différentes corporations et aux différents gouvernements tous plus malhonnêtes les uns après les autres et virant de plus en plus à l'autoritarisme chaque jour. C'est là où j'ai eu une ampoule qui s'est allumée, depuis le début nous avions déployé tous nos efforts à sécuriser les protocoles réseaux bas niveau, mais nous avions omis de sécuriser la couche finale. Sauf qu'il suffit qu'une seule couche ait un maillon faible afin que toute la sécurité en soit compromise.
Le problème est dans ce graphique qu'on enseigne à tous les futurs informaticiens.
Notre erreur a été de vouloir sécuriser les protocoles Internet envers les mauvaises cibles (du moins on en a omis une très importante, les corporations et les gouvernements).
C'est une bonne chose que le trafic HTTP passe par SSL/TLS mais la sécurité reste compromise tant que les sites tels que Instagram, Discord etc... stockent leurs messages en clair (du moins aux yeux des propriétaires de cesdites plateformes). La couche Application est compromise par défaut.
Tant que nous ne colmaterons pas cette brèche, tous ces efforts auront été insuffisants. Fort heureusement, je ne pars pas pessimiste, je crois au fait que la faille est corrigable. Nous n'avons pas à être les jouets des gouvernements toujours plus autoritaires ni des corporations plus puissantes chaque jour.
I - Utiliser des communications chiffrées E2EE
Il existe déjà des applications qui utilisent des protocoles E2EE (le E2E c'est un protocole où les deux parties sont les seules à détenir les clés de déchiffrement, le serveur du milieu ne sert uniquement au transport des messages chiffrés).
Parmi les candidats on y retrouve Signal ou même WhatsApp ironiquement (même si je resterais sceptique par rapport au dernier). Le problème c'est qu'on ne va pas se mentir, ce n'est pas forcément le plus agréable de discuter sur ces applications directement. Plein de raisons à cela, peu de fonctionnalités, manque de contacts et bien d'autres. Donc c'est un bon début mais ça se saurait si tout le monde utilisait Signal tous les jours.
II - E2EE Manuel
Il est complètement possible d'atteindre le E2E sur n'importe quelle application en réalité, il est tout à fait possible de discuter sur Instagram sans que Meta ne puisse avoir la moindre idée de la discussion qui a lieu. Cela peut sembler a priori irréaliste mais en fait l'astuce est toute bête, il suffit de refaire un échange de clés publiques entre deux personnes et de chiffrer chaque message à la main via un logiciel comme Kleopatra que j'utilise personnellement.
Ce n'est pas la mer à boire de faire marcher le logiciel, mais il faut avoir de drôles d'amis et beaucoup de temps devant soi, pour que ceux-ci acceptent de communiquer avec vous de cette façon.
III - Autre ?
En fait dans l'idéal il faudrait que les communications sur la couche applicative soient directement chiffrées sans qu'on y pense à la manière de Kleopatra mais sans qu'on s'en rende compte comme sur Signal, il faut absolument que cela devienne simple d'utilisation. Sinon personne ne le fera, la plupart des utilisateurs ne savent même pas que HTTPS est vraiment extrêmement bien sécurisé et de ce fait tout le monde l'utilise car c'est très pratique et très bien fait. La couche applicative doit être sécurisée de la même façon, de la façon la plus simple possible sans s'en rendre compte.
Les puristes ont la mauvaise tendance à dire : « Eh, si la vie privée compte, faut que tu t'investisses dessus. T'as qu'à te responsabiliser, reprendre le contrôle ! »
Mais ils ont tous tort, car la vie privée du voisin ou de mon ami, c'est aussi la mienne ; il n'existe pas de vie privée personnelle. Nous sommes tous interconnectés, si mon ami n'a aucune vie privée, indirectement la mienne est également réduite. C'est bien beau d'avoir une vie privée impeccable en local, mais si on peut lire les discussions avec tes amis, ça n'a aucun intérêt : il faut que tout le monde s'y mette. Mais très peu ont envie de passer des heures à mettre le tout en place, il faut absolument que cela soit simplifié au maximum. Pour donner un objectif : il faut que passer de la communication non chiffrée à chiffrée soit aussi dur que de passer d'un lien HTTP à un lien HTTPS, rien de plus, rien de moins.
Je travaille actuellement sur un nouveau projet qui a pour but de résoudre ce problème, je ne m'attarderais pas trop dessus pour l'instant, l'idée était surtout de mettre la lumière sur ce problème majeur de confidentialité. Des solutions existent pour l'instant imparfaites mais existantes, mais il est clair que de nouvelles solutions vont émerger bien meilleures afin de garantir ce droit humain à tous.
C'est la fin pour l'instant, mais j'aurai l'occasion de continuer ce sujet, dans les jours qui viendront.
Antoine Koltou