DPoS et EOS : comment 21 validateurs font tourner une blockchain entière
Salut la communauté 👋
Aujourd’hui, avec ma collègue @nil002 on a envie de vous parler d’un mécanisme de consensus qui est au coeur de certaines Blockchains modernes : Le Delegated Proof of Stake (DPoS), et comment il est utilisé dans EOS.
Mais concrètement ça veut dire quoi EOS ? Qui décide des blocs ? Utilise-t-il les mineurs ?
et c’est quoi les délégués ?
On va décortiquer tout ça afin que ce soit facile à comprendre pour vous
EOS Qu’est ce que c’est ?
EOS, c’est une blockchain de Layer 1 c’est à dire :
elle a son propre token (EOS) , sa propre cryptomonnaie , définit ses propres règles et surtout son propre mécanisme de consensus : le DPoS.
Son objectif est clair :
👉 être une infrastructure à faible temps de réponse , capable d’héberger des applications décentralisées avec un grand nombre de transactions par seconde, une bonne scalabilité et des frais quasi nuls pour l’utilisateur final.
Au lieu de payer des frais à chaque transaction comme sur Bitcoin ou Ethereum, EOS fonctionne avec un système de ressources :
Si tu stakes des EOS, tu obtiens du CPU, du NET (bande passante) et de la RAM pour utiliser le réseau.
Résultat : Pas besoin de sortir ta carte bleue à chaque transaction 😉
C’est quoi le DPoS ?
Le Delegated Proof of stake (DPoS) est un mécanisme de consensus dont le role est de permettre à tout le réseau de se mettre d’accord sur le prochain bloc valide sans autorité !
Mais contrairement au Proof of Work il ne fait pas travailler tout le monde, son idée est lal suivante :
Ce n’est pas le groupe complet des utilisateurs qui valide les blocs.
Mais ils élisent 24 validateurs qu’on appelle des block producers.
Ce sont ces producteurs qui sont responsables de vérifier les transactions, produire les blocs et sécuriser la blockchain.
Si on le compare au Proof Of Stake classique :
En PoS, n’importe qui peut devenir validateur en stakant des tokens, et on peut avoir un grand nombre de validateurs actifs.
Alors qu’en DPos ceux qui possèdent vote pour élir un petit groupe de validateurs qui font le travail au nom de tout le monde.
DPos permets de faire des validations plus rapidement mais aussi des questions sur la décentralisation.
Comment fonctionne DPoS ?
Le DPos se passe en 4 étapes :
Les utilisateurs votent :
Tout utilisateur possédant des tokens, peut staker des tokens et voter pour un block producer. Plus il stake plus de token, plus son vote pèse lourd.
Après ceci on obtient un classement des producteurs selon le poids des votes de chacun.Sélection des 21 validateurs :
Les 21 premiers producteurs du classement sont élus comme block producers actifs.
Ce sont eux qui produisent et signent les blocs et valident les transactions.
Les autres restent en liste d’attente. Si un producer se comporte mal, les votants peuvent changer d’avis et retirer leurs votes et le faire sortir du tp 21.Production des blocs :
Les EOS sont produits très rapidement, environ 120 blocks par minute. Les producers font leurs blocks dans un ordre prédéfini, par exemple producteur A fait son block, puis b, puis c … puis on recommence avec un nouvel ordre.
Chaque producer a un temps précis pour récupérer les transactions et construire son bloc et le signer. S’il rate son tour son bloc est sauté et on passe au suivant.Quand un bloc devient-il définitif ?
Avant qu’un block soit rajouté à la chaine il doit être considéré comme définitif, c’est à dire approuvé par au moins 2/3 + 1 des block producers.
Une fois ce seuil atteint on ne plus revenir en arrière ou réécrire l’historique.
Résistance aux pannes et comportements malveillants :
Maintenant, on peut demander : que se passe-t-il si certains validateurs plantent ou trichent ?
EOS utilise un modèle de tolérance aux pannes byzantine, inspiré du fameux “problème des généraux byzantins”:
Même si certains nœuds mentent, se trompent ou disparaissent, le système doit quand même continuer à avancer correctement.
Concrètement,le système reste sécurisé tant qu’au moins 2/3 des producteurs sont honnêtes , même si certains producteurs:
- tombent en panne,
- sont attaqués,
- tentent de tricher.
C’est qu' un point important c’est dus a un élément important c’est que les block producers ne sont pas toujours “des rois”.
Si un producteur est souvent hors ligne,valide n’importe quoi ou ne respecte pas les attentes de la communauté, les détenteurs de tokens (la communauté ) peuvent retirer leurs votes.Il descend alors dans le classement et finit par être remplacé par un autre candidat plus fiable.
Ce système d’élection en continu met une pression permanente sur les validateurs : s’ils veulent rester dans le top 21, ils doivent être stables, transparents et performants, sinon la communauté les rejette .
Avantages et limites du DPoS dans EOS
Ce modèle offre plusieurs avantages :
🔹 Vitesse : blocs toutes les 0,5 s, finalité rapide ,ce qui permet une finalité rapide des transactions.
🔹 Frais quasi nuls pour les utilisateurs, grâce au système de ressources.
🔹 Gouvernance par vote : les détenteurs de tokens peuvent élire les block producers, ce qui leur donne un vrai pouvoir sur le fonctionnement du réseau..
🔹 Tolérance aux pannes : le réseau continue de tourner même si quelques validateurs posent problème.
Mais il reste encore des limites :
🔸 Avec seulement 21 producteurs de blocs actifs, la décentralisation est forcément plus faible que sur des réseaux qui comptent des centaines ou des milliers de validateurs.
🔸 Le système de vote peut être influencé par les les gros acteurs .
🔸 Des phénomènes comme le vote-buying ou les accords entre producteurs peuvent apparaître et réduire encore la décentralisation réelle du réseau.
En conclusion
Le DPoS d’EOS, c’est un compromis assumé :
Moins d’acteurs qui valident les blocs pour avoir un réseau rapide, fluide, avec des transactions peu coûteuses, au prix d’une décentralisation plus limitée que sur des blockchains comme Bitcoin.
Nous trouvons intéressant de voir qu’on peut faire tourner une blockchain mondiale avec seulement 21 producteurs actifs, élus en continu par la communauté.
Est-ce le modèle parfait ? Probablement pas.
Mais c’est une brique importante dans l’histoire des blockchains et une bonne occasion de réfléchir à la question :jusqu’où est-on prêt à sacrifier la décentralisation pour gagner en performance ?
Et vous, qu’en pensez vous ?
https://academy.bit2me.com/wp-content/uploads/2021/05/eos-whitepaper.pdf
https://docs.eosnetwork.com/docs/latest/core-concepts/blockchain-basics/consensus
https://docs.antelope.io/docs/latest/protocol/consensus_protocol
https://help.eossupport.io/en/articles/5790704-the-resource-system-on-eos