Tight Bound on Mobile Byzantine Agreement

This paper investigates the problem of Byzantine Agreement in a synchronous system where malicious agents can move from process to process, corrupting their host. Earlier works on the problem are based on biased models which, as we argue in the paper, give an unfair advantage either to the correct processes or to the adversary controlling the malicious agents. Indeed, the earlier studies of the problem assume that, after a malicious agent has left a process, that process, said to be cured, is able to instantly and accurately detect the fact that it was corrupted in earlier rounds, and thus can take local actions to recover a valid state (Garay’s model). We found no justification for that assumption which clearly favors correct processes. Under that model, an algorithm is known for n > 4t, where n is the number of processes and t the maximum number of malicious agents. The tightness of the bound is unknown. In contrast, more recent work on the problem remove the assumption on detection and assume instead that a malicious agent may have left corrupted messages in the send queue of a cured process. As a result, the adversary controlling the malicious agents can corrupt the messages sent by cured processes, as well as those sent by the newly corrupted ones, thus doubling the number of effective faults. Under that model, which favors the malicious agents, the problem can be solved if and only if n > 6t. In this paper, we refine the latter model to avoid the above biases. While a cured process may send messages (based on a state corrupted by the malicious agent), it will behave correctly in the way it sends those messages: i.e., send messages according to the algorithm. Surprisingly, in this model we could derive a new non-trivial tight bound for Byzantine Agreement. We prove that at least 5t + 1 processors are needed in order to tolerate t mobile Byzantine agents and provide a time optimal algorithm that matches this lower bound, altogether with a formal specification of the problem.

[1]  Nicola Santoro,et al.  Majority and Unanimity in Synchronous Networks with Ubiquitous Dynamic Faults , 2005, SIROCCO.

[2]  Xavier Défago,et al.  Tight bound on mobile Byzantine Agreement , 2016, Theor. Comput. Sci..

[3]  Silvio Micali,et al.  An Optimal Probabilistic Protocol for Synchronous Byzantine Agreement , 1997, SIAM J. Comput..

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

[5]  Yukiko Yamauchi,et al.  Mobile Byzantine Agreement on Arbitrary Network , 2013, OPODIS.

[6]  Juan A. Garay,et al.  Reaching (and Maintaining) Agreement in the Presence of Mobile Faults (Extended Abstract) , 1994, WDAG.

[7]  Jaap-Henk Hoepman,et al.  Optimal resiliency against mobile faults , 1995, Twenty-Fifth International Symposium on Fault-Tolerant Computing. Digest of Papers.

[8]  Danny Dolev,et al.  The Byzantine Generals Strike Again , 1981, J. Algorithms.

[9]  Miguel Correia,et al.  Asynchronous Byzantine consensus with 2f+1 processes , 2010, SAC '10.

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

[11]  Rüdiger Reischuk,et al.  A New Solution for the Byzantine Generals Problem , 1985, Inf. Control..

[12]  Amnon Barak,et al.  Efficient Algorithms for Anonymous Byzantine Agreement , 2008, Theory of Computing Systems.

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

[14]  Gabriel Bracha,et al.  An O(log n) expected rounds randomized byzantine generals protocol , 1987, JACM.

[15]  Taisuke Izumi,et al.  An Improved Byzantine Agreement Algorithm forSynchronous Systems with Mobile Faults , 2012 .

[16]  Jean-Philippe Martin,et al.  Fast Byzantine Consensus , 2006, IEEE Transactions on Dependable and Secure Computing.

[17]  Nicola Santoro,et al.  Time is Not a Healer , 1989, STACS.

[18]  Rafail Ostrovsky,et al.  How to withstand mobile virus attacks (extended abstract) , 1991, PODC '91.

[19]  Idit Keidar,et al.  Impossibility Results and Lower Bounds for Consensus under Link Failures , 2008, SIAM J. Comput..

[20]  Danny Dolev,et al.  Self-stabilizing byzantine agreement , 2006, PODC '06.

[21]  Nancy A. Lynch,et al.  An Efficient Algorithm for Byzantine Agreement without Authentication , 1982, Inf. Control..