Qu’est-ce qu’une blockchain ?

Une question légitime et simple, qui appelle une réponse qui l’est tout autant. En 2 mots (et pas un de plus), qu’est-ce qu’une blockchain ?

La blockchain bitcoin

La blockchain a été inventée en 2008 avec la monnaie virtuelle Bitcoin, et pourrait se définir ainsi :

Une blockchain est un registre distribué.

Une autre formulation équivalente pourrait être : Une blockchain est une base de données décentralisée.

Ces définitions appellent deux notions :

· Le registre ou la base de donnée, à savoir, d’après Wikipédia : En administration, un registre administratif, anciennement rôle, est un livre dans lequel sont inscrites des informations administratives.

· La notion de décentralisation / distribution. Ainsi, dans un tel modèle, tous les participants au réseau ont les mêmes droits pour passer des opérations dans ce registre et pour le maintenir et le sécuriser (notamment par le minage). Implicitement, cela exclu la notion de tiers de confiance ou d’autorité (mais nous y reviendrons).

Prenons un exemple : Bob souhaite envoyer 1 000 € à Alice.

Un registre des euros existe : Il s’agit d’une banque. Ce registre est centralisé (d’ailleurs la mère de toutes les banques ne s’appelle pas la Banque Centrale pour rien).

Ainsi, lorsque Bob souhaite envoyer 1 000 € à Alice, il doit le demander à sa banque. La banque se charge de :

· Vérifier la validité de l’opération (Bob a-t-il les 1 000 € ?)

· Réaliser les modifications du registre nécessaires (débiter 1 000 € sur le compte de Bob et créditer 1 000 € sur le compte d’Alice)

Dans un univers blockchain, c’est la blockchain et sa logique qui vont réaliser ces deux opérations : Vérifier la validité de l’opération et prendre acte de l’opération.

Ainsi donc, Bob va réaliser un transfert de 0,5 BTC de son compte Bitcoin à celui d’Alice.

Le résultat est le même (au taux de change BTC / EUR près), mais une des opérations est faite en passant par un système centralisé (donc basé sur un ou plusieurs tiers de confiance), et l’autre ne l’est pas.

Pour permettre cela, le registre qu’est la blockchain est partagé avec tout le monde, et donc publique. C’est comme si la banque ouvrait ses livres de comptes et que tous les comptes étaient consultables librement.

A la lumière de cela, le Bitcoin n’est que un registre distribué, et pas plus. Ce registre permettant le suivi d’opérations, il a été utilisé pour suivre des mouvements monétaires d’une monnaie nouvellement créée, mais il aurait très bien pu être utilisé pour tout autre chose qui nécessite également la tenue d’un registre.

On peut imaginer des applications diverses et variées :

· Suivis de titres financiers (achats, ventes, opérations sur titre, etc.)

· Suivis de traçabilité sur des pièces ou des produits (agroalimentaire, industrie, notamment pharmaceutique ou aéronautique)

· Tout autre opération le long d’une chaine de valeur (suivis de sinistres entre un courtier, un assureur et ses réassureurs, entre autres).

· Actes notariés, cadastres et hypothèques

· Comptabilité

Monero et Zcash

On l’a vu, le Bitcoin, inventeur de la notion de blockchain, est un registre public et ouvert.

On comprend très rapidement que si cela facilite certaines opérations comme la lutte anti-blanchiment d’argent (aucune question ne se pose sur l’origine des opérations dans une blockchain publique), ce n’est pas sans soulever des réticences légitimes de certains utilisateurs sur la confidentialité de leurs transactions.

Deux blockchains récentes (2014 pour Monero et 2016 pour Zcash) proposent des solutions à ce problème.

Par des procédés cryptographiques aussi complexes qu’innovants (on rappelle que la cryptographique est la base de toutes les blockchains), ces deux monnaies permettent de chiffrer ce registre distribué, masquant ainsi l’information de qui donne quoi à qui.

Si Bob transfert 1 XMR (= Monero) ou 1 ZEC (= Zcash) à Alice, personne en dehors de ces deux utilisateurs ne pourront savoir que cette opération les concernent eux.

Pour les autres observateurs, une opération à eu lieu, sans qu’ils puissent dire de qui vers qui, ni de combien.

Ainsi, certaines blockchains peuvent offrir des solutions aux problèmes de maintien d’une certaine confidentialité dans un registre pourtant public, ouvert et décentralisé.

Nous éluderons volontairement ici le débat philosophique sur ces deux crypto-monnaies : Servent-elles la liberté, ou protègent-elles les criminels ?

Ethereum

Stade ultime de la blockchain aujourd’hui, Ethereum propose une autre définition de la blockchain :

La blockchain est un registre décentralisé et intelligent

L’intelligence du registre provient du fait qu’il est programmable. Il est ainsi possible d’y créer des programmes informatiques qui seront exécutés par le registre lui-même, et donc dont l’exécution est elle-même décentralisé et pas liée à un tiers ou même à une machine en particulier.

Ce type de registre intelligent existe déjà dans le monde bancaire. Par exemple, une banque peut vous proposer que lorsque votre compte courant dépasse 1 000 € en fin de mois, l’excèdent soit transféré vers votre livret d’épargne, ou l’inverse lorsqu’il reste moins de 100 € sur votre compte courant. Le livret d’épargne est en soit un registre intelligent, qui sur base d’un taux et d’une formule (règle de la quinzaine sur le livret A par exemple), réalise des opérations automatiques sur des comptes (créditer des intérêts).

Votre banque peut également vous proposer de prélever l’impôt directement sur les intérêts générés par votre livret d’épargne et de payer l’administration fiscale avec.

Ces opérations sont automatiques et sont réalisées par la banque, qui a le rôle de teneur de registre.

Dans la blockchain Ethereum, la logique est exactement la même. En plus du registre classique (l’équivalent des comptes bancaires), une couche permet de gérer des programmes, sorte de super macro VBA, appelés « smartcontracts », qui peuvent réaliser des opérations simples comme celles décrites précédemment, ou beaucoup plus complexes.

Cette technologie révolutionnaire ouvre la voie à une redéfinition de tout ce que nous connaissons dans un univers blockchain :

· Contrats d’assurance (voir l’assurance blockchainisée)

· Produits financiers simples (actions, obligations) ou complexes (fonds d’investissement)

· Entreprises autonomes décentralisées, ou DAO (Decentralized Autonomous Organization)

· Levée de fonds (voir ICO)

· Systèmes de vote à bulletins secrets (voir Zcash on Ethereum)

Avantages et inconvénients

Maintenant qu’il est clair pour tous qu’une blockchain est un registre distribué (la pédagogie c’est d’abord et avant tout répéter), qu’est-ce que cela implique ?

D’abords, l’absence de tiers de confiance. Les blockchains publiques (il n’en est pas de même pour les privées) partent du principe que tout le monde triche. Elles sont donc conçues pour résister à tous les types d’attaques, et ont démontrées leur résistance depuis plus de 10 ans.

Ensuite, du faite de l’absence de tiers de confiance et donc d’autorité, ces registres sont immuables, et toutes les transactions validées sont définitives. En d’autres termes, il est impossible de corriger une erreur ou de revenir en arrière (à relativiser par l’événement marquant mais unique de The DAO). Vous avez fait le virement sur le mauvais compte ? Tant pis, soit ce compte est possédé par quelqu’un et vous avez fait un heureux, soit vous avez détruit de l’argent en l’envoyant à une adresse dont il ne repartira jamais.

Votre smartcontract est mal codé ? Dommage pour vous, vous risquez une perte ou un vol des fonds (là encore, voir The DAO).

D’ailleurs dans ce milieu des blockchains programmables (Ethereum, etc.) un nouveau paradigme s’est imposé : Le code c’est la loi. En effet, le code du smartcontract va s’exécuter selon son code informatique, pas selon la volonté de son rédacteur ou des contractants (il n’y a pas d’interprétation “de l’esprit de la loi” ou de notion “d’abus de droits”). Cela implique de fournir un soin extrême à la rédaction, au test et à la validation du contrat. D’ailleurs des spécialités de validateurs ou d’auditeurs de smartcontract sont en train d’émerger.

Le big data dans tout ça ?

Petite digression sur ce que n’est pas la blockchain : Elle n’a aucun rapport direct avec ce que l’on appel vaguement le big data.

Ceci étant dit, la blockchain est un immense registre distribué (vous vous en souvenez ?). Ce registre contient donc des données, donc peut devenir une source de données pour une analyse big data. Mais c’est le seul lien que l’on puisse y trouver.

Pour résumer

S’il y avait deux choses à retenir de cet article, les voici :

· La Blockchain est un registre distribué, à l’origine sans aucun tiers de confiance, potentiellement confidentiel et potentiellement intelligent

· La blockchain est l’avenir du progrès humain, en ce sens qu’elle est en train de s’approprier et de réinventer tout ce que nous avons déjà créé (la notion d’entreprise, de tiers de confiance voir d’autorité) dans un système fiable, démontrable, décentralisé, prédictible, ouvert et à très faibles coûts.

Show your support

Clapping shows how much you appreciated Jean-Baptiste Pleynet’s story.