La tolérance aux pannes byzantines désigne la capacité d'un système à continuer de fonctionner même lorsque certains participants mentent ou font défaut. Ce terme provient d'une expérience de pensée imaginant des généraux byzantins tentant de coordonner une attaque alors que des messagers peuvent être capturés ou que des traîtres peuvent transmettre de faux ordres. Les généraux ont besoin d'un plan qui fonctionne même si certains d'entre eux sont défaillants. Une blockchain rencontre le même problème : des nœuds peuvent se déconnecter ou envoyer des informations contradictoires. Le réseau doit néanmoins parvenir à un consensus sur la validité des transactions.
La tolérance aux pannes byzantines pratiques (PBFT) est un algorithme qui résout ce problème. Il fonctionne bien lorsque le nombre de nœuds défaillants est faible par rapport au nombre total. De nombreuses blockchains à accès restreint utilisent des variantes de PBFT car elles connaissent l'identité des participants. La preuve de travail de Bitcoin adopte une approche différente. Elle n'identifie pas les nœuds de confiance. Elle rend la fraude coûteuse en exigeant une puissance de calcul importante. La chaîne la plus longue l'emporte, et produire une chaîne plus longue que le réseau honnête est extrêmement onéreux.
Seuil de tolérance aux pannes
- Tolérance aux pannes en cas de crash — les nœuds peuvent tomber en panne, mais ne mentent pas
- Tolérance aux pannes byzantines — les nœuds peuvent tomber en panne et envoyer des informations erronées
- PBFT tolère généralement jusqu'à un tiers des nœuds défectueux.
Aucun système ne tolère un nombre illimité d'acteurs malveillants. La question est de savoir quelle quantité de comportements déviants le protocole peut absorber avant que le consensus ne soit rompu.
Comments
No comments yet. Be the first to share a thought.
Leave a comment