Blockchain

La Blockchain… ce concept dont vous entendez souvent parler sans vraiment comprendre de quoi est-ce qu’il s’agit. Comme on vous comprend ! Il faut tout de même admettre que ce n’est pas une mince affaire. Mais ne vous inquiétez pas ! Dans cet article, nous allons démystifier cela pour vous. Pour commencer, voyons ensemble ce que n’est pas la Blockchain.

Brisons quelques idées reçues sur la Blockchain

  • La Blockchain n’est PAS le Bitcoin… et encore moins une cryptomonnaie.

Certaines personnes s’imaginent que Bitcoin et Blockchain sont une seule et même chose. Elles le font à tort. En réalité, la blockchain est une technologie qui offre plusieurs services parmi lesquelles le transfert de cryptomonnaies (Bitcoin, Ether, etc).

  • La Blockchain n’est PAS une extension d’Internet.

Ces deux réseaux sont totalement différents. Tout d’abord, alors qu’Internet centralise les données dans des serveurs gérés par des mastodontes tels que Google ou Amazon, la Blockckain les répartit sur des ordinateurs indépendants répartis dans le monde entier.

Ensuite, avec Internet, lorsque vous envoyez une ressource numérique, le destinataire en reçoit en réalité une copie et vous conservez l’original. Or, sur la Blockchain, le transfert d’une donnée fait du destinataire son nouveau propriétaire, puisqu’il ne s’agit pas là de la dupliquer mais bien de la céder. Celle-ci acquière ainsi une certaine valeur. C’est la raison pour laquelle l’on dit que la Blockchain est à la valeur ce que Internet est à l’information

  • La Blockchain n’est PAS un système qui garantit la véracité des informations.

Attention ! Ne vous méprenez pas ! La blockchain assure bien l’authenticité et l’intégrité des données qui y sont stockées. Toutefois, étant donné que ces informations sont fournies par des sources externes, telles que l’Homme, elle ne peut en garantir l’exactitude.

Imaginons par exemple que Bob décide d’inscrire sur la blockchain que la Terre est plate. Bien que cette information soit erronée, la blockchain ne la rejettera pas puisqu’elle n’est pas destinée à vérifier ce que Bob renseigne comme information. Son but est plutôt de s’assurer que les données saisies par Bob ne soient altérées par personne et qu’elles conservent leur identité.

Par un concours de circonstances, nous vous avons donné quelques indications sur ce qu’est la Blockchain. À présent, explorons plus en détail ce concept.

Alors, c’est quoi la Blockchain ?

La blockchain peut être définie comme un registre distribué qui permet de transmettre et de stocker des données de manière transparente et sécurisée sans recourir à un tiers de confiance.

Mais qu’est-ce qu’un registre distribué ? À quoi correspond la transparence et quel est son utilité ? Qu’est-ce qu’un « tiers de confiance » et pourquoi voudrions-nous renoncer à l’utiliser ? Ce sont autant de questions qui méritent que nous leur accordions une attention particulière.

  • Qu’est-ce qu’un registre distribué ?

Par définition, un registre est un livre dans lequel sont inscrites des données (noms, nombres, événements,…) dont on souhaite garder une trace.

En informatique, un registre distribué désigne une base de données qui enregistre des informations en continu sur plusieurs ordinateurs différents en même temps. Cela signifie que les données ne sont pas centralisées sur un serveur donné. Cette décentralisation permet de supprimer la dépendance à un point de sauvegarde unique et d’assurer ainsi la continuité du service en cas d’incident ou de perturbation.

Registre distribué

Registre distribué – Source : Tradeix

Il est important de retenir que la blockchain, en plus de stocker les données des utilisateurs du réseau, conserve également l’historique des transactions qu’ils effectuent.

  • À quoi correspond la transparence et quel est son utilité ?

Globalement, un système est dit transparent lorsqu’il offre la possibilité de voir à travers lui. Il s’agit là d’une caractéristique très appréciée de la blockchain.

Cette dimension peut être observée dans la mesure où tout le monde peut à tout moment consulter librement l’historique des échanges qui ont eu lieu sur la blockchain.

Cette caractéristique peut être très utile pour mener des missions d’audit de manière rapide et efficace en vue, par exemple, de prévenir la fraude électorale ou de vérifier le statut d’une transaction

  • Qu’est-ce qu’un « tiers de confiance » et pourquoi voudrions-nous y renoncer ?

Un tiers de confiance est une personne (physique ou morale) neutre vers laquelle on se tourne pour instaurer un climat de confiance au cours d’une opération d’authentification, de transmission ou de stockage.

Par exemple, lorsque vous souhaitez transférer de l’argent, vous pouvez passer par votre banque, un réseau de transfert à l’international, ou encore un opérateur de téléphonie mobile (dans le cadre du mobile money).

Le problème réside dans le fait qu’en plus de susciter un sentiment de dépendance vis-à-vis des institutions financières, cette intermédiation implique des frais de transaction et des délais d’exécution importants.

Sur quelles technologies repose la Blockchain ?

Pour fonctionner, la blockchain s’appuie sur de nombreux concepts technologiques issus des domaines de l’informatique et de la cryptographie.

Une architecture réseau Peer-to-Peer

Si, de façon logique, la Blockchain s’apparente à un registre distribué, sur le plan matériel, il s’agit d’un groupe d’ordinateurs reliés entre eux selon une architecture de réseau peer-to-peer (encore appelée pair-à-pair ou P2P).

Le modèle P2P permet l’échange de données entre ordinateurs de poste à poste, contrairement à une architecture client/serveur où un seul ordinateur est chargé de traiter la totalité des requêtes émises par les autres.

Client-serveur vs Peer-to-Peer

Illustration des architectures Client-Serveur et Peer-to-Peer – Source : Hazmat

En effet, dans un système P2P, chaque ordinateur (ou nœud) est à la fois client (lorsqu’il formule des demandes) et serveur (lorsqu’il traite celles des autres).

Dans le cadre de la Blockchain, on peut distinguer les nœuds observateurs dont le rôle est de conserver et de mettre à jour le registre, et les nœuds validateurs qui vérifient et valident les transactions.

Cette technologie offre plusieurs avantages, tels que l’échange rapide de fichiers, le partage de gros volumes de données et le respect de l’anonymat.

L’une des utilisations les plus connues du P2P est BitTorrent, un logiciel open source qui permet de télécharger toutes sortes de fichiers (vidéos, audios, logiciels, …).

Les fonctions de hachage cryptographique

D’une manière générale, les fonctions de hachage permettent de convertir des données de taille variable en données de taille fixe.

En d’autres termes, quelle que soit la longueur de l’information que vous souhaitez convertir, ces fonctions produiront toujours un résultat de longueur identique.

Conversion avec une fonction de hachage

Conversion de phrases avec une fonction de hachage – Source : Bitpanda

Les inputs (données à convertir) sont généralement appelés messages, tandis que les outputs (données déjà converties) peuvent être appelés empreinte ou hash.

En cryptographie, une fonction de hachage idéale possède les quatre propriétés suivantes :

  1. le hash d’un message doit pouvoir être calculé très rapidement ;
  2. il est théoriquement impossible de déterminer un message à partir de son hash ;
  3. En théorie, toute modification apportée à un message modifie intégralement son empreinte. 
  4. il est théoriquement impossible que deux messages différents puissent avoir le même hash.

Dans le cadre de la blockchain, les fonctions de hachage sont utilisées pour veiller à ce que le contenu des blocs ne soit pas falsifié.

Chaine de blocs

Chaine de blocs – Source : Coin 24

Le principe est le suivant : chaque bloc contient le hash du bloc qui le précède ; ainsi, si la valeur du hash du bloc n qui est inscrite à la fin du bloc n est différente de la valeur du hash du bloc n indiquée au début du bloc n+1, cela signifie que le contenu du bloc n a été modifié. Par conséquent, c’est la version du registre où ces deux valeurs sont identiques qui sera considérée comme correcte.

Les fonctions de hachage contituent également un pilier fondamental de l’algorithme de consensus Proof-of-Work (PoW). Dans ce contexte, les nœuds validateurs doivent déterminer un message dont le hash répond à des critères précis (par exemple, les 4 premiers caractères du hash doivent être des zéros), afin pouvoir ajouter un bloc à la chaîne et d’obtenir une récompense. Le premier validateur à trouver la solution signera le bloc avec son empreinte et sera récompensé.

Hash identifiant un bloc du réseau Bitcoin

Hash identifiant un bloc du réseau Bitcoin – Source : Blockstream

Les fonctions de hachage permettent aussi d’identifier facilement les transactions sur la blockchain.

Hashs identifiant des transactions

Hashs identifiant des transactions Bitcoin – Source : Blockstream

Les algorithmes de consensus

Les algorithmes de consensus sont des protocoles qui régissent la manière dont les nœuds se mettent d’accord sur un statut unique (valide ou invalide) concernant une transaction ou un bloc dans une blockchain.

Avant qu’une transaction soit validée ou qu’un bloc soit ajouté à la blockchain, les nœuds doivent parvenir à un consensus concernant sa validité. Pour ce faire, chacun des nœuds participants doit choisir de valider ou d’invalider l’opération. Pour obtenir un consensus, cette décision doit être unanime.

Les mécanismes de consensus permettent également de récompenser les nœuds du réseau pour leur contribution.

Il existe une multitude d’algorithmes de consensus (Proof-of Work, Prof-of-Stake, etc) et il appartient à chaque blockchain de définir celui qu’elle souhaite adopter. Cette technologie fait constamment l’objet de débats afin de déterminer lequel est le plus performant.

La cryptographie à clé publique

Encore appelée cryptographie asymétrique, la cryptographie à clé publique est une méthode de chiffrement des informations basée sur un système de clés publiques et clés privées. Son implication dans la blockchain est liée au transfert et au stockage de cryptomonnaies.

La clé publique représente l’adresse du portefeuille (encore appelé wallet) où sont stockées les crypto-actifs. Quant à elle, la clé privée correspond au mot de passe permettant d’accéder à ce wallet.

📝Ne jamais partager votre clé privée avec quiconque. Aussi, veuillez à la noter dans un endroit sécurisé car si vous la perdez, vous perdrez l’accès à vos cryptos.

Toute personne ayant connaissance d’une clé publique est en mesure d’y transférer des cryptomonnaies. En revanche, seules les personnes possédant la clé privée associée peuvent manipuler les cryptos stockés dans ce portefeuille.

Imaginons, par exemple, qu’Alice veuille envoyer 1 bitcoin à Bob. Elle doit connaître au préalable la clé publique de ce dernier. Elle doit également être en mesure de prouver qu’elle a le droit de transférer ce bitcoin, et pour cela elle doit disposer de la clé privée du wallet contenant le bitcoin en question.

Une fois la transaction engagée, les nœuds de validation vont vérifier que la clé privée fournie par Alice est compatible avec la clé publique du portefeuille où est stocké ce bitcoin. Si tel est le cas, le bitcoin sera transmis à Bob.

Clé publique clé privé BitcoinSystème de clé privée-clé publique au cours d’une transaction Bitcoin – Source : Researchgate

Les signatures numériques

Tout comme les signatures manuscrites que nous utilisons dans la vie quotidienne, les signatures numériques garantissent l’authenticité des données.

Elles s’appuient sur la cryptographie asymétrique. Pour générer une signature numérique, un algorithme chiffre les informations à l’aide de la clé privée de leur détenteur.

Les signatures numériques sont principalement utilisées pour sécuriser les transactions et les blocs de transactions. Dans le cas des transactions, c’est un peu comme lorsque les caissiers de votre banque vous demandent de signer le formulaire (de retrait ou d’envoi) que vous avez rempli pour confirmer que c’est bien vous qui avez initié la transaction.

Elles sont également utilisées pour protéger les données sensibles (diplômes, titres de propriété, contrats, etc.) afin de détecter et d’empêcher les tentatives de falsification.

Les signatures numériques présentent deux avantages essentiels. Tout d’abord, elles garantissent l’intégrité des données. La signature change automatiquement si l’information signée numériquement est modifiée, ce qui en garantit l’incorruptibilité.

Deuxièmement, le principe selon lequel une clé privée ne peut être attribuée qu’à un seul signataire confère aux signatures numériques une propriété de non-répudiation. Par conséquent, si un document est signé numériquement par un utilisateur, il est légalement valable.

Comment se déroule une transaction sur la Blockchain ?

Les transactions sur la blockchain peuvent impliquer des cryptomonnaies, des documents, des contrats, des images ou toute autre type d’information.

Supposons que Bob souhaite transférer des cryptomonnaies à Alice. Cette opération se déroulera de la manière suivante : 

Étape 1 : Bob se connecte à l’interface de son wallet. Il initie la transaction en saisissant le montant du paiement, l’adresse du wallet d’Alice (clé publique) et son mot de passe (clé privée). En indiquant ainsi sa propre clé privée, il signe cette requête reconnaîssant ainsi l’avoir formulée.

Étape 2 : Pour la rendre facilement identifiable dans l’historique des échanges, cette requête est hachée pour obtenir une empreinte. Dans le même temps, elle est inscrite dans un bloc regroupant plusieurs transactions. Après une période de temps donnée, ce bloc est envoyé aux nœuds du réseau P2P pour validation.

Étape 3 : Pour valider la transaction de Bob, les nœuds doivent s’assurer que la clé privée fournie correspond à sa clé publique. Ensuite, il doit vérifier que son solde est suffisant pour couvrir le montant du virement. Si tout est correct, les validateurs approuveront collectivement la transaction à l’aide des algorithmes de consensus. Dans le cas contraire, s’il y a une erreur, la tentative de Bob échouera. Les nœuds effectueront les mêmes opérations de contrôle pour chaque transaction du bloc. 

Étape 4 : Une fois que les transactions du bloc auront été traitées, les nœuds tenteront individuellement de le certifier en produisant un hash pour le protéger de toute modification ultérieure. Le premier à y parvenir recevra une récompense. Ensuite, le bloc sera horodaté et ajouté à la blockchain existante.

Étape 5 : Alice recevra les cryptomonnaies dans son wallet, devenant ainsi leur nouveau propriétaire.

Fonctionnement de la Blockchain

Schéma de fonctionnement de la blockchain – Source : Blockchain France

Quels sont les types de blockchains existantes ?

En tenant compte de certaines caractéristiques, il est possible de distinguer plusieurs types de blockchains. Dans cet article, nous n’aborderons que brièvement les plus répandues à savoir les blockchains publiques et privées.

Les blockchains publiques

Les blockchains publiques sont conçues pour être utilisées par le plus grand nombre de personnes possible. Dans ce type de système, tout le monde peut consulter l’historique des transactions.

De plus, tous les utilisateurs peuvent participer au fonctionnement du réseau en prenant part au consensus de validation des transactions. En général, ces blockchains sont considérées comme « entièrement décentralisées ».

Les blockchains privées

Une blockchain privée est administrée dans son intégralité par une seule organisation. Elle ne permet qu’à des noeuds spécifiques au sein de l’organisation de vérifier et d’ajouter des blocs de transactions. L’accès à l’historique des transactions peut être public ou restreint à certains participants.

Quelles sont les avantages et les inconvénients de la technologie Blockchain ?

Comme toutes les technologies, la Blockchain présente un certain nombre d’avantages et d’inconvénients.

Les avantages

Si la blockchain rencontre un tel engouement, c’est parce qu’elle présente certaines caractéristiques susceptibles d’améliorer les modes de fonctionnement actuels. Ces caractéristiques apportent chacune leur lot de bénéfices.

  • La décentralisation : cette approche garantit une indépendance vis-à-vis des services centralisés, assurant ainsi la continuité de service en cas de défaillance, la réduction des coûts et la rapidité des transactions. 
  • La transparence : tous les événements produits sur la blockchain sont répertoriés et cet enregistrement est accessible à tous (surtout dans le cas des blockchains publiques). Cette fonctionnalité permet de réaliser des missions d’audit afin de prévenir et de détecter la fraude (corruption, détournement de fonds,…) et peut être utilisée pour assurer la traçabilité des produits.
  • La confidentialité et sécurité : la blockchain combine plusieurs techniques de cryptographie : mécanisme de consensus, hachage, signature numérique, cryptographie à clé publique. Tout cela contribue à renforcer la fiabilité du système, à préserver l’intégrité des données et à protéger la vie privée des utilisateurs.

Les inconvénients

Examinons maintenant quelques unes des limites de la technologie Blockchain.

  • La scalabilité : c’est l’un des défis majeurs à relever pour une adoption généralisée de la blockchain. Pour le moment, les blockchains existantes ne sont pas capables de s’adapter à une forte augmentation du nombre de requêtes. L’objectif est de pouvoir offrir un nombre de transactions par seconde (Transactions Per Second ou TPS) qui puisse rivaliser avec celui proposé par les géants du paiement électronique tels que Visa (jusqu’à 1700 transactions par seconde). Au moment de l’écriture de ces lignes, seul la blockchain Elrond peut se vanter d’un tel exploit (jusqu’à 15 000 TPS). Le réseau Ethereum, dont le TPS est le deuxième plus élevé à ce jour, atteint uniquement les 15 transactions par seconde.
  • La responsabilité : pour rappel, la blockchain repose sur la cryptographie asymétrique, la clé publique représentant l’adresse de votre wallet et la clé privée son mot de passe. Ainsi, si vous perdez cette dernière, ou si une personne malveillante la découvre, vous êtes susceptible de perdre tous vos biens. De plus, sur la blockchain, les transactions sont irréversibles. Par conséquent, si vous faites une erreur au moment d’initier une transaction en saisissant une information erronée (adresse de destination ou montant), il n’y aura pas de retour en arrière possible. Vous ne pourrez compter que sur la bonne foi du recepteur pour vous restituer vos actifs.
  • L’immutabilité : Quoi que vous fassiez sur la blockchain, cet événement y sera inscrit à jamais. Vous ne pourrez donc pas le supprimer.

 

One thought on “Qu’est-ce que la Blockchain ?

  1. hello Junie, very impressed by the way you have been able to refocus the idea, and define the Blockchain. I had appriori in particular to confuse Blockchain and bitcoin. thank you for this fabulous digest of ideas and research. But I have questions, does the blockchain guarantee the « authenticity » of information, the « identity » of information or both? And finally, for a young African how to obtain cryptocurrency according to the local context (cost, idea, credibility, platform, broker)? you could perhaps write an article on it 😉 still good work

Laisser un commentaire