Parsimonious Asynchronous Byzantine-Fault-Tolerant Atomic Broadcast

  • HariGovind V. Ramasamy
  • Christian Cachin
Part of the Lecture Notes in Computer Science book series (LNCS, volume 3974)

Abstract

Atomic broadcast is a communication primitive that allows a group of n parties to deliver a common sequence of payload messages despite the failure of some parties. We address the problem of asynchronous atomic broadcast when up to t < n/3 parties may exhibit Byzantine behavior. We provide the first protocol with an amortized expected message complexity of \(\mathcal{O}(n)\) per delivered payload. The most efficient previous solutions are the BFT protocol by Castro and Liskov and the KS protocol by Kursawe and Shoup, both of which have message complexity \(\mathcal{O}(n^2)\). Like the BFT and KS protocols, our protocol is optimistic and uses inexpensive mechanisms during periods when no faults occur; when network instability or faults are detected, it switches to a more expensive recovery mode. The key idea of our solution is to replace reliable broadcast in the KS protocol by consistent broadcast, which reduces the message complexity from \(\mathcal{O}(n^2)\) to \(\mathcal{O}(n)\) in the optimistic mode. But since consistent broadcast provides weaker guarantees than reliable broadcast, our recovery mode incorporates novel techniques to ensure that safety and liveness are always satisfied.

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. 1.
    Schneider, F.B.: Implementing fault-tolerant services using the state machine approach: A tutorial. ACM Computing Surveys 22(4), 299–319 (1990)CrossRefGoogle Scholar
  2. 2.
    Cachin, C.: Distributing trust on the Internet. In: Proc. Intl. Conf. Dependable Systems and Networks, pp. 183–192 (2001)Google Scholar
  3. 3.
    Schneider, F.B., Zhou, L.: Distributed trust: Supporting fault-tolerance and attack-tolerance. Technical Report TR 2004-1924, Cornell University (2004)Google Scholar
  4. 4.
    Fischer, M.J., Lynch, N.A., Paterson, M.S.: Impossibility of distributed consensus with one faulty process. Journal of the ACM 32(2), 372–382 (1985)MathSciNetCrossRefMATHGoogle Scholar
  5. 5.
    Rabin, M.O.: Randomized Byzantine generals. In: Proc. 24th Symp. Foundations of Computer Science, pp. 403–409 (1983)Google Scholar
  6. 6.
    Canetti, R., Rabin, T.: Fast asynchronous Byzantine agreement with optimal resilience. In: Proc. 25th Symp. Theory of Computing, pp. 42–51 (1993)Google Scholar
  7. 7.
    Berman, P., Garay, J.A.: Randomized distributed agreement revisited. In: Proc. 23th Intl. Symp. Fault-Tolerant Computing, pp. 412–419 (1993)Google Scholar
  8. 8.
    Berman, P., Bharali, A.A.: Quick atomic broadcast. In: Schiper, A. (ed.) WDAG 1993. LNCS, vol. 725, pp. 189–203. Springer, Heidelberg (1993)CrossRefGoogle Scholar
  9. 9.
    Reiter, M.K.: The Rampart toolkit for building high-integrity services. In: Birman, K.P., Mattern, F., Schiper, A. (eds.) Dagstuhl Seminar 1994. LNCS, vol. 938, pp. 99–110. Springer, Heidelberg (1995)CrossRefGoogle Scholar
  10. 10.
    Kihlstrom, K.P., Moser, L.E., Melliar-Smith, P.M.: The SecureRing protocols for securing group communication. In: Proc. 31st Hawaii Intl. Conf. on System Sciences, pp. 317–326 (1998)Google Scholar
  11. 11.
    Ramasamy, H.V., Pandey, P., Lyons, J., Cukier, M., Sanders, W.H.: Quantifying the cost of providing intrusion tolerance in group communication systems. In: Proc. Intl. Conf. Dependable Systems and Networks, pp. 229–238 (2002)Google Scholar
  12. 12.
    Cachin, C., Kursawe, K., Petzold, F., Shoup, V.: Secure and efficient asynchronous broadcast protocols (extended abstract). In: Kilian, J. (ed.) CRYPTO 2001. LNCS, vol. 2139, pp. 524–541. Springer, Heidelberg (2001)CrossRefGoogle Scholar
  13. 13.
    Cachin, C., Kursawe, K., Shoup, V.: Random oracles in Constantinople: Practical asynchronous Byzantine agreement using cryptography. Journal of Cryptology 18(3) (2005)Google Scholar
  14. 14.
    Castro, M., Liskov, B.: Practical Byzantine fault tolerance and proactive recovery. ACM Transactions on Computer Systems 20(4), 398–461 (2002)CrossRefGoogle Scholar
  15. 15.
    Kursawe, K., Shoup, V.: Optimistic asynchronous atomic broadcast. In: Caires, L., Italiano, G.F., Monteiro, L., Palamidessi, C., Yung, M. (eds.) ICALP 2005. LNCS, vol. 3580, pp. 204–215. Springer, Heidelberg (2005)CrossRefGoogle Scholar
  16. 16.
    Bracha, G.: An asynchronous [(n − 1)/3]-resilient consensus protocol. In: Proc. 3rd Symp. Principles of Distributed Computing, pp. 154–162 (1984)Google Scholar
  17. 17.
    Reiter, M.K.: Secure agreement protocols: Reliable and atomic group multicast in Rampart. In: Proc. 2nd ACM Conference on Computer and Communications Security, pp. 68–80 (1994)Google Scholar
  18. 18.
    Ramasamy, H.V., Cachin, C.: Parsimonious asynchronous Byzantine-fault-tolerant atomic broadcast. Cryptology ePrint Archive, Report 2006/082 (2006), http://eprint.iacr.org/
  19. 19.
    Goldwasser, S., Micali, S., Rivest, R.L.: A digital signature scheme secure against adaptive chosen-message attacks. SIAM Journal on Computing 17(2), 281–308 (1988)MathSciNetCrossRefMATHGoogle Scholar
  20. 20.
    Desmedt, Y.: Society and group oriented cryptography: A new concept. In: Pomerance, C. (ed.) CRYPTO 1987. LNCS, vol. 293, pp. 120–127. Springer, Heidelberg (1988)Google Scholar
  21. 21.
    Shoup, V.: Practical Threshold Signatures. In: Preneel, B. (ed.) EUROCRYPT 2000. LNCS, vol. 1807, pp. 207–220. Springer, Heidelberg (2000)CrossRefGoogle Scholar
  22. 22.
    Hadzilacos, V., Toueg, S.: Fault-tolerant broadcasts and related problems. Distributed Systems (2nd edn.), 97–145 (1993)Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2006

Authors and Affiliations

  • HariGovind V. Ramasamy
    • 1
  • Christian Cachin
    • 1
  1. 1.IBM Zurich Research LaboratoryRüschlikonSwitzerland

Personalised recommendations