Est-ce que la blockchain peut avoir d’autres usages que dans la cryptomonnaie ?
Principalement connue grâce au Bitcoin, la blockchain est une technologie basée sur le principe des chaines de blocs. Elle est aujourd’hui au cœur des solutions de cryptomonnaie et cherche à percer dans d'autres domaines, pour de nouveaux usages. Décryptage.
La blockchain est une technologie basée sur l’informatique distribuée, c’est-à-dire qui se trouve dupliquée à différent endroits sur le net. Il s’agit d’une base de données (appelée dans ce cas “registre”) décentralisée par le fait que les données sont présentes à différents endroits du réseau et accessible à tout moment non seulement par l’ensemble de ses utilisateurs mais aussi, dans sa forme publique, par le monde entier. Sécurisée et non modifiable : une fois la donnée écrite, elle ne peut plus être changée.
Toutes ces caractéristiques permettent de s’affranchir d’un organe central de gestion de la blockchain appelé plus communément un tiers de confiance. Cette technologie existe depuis 2008 : elle a été créée par un individu connu sous le nom de Satoshi Nakamoto mais dont personne ne connait l’identité réelle. Elle est aujourd’hui au cœur des solutions de cryptomonnaie (comme le Bitcoin) et cherche à percer dans d’autres domaines.
Comment fonctionne la blockchain ?
La blockchain peut être apparentée à une liste chaînée d’informations : elle est constituée de blocs qui sont liés les uns aux autres cryptographiquement. En effet, chaque bloc contient tout d’abord les informations à stocker (comme les transactions en cryptomonnaie). Pour faire le lien avec le bloc précédent, il contient aussi le hash de ce dernier. Pour rappel, le hash est le produit d’une fonction mathématique à sens unique qui permet à partir d’un ensemble de données numériques de longueur variable (des caractères, tels un mot de passe par exemple), de produire un autre ensemble de données de longueur fixe qui n’a plus à rien avoir avec le premier, et qui ne permet pas de faire l’opération en sens inverse. Ainsi, s’il est trivial de connaître le hash à partir de la phrase originale, l’inverse est beaucoup plus compliqué voire impossible, sans dictionnaire précalculé et une très grosse puissance de calcul. C’est ce mécanisme qui permet d’assurer que le bloc précédent ne pourra pas être modifié : si c’était le cas, le nouveau hash serait alors différent de celui stocké dans le bloc suivant. Enfin, le bloc contient aussi son propre hash (calculé en fonction de la data et le Hash du bloc précédant).
Pour créer ces blocs, il existe des utilisateurs spéciaux appelés mineurs dont le rôle est de regrouper une ou plusieurs données à sauvegarder pour les écrire au sein d’un bloc. Comme plusieurs mineurs peuvent travailler en même temps sur l’écriture d’une même donnée, c’est le premier qui arrive à fournir une “preuve de travail” qui valide l’écriture du nouveau bloc. La « preuve de travail” a pour but de rendre l’écriture dans le registre (la création d’un bloc) artificiellement complexe et potentiellement couteuse en énergie. Il s’agit par exemple de trouver un aléa appelé “nonce” qui lorsqu’ajouté au bloc va donner un hash prédéfini.
Une fois le bloc créé, il est distribué (autrement dit dupliquer) dans tous les nœuds de réseau existant de la blockchain. D’autres blocs se créent au fur et à mesure après validation des nœuds en se basant sur des algorithmes de consortium. Ainsi, on peut accéder aux données d’un bloc qui sont généralement chiffrées, mais on ne peut ni supprimer ou modifier le contenu des blocs. Le partage de l’information à un tiers nécessite donc de lui fournir la clé de chiffrement du contenu en lui-même.
Il est difficile de parler Blockchain sans parler des contrats intelligents, les smart contracts en anglais. Toutes les blockchains ne les supportent pas. Ce sont des programmes (lignes de codes écrit dans un langage de programmation) dont le seul but est de faciliter, vérifier et exécuter l’exécution d’un contrat automatiquement, dont les règles sont figées dans la blockchain.
Les différents types de blockchains
Il existe trois types de Blockchain :
- la blockchain privée,
- la blockchain publique,
- la blockchain autorisée (ou hybride).
La version publique s’appuie sur un modèle totalement décentralisé et ouvert ou tout le monde peut accéder au registre (aux différents blocs) et participer au minage (par exemple : Bitcoin ou Ethereum). A l’inverse, pour la blockchain privée, cette dernière est totalement fermée et donc réservée à des membres qui sont spécifiquement autorisés à y accéder et pour qui des restrictions de lecture de certaines données peuvent être mises en place. La blockchain autorisée est un intermédiaire entre les deux.
Il existe donc plusieurs différences qui portent sur des aspects fondamentaux de la blockchain. Lorsqu’elle est publique, elle est totalement transparente et s’inscrit totalement dans une solution sans organe central. Ce n’est pas le cas pour les autres types de blockchain où le mode de validation est quant à lui réparti entre les acteurs du consortium ou bien centralisé et maitrisé par un seul acteur pour la version privée. Ces dernières ont par contre l’avantage de s’affranchir d’une “preuve de travail” gourmande en énergie et qui nuit à ce jour à la réputation de la blockchain.
Risques et défi de la blockchain
Comme tout système informatique, la blockchain a ses limites et peut subir des cyber-attaques. La plus connue, l’attaque 51 % qui cible particulièrement les blockchains utilisant les “preuves de travail”, consiste à bloquer la validation d’un bloc et de réitérer l’écriture de bloc en modifiant l’historique de la blockchain. Cette attaque permet ainsi d’utiliser deux fois la ou les données du blocs (particulièrement révélateur pour les cryptomonnaie ou les données du bloc sont des transactions : ainsi l’argent peut être utilisé plusieurs fois). Cela n’est possible que lorsque lorsqu’une personne ou organisation possède plus de 50% du minage de la blockchain, ce qui est hautement peu probable.
Si la blockchain est publique, il n’en demeure pas moins un grand niveau d’anonymat par le chiffrement des données contenues dans les blocs comme les identifiants anonymisés des transactions. Ainsi, dans le cas de la cryptomonnaie, il est très difficile de savoir d’où vient la monnaie et dans quel porte-monnaie elle aboutit. Il est aussi très difficile de connaitre les raisons de ces transactions. Toutes ces caractéristiques sont propices à utiliser les cryptomonnaies pour faire du blanchiment d’argent.
Cet anonymat est aussi dangereux pour les détenteurs de cryptomonnaie. Seule leur clé de chiffrement permet de les identifier dans les transactions et donc de savoir combien de cryptomonnaie ils possèdent. Si une personne malintentionnée arrive à voler cette clé, elle peut alors faire ce qu’elle veut de la cryptomonnaie et donc en devenir propriétaire. C’est ce phénomène dont on entend le plus parler aux informations et ces piratages représentent plusieurs centaines de millions d’Euros/Dollars. Inversement, ce problème est moins présent dans les systèmes bancaires traditionnels car ces derniers traces toutes les transactions et connaissent les détenteurs de compte (les banques sont même redevables de l’argent volé dans le cas de vol de votre carte bleue et de l’usage de celle-ci).
Un autre point très critiqué de la blockchain public est sa consommation d’énergie. Comme rapidement expliqué plus haut, la preuve de travail nécessite une quantité telle d’électricité qu’on estime par exemple que le fonctionnement du Bitcoin aurait une consommation électrique équivalente à celle de l’Irlande (étude Bitcoin Mining and its Energy Footprint de Karl J. O’Dwyer† and David Malone). Cela étant dit de gros efforts sont faits pour solutionner cela avec des propositions s’appuyant par exemple sur le concept de Proof of Capacity ou le Proof of Stake.
La dernière limitation à prendre en compte dans la blockchain est que si cette dernière est théoriquement immuable, c’est à dire que l’on ne peut plus changer la valeur une fois qu’elle est rentrée dans les blocs, rien ne garantit que la donnée en elle-même est correcte. Ceci est commun à toute base de données mais il est important de le rappeler du fait de la publicité que l’on fait autour de la blockchain et de ses différenciants.
Un début de diversification
Si la blockchain a été créée dans le but de passer des transactions paires à paires sans intermédiaire en donnant naissance à la cryptomonnaie (Bitcoin) qui reste aujourd’hui son principal usage, cette technologie commence à être appropriée par d’autres acteurs pour traiter d’autres cas d’usage.
Les caractéristiques de la blockchain apportent une valeur ajoutée pour faire de la traçabilité de bout en bout dès qu’il y a de nombreux acteurs impliqués. C’est pourquoi elle commence à être utilisée dans l’agroalimentaire en donnant facilement aux consommateurs l’origine des produits qu’ils consomment. Cette demande forte des consommateurs permet aussi aux professionnels de mieux tracer leurs produits et donc mieux gérer les risques sanitaires. Cette traçabilité de bout en bout peut être déclinée dans beaucoup d’autres domaines comme la santé ou encore l’industrie.
Les assurances y voient aussi un intérêt avec l’usage des smart contracts couplés à de l’IoT pour accompagner ses adhérents avec un maximum de transparence dans les usages de leurs voitures et avoir une facturation à l’usage.
Pour citer un dernier cas d’usage intéressant, la blockchain peut-aussi être utilisée dans le luxe ou tous produits exportés afin de lutter contre les contrefaçons et le marché gris.
La blockchain, par sa raison de sa création et donc par la nature de sa conception, apporte un vrai différentiateur par rapport à la majorité des autres bases de données nécessitant un donneur d’ordre. Elle peut permettre à ses utilisateurs de pouvoir mieux maitriser leurs propres données et plus naturellement s’appuyer dessus afin de la partager pour apporter par exemple un maximum de transparence et sans dépendre d’un tiers.
Si des initiatives de plus en plus nombreuses existent, la blockchain semble encore avoir du mal à avoir une adoption forte. Pour cela, il serait nécessaire que chacun de nous se penche sur l’opportunité de s’appuyer sur cette technologie pour nos propres cas d’usage.