Skip to main content
Share Your Experience: Take the 2024 Developer Survey
4 votes
Accepted

What is the algorithm for Blockchain's Byzantine Fault Tolerance?

Actually the differences are more intricate than that. A problem here might be that the properties of "blockchains" are not very well specified and the term is used for a wide variety of things (going ...
Leonidaz0r's user avatar
2 votes
Accepted

Why is Byzantine Generals Problem with traitors possible?

Quoting from the abstract of the original paper introducing the Byzantine Generals problem (with my emphasis): The problem is to find an algorithm to ensure that the loyal generals will reach ...
Derek Elkins left SE's user avatar
2 votes
Accepted

Why is a threshold determined for Byzantine Fault Tolerance of an "Asynchronous" network? (where it cannot tolerate even one faulty node)

The answer has to do with tracking the precise assumptions that are made in these different results. In short, while both results assume asynchrony, the "impossibility of distributed consensus with ...
Caleb Stanford's user avatar
1 vote
Accepted

Where is found the original library of the PBFT consensus algorithm?

I believe this link on the Internet Archive is the earliest available snapshot of the webpage that contains links to the requested source code.
mhum's user avatar
  • 2,102
1 vote

Two Generals' Problem Definition

A lot of misunderstanding is caused by explaining the problem as an ongoing process. It's a lot easier to understand if one simply considers the possible states that the generals can be in. Assume the ...
Ray Butterworth's user avatar
1 vote

Two Generals' Problem Definition

Whenever you think you have solved the two general problems, there is only 1 thing you need to do to find why your solution is wrong. Take every step s_1...s_n of your algorithm and treat it as the ...
elcapitozz's user avatar
1 vote

Do arbitrary/Byzantine failures include omission failures and timing failures?

Arbitrary failure means exactly what it says. It means that the failing process should be treated as if an opponent is choosing the process's behavior to try to break your system. Other types of ...
Aaron Rotenberg's user avatar
1 vote
Accepted

Enforcing application layer consensus on top of a distributed consensus protocol

You've asked multiple questions here. I'll answer the first one. Typically consensus means that all the honest participants have the same view of the state of the system. There's not necessarily a ...
D.W.'s user avatar
  • 161k
1 vote

Is there a usable implementation of PBFT?

Not necessarily NFS, but Hyperledger used PBFT for their blockchain platform. This is a Go implementation: https://github.com/hyperledger-archives/fabric/tree/master/consensus/pbft That is an old ...
Ron's user avatar
  • 131

Only top scored, non community-wiki answers of a minimum length are eligible