Advertisement

Crux—A New Fast, Flexible and Decentralized Consensus Algorithm with High Fault Tolerance Rate

  • Pengfei Li
  • Jingtian Peng
  • Long Yang
  • Qian Zheng
  • Gang Pan
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 11373)

Abstract

This paper presents Crux, a new permissionless blockchain consensus algorithm that achieves higher fault tolerance rate with more flexibility than existing blockchains such as Bitcoin, Ethereum and EOS. Crux utilize a DPoS-XPaxos pipelined algorithm to achieve effective and efficient consensus. Those who hold tokens in Crux elect \(2f+1\) block producers called validators through a continuous approval voting system. The elected validators are scheduled in an order and produce blocks in turns agreed by all of the validators. XPaxos, guarantees \(\frac{f}{2f+1}\) fault tolerance rate, is added to traditional DPoS to confirm blocks. Once \(f+1\) validators have signed a block, it is deemed irreversible. Analysis shows Crux provides higher securities, better flexibility, higher TPS (transaction per second) with little cost of centralization compared with existing blockchain consensus algorithms.

Keywords

Blockchain Consensus algorithm DPoS XPaxos Fault tolerance 

References

  1. 1.
  2. 2.
  3. 3.
    Ethcore. parity: next generation ethereum browser. https://ethcore.io/parity.html
  4. 4.
    Ethereum blockchain app platform. https://www.ethereum.org
  5. 5.
  6. 6.
  7. 7.
    Bellare, M., Rogaway, P.: The exact security of digital signatures-how to sign with RSA and rabin. In: Maurer, U. (ed.) EUROCRYPT 1996. LNCS, vol. 1070, pp. 399–416. Springer, Heidelberg (1996).  https://doi.org/10.1007/3-540-68339-9_34CrossRefGoogle Scholar
  8. 8.
    Castro, M., Liskov, B.: Practical byzantine fault tolerance. In: OSDI, pp. 173–186 (1999)Google Scholar
  9. 9.
    Castro, M., Liskov, B.: Practical byzantine fault tolerance and proactive recovery. ACM Trans. Comput. Syst. 20(4), 398–461 (2002)CrossRefGoogle Scholar
  10. 10.
    Clement, A., Wong, E.L., Alvisi, L., Dahlin, M., Marchetti, M.: Making byzantine fault tolerant systems tolerate byzantine faults. In: NSDI, pp. 153–168 (2009)Google Scholar
  11. 11.
    Hopkins, A.L., Lala, J.H., Smith, T.B.: The evolution of fault tolerant computing at the Charles Stark Draper laboratory, 1955–85. In: Avižienis, A., Kopetz, H., Laprie, J.C. (eds.) The Evolution of Fault-Tolerant Computing. DEPENDABLECOMP, vol. 1, pp. 121–140. Springer, Vienna (1987).  https://doi.org/10.1007/978-3-7091-8871-2_6CrossRefGoogle Scholar
  12. 12.
    King, S., Nadal, S.: PPcoin: peer-to-peer crypto-currency with proof-of-stake. Self-published Paper, 19 August 2012Google Scholar
  13. 13.
    Kogias, E.K., Jovanovic, P., Gailly, N., Khoffi, I., Gasser, L., Ford, B.: Enhancing bitcoin security and performance with strong consistency via collective signing. In: USENIX Security, pp. 279–296 (2016)Google Scholar
  14. 14.
    Kotla, R., Alvisi, L., Dahlin, M., Clement, A., Wong, E.L.: Zyzzyva: speculative byzantine fault tolerance. ACM Trans. Comput. Syst. 27(4), 7:1–7:39 (2009)CrossRefGoogle Scholar
  15. 15.
    Kotla, R., Alvisi, L., Dahlin, M., Clement, A., Wong, E.: Zyzzyva: speculative byzantine fault tolerance. ACM SIGOPS Oper. Syst. Rev. 41(6), 45–58 (2007)CrossRefGoogle Scholar
  16. 16.
    Lamport, L., Shostak, R.E., Pease, M.C.: The byzantine generals problem. ACM Trans. Program. Lang. Syst. 4(3), 382–401 (1982)CrossRefGoogle Scholar
  17. 17.
    Lamport, L., et al.: Paxos made simple. ACM SIGACT News 32(4), 18–25 (2001)Google Scholar
  18. 18.
    Larimer, D.: Delegated proof-of-stake (DPOS). Bitshare whitepaper (2014)Google Scholar
  19. 19.
    Li, C., Li, P., Xu, W., Long, F., Yao, A.C.: Scaling Nakamoto consensus to thousands of transactions per second. CoRR abs/1805.03870 (2018)Google Scholar
  20. 20.
    Liu, S., Viotti, P., Cachin, C., Quéma, V., Vukolic, M.: XFT: practical fault tolerance beyond crashes. In: OSDI, pp. 485–500 (2016)Google Scholar
  21. 21.
    McConaghy, T., et al.: BigchainDB: a scalable blockchain database. BigchainDB white paper (2016)Google Scholar
  22. 22.
    Nakamoto, S.: Bitcoin: a peer-to-peer electronic cash system (2008)Google Scholar
  23. 23.
    Ongaro, D., Ousterhout, J.K.: In search of an understandable consensus algorithm. In: USENIX ATC, pp. 305–319 (2014)Google Scholar
  24. 24.
    Paulitsch, M., Morris, J., Hall, B., Driscoll, K., Latronico, E., Koopman, P.: Coverage and the use of cyclic redundancy codes in ultra-dependable systems. In: DSN, pp. 346–355 (2005)Google Scholar
  25. 25.
    Rivest, R.L.: The MD5 message-digest algorithm. RFC 1321, pp. 1–21 (1992)Google Scholar
  26. 26.
    Rivest, R.L., Shamir, A., Adleman, L.M.: A method for obtaining digital signatures and public-key cryptosystems. Commun. ACM 21(2), 120–126 (1978)MathSciNetCrossRefGoogle Scholar
  27. 27.
    Tsudik, G.: Message authentication with one-way hash functions. In: INFOCOM, pp. 2055–2059 (1992)Google Scholar
  28. 28.
    Vasin, P.: Blackcoin’s proof-of-stake protocol v2 (2014). https://blackcoin.co/blackcoin-pos-protocolv2-whitepaper.pdf

Copyright information

© Springer Nature Switzerland AG 2018

Authors and Affiliations

  • Pengfei Li
    • 1
    • 2
  • Jingtian Peng
    • 1
  • Long Yang
    • 2
  • Qian Zheng
    • 3
  • Gang Pan
    • 2
  1. 1.LD ResearchShanghaiChina
  2. 2.Zhejiang UniversityHangzhouChina
  3. 3.Nanyang Technological UniversitySingaporeSingapore

Personalised recommendations