Category: EduCrypto

Blockchain & système de gouvernance

Une technologie Blockchain est un système de registre distribué (chaque participant possède une copie du registre).  Elle permet non seulement d’émettre et d’enregistrer des actifs numériques (monnaies, droits de propriétés, membership, votes, points etc…), mais aussi d’effectuer des transferts, paiements et transactions sans tiers de confiance.

Initialement introduite par le créateur du Bitcoin [Satoshi Nakamoto] en 2009 Bitcoin, la technologie Blockchain a connu une évolution importante depuis les 3 dernières années. De nombreuses applications ont vu le jour dans le domaine des transferts d’argent électronique, des échanges de valeurs et depuis peu dans le développement contrats intelligents (entente/accord maintenu par les logiciels). Contrairement aux systèmes traditionnels, un système Blockchain est avantageux de part ses fondements: libre, ouvert, immuable, résilient, et ne repose sur aucune autorité centrale pour assurer son fonctionnement. 

Cependant, un système Blockchain, tout comme n’importe quel système distribué se confronte à plusieurs problèmes: mise à jour des registres, erreurs de transmission, bogues du protocole, latence du réseau, failles de sécurité, menaces de piratage. De part sa nature décentralisée, aucun participant du système ne peut faire confiance à un autre participant car des acteurs malveillants peuvent émerger et mettre en péril la fiabilité et la viabilité du système.

Pour éviter ces erreurs, des mécanismes de consensus sont mis en oeuvre afin de s’assurer que chaque participant du système ait une version reconnue et disponible du registre des transactions et/ou des opérations. Comment est-elle aujourd’hui réaliser? Comment les entreprises, organisations et gouvernements doivent s’assurer de leur disponibilité et de leur fiabilité? On parle alors de gouvernance dans les systèmes Blockchain.  Nous essayerons d’y répondre en donnant un aperçu des différents mécanismes de consensus en cours de développement dans l’industrie.

Commençons par nous donner quelques points de repères pour une meilleure compréhension.

Les systèmes Blockchain sont constitués d’un ensemble de composantes toutes liées les uns avec les autres. Dans le cas des Blockchain ouvertes [Bitcoin, Ethereum, Waves, Steem, NEM et autres], on y retrouve un jeton numérique, une base de donnée/registre [Blockchain] et un réseau.  Le défi pour chaque participant du réseau est de s’entendre sur comment la base de donnée/registre doit être mise à jour et par qui? Quelles règles doivent s’appliquer et comment on va récompenser les participants? Toutes ces questions sont en générale définies dans le mécanisme de consensus, jouant ainsi un rôle important dans la disponibilité, l’intégrité et la fiabilité des données.

Prenons le cas du Bitcoin, puisqu’il représente la 1ère implémentation des registres distribuées. Dans le livre blanc qui définit son fonctionnement, son créateur propose la Preuve de travail [Proof of Work – PoW] comme moyen d’arriver à un consensus sur qui doit mettre à jour le registre des transactions. Elle consiste à utiliser les ressources informatiques (processeur, mémoire, réseau) afin de trouver la solution à un problème mathématique donné. Le participant [ordinateur] qui trouve la solution au problème recherché est donc responsable de mettre à jour le registre des transactions. En contrepartie, il reçoit des jetons numériques comme récompense [bitcoin]. Les autres participants s’accordent alors de façon algorithmique sur la dernière version du registre et le processus recommence à tous les 10 minutes. Ce consensus est le plus utilisé aujourd’hui. On le retrouve chez Ethereum, Monero, Litecoin, Dogecoin. Dans l’écosystème des technologies Blockchains, j’appellerai ce mécanisme le “1er consensus”.

Trois (3) ans après son implémentation, plusieurs développeurs et cryptographes reconnaissent certaines insuffisances du consensus de la Preuve de travail, notamment sa consommation énergétique, son évolutivité, sa viabilité, sa gouvernance et proposent d’autres mécanismes de consensus pour adresser ces problèmes. D’autres mécanismes ont donc fait leur apparition dans le but d’adresser les problèmes identifiés dans la Preuve de travail.

Quelques mécanismes de consensus: 

Preuve de participation  [Proof of Stake – PoS]:

Introduite pour la 1ère fois en 2012 par la technologie PeerCoin, ce mécanisme visait principalement à résoudre le problème de la consommation énergétique de la Preuve de la travail. Depuis lors plusieurs l’ont adopté avec quelques variantes. On le retrouve alors chez NXT, Dash, Stratis et bientôt Ethereum. La Preuve de participation consiste à démontrer qu’on a une participation importante dans le réseau pour pouvoir mettre à jour le registre de transactions. Ce mécanisme permet aussi de réduire le temps de validation des transactions. Dans l’écosystème des technologies Blockchains, j’appellerai ce mécanisme le “2ème consensus”.

Preuve de participation déléguée [Delegated Proof of Stake – DPoS]:

Introduite pour la 1ère fois en 2014 par la technologie BitShares, la Preuve de participation déléguée se différencie de la Preuve de participation en ce sens qu’elle offre à ses participants de déléguer leurs participations (sans perte de contrôle) à des délégués/validateurs/témoins pour assurer la mise à jour des registres. L’avantage de ce consensus est qu’il permet d’assurer une plus large participation aux consensus.  Plusieurs technologies Blockchain l’ont adopté depuis lors, notamment Steem, Ark, Lisk, EOS, Waves avec une légère variante (LPoS – Leased Proof of Stake). Dans l’écosystème des technologies Blockchain, j’appellerai ce mécanisme le “3ème consensus”.

Preuve BFT [Byzantine Fault Tolerance]

La preuve BFT va pour sa part tolérer les défaillances d’un système distribué et utiliser un système de diffusion de messages entre les participants pour mettre à jour le registre des transactions. L’hypothèse de base à considérer est que les messages peuvent être perdus, endommagés, répétitifs ou avoir une latence dans leur transmission. Pour assurer sa fiabilité, elle va utiliser 2 niveaux de participations et récompenser ses participants en fonction de leur présence ou pas dans le réseau: L’un pour l’acceptation des données, les transferts et les échanges  et l’autre pour la comptabilité et la maintenance des registres. On va le retrouver chez AntShares et Tindermint pour le développement des contrats intelligents.

Preuve d’importance [Proof of Importance – PoI]

Introduite par la Blockchain NEM,  le mécanisme de la Preuve d’Importance  va tenir compte non seulement de la participation dans son réseau, mais aussi de son activité. Plus on a une participation et réalise des transactions dans le réseau, plus nos chances de valider et de mettre à jour le registre sont élevées.

Conclusion:

On ne saurait aborder les technologies Blockchain sans aborder les questions de disponibilité, de fiabilité et de viabilité des registres de données. Quand on pense que les entreprises, organisations et gouvernements devront répondre aux besoins de leurs clients, membres et citoyens en se basant sur des données fiables et vérifiables en tout temps sans tiers de confiance; les mécanismes de consensus qui offrent performance, économie, évolutivité et contrôle auront assurément un avantage compétitif dans le marché des technologies Blockchain.

 

Par:
Pascal Ngu Cho,
Entrepreneur/Consultant Blockchain.

Scroll to top