Blockchain expliquée à mes grands-parents - Louis Tournayre

Louis Tournayre

Titre : La blockchain expliquée à mes grands-parents
Intervenant : Louis Tournayre
Lieu : Paris - Palais des Congrès - Conférence Devoxx France
Date : avril 2018
Durée : 13 min 43
Visionner la vidéo
Licence de la transcription : Verbatim
Illustration : Theymos from Bitcoin wiki vectorization, travail personnel, Wikipedia. Licence CC BY 3.0
NB : transcription réalisée par nos soins. Les positions exprimées sont celles des intervenants et ne rejoignent pas forcément celles de l'April.

Description

Mes grands-parents sont hyper-modernes (pour leur âge). Ils ont de nombreuses qualités et beaucoup de choses à nous transmettre mais quand ils m'ont demandé de leur expliquer la blockchain j’ai longtemps cherché mes mots.

Transcription

Bonjour à tous. Merci d’être là, ça fait super plaisir de voir tout ce monde. C’est super. Bon ! J’ai juste un petit regret il n’y a pas mes grands-parents, c’est un peu pour eux quand même ! L’objectif de ce quickie c’est d’expliquer ce que c’est que la blockchain, de manière simple, sans utiliser de termes techniques, en fait pour des personnes qui ne connaissent pas l’informatique. Donc on ne va pas parler de tout ce qui est cryptographie et autres, ça va rester relativement simple, mais on va expliquer les grands principes.

Qui je suis ? Moi je m’appelle Louis Tournayre, je travaille à Zenika à Lyon. Voilà. C’était la petite pub.

À quoi cela sert ?

Maintenant la blockchain pour l’expliquer je me suis dit que le plus simple c’était de parler de cas concrets, d’expliquer, en fait, en quoi ça servait. Donc quelques cas d’usage.

Le premier. Je ne sais pas si vous vous rappelez, en 2014 il y avait la crise ukrainienne ; vous vous rappelez forcément. On a vu apparaître ces petites pancartes-là avec ces codes. Vous savez ce que c’est ? En fait, ça ce sont des adresses pour qu’on puisse leur transférer de l’argent directement via une cryptomonnaie1 qu’on appelle le bitcoin2. Donc le premier cas d’usage, en fait à la base ça a été créé pour ça, c’est pour faire des transferts d’argent via une monnaie immatérielle, une monnaie virtuelle ; des transferts qui soient sécurisés, qui soient indépendants de banques, d’États, qui soient souples, sans aucune contrainte. Donc ça c’est vraiment le premier cas d’usage. Ce sont des transferts d’argent, des transferts de monnaie virtuelle.

Un autre cas d’usage aussi, qu’on a derrière, en fait c’est parce que la blockchain ça enregistre, c’est d’avoir des registres dans lesquels on mette des données qui soient infalsifiables. Par exemple un état-civil. Un état-civil ne change pas : on naît un jour, à un certain lieu. Ça ce sont des données qui ne doivent pas bouger. Ce sont des données qui sont partagées, auxquelles tout le monde peut accéder. Donc un cas d’usage c’est, par exemple, un registre d’état civil ; typiquement ça s’y prête bien.

Il y a le cadastre aussi qui s’y prête énormément. Vous pouvez dire en France on n’a pas besoin de ça, on a des autorités qui font ça ; oui, en France on a ça ; ce n’est pas le cas partout ! Au Ghana par exemple, ils ont lancé une initiative où ils sont en train de mettre dans la blockchain le cadastre pour que ces données-là soient partagées par tous, on ne puisse pas se dire d’un seul coup tiens ! cette terre-là m’appartient ; non, ça a été enregistré, c’est infalsifiable, c’est consultable, c’est partageable.

On aurait aussi d’autres cas d’usage, par exemple vous vous rappelez, il n’y a pas si longtemps il y a eu la crise du lait. On aurait aimé savoir d’où venait le lait qu’on avait acheté et on pourrait mettre tous les éléments logistiques, faire une traçabilité complète de ce qui a pu se passer à ce moment-là dans la blockchain. Il y a déjà des initiatives qui existent dans ce genre-là, pas spécifiquement pour le lait, mais il y a déjà des sociétés qui proposent de faire de la traçabilité via de la blockchain.

On pourrait avoir aussi des élections qui sont sans bureau de vote. C’est-à-dire qu’on n’aurait plus besoin d’avoir un lieu physique ; on aurait des espèces de machines à voter mais qui ne seraient pas dans un lieu, qui seraient sûres, qui seraient infalsifiables, qui seraient sécurisables. Il y a quelques initiatives qui vont dans ce sens mais c’est un peu plus long, un peu plus compliqué ; ça soulève d’autres difficultés techniques.

On pourrait avoir, et on commence aussi à avoir aussi, des contrats qui s’activent automatiquement. Qu’est-ce que c’est qu’un contrat ? Le cas qu’on a aujourd’hui : par exemple il y a AXA qui a mis en place – alors que ça ne marche que sur certains vols – une assurance qu’on peut prendre sur le vol qui, en cas de retard, va nous rembourser du montant sur lequel on est assuré. Notre contrat est directement enregistré dans la blockchain, il a des critères de déclenchement et si jamais notre vol a plus de deux heures de retard par exemple, automatiquement il va s’enclencher et on aura notre argent qui sera transféré.

Ça, ce sont quelques cas d’utilisation, mais en fait il y en a plein d’autres.

Imaginez que vous avez un grand livre, ouvert, infalsifiable, que tout le monde peut lire, tout le monde peut écrire. Qu’est-ce que vous en faites ? Il y a vraiment plein de cas d’usage. Là on est au début ; il y a plein de nouvelles choses qui vont arriver autour de ça.

Les principes fondateurs

Maintenant, si on va un peu plus loin sur la blockchain, sur quoi c’est fondé ? Quels sont les principes de base qui font que ça marche. Il y en a trois, trois grands principes.

Le premier principe c’est que un système décentralisé. Ça veut dire quoi un système décentralisé ? En fait, on a un système qui est constitué d’un ensemble d’ordinateurs, un peu comme vous là, vous êtes tous là, vous êtes interconnectés, vous pouvez parler directement entre vous, vous n’avez pas besoin de passer par un tiers pour vous parler. D’accord ? Ce que quelqu’un vous a dit vous pouvez le partager avec quelqu’un d’autre. Vos données, pareil, elles sont distribuées, elles sont répliquées sur toutes les machines, sur toutes les personnes. Et quand il y a une décision à prendre, eh bien il y a un consensus majoritaire qui valide la décision. Ce n’est pas une personne dans son coin, ce n’est pas une autorité de confiance qui dit « c’est comme ça ». C’est vous tous, ici présents, c’est la majorité qui dit « oui, c’est ça, je le valide. »

L’autre point super important c’est que les données sont infalsifiables et inaltérables. En fait, ce fameux livre, ce fameux registre, on ne peut faire que écrire : on ne peut pas modifier, on ne peut pas effacer, on ne pas supprimer des pages. Et on écrit, on écrit, on ne fait que écrire !

Un troisième grand principe c’est que toutes les données, ce livre, tout le monde peut le consulter ; tout le monde peut y accéder ; tout le monde peut le voir. Maintenant il y a des variantes, aujourd’hui on a des blockchains dites semi-privées, voire privées, c’est un détournement de la blockchain originale, mais ça correspond à certains besoins spécifiques.

Comment ça marche techniquement ?

Là je vais essayer, pareil, pas de termes techniques. La blockchain, en fait, il y a deux mots dans blockchain. Le premier c’est « block », c’est-à-dire ce sont des blocs de données. Donc nos données, notre registre c’est ça. Et donc, première chose, on a des données qu’on va écrire. Ces données, elles ont ce qu’on appelle une empreinte. Une empreinte, je vais en parler tout de suite, une empreinte c’est quelque chose en fait d’unique, de répétable. Je ne sais pas si vous voyez, quand je tape quelque chose, l’empreinte est calculée au fur et à mesure et elle change. À chaque fois elle est répétable, c’est-à-dire que si je mets le même texte, la même donnée, j’aurai la même empreinte. Si je change la moindre chose, mon empreinte va changer. Donc cette empreinte, en fait, elle est directement liée à la donnée. C’est une sorte de signature de la donnée. Par contre on ne peut pas, à partir de l’empreinte, calculer la donnée ; on pourrait, mais c’est très compliqué et ça coûte très cher, donc on ne le fait pas.

Et on a ces fameuses empreintes, qui sont là, qui vont nous servir à lier les données. Et c’est là où on a, justement, la seconde partie, la chaîne. On a chaîné les éléments par nos empreintes. Donc notre blockchain ce sont des blocs de données qui sont reliés les uns aux autres via les empreintes. Donc le bloc 1 il a une empreinte qui a été calculée. Le bloc 2 derrière, il rappelle en fait l’empreinte précédente. Il a ses nouvelles données et son nouveau bloc.

Du coup, si on s’amuse à changer un bloc, eh bien on va casser la chaîne parce que ce bloc aura une nouvelle empreinte ; du coup le bloc 3 qui était après, qui référençait le bloc 2, il ne référence que le bloc 2. Il ne référence pas le bloc 2 bis. Donc si on change un bloc, on casse notre chaîne.

Qu’est-ce qui m’empêche moi après de dire c’est intéressant de changer un bloc ; je peux dire voilà, j’ai fait une transaction il y a quelque temps, eh bien j’ai envie de réécrire l’histoire. Cette transaction j’ai touché l’argent, je l’ai retiré, voilà, mais je veux réécrire l’histoire parce que, comme ça, je vais à nouveau avoir mes bitcoins par exemple ou mes ethereums3. Eh bien pour faire ça, il faut que je réécrive tous les blocs suivants. Et là on va se retrouver avec des conflits, on aura une chaîne qui sera historique et puis on aura une nouvelle chaîne, que j’aurais essayé de forger moi-même, qui sera fausse en l’occurrence. Comment est-ce qu’on va décider quelle est la chaîne qui est valide ? Le consensus, en l’occurrence, c’est de se dire on prend la plus grande chaîne et c’est elle qui a raison. Du coup, moi, qu’est-ce qui m’empêche de calculer plus vite, de construire une chaîne plus grande en fait ?

Et c’est là qu’on a un second mécanisme de protection. Le premier mécanisme historique de protection, c’est la preuve de travail, vous pouvez entendre en anglais the proof of work, donc c’est le premier mécanisme, il a presque dix ans aujourd’hui, il est super fiable, mais il y en a d’autres parce qu’il a des inconvénients.

La preuve de travail, le principe c’est qu’on a une opération de calcul qui est très compliquée à réaliser, qui prend du temps, et c’est dans le protocole. Même si on ajoute des machines, on va se débrouiller pour avoir toujours le même temps en complexifiant le calcul. Donc pour arriver à faire une chaîne la plus longue il faut que je sois capable de miner plus vite, d’accord ? Et pour miner plus vite il faut que j’ai des supercalculateurs et, en fait, il faut que j’ai plus de la majorité des ordinateurs qui minent aujourd’hui. Ce qui est complètement improbable, en l’occurrence pour moi.

Si on rentre un peu plus dans le détail sur comment fonctionne notre fameuse preuve de travail. Vous vous rappelez l’empreinte tout à l’heure ? Elle commence par des zéros. Eh bien la difficulté qui est mise, le challenge qui est mis, c’est faire en sorte qu’il y ait une empreinte qui a des zéros et pour ça on a un seul critère, en fait, c’est la donnée. Sauf qu’on ajoute à cette donnée ce qu’on appelle un grain de sable, en anglais, en fait, ça ne s’appelle un grain de sable, ça s’appelle un nonce4, vous verrez parfois ce terme. Ce grain de sable c’est le petit élément qu’on va mettre, qui va perturber mon calcul. Donc on va mettre à la fois la donnée et le grain de sable et on va calculer l’empreinte, pas simplement sur la donnée mais sur ces deux éléments et on va s’amuser à faire varier, en fait, notre grain de sable pour arriver à avoir une empreinte qui commence par des zéros. Pas 4 zéros parce que 4 zéros c’est super facile, enfin super facile ça prend quelques secondes à calculer en fait, mais si on met beaucoup, beaucoup de zéros ça devient de plus en plus long à calculer, le challenge est de plus en plus difficile. Ça c’est le mécanisme de la preuve de travail qui permet de s’assurer que notre empreinte est valide et qu’elle est compliquée à trouver.

Après on a un autre mécanisme, alors il y en d’autres, il y en a plein d’autres, mais il y en a un qui est très intéressant qui s’appelle la preuve d’enjeu qui va bientôt arriver sur Ethereum. Là, le principe, c’est au lieu d’avoir besoin d'une forte puissance de calcul, en fait on a besoin d’avoir de la loyauté. On va valoriser la loyauté ; la loyauté c’est le fait de posséder des monnaies, des token en fait, des jetons. Plus on a de jetons, plus on a une probabilité importante d’arriver à faire le calcul. Et il y a deux critères qui vont jouer, il y a le critère « j’ai beaucoup de jetons » qui va monter notre probabilité, qui va réduire, en fait, le pseudo-challenge ; et puis un second critère qui est le temps, en fait, qui va faire un peu notre aléa, qui va faire que c’est untel ou untel qui va pouvoir valider son bloc.

L’intérêt est assez conséquent, je n’en ai pas parlé, mais quand vous minez, en fait vous consommez énormément d’énergie. Il y a une espèce d’escalade aujourd’hui, il y a de plus en plus de machines qui minent, il y a des fermes de minage, comme des fermes de vaches tout à l’heure pour le lait, et ces fermes de minage consomment énormément d’énergie, donc elles s’installent là où l’énergie coûte le moins cher, donc en Chine — mais même en Chine ça pose des problèmes d’énergie ; dans les pays du Nord où il n’y a pas de problèmes de refroidissement ; mais du coup, ce sont des catastrophes écologiques. Je crois que l’année dernière, grosso modo, la consommation d’énergie qui a été utilisée pour miner du bitcoin c’était l’équivalent de la consommation de l’Irlande. Donc c’est une catastrophe !

Donc ça c’est une alternative qui est absolument intéressante.

Et après

Ça va poser pas mal d’autres questions. Là on a parlé de monnaie, on a parlé de vote, on a parlé de systèmes décentralisés comme les cadastres et autres qui pourraient contenir toutes nos données, cette espèce de super registre en fait. Mais ça se met, si on réfléchit un peu plus loin, à changer notre système de gouvernance. Aujourd’hui on a une autorité centrale avec des personnes qu’on choisit, qu’on élit, qui nous représentent, mais on a ces points centraux et on a cette chaîne de confiance qui est basée sur des autorités. Demain, avec ce qu’apporte la blockchain, ces systèmes de confiance qui sont centralisés, techniquement on n’en a plus besoin. Ce n’est plus une autorité, on a un système complètement décentralisé avec un consensus qu’on décide d’adopter, tous, un consensus majoritaire qui détermine les conditions qui vont faire qu’on va accepter ça ou ça.

Donc demain, quels seront les impacts que ça aura sur la société ? Qu’est-ce que ça va changer ? Il y a de pleins champs des possibles. Si on essaie de se projeter — aujourd’hui moi je ne sais pas ce que ça va faire —, mais je pense que ça va être une prochaine révolution. De la même manière qu’Internet a changé beaucoup de choses pour nous, la blockchain5 va certainement changer beaucoup de choses, va certainement apporter beaucoup de choses nouvelles, avec d’autres difficultés, bien évidemment, d’autres challenges qu’on aura à régler, mais il y a plein de choses à faire, il y a plein de façons de voir les choses.

Je vous remercie de votre attention. J’ai été un peu plus court que ce que je pensais.

[Applaudissements]