Bitcoin

Le mécanisme du minage

Créé le

01.09.2016

-

Mis à jour le

08.09.2016

La blockchain représente le protocole permettant de chaîner, mémoriser et recopier les transactions en bitcoin. La célèbre monnaie numérique, apparue fin 2008, est générée par le minage, la validation de chaque transaction par les mineurs. Décryptage de l’activité de ces nouveaux chercheurs d’or.

Parmi toutes les nouvelles monnaies numériques, le bitcoin reste de loin la plus célèbre et la plus utilisée. Pourtant, son fonctionnement demeure bien mystérieux pour le grand public et parmi les questions les plus fréquentes, celle du mécanisme du minage (ou du rôle des mineurs) est la plus souvent posée. Le bitcoin a été créé fin 2008 pour réaliser des transferts d'argent entre deux personnes sans faire intervenir une quelconque autorité ou institution financière jouant le rôle de tiers de confiance.

La validation de chaque transaction est effectuée par des volontaires qui aspirent à être récompensés en nouveaux bitcoins. Cette communauté de participants qui ne se connaissent pas a priori joue en quelque sorte le rôle de tiers de confiance. Par analogie avec les chercheurs d'or qui exploitent les mines pour extraire quelques pépites à la force du poignet, ces volontaires ont été appelés les mineurs.

Au tout début de l'histoire du bitcoin, le minage pouvait être réalisé par un micro-ordinateur un peu gonflé et le mineur était une personne physique qui participait à la validation des transactions avec des gains fréquents de 50 bitcoins, ce dernier ne valant presque rien en contrepartie du dollar. Certains ont accumulé une grosse somme de bitcoins, parfois sans y prêter attention, jusqu'à ce que ce dernier flambe, valant jusqu'à 10 millions de fois plus que son cours d'introduction. Aujourd'hui, la validation est l'affaire de pools de minage, concentrant un nombre important de machines, ce qui constitue une puissance de calcul considérable. Cette concentration est le seul moyen actuellement d'espérer acquérir de temps en temps un gain, fixé aujourd'hui à 25 bitcoins. La plupart de ces pools de validation se trouveraient en Chine.

Problème mathématique

L'intérêt à proprement parler du bitcoin est de permettre des transferts d'argent entre personnes : Alice doit 1 bitcoin à Bruno ; les deux protagonistes utilisent par exemple un wallet à bitcoins. Une fois signée par les deux parties, la transaction est mélangée à d'autres transactions dans ce qui est appelé un « bloc ». Le rôle des mineurs est de vérifier l'intégrité de toutes les transactions de ce bloc. Ils font tous le même travail, mais un seul sera récompensé à chaque bloc et gagnera un certain nombre de nouveaux bitcoins. En l'occurrence, les mineurs vont valider ici le transfert entre Alice et Bruno en contrôlant qu'Alice n'a pas déjà dépensé le bitcoin. Ils se servent pour cela de tout l'historique des transactions qui est garanti par un mécanisme cryptographique de scellement. Cette mémoire se présente sous la forme de blocs chaînés les uns aux autres, pour en garantir une totale intégrité. Le fichier proprement dit de toutes ces transactions est nommé Ledger (Grand Livre de comptes) et il est recopié sur tout le réseau pour servir à la validation. Le protocole permettant de chaîner les transactions validées les unes aux autres, de les mémoriser et de les recopier, est nommé blockchain.

Parallèlement, il est donc demandé à ces mineurs de résoudre un problème mathématique dimensionné pour prendre environ 10 minutes avant de trouver les bons chiffres, un peu comme une loterie. Cet exercice demande des ressources machine considérables lorsqu'il y a beaucoup de participants et constitue ce qui est nommé une preuve de travail (Proof of Work), autrement dit une preuve d'une implication forte au mécanisme de validation. Le mineur qui a trouvé le premier la solution propose son bloc validé avec le résultat du problème sur le réseau aux autres mineurs qui peuvent vérifier ce dernier quasi instantanément. Le bloc promu entre dans la chaîne de blocs et le mineur récompensé reçoit 25 bitcoins. Le transfert d'Alice et Bruno, dûment scellé, est chaîné à toutes les transactions antérieures et entre dans le Grand Livre. Les mineurs peuvent alors s'attaquer au bloc suivant.

Mécanisme d’incitation

La probabilité d'avoir inséré un bloc qui sera par la suite « défait » ou « répudié » par le système existe, mais elle est très faible et le devient d'autant plus qu'avec le temps d'autres blocs ont enfoui votre bloc. Le transfert devient ainsi quasiment valide après dix minutes environ et statistiquement non répudiable au bout de 4 ou 5 fois 10 minutes. La durée de 10 minutes correspond au rythme de validation choisi par le créateur pour laisser le temps au réseau de diffuser les nouveaux blocs validés afin que chaque nœud ait une image exacte du contenu du Grand Livre. Si deux mineurs trouvent en même temps une solution valide au problème posé, le mécanisme de diffusion choisira à terme la chaîne la plus longue déjà formée. Pour tromper la blockchain, il faudrait posséder en théorie plus de la moitié de la puissance totale du réseau, ce qui est infiniment peu crédible, compte tenu de la puissance actuellement en vigueur.

La valeur du montant du transfert ne change rien à la mécanique de validation a priori. Si le montant de la transaction est très faible, on peut estimer que ces dix minutes de validation sont bien longues pour des broutilles et que, dans le cas de montant important, le fait d'attendre une heure pour des opérations onéreuses de pair à pair est moins gênant. La mécanique incluant ce type de minage fondé sur une preuve de travail peut être considérée comme inadaptée pour miner chacune des nombreuses transactions de faibles montants. Un système de compensation externe au protocole est sans doute nécessaire pour absorber les petites transactions. D'autant que le minage en lui-même dépense beaucoup d'énergie pour refroidir des machines qui s'échinent à répondre au problème mathématique en calculant de nombreuses empreintes numériques (hash), calcul particulièrement gourmand en ressources machine. L'intérêt de ce mécanisme de calcul d'empreintes est qu'il peut être facilement redimensionné pour maintenir le temps de recherche à 10  minutes en l'occurrence, en fonction du nombre de machines dans le réseau. Ces calculs d'empreintes permettent en revanche une validation immédiate du résultat par les autres membres du réseau ; elles sont donc faciles à dimensionner et faciles à vérifier.

Preuve d’investissement

Toutes les 10 minutes donc, le système récompense un mineur, le mineur gagnant, et lui remet 50 bitcoins, du moins cette récompense a concerné les quatre premières années. Ensuite cela a été 25 bitcoins les 4 années suivantes (de novembre 2012 à novembre 2016), la récompense actuelle, puis ce sera encore la moitié les 4 années d'après, et ainsi de suite jusqu'au dernier Satoshi, en l'an 2140 environ, que l'on ne saurait couper en deux ! Un Satoshi est en effet la division ultime du bitcoin : il faut 100 millions de Satoshis pour avoir 1 bitcoin. À la fin, c'est donc un total de 21 millions de bitcoins qui aura été rétribué, la moitié les 4 premières années, le quart les 4 années suivantes et ainsi de suite, comme une peau de chagrin. Ce ne sera plus donc la récompense qui motivera les mineurs à l'avenir, il faudra trouver d'autres mécanismes d'incitation. Il existe d'ores et déjà des soldes permettant de laisser une récompense, un pourboire, au mineur gagnant dans la transaction.

Certains chercheurs proposent de remplacer cette Preuve de travail (PoW) par une Preuve d'investissement (PoS – Proof of Stake) beaucoup moins énergivore où, pour le modèle le plus simple, c'est le nombre de pièces (de monnaie) proposées par l'investisseur qui lui permet de traiter ce bloc. Ce système apparaît en revanche moins sûr ; l'idée est donc de combiner les deux systèmes, pour tirer le meilleur des deux mondes. Par exemple, pour résoudre le problème de la performance, il faut créer des chaînes parallèles (side-chains) dont le fonctionnement plus léger pourrait être fondé sur la PoS (Investissement) et recopier les résultantes sur la blockchain principale ficelée par la PoW (Travail).

À retrouver dans la revue
Banque et Stratégie Nº350