Facebook a lancé pendant l’été dernier Libra, une cryptomonnaie censée permettre d'acheter des biens ou d'envoyer de l'argent aussi facilement qu'un message instantané. Cependant, la cryptomonnaie Libra n’a vraisemblablement pas reçu l’accueil auquel Facebook s’attendait. Elle a soulevé de nombreuses inquiétudes liées à la protection de la vie privée et Facebook tente depuis de convaincre que Libra est sans danger. Mais d'après des explications de Stephen Diehl, un ingénieur en logiciel à Londres, Libra serait architecturalement instable.
Libra de Facebook a été décriée par beaucoup de personnes et dans le rang des politiciens, l’on pourrait dire que la monnaie électronique de Facebook n’a pas réussi à convaincre. Libra est une cryptomonnaie censée permettre aux utilisateurs d'acheter des biens ou d'envoyer de l'argent aussi facilement qu'un message instantané. En s'attaquant au domaine des cryptomonnaies, Facebook s’est lancé un défi de taille, tant il fait lui-même l'objet d'une grave crise de confiance après une série de scandales autour de sa gestion des données personnelles.
Autrement dit, Libra a pour objectif d'être un système de règlement numérique basé sur un panier de monnaies internationales qui sont gérées sur une blockchain et détenues dans une caisse commune régie en Suisse. Jusqu’ici, une grande majorité des inquiétudes énumérées autour de Libra de Facebook sont toutes liées à la protection de la vie privée, mais Stephen Diehl, un ingénieur en logiciel basé à Londres, va encore plus loin. Il pense que c’est l’architecture en général de Libra qui est instable. Stephen Diehl a structuré ce qu’il dit en six points essentiels.
Libra est architecturalement instable selon Stephen Diehl
D’après Stephen Diehl, Libra est architecturalement instable, chose qu’il expose en six points différents : la tolérance byzantine de Libra sur un réseau autorisé est une conception incohérente, Libra n'a aucune confidentialité de transaction, Libra HotStuff BFT n'est pas capable d'atteindre le débit nécessaire pour un rail de paiement, le langage Move utilisé par Libra n'est pas sécurisé, l'ingénierie cryptographique de Libra n'est pas solide et finalement il estime que Libra n'a aucune capacité pour les mécanismes de protection des consommateurs.
Dans un billet de blogue, Diehl a expliqué que c’est en se référant au code source de Libra sur GitHub qu’il a tiré ces conclusions. Il estime que ce qui est présenté à monsieur tout le monde, c'est un artefact de code architecturalement schizophrène qui est une nouvelle plateforme fiable pour l'infrastructure de paiement mondiale. Pourtant, l'implémentation réelle s'écarte de cet objectif de manière bizarre lorsqu'on plonge dans la base de données du code. Selon lui, le fond du projet s’écarte totalement de ce qui est défini et présenté.
« Je suis sûr qu'il y a une histoire intéressante au sujet de la politique d'entreprise interne de Libra et, à ce titre, j'ai pensé qu'il était approprié de faire preuve d'une certaine diligence sur ce que je considère comme un ensemble vraiment étrange de choix architecturaux qui brisent le système entier et mettent les consommateurs en danger », a-t-il déclaré. Diehl a déclaré qu’il est clair qu'il y a une tromperie fondamentale dans l'objectif déclaré et la mise en œuvre du projet. « Bref, ce projet ne responsabilisera personne », a-t-il écrit dans son billet.
Diehl pense que l'objectif à long terme de Facebook est d'agir comme un courtier en données et un médiateur pour l'accès des consommateurs au crédit en fonction de leurs données privées sur les médias sociaux. « C'est une histoire si terrifiante et si dystopique qu'elle devrait être plus alarmante qu'elle ne l'est », dit-il. Voyons plus en détail les points que Diehl évoque lorsqu’il déclare qu’il y a plusieurs erreurs architecturales fondamentales dans ce projet.
La tolérance byzantine de Libra sur un réseau autorisé est une conception incohérente
La tolérance aux pannes byzantine est un domaine spécialisé de la recherche sur les systèmes distribués qui concerne la capacité d'un système en réseau à supporter des pannes arbitraires de ses composants tout en prenant des mesures correctives critiques pour le fonctionnement du système. Les réseaux qui sont tolérants à l'égard des byzantins doivent résister à plusieurs types d'attaques, y compris les événements comme les redémarrages, les pannes, les charges utiles malveillantes et le vote malveillant lors des élections des dirigeants.
Selon Diehl, cette décision de conception est centrale à Libra et n'a aucun sens. Il estime que dans le cas d'un système conçu pour être géré par un consortium d'entreprises multinationales hautement réglementées, qui utilisent toutes un code signé Facebook et un accès contrôlé par Facebook, il n'est tout simplement pas logique de traiter avec des acteurs malveillants au niveau du consensus. « Pourquoi ce système est-il conçu pour être tolérant à l'égard des byzantins plutôt que de simplement maintenir un journal d'audit cohérent pour les contrôles de conformité ? », a-t-il demandé.
D’après lui, la surcharge de l'algorithme de consensus ne sert à rien et ne fera que limiter le débit de l'ensemble du système. Il semble n'y avoir ici aucune autre raison que la technologie de la blockchain publique qui cultive les cargaisons et n'est pas conçue pour ce cas d'utilisation. De plus, il a déclaré que dans les témoignages faits devant le Congrès, le produit a été présenté comme un challenger aux nouveaux protocoles de paiement internationaux tels que WeChat, Alipay et M-Pesa. Pourtant, aucun de ces systèmes n'est conçu pour fonctionner sur des pools de validateurs tolérants byzantins.
Libra n'a aucune confidentialité de transaction
Selon le livre blanc, le système est conçu pour être pseudonyme, ce qui signifie que les adresses utilisées dans le protocole sont dérivées de clés publiques à courbe elliptique et ne contiennent aucune métadonnée sur les comptes. Cependant, Diehl a dit que nulle part dans la description de la structure de gouvernance de l'organisation ou dans le protocole lui-même il n'est indiqué comment les données économiques impliquées dans les transactions seront cachées aux validateurs. Le système est conçu pour être un très grand moyen de répliquer des transactions à un certain nombre de parties externes.
Ainsi, en vertu des lois existantes sur le secret bancaire en Europe et aux États-Unis, ce système ne devrait pas être au courant des détails économiques. D’après ses explications, le fait que le protocole lui-même soit complètement ouvert par défaut aux membres des consortiums constitue un défaut évident de conception technique, inadapté pour répondre aux exigences pour lesquelles il a été conçu.
Le langage Move utilisé par Libra n'est pas sécurisé
Diehl explique que le livre blanc contient une série d'affirmations sur un nouveau langage non testé appelé Move, qui sont assez douteuses du point de vue de la théorie des langages de programmation (PLT). Move est un nouveau langage de programmation pour implémenter une logique de transaction personnalisée et des contrats intelligents sur la blockchain Libra. Selon Diehl, dans les blockchains publiques, les contrats intelligents font référence à une logique déployée sur des réseaux publics permettant de blanchir de l'argent, d’émettre des valeurs mobilières et de produits de jeu extralégaux.
Il estime que celles-ci sont typiquement faites dans un langage terriblement mal conçu appelé Solidity, qui, d'un point de vue académique PLT, fait de PHP un travail de génie. « Curieusement, le nouveau langage conçu par Facebook ne semble pas avoir de cas d'utilisation commun avec ces technologies, car il s'agit en fait d'un langage de script conçu pour des cas d'utilisation d'entreprise peu clairs », a-t-il déclaré. Toujours sur ce point, il estime qu’il est impossible de répondre à l'affirmation selon laquelle Move est solide et sécurisé, car les affirmations semblent se réduire à une simple forme d'agitation manuelle et de marketing plutôt qu'à une preuve réelle.« C'est une position alarmante pour un projet d'ingénierie linguistique qui s'attend à ce que le public lui fasse confiance pour gérer des milliards de dollars », a-t-il déclaré.
L'ingénierie cryptographique de Libra n'est pas solide
Selon Diehl, Libra dépend de plusieurs bibliothèques récentes “wild west” pour construire des cryptosystèmes expérimentaux qui n'ont vu le jour qu'au cours des dernières années. Il est impossible de dire si les dépendances à l'égard de ces outils sont sécuritaires ou non, car aucune de ces bibliothèques n'a fait l'objet de vérifications de sécurité et n'a de politique de divulgation des pratiques courantes. D’après lui, plusieurs bibliothèques de base en particulier sont indéterminées sur leurs vulnérabilités aux attaques par canal secondaire et de synchronisation.
Pour lui, ces techniques et ces bibliothèques sont peut-être solides, mais leur fusion en un seul système pourrait soulever de sérieuses préoccupations au sujet de la superficie de la surface d'attaque. La combinaison de tous ces nouveaux outils et techniques rend la charge de la preuve beaucoup plus lourde. « Il faut supposer que toute cette pile est vulnérable à une variété d'attaques jusqu'à preuve du contraire. Le modèle “agir vite et casser les choses” ne devrait pas s'appliquer aux outils cryptographiques qui traitent les données financières des consommateurs », a-t-il écrit.
Libra n'a aucune capacité pour les mécanismes de protection des consommateurs
Diehl a expliqué que l'une des caractéristiques d'un rail de paiement est la possibilité d'annuler une transaction au cas où les paiements devraient être annulés par une action en justice ou s'ils entraînent un dysfonctionnement accidentel ou un dysfonctionnement du système. Le système Libra est conçu pour avoir une “finalité totale” et n'inclut pas un type de transaction pour annuler un paiement. Selon lui, le système actuel ne comprend aucun protocole pour se conformer aux lois sur la protection des consommateurs et a un plan clair pour en construire un.
« Pire encore, à partir d'une architecture de données, la finalité de la structure de données authentifiée basée sur un état d'accumulateur Merkle n'admet aucun mécanisme permettant de l'intégrer au grand livre sans une nouvelle conception du noyau », a-t-il ajouté. Pour conclure, Diehl estime qu’avant d'essayer de perturber la politique monétaire mondiale, un travail technique considérable est nécessaire pour créer un réseau fiable auquel le public et les régulateurs pourraient faire confiance pour gérer en toute sécurité les données des utilisateurs.
« Je ne vois aucune raison de penser que Facebook a effectué le travail technique nécessaire pour résoudre ces problèmes techniques dans son projet et n’a aucun avantage technique par rapport à l’infrastructure existante qui fonctionne déjà. Revendiquer que son entreprise a besoin de flexibilité réglementaire pour explorer l'innovation n'est pas une excuse pour ne pas le faire », a-t-il conclu.
Source : Stephen Diehl
Et vous ?
Quel est votre avis sur le sujet ?
Êtes-vous ou pas du même avis que Stephen Diehl ? Pourquoi ?
A-t-il raison ou pas selon vous ?
Voir aussi
Libra : la nouvelle crypto-monnaie de Facebook basée sur la blockchain avec son propre portefeuille numérique. Un Bitcoin-killer ?
Open Libra, un fork du projet Libra, se présente comme une alternative « non gérée par Facebook » qui va rester compatible avec Libra sur le plan technique
La France et l'Allemagne se montrent réticentes face à l'ouverture des opérations de Libra en Europe, le projet de cryptomonnaie de Facebook ne parvient pas à les convaincre
Libra : Facebook renonce à sa vision ambitieuse sur la cryptomonnaie, suite aux pressions des régulateurs
La cryptomonnaie Libra de Facebook serait architecturalement instable selon Stephen Diehl
Un ingénieur en logiciel
La cryptomonnaie Libra de Facebook serait architecturalement instable selon Stephen Diehl
Un ingénieur en logiciel
Le , par Bill Fassinou
Une erreur dans cette actualité ? Signalez-nous-la !