COMPRENDRE
Pour comprendre ce qu’est la Blockchain et comment elle fonctionne, il est nécessaire de revenir à la source, celle du Bitcoin. Benoît Lafontaine, Technical Director d’Octo Technology, nous l’explique.
Pour les utilisateurs, Bitcoin est un réseau pair à pair (P2P) permettant de transférer de l’argent aussi facilement que d’envoyer un email, sans avoir recours à une entité centrale, telle une banque. Bitcoin est un grand livre de comptes ou registre partagé sur lequel on inscrit des transactions. « Partagé », car chacun possède une copie du registre. La conséquence est que toute altération de ce registre, intentionnelle ou non, est immédiatement rejetée par le réseau. Ainsi, les utilisateurs de Bitcoin savent qu’une fois leur transaction inscrite sur le registre, personne ne pourra l’effacer ou la modifier. Ils font ainsi confiance au réseau, sans devoir faire confiance à chacun des membres de ce réseau. Cette notion de confiance est cruciale, nous y reviendrons.
Disséquons maintenant l’inscription d’une transaction dans ce registre partagé et prenons un exemple simple de transaction : « Alice transfère 3 bitcoins à Bob ». Pour effectuer cette transaction, Alice ne passe donc pas par sa banque mais s’adresse directement à l’ensemble du réseau pour indiquer à tous qu’elle souhaite inscrire cette nouvelle transaction dans le registre. Le registre étant partagé, n’importe qui peut demander l’écriture d’une transaction. Mais le protocole Bitcoin exige une sorte de signature électronique sur chacune des transactions. Cette signature a le même rôle qu’une signature manuscrite : prouver qu’une transaction a été créée par le véritable propriétaire du compte, ainsi seule Alice peut dépenser ses bitcoins. Les signatures sont différentes pour chaque transaction, il est donc inutile de copier une signature existante.
Mais s’il n’existe pas d’autorité centrale, qui va valider les transactions et les écrire dans le registre partagé ? Étonnamment, tous ceux qui veulent ! L’objectif premier de Bitcoin est de fournir un système décentralisé, qu’aucun gouvernement ou société ne peut contrôler. Quand Alice envoie sa transaction, celle-ci est transférée à tous les nœuds du réseau P2P qui maintiennent le registre, les fameux «mineurs». Chaque mineur conserve une copie personnelle du registre et le met à jour chaque fois qu’il reçoit une nouvelle transaction avec une signature valide.
Le réseau étant mondial, les délais de circulation de l’information et parfois la fraude peuvent conduire à des différences d’écriture dans les différents registres. Comment décider quelle version du registre utiliser ? Comme dans d’autres systèmes démocratiques, il y a un vote, mais il est un peu différent d’un système de vote typique. Les mineurs « votent » en essayant de résoudre un puzzle spécial basé sur leur version du registre : pour ce faire ils rassemblent les dernières transactions dans un « bloc » (d’où le nom de Blockchain, ou chaîne de blocs) puis trouvent une valeur qui va donner à ce bloc une certaine propriété. Cela revient à résoudre un puzzle cryptographique et le premier mineur à résoudre ce puzzle annonce sa solution. Ensuite tout le monde met à jour sa copie du registre en y ajoutant le bloc de transactions. Ce processus de vote se répète, environ toutes les dix minutes, les mineurs se mettant constamment d’accord sur l’état du registre. Lorsque qu’un mineur résout un puzzle et soumet son bloc, il est rémunéré au passage via la création de nouveaux bitcoins. Cela pour inciter les mineurs à mettre à jour le registre et faire fonctionner Bitcoin.
Grâce à ces mécanismes, Bitcoin permet à tous de créer des transactions monétaires, de transférer des bitcoins, sans devoir passer par une entité centrale, comme une banque.
Bitcoin pour transférer et certifier
Chaque bitcoin est divisible en 100 millions d’unités appelées satoshi (1 bitcoin = 100 000 000 satoshis). Il est possible d’identifier individuellement chaque satoshi et d’y associer un petit nombre d’informations*. Les utilisateurs peuvent donc utiliser chaque unité pour représenter une part dans une société, un droit de vote, un certificat de propriété, une empreinte numérique ou toute autre chose. Dès lors, il devient naturel de penser à utiliser la Blockchain pour dématérialiser les certifications, la propriété et les transferts.
Dans les industries culturelles, on pense à l’enregistrement d’œuvres comme justificatif de propriété intellectuelle, via leur empreinte numérique, dans la Blockchain. Par exemple, un musicien prend l’empreinte numérique du morceau qu’il vient de composer, l’inscrit dans la Blockchain et pourra ensuite prouver dans le futur qu’il est bien le compositeur.
Dans l’administration publique, dont une partie importante du rôle est de certifier, les applications sont innombrables. Exemple concret, l’Ecole Supérieure d’Ingénieurs Léonard de Vinci va certifier la délivrance de ses diplômes via la Blockchain Bitcoin 1.
De la même manière, le Honduras ou le Ghana se servent de la Blockchain pour y enregistrer les titres de propriétés afin de lutter contre la corruption et la fraude 2. Citons également everledger.io qui s’attaque à la problématique de la traçabilité des diamants grâce à cette technologie.
Les Smartcontracts et Ethereum
Bitcoin permet d’écrire des petits programmes, nommés « smartContract » permettant de contrôler de façon intelligente la réalisation des transactions. Sur Bitcoin, ces programmes restent limités et il faut faire preuve de créativité pour les appliquer dans des situations réelles. Plusieurs initiatives ont pour but d’étendre ces possibilités, dont la plus en vue en ce moment : Ethereum.
Dans le cadre d’Ethereum, il ne s’agit plus seulement d’enregistrer de simples transactions comme pour Bitcoin mais d’exécuter des programmes informatiques. Ainsi, tous ces acteurs vont effectuer de concert les mêmes programmes, les mêmes instructions, stocker les mêmes données, le tout de façon synchronisée. Ethereum peut donc être comparé à un seul ordinateur, unique et global. Cet ordinateur global a d’énormes défauts (en tout cas à l’heure actuelle). Il est inévitablement lent, pour permettre à tous ses participants de se synchroniser, et son utilisation est chère comparée à celle d’un ordinateur ordinaire puisque chaque opération est effectuée en parallèle partout dans le monde, consommant du matériel et de l’énergie. Mais ces défauts sont éclipsés par ce qu’il apporte : la confiance. Lorsqu’un utilisateur effectue une opération, cette opération est effectuée sur l’ensemble des ordinateurs participant au réseau Ethereum et les résultats sont stockés partout. Cette opération est prédictible et irréfutable. Prédictible, car le programme est lui-même dans la Blockchain et, à l’instar d’une transaction Bitcoin, inaltérable ? l’exécution du programme est donc fidèle à ce qu’a demandé l’utilisateur. Irréfutable, car toute personne peut prouver que l’action a bien été effectuée. Ainsi, les utilisations les plus pertinentes d’Ethereum sont à chercher là où les données et les programmes sont relativement simples, mais où la confiance est prépondérante. Un exemple parlant est le droit de propriété de votre maison. La donnée elle-même est relativement simple, mais vous devez avoir confiance dans le fait que personne ne peut venir la supprimer ou la modifier à son avantage. Vous voulez être sûr de pouvoir la retrouver et prouver son authenticité, des années après, afin de certifier que votre maison est bien à vous. Les implémentations que nous avons déjà citées, au Honduras et au Ghana, sont implémentées en utilisant des dérivés de Bitcoin. Ethereum permettrait de les implémenter encore plus facilement. En effet, il ne s’agit plus de détourner l’usage de Bitcoin (dédié aux transactions financières), mais d’implémenter un bout de code sur une plateforme prévue pour supporter tout type de programme.
Toujours dans le secteur immobilier, les notaires pourraient constituer les dossiers de façon beaucoup plus efficiente en rassemblant automatiquement les pièces justificatives, que les experts auraient stockées et certifiées directement dans la Blockchain.
Quelques exemples d’applications
Tout contexte ayant besoin de confiance peut bénéficier de la technologie Blockchain. Et certains travaillent d’ores et déjà sur des applications tirant avantage de la technologie, par exemple :
ujomusic.com, plateforme permettant de vendre sa musique directement, sans plus d’intermédiaire que le programme lui-même,
Publicvotes.org, système de vote automatisé, transparent et vérifiable,
Slock.it, un système permettant à des serrures intelligentes d’être opérées directement via la Blockchain, ce qui permettrait à terme d’avoir des équivalents d’Airbnb ou de Drivy en permettant d’ouvrir les portes des appartements ou voiture partagées suivant les règles (réservation, paiements…) codées dans la Blockchain,
Cependant, derrière toute cette effervescence autour des blockchains, il faut aussi voir la jeunesse de l’écosystème. De nombreux challenges se profilent à l’horizon, tels que l’adoption par les utilisateurs ou les problèmes de législation.
Plus d’info : blog.octo.com/tag/blockchain
note
* plus précisément, ces mécanismes sont liés aux transactions, pas aux satoshi eux-mêmes, mais pour simplifier la compréhension restons sur l’identification des satoshis