Le protocole à l’origine de la monnaie électronique bitcoin recèle une autre révolution technique : la blockchain. Le mathématicien Ricardo Pérez Marco explique pourquoi cette chaîne de confiance décentralisée intéresse de plus en plus banques, assurances et offices notariaux.

Les développements des applications cryptographiques sont un moteur pour le développement de l’économie numérique. Ils ont permis la sécurisation des communications, l’authentification des documents informatiques, la protection de données sensibles. Tout cela a permis l’essor d’activités économiques comme la banque ou le commerce en ligne.

Mais, plus récemment, on a vu apparaître un nouveau type d’applications qui promet une révolution d’ampleur inédite : les protocoles de confiance décentralisés. Tout a commencé par l’invention de Bitcoin. Le bitcoin, créé en 2009, est la première monnaie électronique décentralisée. Personne ne contrôle sa création ou son émission, et aucun gouvernement ni banque centrale n’a le pouvoir de bloquer les fonds d’un compte de bitcoin. N’importe qui peut créer son propre compte en bitcoin de façon anonyme et autonome sans avoir à se connecter à un service tiers. En fait, c’est comme s’il suffisait de jouer à pile ou face 256 fois pour, à partir de ces 256 bits, générer une adresse bitcoin totalement fonctionnelle susceptible de recevoir et de transférer des bitcoins. Il existe heureusement des logiciels qui créeront autant d’adresses bitcoin que vous le souhaitez et se chargeront ensuite de gérer vos transactions. Le protocole Bitcoin permet en effet de transférer de l’argent de façon sécurisée et sans intermédiaire sur des réseaux non sécurisés, et ce avec un niveau de sécurité de plusieurs ordres de grandeur supérieur à celui de Visa. Derrière ce tour de force, il y a la technologie blockchain, à la base du protocole.

Des transactions hautement sécurisées

Comment cela fonctionne-t-il ? L’idée consiste à entretenir et à diffuser une base de données publique (la blockchain) qui récapitule toutes les transactions en bitcoin validées depuis l’émission des 50 premiers bitcoins, le 3 janvier 2009. C’est précisément l’exhaustivité de ce livre de compte qui permet à tout moment de savoir quel bitcoin appartient à quel compte. En effet, chaque membre du réseau Bitcoin ayant accès à une copie de la blockchain, chacun est donc en mesure, en remontant l’histoire des transactions passées, de déterminer si une transaction est valide ou pas.

Ce réseau de confiance, tout le monde peut y contribuer, la seule condition pour le rejoindre est d’installer sur sa machine un logiciel qui allouera de la puissance de calcul pour contribuer à la validation des transactions. Le principe est le suivant : les transactions en cours sont retransmises publiquement dans le réseau Bitcoin où les « validateurs » (ou mineurs dans le vocabulaire du bitcoin) les vérifient et les regroupent en blocs qui doivent ensuite être validés pour être intégrés à la blockchain. Le problème qui se pose alors est d’éviter que des agents malhonnêtes ne corrompent le système en validant des transactions fictives ou illégales, comme dépenser deux fois le même bitcoin.

On dispose

d’un algorithme

mathématique qui

garantit la validité

des transactions

tant que la

majorité des agents

sont honnêtes. La solution est d’utiliser une « preuve de travail » (Proof of Work en anglais), une procédure qui consiste à lier la validation d’un bloc à la résolution d’un problème mathématique difficile basé sur une fonction cryptographique et portant sur les données de ce bloc. Le premier mineurFermerLe terme de mineur a été choisi par analogie avec les exploitants des mines d’or du temps où la valeur des monnaies était déterminée par leur équivalent or : la preuve de travail numérique constituant ici l’équivalent du travail nécessaire à l’extraction du métal précieux. qui obtient la solution est récompensé par les nouveaux bitcoins créés à chaque validation de bloc. La chance de résoudre un bloc, et d’empocher les bitcoins créés, est ainsi proportionnelle à la puissance de calcul apportée par le mineur. Une fois la solution obtenue, elle est inscrite dans le bloc et les autres mineurs n’ont plus qu’à la vérifier et approuver – ou rejeter si la solution est invalide – l’ajout du nouveau bloc de transactions à la blockchain.

On notera que, comme c’est souvent le cas pour les fonctions cryptographiques, cette vérification réclame infiniment moins de puissance de calcul et donc de temps que la découverte de la solution : il est par exemple beaucoup plus facile de vérifier que 53 multipliés par 113 font bien 5 989 que de retrouver les facteurs qui permettent de générer 5 989. Cette dissymétrie entre validation et vérification, combinée au caractère ouvert, décentralisé et massivement distribué du réseau, rend ainsi quasiment impossible pour un agent ou un organisme malveillant d’introduire des transactions illégales. Au final, on dispose ainsi d’un algorithme mathématique qui garantit la validité des transactions tant que la majorité des agents sont honnêtes.

Un fichier incorruptible

Cette robustesse du protocole s’incarne dans la blockchain, un fichier qui rassemble donc l’ensemble des blocs validés. Celle-ci est incorruptible car, pour la falsifier, il faudrait déployer la totalité de la puissance de calcul qui a été utilisée pour valider chacun de ses blocs. Une tâche virtuellement impossible au vu de la puissance actuelle du réseau Bitcoin, qui dépasse aujourd’hui les 15 millions de PetaFLOPS ; sachant que l’ordinateur actuel le plus puissant tourne à quelques dizaines de PetaFLOPS.

Certaines

universités ont

déjà commencé

à utiliser la

blockchain pour

authentifier les

diplômes délivrés

à leurs étudiants. Ce fichier incorruptible peut ainsi être utilisé non seulement pour vérifier la validité des transactions bitcoin, mais aussi pour authentifier, certifier et dater des actes ou des documents qui nécessitent une autorité de confiance. Le protocole permet en effet d’insérer dans chaque transaction bitcoin une empreinte électronique unique pour n’importe quel document digital, et donc d’attester de son existence sans recours à un notaire professionnel. On peut ainsi incruster dans la blockchain l’empreinte du texte « Bob a rejoint l’équipe A » ; celui-ci y restera pour toujours et servira de preuve d’existence de l’acte.

Certaines universités ont déjà commencé à utiliser la blockchain pour authentifier les diplômes délivrés à leurs étudiants. Le premier dans le monde à le faire a été le pôle universitaire Léonard de Vinci, à Paris. Tous les services dépendant d’une autorité de confiance – qu’il s’agisse des services d’achat et vente ou enchères, des offices notariaux, des compagnies d’assurances, etc. – commencent à s’intéresser à cette technologie. En ce sens, Bitcoin constitue une innovation de rupture et un parfait exemple de l’impact révolutionnaire que peuvent avoir sur l’activité économique les recherches fondamentales en mathématiques, en cryptographie et en informatique.

Les points de vue, les opinions et les analyses publiés dans cette rubrique n’engagent que leur auteur. Ils ne sauraient constituer une quelconque position du CNRS.