On the price of equivocation in byzantine agreement

In the Byzantine agreement problem, a set of n processors, any f of whom may be arbitrarily faulty, must reach agreement on a value proposed by one of the correct processors. It is a celebrated result that unless n > 3f, Byzantine agreement is impossible in a variety of computation and communication models. This is due to the fact that faulty processors can equivocate, that is, say different things to different processors. If this ability is mitigated, for example by assuming a global broadcast channel, then n > 2f is sufficient. With very few exceptions, the literature on Byzantine agreement has been confined to the n > 2f and n > 3f paradigms. We bridge the gap between these two paradigms by assuming partial broadcast channels among sets of three processors, observing that equivocation is fundamentally an act involving three parties: a faulty processor that lies (inconsistently) to two correct processors. We characterize the conditions under which Byzantine agreement is possible for all n = 2f + h, h an integer in [1..f], by giving asymptotically tight bounds on the number of necessary and sufficient partial broadcast channels. We prove these bounds by a reduction to a problem in extremal combinatorics, which itself is a natural generalization of a well-studied hypergraph coloring problem. Algorithmically, we show that deciding whether a given set of broadcast channels enables Byzantine agreement is co-NP-complete. Although partial broadcast channels have been studied in prior work, the bounds obtained on the number of required channels were sub-optimal by up to a factor of Θ(n2). Moreover, this work has been confined to the synchronous model. In contrast, we apply our results to several distinct models and provide stronger motivation for using partial broadcast channels in practice, drawing from recent work in the systems community.

[1]  F. Sterboul,et al.  An extremal problem in hypergraph coloring , 1977, J. Comb. Theory, Ser. B.

[2]  Leslie Lamport,et al.  The Byzantine Generals Problem , 1982, TOPL.

[3]  Gabriel Bracha,et al.  An asynchronous [(n - 1)/3]-resilient consensus protocol , 1984, PODC '84.

[4]  Sam Toueg,et al.  Asynchronous consensus and broadcast protocols , 1985, JACM.

[5]  Nancy A. Lynch,et al.  Impossibility of distributed consensus with one faulty process , 1985, JACM.

[6]  Nancy A. Lynch,et al.  Consensus in the presence of partial synchrony , 1988, JACM.

[7]  A. Lubotzky,et al.  Ramanujan graphs , 2017, Comb..

[8]  Tal Rabin,et al.  Verifiable secret sharing and multiparty protocols with honest majority , 1989, STOC '89.

[9]  Victor Neumann-Lara,et al.  On the minimum size of tight hypergraphs , 1992, J. Graph Theory.

[10]  Vojtech Rödl,et al.  The algorithmic aspects of the regularity lemma , 1992, Proceedings., 33rd Annual Symposium on Foundations of Computer Science.

[11]  Seif Haridi,et al.  Distributed Algorithms , 1992, Lecture Notes in Computer Science.

[12]  Juan A. Garay,et al.  A Continuum of Failure Models for Distributed Computing , 1992, WDAG.

[13]  Moshe Morgenstern,et al.  Existence and Explicit Constructions of q + 1 Regular Ramanujan Graphs for Every Prime Power q , 1994, J. Comb. Theory, Ser. B.

[14]  Matthew K. Franklin,et al.  Secure hypergraphs: privacy from partial broadcast , 1995, STOC '95.

[15]  Matthew K. Franklin,et al.  Secure hypergraphs: privacy from partial broadcast (Extended Abstract). , 1995, STOC 1995.

[16]  Vitaly I. Voloshin,et al.  On the upper chromatic number of a hypergraph , 1995, Australas. J Comb..

[17]  Matthias Fitzi,et al.  Efficient Byzantine Agreement Secure Against General Adversaries , 1998, DISC.

[18]  Matthew K. Franklin,et al.  Secure Communications in Minimal Connectivity Models , 1998, EUROCRYPT.

[19]  Miguel Oom Temudo de Castro,et al.  Practical Byzantine fault tolerance , 1999, OSDI '99.

[20]  Matthias Fitzi,et al.  From partial consistency to global broadcast , 2000, STOC '00.

[21]  Huishan Zhou,et al.  About the upper chromatic number of a co-hypergraph , 2000, Discret. Math..

[22]  V. Voloshin Coloring mixed hypergraphs : theory, algorithms and applications , 2002 .

[23]  K. Srinathan,et al.  Distributed consensus in the presence of sectional faults , 2003, PODC '03.

[24]  Joel Friedman,et al.  A proof of Alon's second eigenvalue conjecture and related problems , 2004, ArXiv.

[25]  Arun Venkataramani,et al.  Separating agreement from execution for byzantine fault tolerant services , 2003, SOSP '03.

[26]  Leslie Lamport Lower bounds for asynchronous consensus , 2003 .

[27]  Barbara Troncarelli Coloring Mixed Hypergraphs: Theory, Algorithms and Applications , 2003 .

[28]  K. Srinathan,et al.  On Byzantine Agreement over (2, 3)-Uniform Hypergraphs , 2004, DISC.

[29]  Sebastian M. Cioabùa Eigenvalues, Expanders and Gaps between Primes , 2005 .

[30]  Jeffrey Considine,et al.  Byzantine Agreement Given Partial Broadcast , 2005, Journal of Cryptology.

[31]  Michael Dahlin,et al.  BAR fault tolerance for cooperative services , 2005, SOSP '05.

[32]  Dieter Rautenbach,et al.  A note on the least number of edges of 3-uniform hypergraphs with upper chromatic number 2 , 2006, Discret. Math..

[33]  Liuba Shrira,et al.  HQ replication: a hybrid quorum protocol for byzantine fault tolerance , 2006, OSDI '06.

[34]  Andreas Haeberlen,et al.  PeerReview: practical accountability for distributed systems , 2007, SOSP.

[35]  Scott Shenker,et al.  Attested append-only memory: making adversaries stick to their word , 2007, SOSP.

[36]  Jorge L. Arocha,et al.  The size of minimum 3-trees , 2007, J. Graph Theory.

[37]  Csilla Bujtás,et al.  Smallest Set-Transversals of k-Partitions , 2009, Graphs Comb..

[38]  Jacob R. Lorch,et al.  TrInc: Small Trusted Hardware for Large Distributed Systems , 2009, NSDI.

[39]  Michael Dahlin,et al.  Making Byzantine Fault Tolerant Systems Tolerate Byzantine Faults , 2009, NSDI.

[40]  Dan Dobre,et al.  Scrooge: Reducing the costs of fast Byzantine replication in presence of unresponsive replicas , 2010, 2010 IEEE/IFIP International Conference on Dependable Systems & Networks (DSN).

[41]  Marcos K. Aguilera,et al.  Fast Asynchronous Consensus with Optimal Resilience , 2010, DISC.

[42]  Ramakrishna Kotla,et al.  Zyzzyva: speculative byzantine fault tolerance , 2007, TOCS.

[43]  Arun Venkataramani,et al.  ZZ and the art of practical BFT execution , 2011, EuroSys '11.

[44]  Johannes Behl,et al.  CheapBFT: resource-efficient byzantine fault tolerance , 2012, EuroSys '12.