Quand on parle de blockchain, on entend souvent dire que c’est un système « résistant aux fraudes » ou « indestructible ». Mais comment ça marche vraiment ? Comment des ordinateurs qui ne se font pas confiance peuvent-ils s’accorder sur une seule version de la vérité ? La réponse réside dans le type de consensus qu’ils utilisent. Et là, deux mondes s’affrontent : les mécanismes traditionnels, simples et rapides, et le Byzantine Fault Tolerance (BFT), conçu pour survivre même si certains nœuds deviennent malveillants.
Le problème des généraux byzantins
Imaginez une armée divisée en plusieurs unités, encerclant une ville. Chaque général doit décider s’il attaque ou se retire. Mais certains généraux sont des traîtres : ils envoient des messages contradictoires. Un général dit « attaque », un autre dit « retraite », un troisième ne répond pas. Si les généraux honnêtes ne peuvent pas détecter les mensonges, ils se déchirent et perdent la bataille. C’est le Problème des Généraux Byzantins, posé en 1982. Il montre que dans un système distribué, il ne suffit pas que les nœuds fonctionnent bien : il faut qu’ils puissent détecter et ignorer ceux qui mentent, ou qui plantent de manière aléatoire. Les mécanismes de consensus traditionnels, comme Paxos ou Raft, ne traitent que les pannes : un nœud s’arrête, il est hors jeu. Mais ils ne peuvent pas gérer un nœud qui ment activement. Et dans une blockchain publique, où n’importe qui peut rejoindre le réseau, ce n’est pas une hypothèse - c’est une réalité.Comment fonctionne le Byzantine Fault Tolerance ?
Le BFT n’est pas un algorithme en soi. C’est une propriété : un système est tolérant aux pannes byzantines s’il continue de fonctionner correctement même si jusqu’à un tiers des nœuds agissent de manière malveillante. La version la plus connue est Practical Byzantine Fault Tolerance (pBFT), développée en 1999. Voici comment pBFT fonctionne en trois étapes :- Pré-préparer : le nœud leader envoie une proposition à tous les autres.
- Préparer : chaque nœud vérifie la validité de la proposition et envoie un accusé de réception.
- Valider : quand un nœud reçoit au moins 2f+1 accusés (où f est le nombre maximum de nœuds malveillants), il valide la proposition.
Les mécanismes traditionnels : Raft et Paxos
Les algorithmes comme Raft sont conçus pour des environnements contrôlés : des serveurs internes dans une entreprise, des bases de données distribuées, ou des microservices dans le cloud. Ils supposent que les nœuds sont fiables - ou qu’ils se contentent de s’arrêter s’ils échouent. Raft, par exemple, fonctionne avec un leader. Un nœud est élu chef. Il collecte les demandes, les envoie aux autres, et attend qu’une majorité (plus de 50 %) les confirme. C’est simple. C’est rapide. Et ça prend seulement O(n) messages - 100 nœuds, 100 messages. Deux allers-retours suffisent pour valider une transaction. Mais si un nœud dans Raft devient malveillant - s’il envoie de fausses données, ou refuse de valider des blocs légitimes - le système plante. Il n’a aucun mécanisme pour détecter la tromperie. Il ne peut pas distinguer une panne d’une attaque.
Bitcoin et Ethereum : sont-ils vraiment BFT ?
Beaucoup pensent que Bitcoin utilise le BFT. Ce n’est pas vrai. Bitcoin utilise le Proof of Work (PoW). Il ne résout pas le problème des généraux byzantins directement. Il le contourne. Dans PoW, les mineurs doivent résoudre un problème mathématique coûteux en énergie. Pour qu’un bloc malveillant soit accepté, un attaquant doit contrôler plus de 50 % de la puissance de calcul du réseau. C’est difficile. C’est cher. Mais ce n’est pas une preuve mathématique de tolérance aux pannes byzantines - c’est une barrière économique. Si quelqu’un dépense 10 milliards de dollars pour attaquer Bitcoin, il peut y arriver. Il n’y a pas de garantie formelle. Ethereum, depuis son passage au Proof of Stake (PoS), utilise un mécanisme différent. Les validateurs doivent déposer des ETH comme caution. S’ils agissent mal, ils perdent leur mise. C’est un système de incentives, pas de tolérance par algorithmes. Encore une fois, ce n’est pas du BFT pur. C’est une variante hybride. Le vrai BFT, comme pBFT, fonctionne sans dépendre de l’énergie ou de l’argent. Il fonctionne avec des preuves cryptographiques et des règles de vote. C’est plus robuste - mais beaucoup plus lent.Comparaison directe : BFT vs consensus traditionnel
| Critère | Byzantine Fault Tolerance (pBFT) | Consensus traditionnel (Raft/Paxos) |
|---|---|---|
| Modèle de défaillance | Malveillant, aléatoire, arbitraire | Seulement pannes (crash) |
| Nombre minimum de nœuds | 3f+1 (ex. : 4 pour f=1) | 2f+1 (ex. : 3 pour f=1) |
| Complexité des messages | O(n²) - très élevée | O(n) - faible |
| Latence de consensus | 3 à 5 tours de communication | 1 à 2 tours |
| Scalabilité | Pauvre au-delà de 100 nœuds | Très bonne jusqu’à 1 000 nœuds |
| Utilisation typique | Blockchains publiques, consortiums | Systèmes internes, bases de données |
| Complexité d’implémentation | Élevée (cryptographie, états multiples) | Faible (leader clair, états simples) |
Le futur : des mélanges intelligents
Personne ne utilise pBFT seul sur une blockchain publique. Ce serait trop lent. Mais les systèmes modernes ont trouvé un compromis. Par exemple, Hyperledger Fabric utilise pBFT - mais seulement entre 4 à 10 nœuds approuvés. Ce sont des entreprises partenaires, pas des inconnus. Le nombre est petit, donc le trafic reste gérable. D’autres, comme Polkadot ou Cardano, utilisent des groupes de validateurs appelés « comités ». Un petit groupe (50 à 100 nœuds) vote avec un protocole BFT pour valider un bloc. Puis ce bloc est propagé à tout le réseau via un mécanisme plus rapide. C’est comme avoir un petit conseil de sages qui décide, puis le reste du monde l’accepte sans vérifier chaque détail. Même Ethereum, avec son PoS, utilise un système appelé LMD-GHOST, qui combine des idées de BFT avec des mécanismes de récompense. Ce n’est pas du BFT pur, mais il en hérite la résistance aux attaques malveillantes.
Quand choisir quoi ?
Si vous construisez un système interne, où les serveurs sont sous votre contrôle, utilisez Raft. C’est simple, rapide, fiable. Si vous créez une blockchain publique, où n’importe qui peut participer, vous avez besoin de BFT - ou d’une version hybride. Sinon, un attaquant peut manipuler l’historique des transactions. Si vous êtes dans un consortium (banques, fournisseurs, hôpitaux), vous pouvez utiliser une version limitée de BFT : 20 nœuds approuvés, pas 10 000. C’est l’avenir : pas de BFT pur, pas de PoW pur. Des mélanges intelligents.Les pièges à éviter
- Ne confondez pas PoW avec BFT. Bitcoin n’est pas tolérant aux pannes byzantines - il est juste trop cher à attaquer. - Le BFT n’est pas magique. Il ne protège pas contre les bugs logiciels, les attaques par phishing ou les erreurs humaines. - Plus de nœuds ≠ plus de sécurité. Avec pBFT, ajouter des nœuds augmente la latence. Il faut un équilibre. - Les mécanismes traditionnels ne sont pas « obsolètes ». Ils sont parfaits pour des environnements de confiance. Leur simplicité est une force.Le Byzantine Fault Tolerance est-il utilisé dans Bitcoin ?
Non, Bitcoin n’utilise pas de Byzantine Fault Tolerance direct. Il utilise le Proof of Work, qui rend les attaques coûteuses mais ne fournit pas de garantie mathématique contre les nœuds malveillants. Il s’agit d’une solution économique, pas algorithmique.
Pourquoi Raft est-il plus rapide que pBFT ?
Raft n’a besoin que d’un leader et d’une majorité simple pour valider les décisions. Il envoie environ n messages. pBFT, lui, nécessite que chaque nœud communique avec tous les autres, soit n² messages. À 100 nœuds, c’est 10 000 messages contre 100. C’est une différence exponentielle.
Peut-on utiliser pBFT sur une blockchain publique comme Ethereum ?
Non, pas directement. pBFT nécessite un nombre limité de nœuds (environ 100 maximum) pour rester performant. Ethereum a plus de 100 000 validateurs. C’est pourquoi il utilise un système hybride : un petit comité vote avec un protocole proche du BFT, puis le résultat est diffusé à l’ensemble du réseau.
Quelle est la différence entre « crash fault » et « Byzantine fault » ?
Un crash fault, c’est quand un nœud s’arrête. Il ne fait rien. Un Byzantine fault, c’est quand un nœud continue de fonctionner… mais ment, envoie de fausses données, ou se comporte de manière aléatoire. Le second est beaucoup plus dangereux - et plus difficile à détecter.
Le BFT est-il plus sûr que le Proof of Stake ?
C’est différent. Le BFT garantit la sécurité par des preuves cryptographiques et des règles de vote. Le Proof of Stake garantit la sécurité par des incitations économiques : vous perdez votre argent si vous trichez. Le BFT est plus robuste contre les attaques coordonnées. Le PoS est plus scalable. Les deux ont leurs avantages.
Andrew Midwood
mars 23, 2026 AT 15:36Le vrai BFT, lui, c’est du cryptographique pur. Pas de mineurs, juste des votes. Mais bon, faut 100 nœuds max sinon ça explose. Donc… pas pour Bitcoin.
Agathe Paprocki
mars 24, 2026 AT 19:50Personne ici a vu que pBFT c’est juste du control-freak en version blockchain ?
Xavier Depauly
mars 26, 2026 AT 01:38Si tu veux du BFT, utilise Tendermint. Ou HotStuff. Ou n’importe quoi qui a été amélioré après 2010. pBFT c’est du coffre-fort en carton-pâte.
Annette Gilbert
mars 26, 2026 AT 19:03Oh mon dieu, tu viens de réinventer la roue. C’est comme dire qu’un chien qui aboie n’est pas un bon gardien. Le coût d’attaque est la sécurité.
Hubert Sauter
mars 27, 2026 AT 05:27Il suppose que les gens peuvent être malveillants - pas juste en panne.
Et ça, c’est une prise de conscience majeure. Dans les systèmes traditionnels, on croit encore que "si ça marche, c’est honnête". C’est naïf. Très naïf.
Le vrai progrès, c’est d’accepter que la méfiance est une caractéristique du système, pas un bug.
Jean Marc Brissau
mars 28, 2026 AT 12:58Non. Ils vont voter pour leur intérêt. Donc la seule vraie sécurité, c’est l’argent. La mise. Le staking. Pas les messages.
lili haddad
mars 28, 2026 AT 20:08Le vrai enjeu, c’est pas "qui est le plus sécurisé", c’est "qui est le plus adapté".
Si ton système est privé, Raft. Si c’est public, PoS + comité BFT. Simple. Pas besoin de faire un cours de 10 pages.
진 연강
mars 30, 2026 AT 14:43On a fait mieux. Et on n’a pas attendu Stanford pour comprendre que la scalabilité, c’est une question de code, pas de théorie.
James Hoberman
mars 31, 2026 AT 12:52Les nœuds malveillants ne sont pas un "état de panne". C’est un acte de guerre.
Et la guerre, on ne la tolère pas. On la combat.
Donc non. Le BFT n’est pas une solution. C’est une admission de défaite.
Rochelle Rossouw
avril 2, 2026 AT 01:34Si on utilise un comité BFT, comment on choisit qui entre dans le comité ?
Par vote ? Par stake ? Par invitation ?
Parce que si c’est "les 100 premiers inscrits", c’est encore plus risqué que PoW.
Yvette Escalette
avril 2, 2026 AT 05:41Le BFT, c’est le père de la sécurité.
Le PoS, c’est le fils qui a appris à faire du vélo.
Le PoW, c’est le grand-père qui dit "je faisais comme ça en 1995".
On a besoin des trois. Pas de guerre entre eux. De la complémentarité.
Et surtout : arrêtez de vouloir tout résoudre avec un seul algorithme.
Juliette Lebiez
avril 2, 2026 AT 16:16On se concentre trop sur les nœuds. Et pas assez sur les humains.
François Anibal Regis
avril 3, 2026 AT 23:45Il n’y en a pas. Il y a des systèmes adaptés à des contextes.
Un consortium bancaire ? BFT limité.
Une blockchain publique ? PoS + comité.
Un réseau IoT ? Raft avec authentification.
Chaque cas est différent. Et c’est très bien comme ça.
Chrissy Louise
avril 5, 2026 AT 08:26"O(n²)" → ça fait mal aux yeux.
Donc non, pBFT, c’est mort pour les grandes blockchains. Point.
Philippine Meites
avril 7, 2026 AT 08:23Je me demande juste… si le BFT est si robuste, pourquoi les blockchains qui l’utilisent (comme Hyperledger) sont-elles si peu connues ?
Est-ce que c’est parce que c’est trop compliqué ? Ou parce que personne n’en a vraiment besoin ?
Amandine Sadowski
avril 9, 2026 AT 07:35Le PoW n’est pas une solution. C’est une illusion de sécurité fondée sur l’insensibilité des humains à la consommation d’énergie.
C’est une forme de négligence morale. Et je ne peux pas rester silencieux.
Chloé Faulkner
avril 11, 2026 AT 01:59On parle de nœuds, de messages, de votes… mais en réalité, on parle de confiance. De pouvoir. De contrôle.
Le BFT, c’est la technologie qui essaie de remplacer la confiance par des règles. Mais la confiance, elle, ne peut pas être programmée.
Et peut-être que c’est là le vrai défi : comment construire des systèmes qui ne cherchent pas à éliminer la méfiance… mais à la canaliser ?
janine keblish
avril 11, 2026 AT 04:44on veut du rapide. du simple. du pas cher.
le po w c’est pas parfait mais il marche. et ca c’est tout ce qui compte.
Rochelle Harris
avril 12, 2026 AT 11:11Le BFT ne protège pas contre les attaques de type "51%". Il ne protège pas contre les gouvernements. Il ne protège pas contre les backdoors dans les librairies.
La seule chose qui compte, c’est la centralisation. Et les blockchains modernes sont plus centralisées que les banques.
Donc arrêtez de vous mentir. Le BFT ? C’est un décor de théâtre.