Accueil Ethereum : tout savoir sur la preuve d’enjeu (proof-of-stake, PoS) en 10 questions
Actualités Crypto-monnaies, Actualités sur l'Ethereum, Guides, Toute l'actualité

Ethereum : tout savoir sur la preuve d’enjeu (proof-of-stake, PoS) en 10 questions

pos
Rejoignez notre groupe Telegram pour rester au courant des dernières nouvelles crypto en direct.

Lorsqu’on parle de blockchain, on dit souvent que les transactions sont regroupées en “blocs”. Des blocs qu’il faut ensuite « valider » à travers un processus décentralisé, fiable et sécurisé. Mais comment arrive-t-on à ce résultat ? Tout simplement en faisant en sorte que tous les acteurs du réseau tombent d’accord sur la création et l’enchaînement de ces blocs. C’est là qu’un “algorithme de consensus” est à la manœuvre.

Allons aujourd’hui à la découverte de l’algorithme de consensus à preuve d’enjeu d’Ethereum (ETH).

1 – Pourquoi parle-t-on de « consensus » en évoquant une blockchain ?

Il faut imaginer une blockchain comme une sorte de registre comptable, qui enregistre des transactions entre utilisateurs.

Sauf que cette base de données est décentralisée : personne ne la contrôle, puisqu’elle est hébergée chez tous les acteurs du réseau.

Etant donné qu’il n’en existe aucune version centralisée, il faut donc que ces acteurs (qu’on appelle les « nœuds ») se coordonnent constamment sur l’état du registre. Ils doivent donc échanger des données pour arriver au fameux « consensus » sur l’état de la base de données.

Comme son nom le suggère, une blockchain est composée de blocs mis bout à bout.

En respectant un protocole informatique, ces blocs enregistrent des informations et transactions qui se déroulent sur le réseau.

C’est l’algorithme de consensus qui définit qui fabrique les blocs, puis c’est au tour des nœuds du réseau d’attester si ces blocs sont bien conformes au protocole.

Consensus : l’équivalent d’un audit interne

Le consensus est essentiel pour un réseau à deux titres :

  • La validité de chaque bloc : le consensus permet au réseau d’être mis à jour tout en s’assurant que chaque bloc créé est bien valide.
  • La décentralisation : il empêche qu’un seul et même acteur puisse prendre le ccontrôle de l’ensemble du réseau.
cryptonaute twitter

2 – Comment sont validés les blocs de transaction ?

En preuve d’enjeu / participation, les validateurs doivent démontrer la propriété d’une quantité de jetons (le fameux staking). Chaque nœud validateur construit un bloc, puis le signe en indiquant le nombre d’ETH qu’il possède. Un tirage au sort décide alors quel bloc est accepté. Le validateur choisi empoche ensuite la récompense.

Conséquence : si un validateur détient deux fois de jetons qu’un autre, il est mieux placé pour valider deux fois plus de blocs.

En preuve de travail, les validateurs obtiennent leur droit à la validation en fonction de la puissance de calcul qu’ils déploient, par rapport aux autres mineurs (le hashrate). Ils donnent la preuve qu’ils sont bel et bien à l’origine de cette puissance en résolvant des problèmes mathématiques (la difficulté).

Conséquence : si un mineur est capable de résoudre deux fois plus de difficultés qu’un autre, il obtient deux fois plus de votes.

3 – Comment fonctionne la preuve d’enjeu sur Ethereum ?

Dans la preuve d’enjeu d’Ethereum, le temps est divisé en « slots » de 12 secondes. Toutes les 12 secondes, un valideur propose un bloc. Celui-ci est ensuite diffusé au reste du réseau.

Un tirage au sort désigne un comité de validateurs, chargés de voter sur la validité du bloc (c’est ce qu’on appelle soumettre une « attestation »).

Voici une image qui illustre ce processus :

Fonctionnement de la PoS d’Ethereum – ethereum.org

Il y a cinq étapes dans le processus :

  1. Génération : chaque validateur produit une attestation
  2. Propagation : cette attestation est diffusée aux autres nœuds du sous-réseau
  3. Agrégation : dans chaque sous-réseau, un validateur est choisi au hasard pour collecter les attestations des validateurs.
  4. Propagation : les agrégateurs diffusent leurs informations sur le réseau.
  5. Inclusion : le proposant du bloc suivant collecte ces attestations agrégées et les inclut dans son bloc à proposer.

Et le processus recommence !

Attestation : de quelles informations est-elle composée ?

Une attestation est le vote d’un validateur sur l’état actuel de la blockchain et des transactions déjà réalisées.

S’ils créent, signent et diffusent des attestations à chaque fois, ils peuvent gagner des récompenses en jetons ETH. S’ils ne parviennent pas à attester, ils sont susceptibles d’être sanctionnés, en perdant des jetons.

4 – Comment s’assurer que la preuve d’enjeu d’Ethereum soit suffisamment rapide ?

Comme nous l’indiquons plus haut, le temps dans Ethereum est divisé en « slots » de 12 secondes. Celui-ci est ensuite diffusé au reste du réseau.

Un tirage au sort désigne un comité de validateurs, chargés de voter sur la validité du bloc (c’est ce qu’on appelle soumettre une « attestation »).

1 Epoch = 32 slots

Une Epoch regroupe 32 slots, soit environ 6 min 24 sec (12 sec x 32).

A chaque Epoch, le premier bloc est appelé un “point de contrôle”, car c’est là où les validateurs votent pour finaliser deux blocs :

  • Un premier bloc « justifié »
  • Un deuxième bloc considéré comme « finalisé »

À l’Epoch suivante, un nouveau bloc sera alors « justifié », tandis que le bloc précédemment justifié est mis à niveau vers « finalisé ». Vous suivez ? 🙂

Choix aléatoire des validateurs : la variable RANDAO

La preuve d’enjeu utilise un mécanisme particulier s’assurer que les validateurs soient bien choisis aléatoirement.

Le code prévoit une variable baptisée RANDAO, qui est mise à jour à chaque proposition de bloc. Concrètement, le protocole utilise les signatures numériques de TOUS les validateurs pour mettre à jour la variable RANDAO. Ces signatures servent de source de hasard et sont infalsifiables.

Pour simplifier, le diagramme ci-dessous illustree comment le validateur inclut dans son bloc sa signature, le numéro d’époque puis d’autres informations. Ce bloc est ensuite haché puis mélangé dans le RANDAO existant – avec les informations de blocs d’autres validateurs.

Schéma simplifié du fonctionnement de la variable RANDAO – ethereum.org

5 – Comment les validateurs malveillants sont-ils sanctionnés par l’algorithme ?

Les validateurs qui se comportent honnêtement et exécutent leurs tâches en temps voulu recevront en récompense des jetons ETH, ajoutés à leurs jetons ETH verrouillés.

Les validateurs qui sont hors ligne pendant un certain temps ou qui n’attestent pas de l’état actuel de la blockchain peuvent perdre une partie de leurs jetons ETH verrouillés.

On appelle cela des pénalités d’inactivité, qui ne doivent pas être confondues avec le « Slashing ». Ces pénalités sont néanmoins faibles, voire négligeables – mais elles sont automatiques.

Si être hors-ligne est considéré comme une faute mineure, certaines infractions signalent clairement une intention malveillante :

  • Proposer plusieurs blocs durant un même slot
  • Attester plusieurs blocs pour le même slot
  • Contredire les « points de contrôle » précédents

Ces actions, elles, sont considérées comme des infractions « slashables », et entraînent des sanctions plus lourdes.

Le slashing implique l’amputation des jetons ETH verrouillés par un validateur, puis sa radiation du réseau.

Ce processus d’éviction n’est pas immédiat. Il faut compter environ 36 jours après la suppression initiale, et le validateur continuera à encourir des pénalités jusqu’à sa sortie …

Forcément, si un validateur a été slashé, il ne pourra pas réintégrer le réseau avec les mêmes clés et la même mise en jetons ETH. Il lui faudra  générer de nouvelles clés et miser à nouveau au moins 32 ETH.

Slashing : le premier utilisateur exclu après The Merge !

The Merge a réussi hier, et un validateur a déjà fait les frais du slashing. Un validateur a donc annoncé sur Twitter qu’un validateur avait été radié. Il portait le n°404680.

Que lui reproche-t-on ? Il aurait été hors ligne lors de l’Epoch 146880, outre d’autres comportements malveillants non mentionnés.

Exclu de la liste des validateurs, son solde en ETH a été diminué de 0,65594 ETH (environ 1070 dollars). La pénalité continuera jusqu’au 36ème jour …

Déjà un validateur botté hors du réseau après The Merge …

6 – Comment devenir validateur sur Ethereum ?

Pour devenir validateur, le premier prérequis est de déposer 32 ETH dans le contrat de staking d’Ethereum 2.0. Le deuxième prérequis est d’exécuter un logiciel client sur votre ordinateur.

Simple ? Pas vraiment !

Il est recommandé de disposer d’un appareil consacré uniquement à l’exécution de ce logiciel. Vous devez également maintenir une connexion Internet constante pour répondre aux exigences en tant que validateur.

C’est là que la plupart des validateurs préfèrent louer un serveur dans le cloud – type Amazon Web Services ou Google Cloud – pour faire tourner la machinerie 24h/24.

On appelle cela « monter un nœud » Ethereum.

7 – Qu’est-ce qu’un nœud ? Comment monter son propre nœud Ethereum ?

Tout d’abord, sachez que n’importe qui peut exécuter un nœud Ethereum, même ceux qui n’ont pas d’ETH !

Vous n’avez pas besoin de staker des ETH pour exécuter un nœud. Mais si vous voulez devenir validateur ET nœud pour gagner plus d’argent, il va falloir sortir le portefeuille  et miser au moins 32 ETH !

Commençons par les bases : il existe deux types de clients que vous pouvez exécuter, l’un pour la couche d’exécution et l’autre pour la couche de consensus.

Le client d’exécution surveille les nouvelles transactions, les traite et les diffuse au reste du réseau. Ces clients sont responsables du stockage de l’état de l’Ethereum Virtual Machine 🤓.

Les clients de consensus communiquent entre eux et parviennent à un consensus sur l’état de l’EVM. Ces nœuds implémentent l’algorithme de preuve d’enjeu et valident les données du client d’exécution. Toujours là ? 🤓

Si cela vous intéresse, les logiciels clients d’exécution de la PoS d’Ethereum s’appellent : Akula, Besu, Erigon, Geth et Nethermind. Les logiciels clients de consensus portent les doux noms de : Lighthouse, Lodestar, Nimbus, Prysm, Teku.

Vous l’aurez compris, plus il y a de nœuds, plus l’EVM est décentralisée et résistante aux attaques !

Les nœuds d’Ethereum en PoS : différentes catégories, pour différents objectifs

Il existe également différentes catégories de nœuds en fonction de leur consommation de données :

  • Les nœuds complets : qui stockent des données de la blockchain, valident les blocs et vérifient l’état de la blockchain.
  • Les Light Nodes : qui téléchargent uniquement les en-têtes de blocs (hachages, producteur de blocs, etc.). ces opérateurs n’ont pas à utiliser du matériel puissant ou une bande passante élevée. Ils ne participent pas au consensus et ne gagnent pas de récompenses en jetons, mais ils peuvent accéder à la blockchain Ethereum tout comme les nœuds complets.
  • Les nœuds d’archivage : qui stockent toutes les données de la blockchain et nécessitent 6 téraoctets disponibles pour le stockage de données. Ceci est moins utile pour les utilisateurs quotidiens, mais est idéal pour les explorateurs de blocs, les fournisseurs de wallets et les analystes.

8 – Quels sont les avantages de la preuve d’enjeu d’Ethereum ?

Une consommation d’énergie réduite de 99%. Le réseau peut être sécurisé pour un coût radicalement plus faible. L’empreinte écologique d’Ethereum était telle qu’elle comptait pour 0,20% de la consommation d’énergie mondiale !

Une inflation réduite. Par inflation, il faut comprendre la vitesse avec laquelle les jetons ETH arrivent sur le marché, par le jeu des récompenses et des frais de transaction. De 4% par an, elle sera réduite à 0%, voire moins. Au lieu d’un Ethereum inflationniste, nous aurons donc un Ethereum déflationniste.

9 – Quelles sont les vulnérabilités de la preuve d’enjeu ?

Le principal problème est la centralisation. Avec la preuve d’enjeu, Ethereum offrirait une moins bonne résistance aux attaques dites des 51 %. Une attaque de 51% consiste à réunir 51% de la puissance et des jetons pour contrôler le système à sa guise.

Avec la preuve d’enjeu, il est possible pour un acteur unique de réunir plus de 50% des jetons pour décider d’une réorganisation de la blockchain.

Cependant si une telle attaque devait se réaliser, cela réduirait en quelques minutes la valeur du jeton ETH, pénalisant l’attaquant lui-même.

La centralisation d’Ethereum : déjà un problème ?

57% des jetons ETH verrouillés sur la nouvelle chaîne en preuve d’enjeu sont détenus par 10 acteurs.

De plus, un chercheur (Alvaro Revuelta, voir lien ici) a mis en évidence qu’il était bel et bien possible pour un validateur de valider deux blocs d’affilée !

Sur 13,4 millions de jetons ETH stakés sur le contrat Ethereum 2.0, trois exchanges sont présents dans le top 5 des détenteurs – cointelegraph.com

10 – Quelles sont les variantes de la preuve d’enjeu ?

Si la preuve d’enjeu d’Ethereum repose sur le nombre de jetons détenus par un validateur (son « enjeu »), ce critère peut varier.

La pure preuve d’enjeu (PPoS, pour pure proof-of-stake) : la probabilité d’être validateur ne dépend plus du nombre de jetons détenus, puisqu’à partir de 1 jeton détenu, chaque validateur détient une chance égale à celle des autres. Ex : Algorand (ALGO)

La preuve de conservation (PoH pour proof-of-hold, PoH) : c’est l’ancienneté des jetons (coin age) qui est choisie comme critère. Ex : Peercoin (PPC)

La preuve de vélocité (PoV pour proof-of-velocity) : c’est la vitesse des transactions qu est utilisée comme métrique. Ex : Reddcoin (RDD)

La preuve d’importance (PoI pour proof-of-importance) : la « réputation » des validateurs augmente leur chance d’être choisis. Ex : NEM (XEM)

La preuve d’enjeu déléguée (DPoS pour delegated proof-of-stake, DPoS) : la probabilité d’être validateur dépend non seulement du nombre de jetons détenus, mais aussi du nombre jetons qui ont été délégué par vote à un validateur. Ex : Neo (NEO)


Nous voici rendus à la fin de ce mini-dossier sur la preuve d’enjeu. Nous espérons qu’il aura répondu à (la majorité, en tout cas) vos questions !

Enfin cela va vous surprendre, mais la preuve d’enjeu est plus ancienne que la preuve de travail. Ironiquement, c’est le succès de Bitcoin dès 2012 qui a remis la preuve d’enjeu dans le radar des développeurs de projets crypto.

D’ailleurs l’algorithme de preuve d’enjeu est connu en informatique sous le nom d’algorithme de Nakamoto de preuve d’enjeu ou algorithme de minage virtuel !

Rejoignez notre groupe Telegram pour rester au courant des dernières nouvelles crypto en direct.
Ajoutez Cryptonaute à vos flux Google Actualités

Romaric Saint Aubert Crypto-journaliste

Romaric Saint Aubert Crypto-journaliste

Biographie

Romaric est journaliste pour Cryptonaute. Après un passage en faculté de lettres modernes, il s’oriente dans un domaine tout à fait différent, tout en gardant l’œil rivé sur les crypto et l’actualité de l’époque. Il investit alors dans son premier actif numérique : le bitcoin (BTC).

Majoritairement intéressé par Bitcoin, il s’est diversifié plus tard en se penchant également sur le web3, les NFT, les crypto-monnaies et la FinTech. Investisseur aguerri, il est capable d'orienter son entourage et ses lecteurs. Son expérience au sein de l’écosystème crypto et sur la blockchain lui permettent de proposer une actualité précise et experte à ses lecteurs, tout en gardant un recul et une objectivité indispensable à son activité.

Romaric se rend régulièrement en conférence ou à divers événements crypto dans toute l'Europe, notamment aux conférences Bitcoin, au Zebu Live ou aux événements relatifs à la blockchain. Fasciné par ce secteur en plein développement, il aime découvrir de nouveaux projets, apprécie l’innovation, et se laisse porter par son enthousiasme et sa curiosité.

Expertise

  • Bitcoin
  • Cybersécurité
  • Régulation cryptos

Accomplissements

  • Révélé un cas rare de cyberfraude
  • Rencontre avec de nombreux innovateurs de l’industrie
  • Participe à la création d’une équipe dédiée de journalistes

Publications

Éducation

  • Université Polytechnique des Hauts-de-France

Autres

  • Carte de presse FIJ n°1385
  • Journaliste indépendant

Suivez Romaric sur Twitter | LinkedIn

Recevez toute l'actualité crypto en direct sur Telegram
Rejoignez notre groupe Telegram