7
$\begingroup$

Wiki: https://en.wikipedia.org/wiki/Byzantine_fault_tolerance


In the paper "Reaching Agreement in the Presence of Faults", M. Pease et al. proved that there is no protocol (of some kind) to solve the problem for $n \leq 3m$, where $n$ stands for the number of generals and $m$ stands for the number of traitors. The key of their proof this the impossibility of the case $n=3,m=1$. However, the method they used does not look like an information theoretic proof. Thus, it seems like that their result is not "impossibility of arbitrary protocol".


My question: Is there a infomation-theory-based proof for the case $n=3,m=1$? More formally, is there a proof or counterexample for the proposition "there does not exist any kind of protocol, which solves Byzantine generals problem where $n=3,m=1$"?


Note: The typical protocol $\mathrm{SM}(m)$ (it works for arbitrary $n,m$) suggested by L. Lamport et al. is NOT a suitable counterexample, because it needs a signature mechanism, which is NOT perfect reliable in the sense of information theory, if we assume that traitors have infinity computing resources.

$\endgroup$
4
  • 1
    $\begingroup$ What is an "information-theory-based proof"? Why do you expect such a proof to exist in this case? $\endgroup$ Commented Jun 2, 2017 at 6:19
  • $\begingroup$ To @YuvalFilmus: I think that (maybe it is a false belief) the original proof of impossibility states that "there is no protocol in a given form for $n \leq 3m$", which is other than "there is no protocol for $n \leq 3m$". So I am seeking a proof (or counterexample) for the latter. Note that the typical protocol $\mathrm{SM}(m)$ (it works for arbitrary $n,m$) suggested by L. Lamport et al. is NOT a suitable counterexample, because it needs a signature mechanism, which is NOT perfect reliable in the sense of information theory, if we assume that traitors have infinity computing resources. $\endgroup$
    – Lwins
    Commented Jun 2, 2017 at 6:41
  • $\begingroup$ So what you're really asking is, what result exactly is proved in the paper "Reaching Agreement in the Presence of Faults". Presumably this is explained in the paper. $\endgroup$ Commented Jun 2, 2017 at 6:44
  • $\begingroup$ To @YuvalFilmus: Not exactly probably. As I mentioned above, I am seeking a proof (or counterexample) for the proposition "there is no protocol for $n \leq 3m$". $\endgroup$
    – Lwins
    Commented Jun 2, 2017 at 6:47

2 Answers 2

3
$\begingroup$

In the synchronous model of communication, there are $n$ agents which share a clock. In each round of communication, each agent sends an arbitrary message to each other agent, and then receives the message sent her by every other agent.

A protocol for byzantine agreement on $n$ agents supporting $m$ byzantine agents is a communication protocol for the agents satisfying the following properties:

  • Each agent receives an input bit.
  • The agents all start talking at time 0.
  • There are at most $m$ byzantine agents, whose behavior is arbitrary.
  • The other agents follow the protocol.
  • The protocol always terminates (this means that the non-byzantine agents always reach a special "terminate" state of the protocol, and then stop talking forever), with a return value which is also a bit.
  • The return values must all agree (note that this only applies to the non-byzantine agents).
  • If all input bits are the same, then the return values have to be the same bit.

The impossibility result states that such a protocol exists if and only if $n > 3m$.

There is a different model in which an agent can sign a message, and this signature cannot be tampered with. In this model (which I will not specify formally) the problem can be solved for any $n,m$.

One of the difficulties in the area of distributed systems is the complicated nature of the computation model. If you want to understand the meaning of impossibility results, you have to familiarize yourself with these models in full detail (even more detail than the rather informal treatment in this answer).

$\endgroup$
3
  • $\begingroup$ Thanks for your patient explanation : ) And I have the last question: how could I find the proof of the impossibility on synchronous communication model? The proof in paper "Reaching Agreement in the Presence of Faults" seems not to be the one. Could you suggest some literature (say, paper or book) highly related to communication model with Byzantine nodes? $\endgroup$
    – Lwins
    Commented Jun 2, 2017 at 7:22
  • $\begingroup$ I am only aware of one proof, and it is the one in the paper. For the same proof in a slightly different model, see lecture notes of Chiu Yuen Koo. $\endgroup$ Commented Jun 2, 2017 at 7:22
  • $\begingroup$ Here is one textbook: Attiya and Welch, Distributed Computing: Fundamentals, Simulations, and Advanced Topics, second edition, Wiley, 2004. $\endgroup$ Commented Jun 2, 2017 at 7:24
-1
$\begingroup$

I have thought the same issue as yours for a long time(I mean from the view of information theory). Maybe there is some fundemental things behind the consensus in the paper, such as entropy (uncertainty) in the whole distributed system of all the nodes, and the purpose of a consensus is to eliminate the entropy or you can say to figure out something that will make the uncertainty disappear. And maybe identifying the false nodes(byzantine nodes) in the system is a way to remove uncertainty, what do you think of this idea? (But I don't know how to quantify the entropy) oh, there is a solid proof in the paper "Impossibility of Distributed Consensus with One Faulty Process", but it is focused on the CFT scenario, not BFT.

$\endgroup$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

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