Introduction
Les mécanismes de consensus sont essentiels au fonctionnement des blockchains. Les deux plus connus sont le Proof of Work (PoW) et le Proof of Stake (PoS). Le PoW, utilisé par Bitcoin, repose sur des mineurs qui résolvent des calculs complexes, ce qui consomme énormément d'énergie. Le PoS, lui, permet de valider les blocs en fonction du nombre de tokens qu'un utilisateur possède et bloque temporairement, ce qui est moins énergivore et plus rapide. Cependant, ces deux systèmes ont leurs limites : le PoW est peu efficace, et le PoS peut conduire à une concentration du pouvoir entre les mains des plus riches.
Pour résoudre ces problèmes, une alternative a vu le jour : le Delegated Proof of Stake (DPoS).
Le Delegated Proof of Stake (DPoS) est un mécanisme de consensus utilisé par la blockchain EOS.
Il a été créé par Daniel Larimer en tant que mécanisme de consensus servant à corriger les limites du Proof of Stake.
Au lieu de confier la validation des blocs à tous les détenteurs de tokens, DPoS attribue la tâche de validation à seulement un groupe restreint de délégués choisis par un vote démocratique.
Ce mécanisme est moins décentralisé mais est plus sécurisé et évolutif.
Élection des délégués
Pour séléctionner les participants chargés de valider les blocs, le mécanisme propose un système de vote qui produit 21 délégués. Les délégués doivent prouver que leur matériel est robuste et disponible pour être éligibles.
Les participant qui souhaitent voter doivent mettre sous séquestre leurs tokens pendant un minimum de 3 jours.
Un participant peut voter pour un maximum de 30 candidats différents, mais un même token ne peut pas être utilisé pour voter plusieurs fois pour un même candidat.
Plus un participant consacre de tokens à un vote, plus son vote est influent.
Fonctionnement du DPoS sur EOS
Une fois élus, les 21 délégués actifs assurent la validation des blocs. Le processus suit les règles suivantes :
- Production des blocs :
- Les blocs sont produits en rondes de 126 blocs, 6 par chaque délégué.
- L'ordre de production est déterminé aléatoirement par l'algorithme. Chaque délégué dispose de 3 secondes pour produire un bloc.
- Validation des blocs :
- Le délégué producteur regroupe les transactions des utilisateurs, crée le bloc et le signe.
- Pour que le bloc soit inscrit sur la blockchain, il doit être validé par plus de 2/3 + 1 délégués.
- Gestion des absences :
- Si un délégué est inactif ou indisponible pour produire son bloc, le 22ème candidat de la liste prend sa place. Et ainsi de suite.
- Les délégués inactifs ou ayant un comportement inadéquat peuvent être exclus par un vote.
En cas de dysfonctionnement ou de tentative malicieuse, il arrive que des branches minimes se créent dans la blockchain. Dans ce cas, c'est toujours la chaîne la plus longue qui est sélectionnée. Car on part du principe que plus la chaîne est longue, plus de délégués ont validés de blocs sur le même intervalle de temps, alors on fait plus confiance à cette branche.
Avantages de DPoS
- Efficacité : La production des blocs en seulement 3 secondes assure une vitesse exceptionnelle par rapport à d'autres blockchains.
- Transparence : Le processus de vote et les règles de fonctionnement permettent une gouvernance claire et vérifiable.
- Sécurité : Les décisions nécessitant l'approbation de 2/3 + 1 des délégués renforcent la robustesse du réseau.
Limites et Problèmes
Malgré ses nombreux avantages, le DPoS présente certains inconvénients :
- Concentration du pouvoir : Les baleines ("whales"), qui détiennent un grand nombre de tokens, peuvent influencer les votes en faveur de délégués ou de propositions maximisant leurs gains financiers, au détriment de l'efficacité du réseau.
- Disponibilité des délégués : Une mauvaise disponibilité des délégués peut ralentir le réseau, bien que des mécanismes soient prévus pour pallier ces situations.
- De la démocratie à la pluotocratie : Les plus riches ont + de poids que les pauvres
Under review....