Inclusive Block Chain Protocols
Distributed cryptographic protocols such as Bitcoin and Ethereum use a data structure known as the block chain to synchronize a global log of events between nodes in their network. Blocks, which are batches of updates to the log, reference the parent they are extending, and thus form the structure of a chain. Previous research has shown that the mechanics of the block chain and block propagation are constrained: if blocks are created at a high rate compared to their propagation time in the network, many conflicting blocks are created and performance suffers greatly. As a result of the low block creation rate required to keep the system within safe parameters, transactions take long to securely confirm, and their throughput is greatly limited.
We propose an alternative structure to the chain that allows for operation at much higher rates. Our structure consists of a directed acyclic graph of blocks (the block DAG). The DAG structure is created by allowing blocks to reference multiple predecessors, and allows for more “forgiving” transaction acceptance rules that incorporate transactions even from seemingly conflicting blocks. Thus, larger blocks that take longer to propagate can be tolerated by the system, and transaction volumes can be increased.
Another deficiency of block chain protocols is that they favor more connected nodes that spread their blocks faster—fewer of their blocks conflict. We show that with our system the advantage of such highly connected miners is greatly reduced. On the negative side, attackers that attempt to maliciously reverse transactions can try to use the forgiving nature of the DAG structure to lower the costs of their attacks. We provide a security analysis of the protocol and show that such attempts can be easily countered.
KeywordsMain Chain Directed Acyclic Graph Bloom Filter Sequential Equilibrium Block Graph
The authors were supported in part by the Israel Science Foundation (Grants 616/13, 1773/13 and 1227/12), by the Israel Ministry of Science and Technology (Grant 3-6797), and by the Israel Smart Grid (ISG) Consortium.
- 1.Andresen, G.: O(1) block propagation. https://gist.github.com/gavinandresen/e20c3b5a1d4b97f79ac2
- 2.Babaioff, M., Dobzinski, S., Oren, S., Zohar, A.: On bitcoin and red balloons. In: The 13th ACM Conference on Electronic Commerce, pp. 56–73. ACM (2012)Google Scholar
- 3.Back, A., Corallo, M., Dashjr, L., Friedenbach, M., Maxwell, G., Miller, A., Poelstra, A., Timón, J., Wuille, P.: Enabling blockchain innovations with pegged sidechains (2014)Google Scholar
- 4.Bitcoinj: Working with micropayment channels. https://bitcoinj.github.io/working-with-micropayments
- 5.Chakrabarti, S., Topolyan, I.: A direct proof of the existence of sequential equilibrium and a backward induction characterization (2010)Google Scholar
- 6.Decker, C., Wattenhofer, R.: Information propagation in the bitcoin network. In: 13th IEEE International Conference on Peer-to-Peer Computing (P2P), Trento, Italy, September 2013Google Scholar
- 7.Eyal, Ittay, Sirer, Emin Gün: Majority is not enough: bitcoin mining is vulnerable. In: Christin, Nicolas, Safavi-Naini, Reihaneh (eds.) FC 2014. LNCS, vol. 8437, pp. 431–449. Springer, Heidelberg (2014) Google Scholar
- 9.Nakamoto, S.: Bitcoin: a peer-to-peer electronic cash system (2008)Google Scholar
- 11.Rosenfeld, M.: Analysis of hashrate-based double spending. arXiv preprint arXiv:1402.2009 (2014)
- 12.Sompolinsky, Y., Zohar, A.: Secure high-rate transaction processing in bitcoin. In: Böhme, R., Okamoto, T. (eds.) FC 2015. LNCS, vol 8975, pp. 507–527. Springer, Heidelberg (2015)Google Scholar
- 13.Wood, G.: Ethereum: a secure decentralised generalised transaction ledger (2014)Google Scholar