Byzantine Lattice Agreement in Synchronous Systems

We study the Byzantine lattice agreement (BLA) problem in asynchronous distributed message passing systems. In the BLA problem, each process proposes a value from a join semi-lattice and needs to output a value also in the lattice such that all output values of correct processes lie on a chain despite the presence of Byzantine processes. We present an algorithm for this problem with round complexity of $O(\log f)$ which tolerates $f < \frac{n}{5}$ Byzantine failures in the asynchronous setting without digital signatures, where $n$ is the number of processes. We also show how this algorithm can be modified to work in the authenticated setting (i.e., with digital signatures) to tolerate $f < \frac{n}{3}$ Byzantine failures.

[1]  Nancy A. Lynch,et al.  Tight bounds for k-set agreement , 2000, J. ACM.

[2]  Joel Rybicki,et al.  Byzantine Approximate Agreement on Graphs , 2019, DISC.

[3]  Sriram K. Rajamani,et al.  Generalized lattice agreement , 2012, PODC '12.

[4]  Michel Raynal,et al.  Concurrent Programming: Algorithms, Principles, and Foundations , 2012, Springer Berlin Heidelberg.

[5]  Soma Chaudhuri,et al.  More Choices Allow More Faults: Set Consensus Problems in Totally Asynchronous Systems , 1993, Inf. Comput..

[6]  Emmanuelle Anceaume,et al.  Byzantine Generalized Lattice Agreement , 2020, 2020 IEEE International Parallel and Distributed Processing Symposium (IPDPS).

[7]  Michel Raynal,et al.  Trading off t-Resilience for Efficiency in Asynchronous Byzantine Reliable Broadcast , 2016, Parallel Process. Lett..

[8]  André Schiper,et al.  S-Paxos: Offloading the Leader for High Throughput State Machine Replication , 2012, 2012 IEEE 31st Symposium on Reliable Distributed Systems.

[9]  Florian Schintke,et al.  Linearizable State Machine Replication of State-Based CRDTs without Logs , 2019, PODC.

[10]  Gabriel Bracha,et al.  Asynchronous Byzantine Agreement Protocols , 1987, Inf. Comput..

[11]  Sam Toueg,et al.  Simulating authenticated broadcasts to derive simple fault-tolerant algorithms , 1987, Distributed Computing.

[12]  Leslie Lamport,et al.  Reaching Agreement in the Presence of Faults , 1980, JACM.

[13]  Emmanuelle Anceaume,et al.  Synchronous Byzantine Lattice Agreement in O(log(f)) Rounds , 2020, ICDCS 2020.

[14]  Nancy A. Lynch,et al.  Impossibility of distributed consensus with one faulty process , 1983, PODS '83.

[15]  Hagit Attiya,et al.  Distributed Computing: Fundamentals, Simulations and Advanced Topics , 1998 .

[16]  Marc Shapiro,et al.  Conflict-Free Replicated Data Types , 2011, SSS.

[17]  Ophir Rachman,et al.  Atomic snapshots using lattice agreement , 1995, Distributed Computing.

[18]  Marcin Paprzycki,et al.  Distributed Computing: Fundamentals, Simulations and Advanced Topics , 2001, Scalable Comput. Pract. Exp..

[19]  Silvio Micali,et al.  Optimal algorithms for Byzantine agreement , 1988, STOC '88.

[20]  Vijay K. Garg,et al.  Lattice Agreement in Message Passing Systems , 2018, DISC.

[21]  Vijay K. Garg,et al.  All-to-All Gradecast Using Coding with Byzantine Failures , 2012, SSS.

[22]  Vijay K. Garg,et al.  Linearizable Replicated State Machines with Lattice Agreement , 2018, OPODIS 2018.

[23]  Danny Dolev,et al.  Authenticated Algorithms for Byzantine Agreement , 1983, SIAM J. Comput..

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

[25]  Leslie Lamport,et al.  Paxos Made Simple , 2001 .

[26]  M. Mavronicolas A Bound on the Rounds to Reach Lattice Agreement , 2005 .

[27]  Gadi Taubenfeld Synchronization Algorithms and Concurrent Programming , 2006 .

[28]  Nir Shavit,et al.  Atomic snapshots of shared memory , 1990, JACM.

[29]  Danny Dolev,et al.  Simple Gradecast Based Algorithms , 2010, ArXiv.

[30]  Maurice Herlihy,et al.  Unifying synchronous and asynchronous message-passing models , 1998, PODC '98.

[31]  Leslie Lamport,et al.  The part-time parliament , 1998, TOCS.

[32]  Jonathan Katz,et al.  On Expected Constant-Round Protocols for Byzantine Agreement , 2006, CRYPTO.