Comprendre la blockchain en 10 questions

Tout ce que vous avez toujours voulu savoir sur le bitcoin, son concept, son fonctionnement, sans jamais oser le demander.

1- Pourquoi les spécialistes disent-ils que la technologie blockchain est la prochaine révolution?

La blockchain résout l’un des problèmes fondamentaux de la créatiBitcoin blockchainon d’une valeur numérique : la duplication. Un contenu numérique est reproductible facilement. Or, ce qui est reproductible facilement n’a pas de valeur. Là où les artistes ont inventé le tirage numéroté pour rendre de la valeur à une image facilement reproductible, les créateurs du bitcoin ont inventé un mécanisme de numérotation électronique : la blockchain.

Une inscription sur la blockchain est unique, et transmissible selon des conditions claires. Elle est associée à une identité via une clé publique, un compte, qui représente son détenteur légitime. La personne qui détient ce compte peut le transférer, s’en servir comme une garantie… selon son bon vouloir.

Jusqu’à la création du bitcoin, seules les banques pouvaient tenir un registre de vos comptes. Si vous souhaitez envoyer de l’argent à quelqu’un, il faut en faire la requête à la banque. La banque joue le rôle de tiers de confiance auquel on peut se rapporter en cas de litige. L’inconvénient de ce système est que la concentration de données entraîne une concentration de pouvoir (tout le monde sait que les banquiers sont bien payés!).

La blockchain permet de reproduire de façon numérique la confiance qui existe spontanément entre deux individus qui ne se connaissent pas mais qui échangent physiquement de l’argent de la main à la main.

Une unité d’un actif sur la blockchain (par exemple 1 bitcoin) ne représente pas une créance envers un tiers, à fortiori une banque. Il est l’actif lui-même. C’est pour cette raison que le bitcoin est souvent assimilé à l’or. L’existence de cet actif n’est pas conditionnée à la garantie fournie par un acteur déterminé.

2-Pourquoi parle t-on de décentralisation?

Les cryptomonnaies, comme le Bitcoin, reposent sur un registre décentralisé, dupliqué sur de très nombreux ordinateurs. Chaque ordinateur du réseau (appelé nœud) contient une copie du registre et aide à le maintenir à jour. Dès qu’un nœud reçoit une transaction, il la relaie au nœud suivant, puis valide la transaction et met à jour le registre.

Tous ces ordinateurs, disséminés aux quatre coins de la planète, permettent de garantir la solvabilité, et l’intégrité des différents acteurs impliqués dans l’échange. Les échanges successifs sont enregistrés sous forme de blocs de transactions, c’est pourquoi on appelle ce registre une chaîne de blocs (blockchain).

Le registre est protégé car dupliqué sur les différents ordinateurs. Un ou plusieurs nœuds peuvent être altérés ou détruits, le registre sera conservé tant que subsistera au moins un nœud honnête.

La blockchain enregistre de manière ordonnée et horodatée les transactions dans la chaîne de blocs, avec laquelle chaque nœud se synchronise. Pour le bitcoin, un nouveau bloc de transactions est ajouté à la chaîne toutes les 10 minutes. On considère que toutes les transactions d’un même bloc ont eu lieu au même moment. Chaque bloc référence le bloc précédent, ce qui forme la chaîne de bloc, qui s’étend jusqu’au tout premier bloc jamais créé. Ainsi, tous les nœuds possèdent une copie de la blockchain identique (à quelques subtilités près). Cette grande chaîne de blocs réussit quelque chose d’inédit : créer de la confiance entre des inconnus sans intermédiaire.

Une des promesses de la blockchain, est de pouvoir se libérer du joug d’une tierce personne pour faire une transaction. Depuis des lustres, on fait des transactions grâce à des tiers : un magasin hier, un site web aujourd’hui.

Imaginez que sur Internet, vous vouliez acheter un téléphone à quelqu’un que vous ne connaissez pas. Avec la blockchain, votre transaction va être archivée dans une sorte de gigantesque livre de comptes publics. Ce livre de comptes n’est pas tenu par Amazon, ou encore par votre banquier, qui toucheraient au passage une commission, mais collectivement, par une multitude de personnes utilisant la Blockchain. Ce sont eux qui valident la transaction et qui donnent le feu vert à l’acheteur et au vendeur.

3- Quels sont les différents types de Blockchain ?

Il existe trois types de Blockchain: publique, semi-privée, et privée.

La Blockchain publique est de conception open source. Les blockchains comme Bitcoin et Ethereum reposent sur les principes des communs; on peut même dire qu’elles constituent des biens communs. Leur code source est disponible en ligne et n’importe qui peut l’étudier, le tester et participer à son amélioration. Leur protocole est ouvert à tous. Chacun peut utiliser, lire et participer au processus de création du consensus validant ces transactions.

Une blockchain publique est transparente : elle contient l’ensemble des échanges effectués entre ses utilisateurs depuis sa création et chacun peut les consulter. C’est comme un grand livre comptable public et infalsifiable. Il faut s’imaginer « un très grand cahier, que tout le monde peut lire librement et gratuitement, sur lequel chacun peut écrire, mais qu’il est impossible d’effacer et de détruire ». Les blockchains publiques sont techniquement les plus sûres car leur conception est open-source et la revue de leur code permanente.

La Blockchain semi-privée, dite de « consortium » peut exister entre des institutions financières: le processus de consensus est contrôlé par un ensemble de nœuds présélectionnés. Chaque institution financière opère un nœud. Les permissions de lecture de la blockchain peuvent être publiques ou restreintes. Le consortium R3 regroupant 70 institutions financières comme Goldman Sachs, BNP Paribas… travaille notamment sur le sujet des lettres de crédit (document qui permet de réduire le risque de paiement entre un importateur et un expéditeur).

La Blockchain privée est interne à une organisation. Un nombre limité et prédéfini d’utilisateurs peut participer au processus de création du consensus. Les permissions de lecture peuvent être publiques ou restreintes de façon arbitraire. Au sein de ces Blockchains, le niveau d’anonymat des utilisateurs est le plus haut. L’existence d’une crypto-monnaie n’est pas nécessaire car il n’y a pas besoin de rémunérer leurs membres pour valider les transactions. Certaines architectures privées sont aussi open-source, ou s’appuient sur des architectures publiques, rapportées en environnement privé.

4- Comment la sécurité de mon compte est-elle assurée ?

Le premier élément de sécurité repose sur le couple clé publique/clé privée, qui est un système de cryptographie dite « asymétrique ». On peut comparer ce couple à celui RIB/PIN dans le monde bancaire :

  • La clé publique est l’équivalent du RIB : elle est l’adresse publique du compte d’un utilisateur donné. Cette clé n’a pas d’autre fonction que la réception des paiements.
  •  la clé privé permet de soumettre une transaction dans la blockchain. C’est l’équivalent du PIN bancaire ou de la signature. Elle est unique. Sans cette clé, il est impossible de signer numériquement les transactions. Ainsi, personne ne peut signer de transaction au nom d’un autre individu, à moins de disposer de sa clé privée. Il reste bien sûr à la charge de chacun de faire en sorte que cette clé privée ne se perde pas et ne soit pas révélée. Si vous perdez votre clé (ordinateur volé, planté), il est absolument impossible de la récupérer; c’est pourquoi il est recommandé de l’écrire sur un papier ou un clé USB dédiée (hardwallet). On estime que 4 millions de bicoin ont été perdus sur les 16 millions émis !!

5- Comment les différents ordinateurs du réseaux s’accordent-ils sur la validité des transactions ?

Valider une transaction est un processus à plusieurs niveaux : il faut (1) identifier l’émetteur comme légitime, (2) vérifier qu’il possède suffisamment de fonds pour effectuer la transaction et (3) ordonner chronologiquement les transactions. Chaque noeud peut vérifier indépendamment ces conditions assez facilement mais, à l’échelle du réseau, il est beaucoup plus compliqué de trouver un consensus.

Les protocoles de consensus utilisés par les ordinateurs du réseau visent à assurer : qu’une inscription numérique reste unique (elle ne peut pas être dépensée deux fois – double dépense), que le support sur lequel elle est inscrite (la fameuse chaîne de blocs) ne puisse pas être altérée  – ou du moins que cette altération soit visible et son coût fortement dissuasif.

Eviter la double dépense est un enjeu central. Pour les ordinateurs du réseau, le challenge est de s’accorder sur la validité des transactions. Cela est d’autant plus compliqué que les nœuds de ce système sont anonymes, atomisés et pas nécessairement bien intentionnés. En effet, n’importe quelle personne possédant un ordinateur peut se connecter de façon anonyme et participer au maintien du registre, ce qui implique qu’un nœud ne peut à priori pas faire confiance aux autres.

Dans le monde classique, votre banque tient le registre de vos comptes et n’autorise qu’une transaction à la fois, dans un ordre précis. Si vous n’avez plus d’argent sur votre compte, elle refusera un paiement, même si celui ci est effectué à seulement quelques millisecondes du paiement précédent.

Permettre à un système décentralisé de s’accorder sans que les participants aient besoin de se faire confiance est, en somme, ce que permet de faire la technologie blockchain. Cela paraît un peu fou, mais le Bitcoin laisse le réseau des ordinateurs décider entre eux, c’est la majorité qui l’emporte (plus de 51 % du réseau).

C’est pourquoi la validation d’une transaction n’est pas instantanée. On considère qu’il faut attendre que plusieurs blocs aient été ajoutés à la blockchain (idéalement 6 blocks) pour confirmer la transaction (ce qui peut prendre quelques dizaines de minutes !). Ca veut dire qu’après avoir reçu votre paiement, le vendeur va attendre l’arrivée de nouveaux blocs avant de vous transmettre votre bien, pour être sûr que vous n’avez pas essayé de tromper le système. Plus il y a eu de nouveaux blocs, plus on est sûr que vous aviez bien l’argent. Si le vendeur choisit de ne pas attendre, il prend un risque que vous l’ayez trompé.

Si quelqu’un contrôle plus de la moitié de la puissance de calcul du réseau, cette personne peut commencer à altérer la chaîne de blocs pour les transactions futures (attaque dite de 51%). Il lui devient alors possible de dépenser le même argent plus d’une fois, de censurer certaines transactions ou de bloquer certains actifs. Les systèmes de paiement traditionnels sont à l’abri d’une telle attaque.

6- Quel est le rôle des mineurs  (ou chercheurs d’or)?

Les mineurs sont des personnes qui connectent sur le réseau une ou plusieurs machines équipées en puissance de calcul pour traiter les transactions, sécuriser le réseau et permettre à tous les utilisateurs du système de rester synchronisés. Leur nom est inspiré des chercheurs d’or du siècle dernier. Les mineurs valident les blocs de transactions par des milliards de calculs. Ils sont rémunérés au prorata de la puissance de calcul qu’ils apportent au réseau. Il n’existe pas de chiffre précis sur le nombre de mineurs de bitcoin mais ce chiffre est estimé à 100 000 mineurs. Le nombre de noeud complets est estimé à 11 000 pour le Bitcoin (6000 pour ethers).

Le protocole de consensus du bitcoin repose sur la preuve de travail (proof of work). Un bloc de la blockchain Bitcoin est valide si son set de transactions est valide ET si la preuve de travail  associée à ce bloc est valide. La preuve de travail montre que le mineur a résolu le problème mathématique de non-dépassement de seuil correspondant au bloc. Ce problème consiste à retrouver le « hash », c’est à dire la transformation d’un document numérique en empreinte digitale. Une fonction de hashage a cette spécificité qu’elle ne fonctionne que dans un sens. Il est impossible de partir d’un hash de retrouver l’original. Les mineurs sont donc condamnés à essayer toutes les possibilités pour décoder ce hash.

La preuve de travail consomme énormément de temps et d’énergie. Lorsque tous les ordinateurs du réseau Bitcoin s’y mettent, ils parviennent à trouver une réponse toutes les 10 minutes (sur Ethereum c’est toutes les 10 secondes).

Il ne semble pas exister de chiffre fiable sur la consommation d’électricité lié au minage mais plusieurs l’estiment à plus de 50 twh, soit plus que celle de pays comme l’Irlande ou la Hongrie. C’est pour cette raison qu’aujourd’hui les mineurs sont localisés dans des pays où l’énergie est bon marché, la Chine et l’Islande le plus souvent.

Le minage étant un business gouverné par des économies d’échelle, on a constaté ces dernières années une concentration de plus en plus importante des fermes de minage. Les ASICs, circuits intégrés dédié à une application précise développés pour le Bitcoin, ont conduit à une course au matériel que seuls les plus gros acteurs du monde des mineurs ont pu suivre. Les 8 plus gros pools de mineurs sont des sociétés chinoises.

Au départ, la récompense pour la création d’un bloc était de 50 bitcoins et cette récompense est divisée par deux tous les quatre ans. Dès la création du bitcoin, il a été prévu que la récompense pour les mineurs passe de 25 bitcoins à 12,5 bitcoins en juin 2016 (soit 100 000 dollars!). Elle sera encore divisé par 2 en 2020.

Si 70% des mineurs sont dans le même pays et que le gouvernement de ce pays décide de saisir tout le matériel de minage pour des raisons de sécurité nationale, le réseau pourrait s’effondrer. Cela milite pour que les équipes de développement, mais aussi les nœuds de réseaux soient largement répartis, y compris géographiquement parlant. Le modèle économique et le modèle de tolérance aux pannes doivent être examinés lors de la conception d’une nouvelle blockchain.

7- Pourquoi le réseau bitcoin n’est pas optimal du point de vue environnemental?

Afin qu’un nouveau bloc soit généré en moyenne toutes les 10 minutes, le protocole Bitcoin ajuste la difficulté en fonction du nombre d’ordinateurs sur le réseau (afin que le temps de génération de ces 2016 blocs soit de 14 jours, quelle que soit la puissance de calcul déployée).

Il y a une forme d’inefficacité environnementale dans ce système. Si seulement un millième du nombre actuel des mineurs existaient, un bloc serait quand même produit toutes les 10 minutes, en réalisant le même nombre de transactions, et en consommant seulement un millième de puissance électrique.

Mais, aujourd’hui si les mineurs « excessifs » arrêtaient brutalement le minage, cela augmenterait la probabilité qu’une seule personne contrôle plus de la moitié du pouvoir informatique restant.

Le minage est aujourd’hui toujours lucratif, et le réseau est toujours stable. Cependant, si la situation était amenée à changer (si, par exemple, le prix de l’électricité augmentait fortement en Chine), le réseau pourrait être confronté à cette question.

Si un acteur était capable d’atteindre 51% de la puissance de hachage du réseau, il aurait intérêt à ce que personne ne le sache afin d’éviter la destruction de la confiance et l’écroulement catastrophique du réseau.

Plus la récompense en bitcoin diminue, et plus les commissions demandés par les mineurs sur les transactions vont augmenter. C’est déjà le cas aujourd’hui : plus la commission proposée pour une transaction est élevée et plus rapidement celle -ci est traitée.

La quantité de monnaie créée par le Bitcoin est limitée par le programme à 21 millions de bitcoins, limite qui pourrait être atteinte en l’an 2140 environ (aujourd’hui 16 millions de bitcoin ont déjà été émis). Le jour où les 21 millions de Bitcoins seront émis, les mineurs ne seront plus récompensés par la création de monnaie mais uniquement par la commission versée par l’émetteur de la transaction, ils redeviendront alors des intermédiaires, certes décentralisés, mais des intermédiaires tel qu’on l’entend aujourd’hui.

8- Mais finalement qui gouverne la blockchain ?

Tous les acteurs ont intérêt à ce que la blockchain continue de fonctionner :

  • les mineurs, qui ont réalisé ou réalisent un investissement financier pour la faire fonctionner et qui attendent un retour sur investissement (rétribution pour les nouveaux blocs minés, commissions sur les transactions);
  • les détenteurs de cryptomonnaies, qui possèdent des bitcoins, des ethers, et qui ne souhaitent pas les perdre ni voir leur valeur s’effondrer ;
  • les développeurs, qui ont investi du temps et de l’argent au développement de plateformes ou d’applications décentralisées, et dont le business dépend de leur fonctionnement;
  • les utilisateurs de ces services qui souhaitent naturellement continuer à s’en servir.

C’est un phénomène qui s’auto-alimente. Si vous êtes investis dans le système, vous allez probablement faire en sorte qu’il s’améliore. L’amélioration va amener de nouveaux utilisateurs, acteurs, participants, eux-mêmes motivés à améliorer le système, etc.

Actuellement, il existe un équilibre des pouvoirs : les développeurs soumettent des propositions de modification de code (« pull requests »), à la manière des projets de loi soumis par des parlementaires. Ils se coordonnent via le système de Bitcoin Improvement Proposals (BIPs – propositions d’amélioration du Bitcoin) et via une liste de distribution.

Les mineurs peuvent appliquer un veto en s’abstenant de mettre à jour le logiciel. Les utilisateurs peuvent se révolter, en revendant leur monnaie.

Chaque groupe a ses propres motivations, et celles ci ne sont pas nécessairement alignées à 100% dans la durée. Au fil du temps, chaque groupe propose des changements correspondant à ses intérêts propres, ce qui se traduit par des modifications des modes de rétribution, de la politique monétaire et de l’équilibre des pouvoirs.

Les mineurs réclament des changements qui augmenteront les commissions futures, alors que les développeurs s’en fichent, du moment que la valeur du Bitcoin continue de grimper.

Les nouveaux développeurs ont peu intérêt à travailler sur le Bitcoin, parce qu’il n’existe pas de façon directe de gagner de l’argent en le faisant. Par conséquent, ils travaillent souvent sur de nouveaux projets – sur Ethereum, ou des chaînes complètement nouvelles. L’absence de sang neuf renforce le statut des développeurs initiaux en tant que meilleurs experts. Ceci conduit à un cercle vicieux : le pouvoir se concentre dans un petit groupe de développeurs du noyau de la technologie.

Les blockchains qui dureront et s’imposeront sont celles qui sont le mieux adaptées à leur environnement. En considérant que ces systèmes ont besoin d’évoluer pour survivre, leur conception initiale est importante, mais sur la durée, ce sont les mécanismes permettant leur changement qui seront les plus importants. C’est pourquoi la gouvernance est essentielle.

L’immuabilité absolue des chaînes de blocs est un mirage. Les personnes qui exécutent le protocole restent des humains qui peuvent en modifier les règles par consensus. Ils ont le pouvoir de le faire, et ils le feront lorsqu’ils estimerons que c’est nécessaire. Ils l’ont fait suite à l’affaire The DAO sur la blockchain Ethereum, ils pourront le faire dans d’autres circonstances similaires.

On peut notamment imaginer un bug sévère provoquant l’arrêt de la blockchain : il semble improbable que ce bug ne soit pas corrigé par consensus même si cela implique d’altérer fortement la structure de celle-ci. C’est une réalité à laquelle les idéologues les plus radicaux de la blockchain ne peuvent échapper.

9- Le bitcoin favorise t-il le blanchiment d’argent?

Le grand public craint souvent que le bitcoin favorise le blanchiment d’argent. Or, un inconvénient important dans l’utilisation du Bitcoin est justement sa transparence. En effet, la blockchain n’offre pas de réel anonymat. Elle offre à la place une « pseudonymie ».

Si je transfère quelques bitcoins à ma mère, celle ci peut savoir de combien d’argent je dispose à un moment donné, mais aussi combien j’ai dépensé et plus important encore, où je l’ai dépensé. Sur Ethereum, elle pourrait aussi trouver sur quoi j’ai misé, et quel homme politique j’ai soutenu « anonymement ».

Révéleriez-vous le relevé bancaire de votre carte bancaire à n’importe qui ? Gardez à l’esprit que cela ne dévoilerait pas uniquement votre passé mais aussi vos transactions futures. Cela pose une vrai difficulté pour les entreprises. Toutes leurs parties contractantes, leurs ventes, clients, montants des comptes et autres petits détails deviendraient publics.

Certaines cryptomonnaies  travaillent pour un anonymat des transactions : monero, Zcash et Dash – mais du coup elles risquent effectivement de favoriser le blanchiment.

10- Quelles sont les principaux challenges à relever dans les années à venir ?

Une limite importante est celle de la quantité de données pouvant être stockées sur la blockchain. Si vous avez déjà essayé d’utiliser un porte-monnaie stocké localement pour de la crypto-monnaie, vous avez du découvrir que vous ne pouviez pas effectuer ou recevoir des paiements jusqu’à ce que le téléchargement complet des données de la blockchain et le processus de vérification soient complets, ce qui peut prendre quelques jours.

Le réseau Ethereum a accumulé 400GB de données historiques (Bitcoin 150 GB). La croissance de la capacité des disques des ordinateurs est à la traîne par rapport à celle des besoins des blockchains. La durée de vie de la blockchain est estimée à une décennie dans les circonstances actuelles.

Le principe de faire réexaminer et ré-exécuter toutes les opérations par tous les participants au réseau est un gage de sécurité mais cela ralentit fortement le traitement des opérations qui ne s’effectuent qu’en séquentiel et jamais en parallèle. Bitcoin peut traiter au maximum 3 à 4 transactions par seconde, Ethereum 20 (alors que Visa en traite 1600!).

Augmenter la taille des blocs (limité à 1 MB sur bitcoin) permettrait d’accélérer les transactions. Le débat est vif sur ce sujet. Les partisans du statut quo pensent que la limitation du nombre de transaction sur le bitcoin est nécessaire.

Si on va trop loin, les nœuds tournant sur du matériel générique abandonneront la partie, le réseau commencera à dépendre uniquement d’un très petit nombre de super-ordinateurs faisant tourner la blockchain, cela qui risque d’engendrer un énorme risque de centralisation. Les partisans de l’augmentation de la taille des blocks ont créés deux alternatives au Bitcoin: Litcoin et Bitcoin cash. Ce dernier est né d’une modification du protocole Bitcoin pour augmenter la taille des block à 8 MB.

Enfin, la dernière difficulté est l’augmentation du prix du Bitcoin (mais aussi de l’Ether).  Lorsque le bitcoin a atteint son cours le plus haut, le coût de transaction était de 50 dollars par transactions ! Pour les entreprises qui utilisaient le Bitcoin pour leur activité, cela n’était pas soutenable.

J’espère que les explications de cet article ont répondu à vos questions sur la blockchain pour les nuls. Vous pouvez continuer en approfondissant la blockchain Ethereum.

Je vous conseille aussi la lecture de ces deux articles :

Bitcoin première implémentation de la blockchain – GAUTIER MARIN-DAGANNAUD·

Blockchain Governance: Programming Our Future

 

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *