Qu’est-ce qui sécurise Bitcoin ?

Bitcoin est un concept de monnaie numérique fonctionnant sur Internet qui a été créé en 2008 par Satoshi Nakamoto. Mis en application à partir du 3 janvier 2009, il a parcouru un long chemin qui l’a mené à devenir ce qu’il est aujourd’hui, à la fois d’un point de vue technique, économique et social. Néanmoins, il existe toujours des incompréhensions à son égard, y compris chez ceux qui pensent avoir saisi ses principes de base. C’est en particulier le cas de son modèle de sécurité qui reste flou pour beaucoup de personens.

Dans Bitcoin, une foule de notions interviennent. Le système est fondé sur un réseau public et décentralisé de nœuds qui font tourner un logiciel open source. Ces nœuds vérifient des opérations cryptographiques et entretiennent un registre distribué et horodaté appelé la chaîne de blocs, registre où sont enregistrées toutes les transactions d’une unité de compte, le bitcoin. Au sein de ce réseau, un certain nombre d’acteurs, appelés des mineurs, utilisent la puissance de calcul de leurs machines afin de valider les transactions effectuées par le réseau, et reçoivent en échange une rémunération en bitcoins. Tout cela forme un tout harmonique qui permet à Bitcoin d’exister depuis quasiment douze ans.

Cependant, ce qui sécurise Bitcoin, ce n’est pas la cryptographie, la chaîne de blocs, le logiciel libre, la décentralisation ou la puissance de calcul. Ce qui sécurise Bitcoin, c’est l’action combinée d’individus, de personnes de chair et d’os mues par leurs intérêts, de gens qui prennent des décisions et qui s’exposent à des risques personnels. Bitcoin est en effet un système économique et, en tant que tel, base sa sécurité sur le comportement intéressé des êtres humains1.

 

Qu’est-ce qui préserve la qualité de l’infrastructure logicielle ?

Bitcoin est un protocole de communication qui permet l’existence et la circulation d’une unité de compte numérique, le bitcoin. Ce protocole est un ensemble de règles et ne peut donc pas directement être utilisé par un individu : il faut pour cela qu’il existe une implémentation logicielle, à savoir un programme qui respecte et vérifie ces règles.

L’écosystème autour de Bitcoin repose donc sur ces implémentations logicielles, qui peuvent être complètes (nœuds du réseau) ou partielles (portefeuilles légers). Bien évidemment, les implémentations complètes sont les plus essentielles à la sécurité de Bitcoin, puisque ce sont elles qui servent à valider les transactions et à miner les blocs. En particulier, Bitcoin Core, l’implémentation de référence de Bitcoin (BTC), joue un rôle central dans l’infrastructure du réseau.

Comme tous les programmes informatiques complexes, Bitcoin Core n’est pas exempt de faiblesses, ce qui au cours de son histoire s’est matérialisé par deux incidents majeurs :

  • En août 2010, une faille dans le système des transactions (value overflow) avait permis à une personne de créer plus de 184 milliards de bitcoins à partir de rien ! Cet incident avait heureusement pu être corrigé dans les heures qui avaient suivi grâce à la mobilisation des mineurs qui avaient appliqué un patch correctif. À l’époque, cela n’avait pas été dommageable pour Bitcoin, qui ne gérait que peu de valeur.
  • En mars 2013, un défaut contenu dans la mise à jour du code avait provoqué la séparation accidentelle du réseau pendant plusieurs heures. Bitcoin était alors beaucoup plus utilisé et cette séparation momentanée avait notamment entraîné la réalisation d’une double dépense par un utilisateur.

C’est pour cela qu’il est crucial que le logiciel derrière Bitcoin soit bien maintenu, optimisé, amélioré. Bitcoin représente aujourd’hui près de 300 milliards de dollars et déplace des dizaines de milliards de dollars chaque jour, et par conséquent il serait désastreux qu’un dysfonctionnement majeur survienne.

Pour assurer la sécurité du logiciel, il existe donc des dizaines de personnes, identifiées ou anonymes, qui s’attellent à scruter et à perfectionner le code, à temps plein ou à temps partiel. Puisque Bitcoin Core est un logiciel libre disponible en source ouverte sur Internet, n’importe qui peut consulter le code, vérifier qu’il est conforme au résultat attendu ou même proposer de le modifier pour l’améliorer ! Tel que l’expliquait Satoshi Nakamoto en décembre 2009 :

Être accessible en source ouverte signifie que n’importe qui peut examiner le code de manière indépendante. S’il s’agissait d’une source fermée, personne ne pourrait vérifier la sécurité. Je pense qu’il est essentiel pour un programme de cette nature d’être open source.

Cette ouverture, couplée à une dette technique limitée, donne à Bitcoin une sûreté plus grande que de nombreux systèmes informatiques. En effet, au vu des sommes en jeu, la récompense pour l’exploitation réussie d’une faille dans le code serait énorme, ce qui renforce la confiance qu’on peut avoir dans le logiciel au cours du temps (effet Lindy).

De plus, les failles dans le code sont, outre leur rareté, le plus souvent très subtiles, ce qui fait que ce sont les développeurs bienveillants qui les découvrent et qui les rapportent. On peut par exemple citer le bogue d’inflation trouvé et révélé en septembre 2018 par Awemany, développeur pour Bitcoin Unlimited, ou la faille permettant des attaques par déni de service rapportée en juin 2018 par Braydon Fuller, développeur pour Bcoin, et révélée publiquement plus deux ans plus tard, en septembre 2020.

Enfin, il faut spécifier que l’infrastructure logicielle n’est pas maintenue gratuitement et qu’elle est soutenue financièrement par les organisations et les individus dont l’activité dépend de la qualité du fonctionnement du réseau. C’est ainsi que des entreprises impliquées dans Bitcoin acceptent de rémunérer les principaux développeurs de Bitcoin Core, pas par charité, mais parce qu’elles ont quelque chose à gagner.

Tout ceci fait que la sécuité du logiciel s’améliore au cours du temps, que les vulnérabilités sont détectées et maîtrisées et que, en presque douze ans d’existence, seules deux d’entre elles ont provoqué un incident majeur. Bitcoin ne repose donc pas sur des logiciels magiques qui fonctionneraient parfaitement bien, mais sur l’action des développeurs qui maintiennent des implémentations faillibles et sur l’aide des mécènes qui financent ce développement.

 

Qu’est-ce qui assure le bon traitement des transactions ?

Bitcoin permet à quiconque d’envoyer des fonds à n’importe qui d’autre, quel que soit le moment, où que se trouve le destinataire dans le monde pourvu qu’il dispose d’un accès à Internet. Il est ainsi résistant à la censure, c’est-à-dire qu’il est très difficile pour une entité d’empêcher arbitrairement une transaction d’être réalisée.

La résistance à la censure est très importante car si Bitcoin n’avait pas cette propriété, il ne pourrait tout simplement pas survivre. Il deviendrait en effet un système bancaire comme un autre, soumis aux réglementations invasives des États : il devrait s’adapter à l’instar de PayPal, ou mourir sous les coups des interventions étatiques, destin funeste qu’ont connu e-gold ou Liberty Reserve en leur temps.

Le bon traitement des transactions dans Bitcoin implique donc deux garanties qui le distinguent des systèmes bancaires traditionnels :

  • Toute transaction qui paie un montant correct de frais ne peut pas être délaissée (sécurité a priori) ;
  • Toute transaction qui a été confirmée doit demeurer dans le registre et ne peut pas faire l’objet d’une double dépense (sécurité a posteriori).

Ce bon traitement est assuré par ce qu’on appelle le minage. Les mineurs, qui font partie du réseau, reçoivent les transactions des utilisateurs et les incluent dans des blocs. Ils rattachent ces blocs à la chaîne par la résolution d’un problème mathématique nécessitant une dépense d’énergie électrique (preuve de travail) et sont en échange récompensés par les bitcoins nouvellement créés (6,25 bitcoins par bloc actuellement) et par les frais payés par les transactions. Pour déterminer la chaîne valide les nœuds suivent le principe de la chaîne la plus longue, c’est-à-dire qu’ils considèrent que la chaîne contenant le plus de preuve de travail (grosso modo celle avec le plus de blocs) est la chaîne valide. Cela permet au réseau d’arriver à un consensus sur l’état du système.

Bitcoin repose donc sur la dépense d’énergie pour fonctionner, car c’est elle qui détermine le caractère infalsifiable de la chaîne et des bitcoins créés. Le taux de hachage, qui désigne le nombre de calculs par seconde réalisés par le réseau, atteint aujourd’hui les 130 EH/s, à savoir 130 milliards de milliards de calculs par seconde. Cette considérable force de calcul consomme aujourd’hui, selon certaines estimations, plus de 82 TWh par an, soit une dépense énergétique égalant la consommation d’électricité de pays comme la Belgique ou la Finlande.

 

Taux de hachage Bitcoin BTC 2010 2020
Évolution du taux de hachage de Bitcoin entre 2010 et 2020 (Bitcoin.com Charts)

 

Néanmoins, en dépit de son rôle central, ce n’est pas sur cette énergie que se fonde la sécurité du minage. En effet, la sécurité vient de la concurrence entre les mineurs, et pas de l’énergie totale dépensée. Comme l’écrivait Satoshi Nakamoto dans le livre blanc de Bitcoin en 2008 :

Le système est sécurisé tant que les nœuds honnêtes contrôlent collectivement plus de puissance de calcul qu’un groupe de nœuds qui coopéreraient pour réaliser une attaque.

L’important ce n’est pas que le taux de hachage de Bitcoin soit le plus haut possible, c’est que les mineurs disposant d’une puissance de calcul non négligeable soient « honnêtes », c’est-à-dire qui soient prêts à miner systématiquement toutes les transactions payant un montant correct de frais (pas de censure a priori) et à toujours construire leurs blocs à partir de la plus longue chaîne (pas de réorganisation de chaîne).

Imaginons (cas pessimiste) que les États membres de l’ONU se mettent d’accord sur la dangerosité de Bitcoin et décrètent l’interdiction de certaines transactions sur Bitcoin, les transactions de mélange de pièces au nom de la lutte contre le blanchiment d’argent par exemple. Dans ce cas, les mineurs pourraient être soumis à de fortes pressions de la part de leurs autorités respectives, et devraient faire le choix de continuer à être honnêtes en se déplaçant dans un pays non concerné ou en minant illégalement, ce qui constitue dans les deux cas un risque, ou de devenir des attaquants en suivant la loi. Cette réglementation des mineurs par les États permettrait, si leur matériel représentaient plus de la moitié de la puissance de calcul du réseau, d’empêcher toute confirmation d’une transaction illégale par le biais d’une attaque des 51 % mondiale.

La solution au problème proviendrait des individus et des groupes d’individus qui seraient prêts à miner des transactions déclarées comme illégales, et qui resteraient donc honnêtes du point de vue de Bitcoin. Le risque pris par ces mineurs pourrait alors être compensé par les frais des transactions censurées, qui pourraient s’avérer être très élevés, surtout si des montants astronomiques étaient en jeu.

C’est pour cela que la bon fonctionnement des transactions vient du comportement des mineurs, pas uniquement de la puissance de calcul du réseau. Pour que Bitcoin soit correctement sécurisé, il faut donc que les mineurs soient nombreux (partage du risque) et se trouvent à des endroits différents du monde (décentralisation).

 

Carte de localisation des mineurs avril 2020
Répartition géographique des mineurs utilisant les coopératives BTC.com, Poolin et ViaBTC en avril 2020 (Cambridge Center for Alternative Finance)

 

 

Qu’est-ce qui garantit la limite des 21 millions de bitcoins ?

Lorsqu’on entend parler du bitcoin, il ne faut pas attendre longtemps avant que sa politique monétaire singulière soit évoquée. Le bitcoin suit en effet un processus d’émission très précis qui limite sa quantité d’unités en circulation à 21 000 000 : les fameux 21 millions de bitcoins.

Bien que le principe soit brièvement décrit dans le livre blanc, cette politique monétaire n’a été définie rigoureusement par Satoshi Nakamoto que le 8 janvier 2009 dans son annonce du lancement de Bitcoin :

La circulation totale sera de 21 000 000 de pièces. Elle sera distribué aux nœuds du réseau lorsqu’ils créeront des blocs, le montant étant divisé par deux tous les 4 ans.

les 4 premières années : 10 500 000 pièces
les 4 années suivantes : 5 250 000 pièces
les 4 années suivantes : 2 625 000 pièces
les 4 années suivantes : 1 312 500 pièces
etc…

Cela fait du bitcoin une monnaie dure à produire à l’inverse des monnaies fiat imposées par les États, comme l’euro ou le dollar, dont la gestion de la masse monétaire est déléguée à des banques centrales. Bitcoin donne ainsi aux individus la possibilité d’épargner une monnaie qui ne perd pas en valeur au cours du temps, et qui empêche au passage les acteurs financiers proches du pouvoir de profiter de l’effet Cantillon.

La politique monétaire du bitcoin constitue donc une propriété révolutionnaire qui n’a même pas été appliquée par le passé et beaucoup la mettent en valeur comme une propriété gravée dans le marbre qui ne pourrait absolument pas être modifiée. Néanmoins ce n’est pas le cas, et cette « résistance à l’inflation » doit être, tout comme la résistance à la censure, sécurisée par des individus qui agissent en ce sens.

Bitcoin est un protocole de communication, un ensemble de règles qui permettent à des gens de transférer de la valeur entre eux, et en cela il peut évoluer. Les règles de consensus qui définissent Bitcoin ne sont en effet pas figées et peuvent faire l’objet de changements, comme l’ont montré les différentes améliorations qui ont jalonné l’existence de Bitcoin telles que P2SH, les verrous temporels ou SegWit.

De plus, l’évolution du protocole peut se faire dans un sens non prévu originellement, ce qui a eu lieu à de multiples reprises dans l’histoire des cryptomonnaies.

En juin 2016, Ethereum a ainsi violé l’immuabilité de sa propre chaîne en annulant le piratage d’un contrat autonome (TheDAO) où 3,6 millions d’éthers, qui représentaient plus de 45 millions d’euros. Cette somme dérobée représentait 4,4 % de la quantité totale d’éthers en circulation, et une majorité économique (à commencer par Vitalik Buterin) a donc décidé de revenir sur ce transfert le 20 juin. Un groupe dissident a refusé, ce qui a créé une autre chaîne où le piratage était toujours présent, qui s’appelle aujourd’hui Ethereum Classic.

De même, Bitcoin a changé depuis ses débuts et n’est plus le même qu’en 2011. Le principal changement n’est pas un modification du protocole en soi, mais un changement de vision : les visions d’une monnaie d’échange et d’un moyen de transfert anonyme, qui étaient prédominantes aux débuts de Bitcoin, se sont estompées au profit de la vision d’un or numérique qui servirait de monnaie de réserve. Même si les premières visions subsistent au travers du projet Lightning et des logiciels dédiés à la confidentialité (Wasabi, Samourai, JoinMarket), elles sont devenues néanmoins minoritaires dans la communauté de Bitcoin. En effet, les gens s’enthousiasment plus aujourd’hui pour les investissements de grandes entreprises comme MicroStrategy et Square, ou pour l’intégration 100 % custodiale du bitcoin dans PayPal, que pour l’échange commercial ou pour l’usage réalisé sur le dark web.

 

Visions de Bitcoin Nic Carter Hasu
Visions de Bitcoin (Nic Carter et Hasu).

 

Ce changement de narration s’est accompagné d’un maintien conservateur du protocole, notamment par le biais d’une restriction de sa capacité transactionnelle. Cette restriction a pour effet de préserver la décentralisation du minage donc la sécurité de la chaîne, mais aussi d’accroître considérablement les frais de transaction payés par les utilisateurs, qui peuvent actuellement être de plusieurs euros en moyenne pour un traitement rapide par le réseau2.

Face à ces changements, nous sommes donc en droit de nous demander quelle est la force qui empêche la politique monétaire de Bitcoin d’être modifiée, ce qui nous amène naturellement à la question plus générale de la gouvernance de Bitcoin, c’est-à-dire la manière dont il est dirigé. Qui décide de l’avenir du protocole ?

D’une part, certains pensent que la gouvernance est la prérogative des développeurs du protocole, que ceux-ci sont en charge de ce qui doit ou non être intégré. Pour Bitcoin, ce serait le cas de l’implémentation de référence, Bitcoin Core, et de son mainteneur principal, Wladimir van der Laan, qui possèdent les droits sur le dépôt GitHub. Il est en effet vrai que les développeurs ont une certaine influence sur le protocole en acceptant ou en refusant d’inclure une modification : par effet d’inertie, ils ont un poids dans les choix qui vont être faits, car tout changement non consenti par eux devrait être implémenté par une nouvelle équipe peut-être moins expérimentée et moins bien financée. Néanmoins, si un changement majeur et controversé en venait à être proposé (comme le serait probablement une violation de la politique monétaire du bitcoin), les développeurs n’auraient aucune chance de voir leur modification être acceptée. C’est notamment ce qui s’est passé pour Bitcoin ABC, l’implémentation principale du protocole Bitcoin Cash, qui se voit aujourd’hui être exclue pour avoir tenté de rediriger 8 % de la récompense de bloc à ses fins.

D’autre part, une opinion assez répandue suppose que ce sont les mineurs qui doivent décider de l’évolution du protocole, notamment par le biais de votes proportionnés à leur puissance de calcul. Ces mineurs sont en effet garants de l’intégrité de la chaîne de blocs et possèdent un rôle majeur dans Bitcoin. Il est donc évident qu’une version de Bitcoin privilégiée par les mineurs a plus de chances de prospérer qu’une version concurrente qui serait plus sensible à la censure. Cependant, ce ne sont pas les mineurs qui possèdent le réel pouvoir sur le protocole, pour la simple et bonne raison que ce ne sont pas eux qui contribuent à valoriser l’unité de compte. En raisonnant par l’absurde, on pourrait dire que si les mineurs étaient réellement en charge du protocole, le système économique de Bitcoin serait voué à l’échec : ils seraient en effet incités à augmenter leurs revenus par la création monétaire à l’instar des banques centrales.

Tout ceci nous amène à la troisième catégorie d’acteurs impliqués dans Bitcoin : les utilisateurs, ou plutôt les marchands, c’est-à-dire les personnes qui acceptent le bitcoin comme moyen de paiement pour un bien ou un service. Cette catégorie des marchands est à prendre au sens large et inclut, outre les commerçants classiques, les épargnants et les spéculateurs qui échangent de l’euro contre du bitcoin. Le fait est que ce sont ces utilisateurs qui, par l’usage direct ou indirect d’un nœud complet, décident réellement de la direction dans laquelle Bitcoin doit aller, car ce sont eux qui apportent de la valeur au bitcoin.

Lorsqu’en novembre 2017 il a été question de doubler la capacité transactionnelle de Bitcoin par le biais d’une mise à niveau appelée SegWit2X, les utilisateurs ont refusé. Cette proposition, soutenue par la majorité des mineurs et par une grande part des entreprises du milieu, a été annulée avant son activation au vu de l’impopularité de celle-ci. Ainsi, c’est le sectarisme des utilisateurs et des détenteurs de bitcoins, attisé par un certain nombre d’influenceurs, qui a prévalu dans l’affaire, chose que pressentait Satoshi Nakamoto dès décembre 2010 :

Les utilisateurs de Bitcoin pourraient devenir de plus en plus sectaires à propos de la limitation de la taille de la chaîne pour que son accès reste facile pour beaucoup d’utilisateurs et pour les petits appareils.

Le modèle économique de Bitcoin est ainsi protégé par ces marchands qui, par le biais d’une conservation plus ou moins longue, sont incités à faire en sorte que la valeur du bitcoin ne baisse pas, et même qu’elle augmente. Il est donc dans leur intérêt de ne pas modifier la politique monétaire déflationniste du bitcoin. De plus, la limite des 21 millions de bitcoins est un point de Schelling fort qui dévantagerait toute tentative de changement.

Néanmoins, ce modèle n’est pas magique et, tout comme le minage, repose essentiellement sur la résistance individuelle des marchands aux pressions, qu’elles soient intérieures (la proposition d’une émission monétaire pour protéger la chaîne par exemple) ou extérieures.

Le cas d’une pression extérieure est le plus parlant. De manière pessimiste, on pourrait imaginer qu’un décret appliqué par les États membres de l’ONU impose par la loi une création monétaire qui reviendrait à une banque centrale mondiale, et qui rendrait illégale la version déflationniste de Bitcoin. Dans ce dernier cas, le destin de Bitcoin serait entre les mains aux marchands, qui devraient faire preuve de courage en refusant ce décret et en acceptant le bitcoin interdit, soit en toute illégalité dans leur pays, soit dans un pays non concerné.

Ainsi, à l’instar du bon traitement des transactions qui est garanti par les mineurs et renforcé par la décentralisation du minage, la défense de la politique monétaire est assurée par les marchands et affermie grâce à leur degré d’indépendance : moins il y a de marchands capables de continuer leur activité dans l’illégalité ou depuis des lieux non réglementés, notamment par la gestion de leur propre nœud complet, moins le bitcoin est résistant à l’inflation.

 

Conclusion

Bitcoin est un système économique basé sur l’action d’individus libres. Sa sécurité ne provient donc pas des concepts sous-jacents à son fonctionnement comme la cryptographie, la chaîne de blocs, le logiciel libre, la décentralisation ou la puissance de calcul, mais de la volonté humaine des personnes qui œuvrent chaque jour à sa survie. Bitcoin ne serait pas là sans ses développeurs bienveillants, ses mineurs soucieux de la résistance de la chaîne et ses marchands prêts à tout pour conserver un protocole sain.

Bitcoin peut ainsi être dénigré, réglementé, interdit, attaqué, combattu, mais il ne pourra pas être détruit dans son principe tant qu’il y aura des gens derrière lui. C’est pourquoi sa communauté est si cruciale : même dans les pires moments de doute, il y aura toujours des personnes prêtes à programmer, à miner et à valoriser le bitcoin. Ainsi, malgré les restrictions imposées par les États et les efforts des banques centrales pour le singer, Bitcoin est là pour rester. Et c’est tant mieux.

 


Notes

1. Je tire cette réflexion de la théorie d’Eric Voskuil et en particulier de son texte sur le principe du partage du risque dans lequel il observe que le risque individuel d’accepter ou de miner le bitcoin dépend du nombre de gens qui le prennent.

2. Ces deux changements, relatifs à Bitcoin et à Ethereum, ne sont pas forcément de mauvaises évolutions : le monde a probablement besoin d’une réserve de valeur à hauts frais très sécurisée et très stable (surtout lorsqu’on constate les derniers agissements des États et des banques centrales) et d’une plateforme de contrats autonomes qui puisse être modifiée socialement dans le cas où 5 % des fonds sont concernés. Néanmoins, ces changements indiquent que certains principes peuvent s’éroder et que les protocoles peuvent effectivement évoluer dans un sens non prévu originellement.

Je suis fasciné par les cryptomonnaies et par l'impact qu'elles pourraient avoir sur nos vies. De formation scientifique, je m'attache à décrire leur fonctionnement technique de la façon la plus fidèle possible.

0 Comments

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée.