Qu’est-ce qu’un algorithme de consensus ? Les 5 principaux algorithmes expliqués

Aujourd’hui, nous allons explorer cinq des protocoles de consensus blockchain les plus populaires : Preuve de travail (PoW), Preuve d’enjeu (PoS), et Preuve d’enjeu déléguée (DPos), Preuve d’autorité (PoA) et Preuve de capacité (PoC).

Si vous vous êtes déjà posé des questions sur les mécanismes de consensus ou sur leur fonctionnement, cet article est fait pour vous !

Dans cet article, nous allons voir :

  • Pourquoi les protocoles de consensus en chaîne de blocs sont-ils nécessaires ?
  • Comment fonctionne chaque protocole de consensus
  • Avantages et inconvénients de chaque protocole de consensus
  • Débats actuels sur l’élaboration des protocoles
  • Exemples de projets qui ont mis en œuvre chaque protocole de consensus

Pourquoi les protocoles de consensus blockchain sont-ils nécessaires ?

Les cryptomonnaies et les chaînes de blocs sont des réseaux décentralisés sans autorité centrale. C’est la décentralisation qui permet d’obtenir les caractéristiques uniques et souhaitées (résistance à la censure, résistance aux saisies, minimisation de la confiance, etc.). Cependant, la décentralisation a un coût : comment faire en sorte que les participants au réseau s’entendent sur la « vérité » lorsque personne n’est « en charge » ? 

Sans autorité centrale, la confiance est instaurée par le biais de « protocoles de consensus ». Dans un réseau donné, les arbitres humains sont remplacés par des algorithmes (protocoles).

On peut considérer les protocoles comme un ensemble de règles qui incitent les acteurs à générer un enregistrement de la vérité, y compris, mais sans s’y limiter, à quels fonds appartiennent quelles adresses dans un système de registre public qui permet à tous les autres de vérifier la vérité. Lorsque cet accord de vérité est vérifié, le consensus est créé sans autorité centrale.

Avant d’entrer dans les algorithmes de consensus spécifiques, il est important de comprendre le « trilemme de l’évolutivité ». (compromis d’extensibilité)

Les systèmes de chaînes de blocs peuvent être évalués selon trois dimensions :

  • Décentralisation
  • Évolutivité
  • Sécurité

Dans la plupart des cas, ces trois propriétés sont souhaitables. Cependant, ce n’est pas aussi simple. Les chaînes de blocs atteignent facilement des niveaux élevés pour deux de ces trois propriétés, mais toujours au prix de la troisième.

Par exemple : Bitcoin utilise la preuve de travail (PoW), qui présente des niveaux élevés de décentralisation et de sécurité, mais dont l’évolutivité est limitée.

Selon le protocole de consensus que vous choisissez, vous pouvez modifier l’équilibre de ces trois propriétés pour maximiser le résultat souhaité.

Chaque mécanisme a le même objectif de parvenir à un consensus au sein du réseau, mais ils s’y prennent de manière très différente.

Algorithmes de consensus en contexte

Plus de 90 % de la capitalisation du marché des cryptomonnaies fonctionne avec les trois principaux algorithmes de consensus : PoW, PoS, et DPoS. Cependant, il est important que les technologues continuent d’innover dans ce domaine.

Dans cet article, nous allons également examiner deux autres algorithmes consensuels. Bien qu’ils n’aient pas été adoptés par de nombreux projets, ils sont très intéressants à explorer et pourraient jouer un grand rôle à l’avenir.

Preuve de travail (PoW)

Mineurs fiers de leur travail

Une « preuve de travail » est une donnée difficile (coûteuse, longue) à produire mais facile à vérifier pour les autres. Les chaînes de blocs basées sur la puissance de travail utilisent des ordinateurs spécialisés (appelés « mineurs ») qui consomment des ressources énergétiques pour assurer les services de comptabilité et de sécurité du réseau. Les mineurs sont payés avec des pièces de monnaie nouvellement frappées en échange de leurs services. 

Le but de la PoW est de s’assurer que l’attaque du réseau est d’un coût prohibitif. Il n’y a pas moyen de « simuler le travail », car il faut consommer de vraies ressources pour changer le livre de comptes. Du point de vue de la théorie des jeux, la mise en œuvre de la PoW par Bitcoin est un équilibre très élégant des incitations. Les humains sont motivés par des incitations.

L’idée de la preuve de travail a été publiée à l’origine par Cynthia Dwork et Moni Naor dans un article de 1993 intitulé « Pricing via Processing or Combatting Junk Mail ».

Cependant, le terme « Preuve du travail » n’a été inventé qu’en 1999, lorsque Markus Jakobsson et Ari Juels ont publié un document officialisant la notion de « PoW » :

Adam Back a utilisé la preuve de travail comme un mécanisme pour empêcher le spam par e-mail avec Hashcash. Plus tard, Satoshi Nakamoto, le créateur pseudonyme de Bitcoin, a modifié et réorienté le concept général pour le réseau Bitcoin.

Exemples de Blockchains basés sur la PoW :

  • Bitcoin
  • Ethereum (Planification de la transition vers la preuve d’enjeu)
  • Litecoin
  • Dogecoin
  • Monero

Avantages :

  • Haute sécurité : une attaque à 51% est très coûteuse à mettre en oeuvre
  • La plus ancienne méthode éprouvée (les autres méthodes de consensus sont pour la plupart non éprouvées)
  • Méthode équitable de distribution des pièces nouvellement frappées (effet Cantillon)
  • Soutient la vérification simplifiée des paiements (SPV)

Inconvénients :

  • Extensibilité limitée sur la première couche : l’extensibilité de la couche deux est à l’étude (ex : Lighting Network)
  • Il est coûteux de maintenir : à la fois en termes de coûts d’investissement et de consommation d’énergie

Examinons quelques considérations sur la PoW

La consommation d’énergie de Bitcoin est élevée. Cela veut-il dire que la PoW est mauvais ?

Il est vrai que Bitcoin consomme beaucoup d’énergie en termes absolus. Cependant, la consommation énergétique de Bitcoin est une question nuancée qui mérite d’être explorée.

Ce n’est pas parce que le bitcoin consomme beaucoup d’énergie qu’il est « mauvais ». Il faudrait comparer la quantité d’énergie actuellement utilisée pour notre système financier actuel. Bien que ce chiffre soit difficile à calculer, on peut supposer sans risque que notre système actuel utilise des ressources supérieures d’un ordre de grandeur à celles du bitcoin.

Coinshares a publié un rapport estimant que 77 % de la consommation d’énergie du bitcoin provenait de sources d’énergie renouvelables. Ils ont également noté que l’exploitation minière est très compétitive, ce qui pousse les mineurs à trouver des actifs énergétiques « échoués ». En d’autres termes, les mineurs de bitcoin achètent de l’énergie que personne n’utiliserait autrement (énergie gaspillée).

Devrait-il n’y avoir qu’un seul système de preuve de travail ?

La PoW est un moyen très sûr de protéger un réseau, mais en raison du coût élevé des ressources et du manque d’évolutivité de la couche de base, on peut soutenir que nous ne devrions avoir qu’un seul système de preuve de travail. Si c’est vrai, l’extensibilité serait alors traitée en construisant des « solutions de couche deux » qui vivent au sommet de la chaîne de blocs, comme le réseau Lightning. Le Lightning Network n’a que deux ans et est prometteur. Cependant, il a encore un long chemin à parcourir avant d’être prêt pour une adoption massive.

Preuve d’enjeu (PoS)

Joueur de poker mettant ses jetons en jeu

La PoS a été officiellement proposé pour la première fois en 2012 par Sunny King et Scott Nada comme une tentative de résoudre le problème des coûts énergétiques élevés requis pour l’extraction de bitcoin. PeerCoin a été la première blockchain à mettre en œuvre la PoS, suivie par Blackcoin et NXT.

Lors de l’exploration de la PoS, il est utile d’explorer l’exploitation minière par rapport au jalonnement. Plutôt que d’utiliser les coûts énergétiques du travail de calcul pour sécuriser le réseau (exploitation minière), les nœuds d’un système de PoS fournissent des ressources de calcul et valident « au hasard » les transactions à tour de rôle (jalonnement).

Afin d’éviter la tricherie, chaque nœud doit mettre certains jetons en danger (stake), et s’ils trichent, leurs jetons sont perdus. Ce mécanisme de pénalisation des mauvais acteurs est souvent appelé « slashing ». En échange de leur soutien au réseau, ces « mineurs/partenaires » sont payés en jetons nouvellement frappés.

Il est intéressant de noter que, contrairement aux monnaies de PoW, qui peuvent commencer par une première pièce, une monnaie de PoS doit commencer par une partie ou la totalité des jetons déjà existants. Cela rend la distribution des jetons très difficile, ce qui conduit à la consolidation de la richesse et du pouvoir (oligarchie). Cette critique des PoS n’affecte pas Ethereum, qui a commencé en tant que chaîne de PoW et qui ne tente que maintenant de passer au PoS. Les 4 premières années et plus de la chaîne de PoW ont permis une distribution assez large des jetons ETH.

Preuve d’exemples de chaînes de blocs basées sur des enjeux :

  • Ethereum 2.0 (en cours de construction)
  • Peercoin
  • Pivx
  • Stratis
  • Lisk
  • Nxt

Avantages :

  • Augmentation de l’extensibilité de la couche de base (en raison de la compatibilité avec les systèmes de sharding)
  • Économies d’énergie potentielles par rapport au PoW

Inconvénients :

  • Tendance à former une oligarchie : « les riches deviennent plus riches ».
  • Le problème du « rien en jeu »
  • Ne peut pas soutenir la vérification simplifiée des paiements (SPV)

Examinons quelques considérations sur la PoS

Ethereum prévoit de passer du PoW au PoS

Pour que la deuxième plus grande chaîne de blocs (Ethereum) réussisse en tant que « machine d’état » à chaîne de blocs entièrement programmable, ils estiment qu’il est crucial de tirer parti de la preuve d’enjeu. Il est intéressant de noter qu’Ethereum 2.0 sera une chaîne de blocs entièrement nouvelle.

Cette « transition » n’est pas entièrement conçue et, si elle est réussie, il faudra plusieurs années pour la mener à bien. Beaucoup d’incertitudes se profilent à l’horizon. Cependant, de nombreuses personnes intelligentes consacrent leur vie à la réalisation de ce projet. Vous pouvez en savoir plus sur les spécifications d’Ethereum 2.0 en consultant leur GitHub.

La PoS offre-t-il une sécurité suffisante ?

La PoS est un système d’engagement endogène/intrinsèque. Signification : les acteurs risquent la monnaie à l’intérieur du réseau afin de valider ce même réseau. En trichant les mauvais acteurs peuvent perdre leurs pièces mises en jeu, mais théoriquement, ils pourraient en tirer un profit externe plus important. Comparez cela à la PoW, qui nécessite un coût énergétique externe pour effectuer le travail de calcul et sécuriser le réseau.

Est-il possible d’atteindre un niveau de sécurité élevé dans ces conditions ?

Il existe de nombreuses façons de mise en œuvre la preuve de l’enjeu

Avant de pouvoir évaluer la PoS, il est important de réaliser qu’il existe d’innombrables façons de concevoir le système. Rien qu’au cours des 5 dernières années, les mises en œuvre des PoS ont divergé sur de nombreux chemins différents.

Nous voyons également des mises en œuvre plus exotiques de chaînes de blocs telles que Tezos, Cardano et EOS. On les appelle souvent « blockchains de 3ème génération ». Elles se targuent de formes plus compliquées de protocoles de PoS (tels que DPoS), qui ont une gouvernance « sur la chaîne ». Bien qu’ils puissent sembler prometteurs à première vue, ils sont encore très expérimentaux.

En fait, nous ne savons toujours pas si la gouvernance « sur la chaîne » est une caractéristique ou un bug. Dès qu’un système implémente un processus de gouvernance dans le protocole, il ouvre le système à de nouveaux vecteurs d’attaque. Pourquoi construire des systèmes décentralisés s’ils dérivent vers les mêmes mécanismes que ceux que nous utilisons actuellement dans la société ?

Preuve d’enjeu déléguée (DPoS)

Delegate

La DPoS est une évolution de la PoS et serait considéré comme un algorithme de consensus relativement nouveau. Au lieu de sélectionner des nœuds individuels au hasard pour effectuer la validation, la communauté des détenteurs de jetons utilise leur « enjeu » pour voter sur un nombre choisi de nœuds « de confiance » souvent appelés délégués. Ces délégués sont payés pour leurs services avec des pièces fraîchement frappées.

La DPoS peut être comparée à la démocratie représentative : les participants votent pour un représentant de confiance qui sécurise le réseau en leur nom. Les électeurs peuvent remplacer les « délégués » s’ils agissent contre l’intérêt de la majorité des parties prenantes.

La preuve d’enjeu déléguée a été proposée à l’origine par Dan Larimer en 2014. Vous pouvez lire certaines des premières discussions sur Bitcointalk.org ici.

Exemples de Blockchains basés sur le DPoS :

  • EOS
  • Bitshares
  • Steem
  • Arche

Avantages :

  • Augmentation de l’extensibilité de la couche de base (en raison d’un nombre réduit de validateurs avec un matériel plus puissant)
  • Une plus large répartition de l’inflation
  • Vote en temps réel (gouvernance sur la chaîne)

Inconvénients :

  • Moins sûr (plus facile d’organiser une attaque)
  • Plus de centralisation
  • Les cartels de témoins

Discussions pertinentes en cours sur le DPoS

Les compromis en matière de conception font que les plates-formes DPoS sont concurrentielles dans un créneau différent

Les compromis de conception du DPoS sacrifient délibérément la sécurité et la décentralisation au profit d’un débit plus rapide. Par rapport à Bitcoin, une chaîne de blocs DPoS ne peut pas concurrencer le cas d’utilisation de « l’argent décentralisé ». Dans le même ordre d’idées, les blockchains comme EOS sont bien mieux adaptées pour alimenter un média social ou une plate-forme de jeu décentralisée. Dans ces exemples, il est raisonnable de renoncer à une certaine sécurité/immuabilité afin de gagner en efficacité.

La tendance à la centralisation/efficacité s’accompagne d’un risque de se rendre obsolète. Si une chaîne de DPoS devient trop centralisée, elle commence à ressembler aux Amazon Web Services (AWS). Les chaînes de blocs ne seront jamais plus efficaces que les AWS. Elles doivent plutôt se tailler une place à part.

Comment trouver le bon nombre de délégués ?

Bitshares a commencé avec une centaine de délégués, mais ce nombre est arbitraire. EOS a 21 délégués (appelés producteurs de blocs). Comment connaître le bon nombre de délégués ? Heureusement, les actionnaires peuvent voter pour augmenter ou diminuer le nombre de délégués, ce qui théoriquement augmente ou diminue la décentralisation.

Preuve d’autorité (PoA)

Militaire exerçant son autorité

La preuve d’autorité (PoA) est un algorithme de consensus basé sur la réputation qui exploite la valeur de l’identité et de la réputation des validateurs de bloc. En mars 2017, un groupe de développeurs d’Ethereum dirigé par Gavin Wood a proposé la PoA comme solution aux attaques de spam sur le réseau de test Ropstein Ethereum.

La PoA est similaire au PoS, sauf que les validateurs jouent leur réputation au lieu de miser des pièces. Les nœuds/validateurs de confiance sont sélectionnés par les responsables du réseau, ce qui fait que le PoA n’est utile que pour les réseaux à chaînes de blocs privés.

En général, les réseaux PoA reposent sur un petit nombre de validateurs, ce qui permet un débit plus élevé sur la première couche. La PoA est généralement considéré comme une bonne option pour les scénarios de gestion semi-fiable de la chaîne d’approvisionnement. Dans l’idéal, les différentes entités d’une chaîne d’approvisionnement pourraient préserver la confidentialité de leurs données tout en bénéficiant d’un réseau partagé.

Preuve d’autorité vs. preuve d’enjeu

Certains considèrent la PoA comme un PoS modifié, qui tire parti de l’identité plutôt que des pièces. En raison de la nature décentralisée de la plupart des réseaux blockchain, la PoS n’est pas toujours adapté pour certaines entreprises et sociétés. En revanche, les systèmes de PoA peuvent représenter une meilleure solution pour les chaînes de blocs privées car leurs performances sont considérablement plus élevées.

Exemples de Blockchains basés sur la PoA :

  • Koven Testnet
  • VeChain Thor
  • Microsoft Azure

Avantages :

  • Temps de transaction plus rapide
  • Évolutif
  • Un réseau peu coûteux

Inconvénients :

  • Renonce à la décentralisation
  • La réputation n’empêche pas systématiquement les comportements malveillants

Preuve de capacité (PoC)

Entrepôt de stockage

Semblable à la preuve de travail, mais au lieu de ressources informatiques, la preuve de capacité exploite l’espace disque disponible (stockage). Cela offre une alternative plus écologique à la preuve de travail et est moins vulnérable au matériel spécialisé, ce qui permet aux groupes miniers de centraliser le réseau.

Le concept de preuve de travail a été formulé à l’origine par Dziemboawski en 2015 et avec une définition formelle légèrement différente par Ateniese en 2014. Bien que ce soit le cas, les gens considèrent que la preuve de capacité est la même que la preuve d’espace, qui a été proposée à l’origine dans un livre blanc de 2013.

Les projets de PoC utilisent une fonction de hachage appelée Shabal, qui est plus difficile à calculer que SHA 256, qui est utilisée par Bitcoin. Il est intéressant de noter qu’au lieu de résoudre les nonces en temps réel comme c’est le cas avec Bitcoin, les mineurs de PoC résolvent la fonction de hachage à l’avance et stockent les nonces sur leur disque dur. En utilisant le stockage au lieu de l’informatique avec les ASICS, les chaînes de blocs PoC sont beaucoup plus efficaces sur le plan énergétique.

Exemples de Blockchains basés sur la PoC :

  • Filecoin
  • BitcoinHD
  • Burstcoin
  • Storj

Avantages :

  • Efficacité énergétique
  • Tout le monde peut être mineur
  • Le dispositif d’extraction peut être utilisé à des fins multiples

Inconvénients :

  • Moins sûr
  • Besoins accrus en espace
  • Susceptible d’être attaqué par écrasement

Récapitulons

La conception de protocoles est une question de compromis. Chaque conception a ses propres forces, faiblesses et cas d’utilisation potentiels. Vu sous cet angle, il est raisonnable de supposer qu’ils ne sont pas en concurrence les uns avec les autres.

Par exemple, la mise en œuvre de la preuve de travail de Bitcoin est très sûre et décentralisée. La PoW est un excellent mécanisme de consensus pour les cryptomonnaies. Cependant, ce serait un choix terrible pour une blockchain de médias sociaux.

Avec une industrie aussi naissante que la blockchain, il est important que nous poursuivions nos recherches afin de découvrir de nouvelles architectures de chaînes de blocs. De nouveaux mécanismes de consensus permettront de découvrir de nouveaux cas d’utilisation de la technologie des chaînes de blocs. Les possibilités sont illimitées.

Comments (No)

Leave a Reply

ipsum libero mi, nunc quis venenatis, mattis ut dapibus id ipsum efficitur.