Advertisement

Acta Informatica

, Volume 54, Issue 5, pp 501–520 | Cite as

Signature-free asynchronous Byzantine systems: from multivalued to binary consensus with \(t<n/3\), \(O(n^2)\) messages, and constant time

  • Achour Mostéfaoui
  • Michel Raynal
Original Article

Abstract

This paper presents a new algorithm that reduces multivalued consensus to binary consensus in an asynchronous message-passing system made up of n processes where up to t may commit Byzantine failures. This algorithm has the following noteworthy properties: it assumes \(t<n/3\) (and is consequently optimal from a resilience point of view), uses \(O(n^2)\) messages, has a constant time complexity, and uses neither signatures nor additional computational power (such as random numbers, failure detectors, additional scheduling assumption, or additional synchrony assumption). The design of this reduction algorithm relies on two new all-to-all communication abstractions. The first one allows the non-faulty processes to reduce the number of proposed values to c, where c is a small constant. The second communication abstraction allows each non-faulty process to compute a set of (proposed) values satisfying the following property: if the set of a non-faulty process is a singleton containing value v, the set of any non-faulty process contains v. Both communication abstractions have an \(O(n^2)\) message complexity and a constant time complexity. The reduction of multivalued Byzantine consensus to binary Byzantine consensus is then a simple sequential use of these communication abstractions. To the best of our knowledge, this is the first asynchronous message-passing algorithm that reduces multivalued consensus to binary consensus with \(O(n^2)\) messages and constant time complexity (measured with the longest causal chain of messages) in the presence of up to \(t<n/3\) Byzantine processes, and without using cryptography techniques. Moreover, this reduction algorithm uses a single instance of the underlying binary consensus, and tolerates message re-ordering by Byzantine processes.

Keywords

Consensus Problem Message Complexity Consensus Algorithm Asynchronous System Faulty Process 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.

Notes

Acknowledgments

We want to thank the referees for their constructive comments. This work has been partially supported by the Franco-German ANR project DISCMAT devoted to connections between mathematics and distributed computing.

References

  1. 1.
    Aguilera, M.K., Frolund, S., Hadzilacos, V., Horn, S., Toueg S.: Abortable and query-abortable objects and their efficient implementation. In: Proceedings of 26th Annual ACM Symposium on Principles of Distributed Computing (PODC’07), pp. 23–32 (2007)Google Scholar
  2. 2.
    Attiya, H., Welch, J.: Distributed Computing: Fundamentals, Simulations and Advanced Topics, 2d edn. Wiley-Interscience, New York (2004)CrossRefMATHGoogle Scholar
  3. 3.
    Ben-Or M.: Another advantage of free choice: completely asynchronous agreement protocols. In: Proceedings of the 2nd ACM Symposium on Principles of Distributed Computing (PODC’83), pp. 27–30. ACM Press, New York (1983)Google Scholar
  4. 4.
    Bracha, G.: Asynchronous Byzantine agreement protocols. Inf. Comput. 75(2), 130–143 (1987)MathSciNetCrossRefMATHGoogle Scholar
  5. 5.
    Bracha, G., Toueg, S.: Asynchronous consensus and broadcast protocols. J. ACM 32(4), 824–840 (1985)MathSciNetCrossRefMATHGoogle Scholar
  6. 6.
    Cachin, Ch., Kursawe, K., Petzold, F., Shoup, V.: Secure and efficient asynchronous broadcast protocols. In: Proceedings of the 21st Annual International Cryptology Conference (CRYPTO’01). LNCS, vol. 2139, pp. 524–541. Springer, Berlin (2001)Google Scholar
  7. 7.
    Correia, M., Ferreira Neves, N., Verissimo, P.: From consensus to atomic broadcast: time-free Byzantine-resistant protocols without signatures. Comput. J. 49(1), 82–96 (2006)CrossRefGoogle Scholar
  8. 8.
    De Prisco, R., Malkhi, D., Reiter, M.: On \(k\)-set consensus problems in asynchronous systems. Trans. Parallel Distrib. Syst. 12(1), 7–21 (2001)CrossRefMATHGoogle Scholar
  9. 9.
    Doudou, A., Garbinato, B., Guerraoui, R., Schiper, A.: Muteness failure detectors: specification and implementation. In: Proceedings of the Third European Dependable Computing Conference (EDCC’99). LNC, vol. 1667, pp. 71–87. Springer, Berlin (1999)Google Scholar
  10. 10.
    Dwork, C., Lynch, N., Stockmeyer, L.: Consensus in the presence of partial synchrony. J. ACM 35(2), 288–323 (1988)MathSciNetCrossRefGoogle Scholar
  11. 11.
    Ezhilchelvan, P., Mostéfaoui, A., Raynal, M.: Randomized multivalued consensus. In: Proceedings of the 4th IEEE International Symposium Object-Oriented Real-Time Distributed Computing (ISORC’01), pp. 195–200. IEEE Society Press, New York (2001)Google Scholar
  12. 12.
    Fischer, M.J., Lynch, N.A., Paterson, M.S.: Impossibility of distributed consensus with one faulty process. J. ACM 32(2), 374–382 (1985)MathSciNetCrossRefMATHGoogle Scholar
  13. 13.
    Fitzi, M., Hirt, M.: Optimally efficient multi-valued Byzantine agreement. In: Proceedings of the 25th ACM Symposium on Principles of Distributed Computing (PODC’06), pp. 163–168. ACM Press, New York (2006)Google Scholar
  14. 14.
    Friedman, R., Mostéfaoui, A., Rajsbaum, S., Raynal, M.: Distributed agreement problems and their connection with error-correcting codes. IEEE Trans. Comput. 56(7), 865–875 (2007)MathSciNetCrossRefGoogle Scholar
  15. 15.
    Friedman, R., Mostéfaoui, A., Raynal, M.: \(\Diamond {\cal P}_{mute}\)-based consensus for asynchronous Byzantine systems. Parallel Process. Lett. 15(1–2), 162–182 (2005)MathSciNetGoogle Scholar
  16. 16.
    Friedman, R., Mostéfaoui, A., Raynal, M.: Simple and efficient oracle-based consensus protocols for asynchronous Byzantine systems. IEEE Trans. Dependable Secure Comput. 2(1), 46–56 (2005)CrossRefGoogle Scholar
  17. 17.
    Hadzilacos, V., Toueg, S.: On deterministic abortable objects. In: Proceedings of the 32th Annual ACM Symposium on Principles of Distributed Computing (PODC’13), pp. 4–12 (2013)Google Scholar
  18. 18.
    Kihlstrom, K.P., Moser, L.E., Melliar-Smith, P.M.: Byzantine fault detectors for solving consensus. Comput. J. 46(1), 16–35 (2003)CrossRefMATHGoogle Scholar
  19. 19.
    King, V., Saia, J.: Breaking the \(O(n^2)\) bit barrier: scalable Byzantine agreement with an adaptive adversary. In: Proceedings of the 30th ACM Symposium on Principles of Distributed Computing (PODC’11), pp. 420–429. ACM Press, New York (2011)Google Scholar
  20. 20.
    Lamport, L., Shostack, R., Pease, M.: The Byzantine generals problem. ACM Trans. Program. Lang. Syst. 4(3), 382–401 (1982)CrossRefMATHGoogle Scholar
  21. 21.
    Liang, G., Vaidya, N.: Error-free multi-valued consensus with Byzantine failures. In: Proceeding 30th ACM Symposium on Principles of Distributed Computing (PODC’11), pp. 11–20. ACM Press, New York (2011)Google Scholar
  22. 22.
    Lynch, N.A.: Distributed Algorithms. Morgan Kaufmann Publications, San Francisco (1996)MATHGoogle Scholar
  23. 23.
    Martin, J-Ph, Alvisi, L.: Fast Byzantine consensus. IEEE Trans. Dependable Secure Comput. 3(3), 202–215 (2006)CrossRefGoogle Scholar
  24. 24.
    Milosevic, Z., Hutle, M., Schiper, A.: On the reduction of atomic broadcast to consensus with Byzantine faults. In: Proceedings of the 30th IEEE International Symposium on Reliable Distributed Systems (SRDS’11), pp. 235–244. IEEE Computer Press, Los Alamitos (2011)Google Scholar
  25. 25.
    Mostéfaoui, A., Moumen, H., Raynal, M.: Signature-free asynchronous Byzantine consensus with \(t<n/3\) and \(O(n^2)\) messages. In: Proceedings of the 33rd Annual ACM Symposium on Principles of Distributed Computing (PODC’14), pp. 2–9. ACM Press, New York (2014)Google Scholar
  26. 26.
    Mostéfaoui, A., Moumen, H., Raynal, M.: Signature-free asynchronous binary Byzantine consensus with \(t<n/3\), \(O(n^2)\) messages, and \(O(1) \) expected time. J. ACM 62(4), 21 (2015)Google Scholar
  27. 27.
    Mostéfaoui, A., Rajsbaum, S., Raynal, M.: Conditions on input vectors for consensus solvability in asynchronous distributed systems. J. ACM 50(6), 922–954 (2003)MathSciNetCrossRefMATHGoogle Scholar
  28. 28.
    Mostéfaoui, A., Raynal, M.: Signature-free broadcast-based intrusion tolerance: never decide a Byzantine value. In: Proceedings of the 14th International Conference on Principles of Distributed Systems (OPODIS’010). LNCS, vol. 6490, pp. 144–159. Springer, Berlin (2010)Google Scholar
  29. 29.
    Mostéfaoui, A., Raynal, M.: Signature-free asynchronous Byzantine systems: from multivalued to binary consensus with \(t<n/3\), \(O(n^2)\) messages, and constant time. In: Proceedings of the 22nd International Colloquium on Structural Information and Communication Complexity (SIROCCO’15). LNCS, vol. 9439, pp. 194–208. Springer, Berlin (2015)Google Scholar
  30. 30.
    Mostéfaoui, A., Raynal, M., Tronel, F.: From binary consensus to multivalued consensus in asynchronous message-passing systems. Inf. Process. Lett. 73, 207–213 (2000)MathSciNetCrossRefMATHGoogle Scholar
  31. 31.
    Patra, A.: Error-free multi-valued broadcast and Byzantine agreement with optimal communication complexity. In: Proceedings of the 15th International Conference on Principles of Distributed Systems (OPODIS’10). LNCS, vol. 7109, pp. 34–49. Springer, Berlin (2011)Google Scholar
  32. 32.
    Pease, M., Shostak R, R., Lamport, L.: Reaching agreement in the presence of faults. J. ACM 27, 228–234 (1980)MathSciNetCrossRefMATHGoogle Scholar
  33. 33.
    Rabin M.: Randomized Byzantine generals. In: Proceedings of the 24th IEEE Symposium on Foundations of Computer Science (FOCS’83), pp. 116–124. IEEE Computer Society Press, New York (1983)Google Scholar
  34. 34.
    Raynal, M.: Communication and Agreement Abstractions for Fault-Tolerant Asynchronous Distributed Systems. Morgan & Claypool, San Rafael (2010)Google Scholar
  35. 35.
    Raynal, M.: Fault-Tolerant Agreement in Synchronous Message-Passing Systems. Morgan & Claypool, San Rafael (2010)Google Scholar
  36. 36.
    Raynal, M.: Concurrent Programming: Algorithms, Principles and Foundations. Springer, Berlin (2013)CrossRefMATHGoogle Scholar
  37. 37.
    Toueg, S.: Randomized Byzantine agreement. In: Proceedings of the 3rd Annual ACM Symposium on Principles of Distributed Computing (PODC’84), pp. 163–178. ACM Press, New York (1984)Google Scholar
  38. 38.
    Turpin, R., Coan, B.A.: Extending binary Byzantine agreement to multivalued Byzantine agreement. Inf. Process. Lett. 18, 73–76 (1984)CrossRefGoogle Scholar
  39. 39.
    Zhang, H., Zhao, W., Moser, L.E., Melliar-Smith, P.M.: Design and implementation of a Byzantine fault tolerance framework for non-deterministic applications. IET Softw. 5(3), 342–356 (2011)CrossRefGoogle Scholar
  40. 40.
    Zhang, J., Chen, W.: Bounded cost algorithms for multivalued consensus using binary consensus instances. Inf. Process. Lett. 109(17), 1005–1009 (2009)MathSciNetCrossRefMATHGoogle Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2016

Authors and Affiliations

  1. 1.LINAUniversité de NantesNantes CedexFrance
  2. 2.Institut Universitaire de FranceParisFrance
  3. 3.IRISAUniversité de RennesRennes CedexFrance

Personalised recommendations