I've been studying consensus algorithms and kind of got stuck.

if you check out Neo's explanations on its consensus algorithm, it says "Numerous protocols have been developed to solve the Byzantine Generals’ Problem. Hyperledger, for instance, uses Practical Byzantine Fault Tolerance in its Proof of Work algorithm. Neo, on the other hand, implements Delegated Byzantine Fault Tolerance to solve the Byzantine Generals’ Problem"

I clearly understood what Byzantine Generals' Problem, but I still don't understand what BFT means and what its relationship btw Bitcoin PoW.

It says "Hyperledger uses Practical Byzantine Fault Tolerance in its Proof of Work algorithm". Bitcoin also adopted PoW Algo, but I've never heard that Bitcoin is PBFT!

anyone can make a clear distinction btw BFT, PoW, PBFT? Thank you in advance. God bless.

source : https://steemit.com/neo/@basiccrypto/neo-s-consensus-protocol-how-delegated-byzantine-fault-tolerance-works


so BFT means any algorithm that can tolerate byzantine faults (malicious nodes), byzantine faults are faults that are malicious (lying, deliberatly delaying honest nodes,..etc). so if you have an algorithm that can tolerate theses faults it is called a BFT (byzantine fault tolerant), but not just that , any BFT algorithm (pow, pos , PBFT) solves the byzantine general's problem with some assumptions ofcourse.

PBFT was the first practical BFT algorithm that can be used.

BFT relates to POW in that POW is also a BFT algorithm because the bitcoin network can contain malicious nodes that cannot be trusted, nontheless we can solve the byzantine generals problem by POW.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.