Principes et applications de la Blockchain, Anna Scius-Bertrand*

Un sujet qui fait la une des magazines depuis de nombreuses semaines : tout ce que vous voulez savoir sur la blockchain
 ou presque.

*Anna SCIUS-BERTRAND est doctorante contractuelle Ă  l’École pratique des hautes Ă©tudes.


A la suite de la crise financiĂšre de 2008, sous le pseudonyme Satoshi Nakamoto, est crĂ©Ă© un systĂšme de transfert d’argent Ă  distance sans avoir recours Ă  un tiers de confiance tel que les institutions financiĂšres, c’est le bitcoin. L’une des difficultĂ©s majeures Ă  surmonter est de prĂ©venir les doubles dĂ©penses : s’assurer qu’une somme ne peut ĂȘtre dĂ©pensĂ©e deux fois simultanĂ©ment, et donc qu’une transaction soit non rĂ©versible.

Jusqu’alors les institutions financiĂšres assuraient cette fonction en centralisant les comptes de leurs clients et en vĂ©rifiant la validitĂ© de chaque transaction. Le besoin existe de se passer d’une institution centrale, d’un tiers de confiance.

L’idĂ©e nouvelle est de conserver l’historique de l’ensemble des transactions effectuĂ©es. Dans la blockchain, les transactions sont conservĂ©es dans un registre. Comment garantir son intĂ©gritĂ© ? La solution est un assemblage, Ă©lĂ©gant et trĂšs astucieux, de technologies existantes reposant sur trois concepts clĂ©s : un rĂ©seau pair Ă - pair, la cryptographie asymĂ©trique et le consensus distribuĂ©.

La premiĂšre Ă©tape est de garantir l’identification unique des participants. Chaque utilisateur est identifiĂ© par un couple de clĂ©s uniques, lequel constitue un portefeuille virtuel. La clĂ© privĂ©e, comme son nom l’indique, doit rester secrĂšte, et la clĂ© publique peut ĂȘtre communiquĂ©e au monde entier sans risque de piratage. Dans le cas du bitcoin, il existe 2 160 adresses diffĂ©rentes : avec 1 milliard d’essais par seconde, il faudrait mille milliards d’annĂ©es pour trouver une clĂ© privĂ©e Ă  partir d’une clĂ© publique.

UN REGISTRE GÉRÉ DANS UN RÉSEAU PAIR-À-PAIR
Le registre contenant l’historique des transactions est rĂ©pliquĂ© dans un rĂ©seau pair-Ă -pair, c’est-Ă -dire dans un grand nombre de nƓuds informatiques (unitĂ© de calcul, par exemple un ordinateur, un smartphone
). Ce rĂ©seau pair-Ă -pair est tel que chaque unitĂ© de calcul est reliĂ©e Ă  toutes les autres. Plus le registre sera rĂ©pliqué‚ plus il sera difficile Ă  modifier.

UNE VERSION UNIQUE DU REGISTRE
Enfin, il est nĂ©cessaire que tous les participants au rĂ©seau s’accordent sur une version unique du registre, qui Ă©volue au cours du temps, ce que rĂ©alise le consensus distribuĂ©. Lorsqu’une transaction est effectuĂ©e, une empreinte unique est gĂ©nĂ©rĂ©e, puis stockĂ©e dans un bloc. Les « mineurs » sont des nƓuds du rĂ©seau qui en « travaillant » produisent des preuves de travail. Preuves qui les autorisent Ă  ajouter une transaction dans la chaĂźne (un bloc est crĂ©Ă© toutes les dix minutes). En fait, chaque mineur du rĂ©seau choisit des transactions en attente pour composer un bloc, qu’il cherche Ă  ajouter Ă  la chaĂźne des blocs prĂ©cĂ©dents. Pour obtenir le droit d’ajouter ce bloc, il doit effectuer une opĂ©ration appelĂ©e « hachage », qui consiste Ă  calculer une empreinte du bloc qui prend en compte l’empreinte des blocs prĂ©cĂ©dents et qui vĂ©rifie une certaine propriĂ©tĂ©.

LA VALIDATION
Lorsque le bloc est plein, il est envoyĂ© Ă  un ensemble de mineurs. Les mineurs commencent par vĂ©rifier la validitĂ© des transactions Ă  l’intĂ©rieur du bloc. Dans le cas du bitcoin, la validation d’un bloc s’opĂšre avec la preuve de travail. Il y a alors compĂ©tition entre mineurs: le premier qui rĂ©sout une Ă©nigme cryptographique envoie la solution aux autres mineurs. L’énigme cryptographique est difficile Ă  rĂ©soudre mais la solution est simple Ă  vĂ©rifier. Le mineur qui a gagnĂ© est rĂ©tribuĂ©.

Si la solution est approuvĂ©e, le bloc est ajoutĂ© aux blocs prĂ©cĂ©dents, crĂ©ant ainsi une chaĂźne de blocs. La solution est intĂ©grĂ©e au bloc. Elle contient des informations relatives Ă  chacune des transactions du bloc : la date, l’heure de crĂ©ation du bloc et la solution du bloc prĂ©cĂ©dent contenant Ă©galement ces mĂȘmes informations.

Dans l’hypothĂšse oĂč un individu voudrait modifier une transaction, il devrait changer le rĂ©sultat de la solution en rĂ©alisant Ă  nouveau un long calcul pour la trouver. Il devrait aussi recalculer les solutions des blocs suivants, et ce pour la majoritĂ© des chaĂźnes contenues dans chacun des nƓuds du rĂ©seau. Pour s’assurer que le calcul de la solution ne soit pas trop rapide, la puissance utilisĂ©e pour rĂ©soudre l’énigme dans le rĂ©seau est Ă©valuĂ©e rĂ©guliĂšrement. Avec ce mĂ©canisme, il est impossible de modifier le contenu des blocs, sauf si 51 % des mineurs forment une coalition. Plus le rĂ©seau sera grand, plus cette coalition sera difficile Ă  obtenir.

Il existe deux mĂ©canismes d’incitations pour encourager les mineurs Ă  utiliser de la puissance de calcul
 et de l’électricitĂ©. Le premier mineur qui rĂ©sout l’énigme reçoit un certain nombre de bitcoins, 50 lors de la premiĂšre annĂ©e de bitcoin. La rĂ©tribution est divisĂ©e par quatre tous les ans, ayant pour consĂ©quence la crĂ©ation d’un nombre fini de bitcoins. Au 1er fĂ©vrier 2018 ont Ă©tĂ© minĂ©s 16,8 millions de bitcoins sur les 21 millions programmĂ©s. Pour pallier la diminution croissante de la rĂ©tribution, les participants ont la possibilitĂ© d’ajouter un montant Ă  l’attention du mineur qui validera le bloc.

Ainsi, la blockchain garantit la sĂ©curisation de transactions sans tiers de confiance et en toute transparence. UtilisĂ©e initialement pour des paiements en ligne, la blockchain tend Ă  se propager dans de nombreux domaines, assurances, immobilier, Ă©nergie ou encore santĂ©, Ă©ducation, art. Par exemple, dans le domaine de l’énergie, la blockchain peut servir Ă  certifier les Ă©changes d’énergie entre particuliers.

Toutefois, la blockchain n’en est qu’à ses balbutiements. De nombreuses questions restent ouvertes, notamment celle de la consommation Ă©nergĂ©tique due Ă  la validation du registre. La complexitĂ© Ă©vacuĂ©e par la porte revient ainsi par la fenĂȘtre.

Le code de bitcoin a Ă©tĂ© publiĂ© en open source, donc il est accessible Ă  tous. Depuis 2008, des milliers d’implĂ©mentations analogues et diffĂ©rentes ont Ă©tĂ© rĂ©alisĂ©es. On compte deux ou trois grandes catĂ©gories de blockchains suivant la façon dont on les voit : publiques, de consortium et privĂ©es, ces deux derniĂšres Ă©tant de mĂȘme nature. Bitcoin est un exemple de blockchain publique : tout internaute peut lire les contenus des blocs, crĂ©er un portefeuille et devenir mineurs ; dans les blockchains de consortium seul un groupe de participants a le contrĂŽle du registre, et ils peuvent dĂ©cider qui peut ou non accĂ©der au registre ou le certifier ; dans les blockchains privĂ©es, un seul individu dĂ©tient le processus de validation. On est bien loin du principe originel de dĂ©centralisation de la gouvernance.

La blockchain publique n’appartient Ă  personne, et mĂȘme son crĂ©ateur ne peut plus changer les rĂšgles de fonctionnement une fois qu’elle est exĂ©cutĂ©e.

Laisser un commentaire

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.