A Fault Resilient Consensus Protocol for Large Permissioned Blockchain Networks

Permissioned blockchains have evolved as an alternative to permissionless blockchains for various closed business environments. In this paper, we develop FRChain, a scalable and high-performant consensus protocol for permissioned blockchains, which is resilient to different types of node and network failures. FRChain uses collective signing over multicast trees for block propagation and block validation. The protocol ensures safety and liveness as long as a majority of the nodes can participate in the protocol correctly. Further, we also demonstrate a technique for replacing failed nodes with correct ones. We have implemented and tested FRChain spread across a 5000 node blockchain network over two different data centers – (a) 35 Softlayer Cloud VMs located across Melbourne, Milan and San Jose, (b) Amazon VPC with 30 Amazon EC2 instances spread across Mumbai, Singapore, Tokyo and Frankfurt. Our experiments show that FRChain is scalable in terms of both transaction throughput and network size.

[1]  Alysson Bessani,et al.  A Byzantine Fault-Tolerant Ordering Service for the Hyperledger Fabric Blockchain Platform , 2017, 2018 48th Annual IEEE/IFIP International Conference on Dependable Systems and Networks (DSN).

[2]  Kartik Nayak,et al.  Brief Announcement: Practical Synchronous Byzantine Consensus , 2017, DISC.

[3]  Miguel Castro,et al.  Practical byzantine fault tolerance and proactive recovery , 2002, TOCS.

[4]  David Wolinsky,et al.  Keeping Authorities "Honest or Bust" with Decentralized Witness Cosigning , 2015, 2016 IEEE Symposium on Security and Privacy (SP).

[5]  Bryan Ford,et al.  Managing Identities Using Blockchains and CoSi , 2016, PETS 2016.

[6]  Alysson Neves Bessani,et al.  State Machine Replication for the Masses with BFT-SMART , 2014, 2014 44th Annual IEEE/IFIP International Conference on Dependable Systems and Networks.

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

[8]  Bryan Ford,et al.  Enhancing Bitcoin Security and Performance with Strong Consistency via Collective Signing , 2016, USENIX Security Symposium.

[9]  Silvio Micali,et al.  Algorand: Scaling Byzantine Agreements for Cryptocurrencies , 2017, IACR Cryptol. ePrint Arch..

[10]  Ben Laurie,et al.  Certificate transparency , 2014, Commun. ACM.

[11]  Marko Vukolic,et al.  The Quest for Scalable Blockchain Fabric: Proof-of-Work vs. BFT Replication , 2015, iNetSeC.

[12]  Marko Vukolic,et al.  XFT: Practical Fault Tolerance beyond Crashes , 2015, OSDI.

[13]  Emin Gün Sirer,et al.  Bitcoin-NG: A Scalable Blockchain Protocol , 2015, NSDI.

[14]  Björn Scheuermann,et al.  Bitcoin and Beyond: A Technical Survey on Decentralized Digital Currencies , 2016, IEEE Communications Surveys & Tutorials.

[15]  Caitie McCaffrey,et al.  The verification of a distributed system , 2016, Commun. ACM.

[16]  Hovav Shacham,et al.  Short Signatures from the Weil Pairing , 2001, J. Cryptol..

[17]  Vincent Gramoli,et al.  From blockchain consensus back to Byzantine consensus , 2017, Future Gener. Comput. Syst..

[18]  Paolo Tasca,et al.  Blockchain Technologies: The Foreseeable Impact on Society and Industry , 2017, Computer.

[19]  Warren He,et al.  Proof of Luck: an Efficient Blockchain Consensus Protocol , 2016, SysTEX@Middleware.

[20]  Mihir Bellare,et al.  Multi-signatures in the plain public-Key model and a general forking lemma , 2006, CCS '06.

[21]  David Mazières The Stellar Consensus Protocol : A Federated Model for Internet-level Consensus , 2015 .

[22]  Satoshi Nakamoto Bitcoin : A Peer-to-Peer Electronic Cash System , 2009 .

[23]  Marko Vukolić,et al.  Rethinking Permissioned Blockchains , 2017 .

[24]  Prateek Saxena,et al.  A Secure Sharding Protocol For Open Blockchains , 2016, CCS.