La DPoS le consensus qui semble mettre tous le monde d’accord

Blockchain digital illuminated shape.  data node base concept. 3

Toutes les blockchains sont fondamentalement des réseaux déterministes actualisés par des transactions. Le consensus est le processus qui permet de statuer sur un ordre déterminé des transactions et filtrer les transactions invalides. Il existe de nombreux algorithmes qui peuvent produire des ordres de transactions équivalentes. Cependant, la DPoS (Deleguate Proof of Stake) ou la preuve d’enjeu déléguée s’est montrée particulièrement robuste, sécurisée, et efficiente ces dernières années à travers son usage dans de multiples blockchains.


Une autogestion de la communauté

Comme pour tous les autres consensus, la plus grande menace que peuvent présenter un tiers malveillant est la censure. Tous les blocs doivent être validés en accord avec un ordre logique déterminé par l’algorithme.

Le consensus DPoS est divisé en deux parties : choisir un groupe de producteurs de blocs et programmer leur production dans le temps. Le processus d’élection par vote permet d’assurer que les parties prenantes (détenteurs) de la monnaie soient en définitive au pouvoir car ce sont eux qui seront en perte si le réseau perd en fluidité et en efficacité. En effet les validateurs sont choisis par vote au prorata du nombre de jetons que chaque membre détient. Ainsi si j’ai 1 jeton j’aurais par exemple 10 votes, l’utilisateur ayant 10 jetons en auraient 100. La manière dont les validateurs sont élus à un petit impact sur comment le consensus performe chaque minute. On s’intéresse ici à comment le consensus est atteint sur le réseau après que les producteurs de blocs aient été déterminés. Lors de la production de nouveaux blocs on parle de forgeage.

Par le biais d’exemples, nous allons déterminer comment la DPoS fonctionne sous plusieurs conformations du réseau. Ces exemples servent à illustrer en quoi la DPoS est robuste et difficile à briser malgré les forks qui peuvent survenir.

Opération normale

Pendant un fonctionnement normal, les producteurs de blocs produisent tour à tour un bloc toutes les 3 secondes. Considérant qu’aucun ne rate son tour, ils vont ainsi fournir la chaîne la plus longue possible. Si les producteurs échouent à produire un bloc durant l’intervalle de temps qui leur est consacré, tout autre bloc fournit en dehors de cet intervalle sera invalidé.

exemple de blockchain

Fork minoritaire

Jusqu’à 1/3 des nœuds peuvent être malicieux ou dysfonctionnés créant ainsi un fork (bifurcation) minoritaire. Dans ce cas, le fork minoritaire produira seulement un bloc toutes les 9 secondes alors que le fork majoritaire produira 2 blocs toutes les 9 secondes. Une fois de plus, les 2/3 des nœuds, à savoir les nœuds honnêtes, aura toujours la chaîne la plus longue donc la chaine majoritaire.

fork blockchain

Double production par des chaines minoritaires

La minorité peut tenter de produire un nombre illimité de forks, mais tous ces forks seront plus courts que la chaine majoritaire car la minorité est limité dans l’agrandissement de la chaine minoritaire.

double fork blockchain

Fragmentation du réseau

Il est tout à fait possible que le réseau soit fragmenté/déconnecté et dans ce cas, aucun fork n’aura une majorité de producteurs de blocs (supérieur à 2 personnes dans cet exemple). Dans ce cas, la chaine la plus longue sera alors la chaine de la plus grande minorité. Quand la connexion au réseau est restaurée, les plus petites minorités vont naturellement adopter la chaine la plus longue et l’ambiguïté du consensus sera levée.

exemple de fragmentation du réseau

Il est possible dans ce cas qu’il y ait 3 forks avec des chaînes les plus longues de tailles similaires. Dans ce cas, les producteurs du troisième (plus petit fork) vont briser l’indécision quand ils se reconnecteront au réseau. Il y a un nombre impair de producteurs de blocs donc il est impossible de maintenir durablement une indécision (il n’y aura jamais de 50/50).

Plus tard nous verrons que le shuffling (brassage) des producteurs de bloc qui permet de rendre pseudo-aléatoire l’ordre de passage des producteurs assure le tie breaking même si deux forks disposent du même nombre de producteurs de blocs. En effet, les forks grandiront avec des vitesses différentes permettant ainsi à un fork de prendre le dessus sur l’autre.

Le dernier bloc irréversible

Dans le cadre d’une fragmentation / déconnexion du réseau, il est possible pour de multiples forks de continuer à grandir pour une période de temps prolongé. Dans la durée, la chaîne la plus longue gagnera, mais les observateurs requièrent un moyen de savoir avec certitude quand un bloc fait absolument parti de la chaîne grandissant le plus vite. Cela peut être déterminé par confirmation de 2/3 + 1 des producteurs de bloc.

Dans le diagramme ci-dessous, le bloc B a été confirmé par C et par A qui représente 2/3+1 des producteurs, nous pouvons ainsi en déduire qu’aucune autre chaine ne seraient possiblement plus longue si au moins 2/3 des producteurs sont honnêtes.

Pub

Cryptoassets are highly volatile unregulated investment products. No EU investor protection. Your capital is at risk.
exemple de dernier block irréversible

Cette règle est similaire à la règle des 6 blocs de confirmation pour le Bitcoin (BTC). Des individus intelligents peuvent provoquer une séquence d’événements ou deux nœuds auraient deux blocs irréversibles terminaux différents. Ce cas de figure nécessite que l’attaquant dispose d’un contrôle total du délai de communication entre nœuds et d’utiliser ce contrôle pas une fois, mais avec deux minutes de différences. Les chances qu’une attaque se produise sur un réseau de DPoS sont proches de 0 et les conséquences économiques insignifiantes.

Absence de Quorum chez les producteurs

Dans le cas rare où le quorum (nombre de producteurs exigés) de producteurs ne serait pas satisfait, il est possible pour la minorité de continuer à produire des blocs. Dans ces blocs, les partis prenants peuvent inclure des transactions pour changer leurs votes. Ces votes peuvent désigner un nouveau set de producteurs et restaurer la participation à la production de blocs à 100%. Quand cela arrive, la chaîne de la minorité peut éventuellement prendre le dessus sur toutes les autres chaînes opérant avec moins de 100% de participation.

Durant tout ce processus, tous les observateurs auront connaissance que l’état du réseau est en train d’évoluer avant qu’une nouvelle chaîne émerge avec 67% de participation. Ceux qui choisissent d’effectuer une transaction sous ces conditions, et ainsi changer leurs votes, encourent un risque similaire à ceux qui acceptent avec moins de 6 confirmations. Ils agissent ainsi en connaissance de cause et savent qu’il demeure une faible probabilité que le consensus puisse ultimement opter pour un fork différent. En pratique, cette situation est beaucoup plus sécurisante que d’accepter des blocs avec moins de 3 Bitcoin confirmations.

Corruption de la majorité des producteurs

Si la majorité des producteurs de blocs deviennent corrompus, ils peuvent ainsi produire un nombre illimité de forks. Chacun de ces forks sembleront progresser avec la confirmation de la majorité 2/3. Dans ce cas, l’algorithme du dernier bloc inaltérable reviendra à l’algorithme de la chaine la plus longue. La chaine la plus longue sera celle approuvé par la majorité la plus large qui sera décidé par la minorité des nœuds honnêtes restants.

Ce genre de comportement ne pourrait pas durer car les stakeholders remplaceraient rapidement leur vote vers ces producteurs honnêtes.

exemple de corruption des producteurs

TaPoS (Transaction as Proof of Stake), transaction à la place de la preuve d’enjeu

Quand des utilisateurs signent une transaction, ils le font avec une certaine supposition de l’état de la blockchain. Cette hypothèse est basée à partir de leur perception des blocs récents. Si le consensus de la chaine la plus longue change la chaîne majoritaire, cela pourrait éventuellement invalider l’hypothèse faite par le signeur lorsqu’il a consenti à la transaction.

Avec le TaPoS, toutes les transactions incluent un hash d’un block récent et sont ainsi considérées comme invalide si ce block n’existe pas dans l’historique de la chaine. Tous ceux qui signent une transaction sur un fork orphelin verront leur transaction invalide et incapable de migrer sur la chaîne principale.

Un effet secondaire de ce processus est la sécurité avec les attaques longues distances qui tentent de générer une chaîne alternative. Les stakeholders en cause confirment directement la blockchain à chaque fois qu’ils réalisent une transaction. Au fil du temps tous les blocs sont confirmés par les stakeholders et ceci est quelque chose qui ne peut être reproduit dans une chaine forgée.

Le brassage de producteurs déterminé

Dans tous les exemples que nous avons illustrés, nous avons montré une planification aléatoire des producteurs de blocs. En réalité, l’ordre de production est brassé tous les N blocs où N est le nombre de producteurs de blocs. Cette randomisation assure que le producteur B n’ignore pas toujours le producteur A et qu’à chaque instant il n’y ait pas de multiples forks avec le même nombre de producteurs et ainsi permettre la prise de décision par tie breaking.

La DPoS, la solution parfaite ?

La DPoS est robuste sous toutes les formes de perturbations du réseau et d’autant plus sécurisé face aux tentatives de corruption d’une large minorité des producteurs. Contrairement à des consensus compétitifs, DPoS peut continuer à fonctionner malgré qu’une majorité de producteurs échouent. Durant ce processus, la communauté peut voter pour remplacer les producteurs défaillants jusqu’à retrouver une participation de 100%. Ainsi, la DPoS est très robuste face à l’échec.

Pub

Cryptoassets are highly volatile unregulated investment products. No EU investor protection. Your capital is at risk.

Finalement, DPoS obtient une sécurité grâce à l’algorithme choisit pour déterminer les producteurs de blocs et vérifier que les nœuds sont de hautes qualités et des personnes uniques. En utilisant le processus d’approbation par vote, le réseau assure que même quelqu’un disposant de 50% dans la quantité actuelle du pouvoir de vote est incapable de choisir un producteur unique par lui-même. DPoS est conçue pour optimiser la performance de la condition nominale des 100% de participation des nœuds honnêtes avec une bonne connexion. Cela concède à la DPoS le pouvoir de confirmer les transactions avec 99,9% de certitude en une moyenne de 1,5 secondes. Tant d’arguments qui font de la DPoS, un des consensus les plus performants de l’écosystème blockchain.

asie cryptomonnaies bitcoin trading

L’Asie compterait pour 50% du trading mondial selon Messari

L’Asie concentre une grande partie des activités cryptos au niveau mondial. Les chiffres montrent l’influence importante de la Chine sur Bitcoin (BTC) et ce, malgré l’existence d’une réglementation restrictive contre ce dernier dans le pays. Un crypto-continent : le paradoxe de…

L’hebdo crypto #1 : Mt. Gox, Bitcoin 1 million, Yearn Finance Vs. Uniswap

On vous retrouve aujourd'hui pour cette première édition de l'hebdo crypto ! L'occasion pour vous de découvrir ce tout nouveau format qui vient renforcer notre chaine Youtube ! https://youtu.be/MQPaXrV5OH4 Votre plein de news chaque semaine en 5 minutes ! L'hebdo…
Joe Biden s'entoure d'un pessimiste du Bitcoin (BTC)

Où va le Bitcoin (BTC) ?

BTC/USD est dans le rouge mais nous sommes toujours à 10 000 $ du plus haut de 2017… Et alors que nous étions autour de 35 000 $ mercredi dernier, le Bitcoin flirte désormais avec la figure des 30 000…
monnaies digitales banque centrale

Les CBDC, des monnaies réelles ?

Bitcoin (BTC) et ses cadets ne seraient donc pas les seuls à relever les défis de leur adoption par le grand public ainsi que ceux relatifs au cadre réglementaire des différents pays. Les CBDC sont confrontées aux mêmes problèmes. Même si…
bitcoin BTC or

Est-il absurde de comparer le Bitcoin (BTC) avec l’or ?

Pour Peter Schiff, le débat n’a même pas lieu d’être : Bitcoin (BTC) ne peut être une alternative à l’or, pas la peine de pondre un article dessus. A défaut d’être des « frères jumeaux », ces actifs peuvent pourtant être qualifiés de…