Quels sont les différents algorithmes de consensus ?
Revenir à la FAQQuelles sont les différents algorithmes de consensus ?
Dans le domaine des cryptomonnaies et des actifs digitaux utilisant la blockchain de manière plus générale, les algorithmes de consensus permettent d’assurer l’intégrité et la sécurité des systèmes. Si le premier conçu a été l'algorithme PoW ou Proof of Work, il en existe plusieurs aujourd’hui que l’on peut différencier. Chaque protocole crypto est donc susceptible de disposer d’un algorithme de consensus plutôt qu’un autre.
Qu’est-ce qu’un algorithme de consensus ?
L’algorithme de consensus est le moyen par lequel la blockchain est susceptible de parvenir à un consensus. Cela s’applique notamment aux blockchains publiques puisqu’elles ne dépendent pas d’une autorité centrale pour la validation des transactions. Ce sont ce que l’on appelle des nœuds distribués qui sont régis par un algorithme de consensus qui vont devoir se mettre d’accord pour valider une transaction. L’algorithme de consensus a donc pour rôle de s’assurer que les règles ont bien été respectées.
Ne pas confondre avec un protocole crypto
Il arrive parfois que l’on parle de l’algorithme de consensus comme étant un protocole crypto et ce n’est pas tout à fait exact. Le protocole crypto réuni l’ensemble des règles de la blockchain avec le l’algorithme est le mécanisme qui fait en sorte qu’elles soient suivies. Le protocole crypto est donc plus général et l’algorithme plus spécifique, même s’ils restent tous les deux étroitement liés au sein de la blockchain.
Les différents types d’algorithmes de consensus
Une fois un protocole crypto défini, il va donc falloir mettre en œuvre un algorithme de consensus visant à le faire respecter. Il en existe aujourd’hui plusieurs avec des différences notables.
PoW ou Proof of Work
Le PoW est le premier algorithme de consensus créé pour faire respecter le protocole crypto de la blockchain. Utilisé par Bitcoin, il nécessite une grande puissance de calcul, car il repose sur une fonction de hachage. Elle va calculer une empreinte unique nécessaire à la validation du bloc à partir des données fournies. Ce travail de hachage récompense les mineurs qui fournissent la puissance de calcul.
PoS ou Proof of Stake
Développé en 2011, le PoS est une méthode alternative au PoW en supprimant notamment le concept de minage physique pour opter pour du minage virtuel qui est notamment moins énergivore et donc plus écologique. Dans le cas des cryptomonnaies, le PoS choisit de manière aléatoire parmi les utilisateurs éligibles celui qui aura le droit de valider le bloc. Une preuve mise en gage doit alors être apportée.
PoA ou Proof of Authority
Comme le PoW et bien d’autres, le Proof of Authority (PoA) est un algorithme de consensus ayant pour but la mise en application du protocole de la blockchain. Il permet dès lors de valider les transactions et autres interactions avec le réseau, mais aussi de mettre à jour son registre plus ou moins distribué. Ce droit est donné à un nombre restreint et désigné d’acteurs.
En effet, ce sont une ou plusieurs machines qui vont avoir pour rôle de générer chaque bloc de transactions qui sera inclus dans la blockchain. Chaque bloc peut alors être accepté sans vérification, à l’unanimité ou à la majorité en fonction de la configuration choisie. Cela explique qu’un nombre de validateurs soit défini et désigné dès le départ en ce sens.
Les autres algorithmes
Plus que le PoW et le PoS, il existe d’autres algorithmes de consensus dédiés à appliquer un protocole crypto tels que :
- PoET (Proof of Elapsed Time) qui utilise une technique particulière pour limiter l’utilisation des ressources (l’attribution de validation de bloc se fait sur un système de loterie équitable).
- PoI (Proof of Importance) qui repose sur l’utilisation de la blockchain, l’ancienneté et d’autres critères.
- PoA (Proof of Activity) qui repose sur l’activité effective du mineur.
- PoC (Proof of Capacity) qui repose sur la capacité de calcul du mineur.
Pour faire appliquer un protocole crypto, il existe donc une multitude de possibilités qui peuvent être envisagées en matière d’algorithme de consensus. Il ne reste alors plus qu’à se tourner vers la blockchain qui dispose de l’algorithme qui correspond le mieux à ses attentes.