Decentralization in Bitcoin and Ethereum Networks
- 88 Citations
- 2.2k Downloads
Abstract
Blockchain-based cryptocurrencies have demonstrated how to securely implement traditionally centralized systems, such as currencies, in a decentralized fashion. However, there have been few measurement studies on the level of decentralization they achieve in practice. We present a measurement study on various decentralization metrics of two of the leading cryptocurrencies with the largest market capitalization and user base, Bitcoin and Ethereum. We investigate the extent of decentralization by measuring the network resources of nodes and the interconnection among them, the protocol requirements affecting the operation of nodes, and the robustness of the two systems against attacks. In particular, we adapted existing internet measurement techniques and used the Falcon Relay Network as a novel measurement tool to obtain our data. We discovered that neither Bitcoin nor Ethereum has strictly better properties than the other. We also provide concrete suggestions for improving both systems.
Notes
Acknowledgements
The authors thank Vitalik Buterin and the anonymous reviewers for their feedback on earlier drafts of this manuscript. Ittay Eyal is supported by the Viterbi Fellowship in the Center for Computer Engineering at the Technion. This work was partially funded and supported by AFOSR grant F9550-16-0250, NSF CSR-1422544, NSF CNS-1601879, NSF CNS-1544613, NSF CCF-1522054, NSF CNS-1518779, NSF CNS-1704615, ONR N00014-16-1-2726, NIST Information Technology Laboratory (60NANB15D327, 70NANB17H181), Facebook, Infosys, and IC3, the Initiative for Cryptocurrencies and Smart Contracts. This material is based upon work supported by the National Science Foundation Graduate Research Fellowship Program under Grant No. DGE-1650441. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation.
References
- 1.21.CO. Bitnodes. https://bitnodes.21.co/. Accessed June 2017
- 2.Apostolaki, M., Zohar, A., Vanbever, L.: Hijacking bitcoin: routing attacks on cryptocurrencies. arXiv preprint arXiv:1605.07524 (2016)
- 3.Benben Team. Benben. http://benben.com.gh/. Accessed Oct 2016
- 4.Biryukov, A., Khovratovich, D., Pustogarov, I.: Deanonymisation of clients in Bitcoin P2P network. In: Proceedings of the ACM Conference on Computer and Communications Security (CCS), pp. 15–29 (2014)Google Scholar
- 5.Bitcoin Community. Bitcoin source. https://github.com/bitcoin/bitcoin. Accessed June 2017
- 6.Bitcoin Community. Protocol rules. https://en.bitcoin.it/wiki/Protocol_rules. Accessed June 2017
- 7.Bitcoin Community. Protocol specification. https://en.bitcoin.it/wiki/Protocol_specification. Accessed June 2017
- 8.Blockchain Info Team. Blockchain Info. https://blockchain.info/. Accessed May 2017
- 9.BlockTrail Team. Blocktrail API. https://www.blocktrail.com/api/docs#api_data. Accessed Apr 2017
- 10.Buterin, V.: Critical update re: DAO vulnerability. https://blog.ethereum.org/2016/06/17/critical-update-re-dao-vulnerability/. Accessed Apr 2017
- 11.Buterin, V.: Transaction spam attack: next steps. https://blog.ethereum.org/2016/09/22/transaction-spam-attack-next-steps/. Accessed Apr 2017
- 12.Cangialosi, F., Levin, D., Spring, N.: Ting: measuring and exploiting latencies between all tor nodes. In Proceedings of the ACM SIGCOMM Conference on Internet Measurement (IMC), pp. 289–302 (2015)Google Scholar
- 13.Chandrasekaran, B., et al.: Alidade: IP geolocation without active probing. Technical report, Duke University (2015)Google Scholar
- 14.Chun, B., et al.: PlanetLab: an overlay testbed for broad-coverage services. ACM SIGCOMM CCR 33(3), 3–12 (2003)CrossRefGoogle Scholar
- 15.CoinMarketCap. Cryptocurrency market capitalizations. https://coinmarketcap.com/. Accessed May 2017
- 16.Corallo, M.: The Bitcoin relay network. BIP 152. http://bitcoinrelaynetwork.org/. Accessed May 2017
- 17.Corallo, M.: Compact block relay. BIP 152. https://github.com/bitcoin/bips/blob/master/bip-0152.mediawiki. Accessed June 2017
- 18.Corallo, M.: FIBRE: Fast internet Bitcoin relay engine. https://github.com/bitcoinfibre/bitcoinfibre. Accessed Apr 2017
- 19.Cpp-ethereum Authors: Ethereum C++ client. https://github.com/ethereum/cpp-ethereum. Accessed Apr 2017
- 20.Croman, K., et al.: On scaling decentralized blockchains (a position paper). In: Proceedings of the Workshop on Bitcoin and Blockchain Research (BITCOIN), Barbados (2016)Google Scholar
- 21.Cryptocompare Team. Cryptocurrency mining calculator. https://www.cryptocompare.com/mining/calculator. Accessed June 2017
- 22.Decker, C., Wattenhofer, R.: Information propagation in the Bitcoin network. In: Proceedings of the IEEE International Conference on Peer-to-Peer Computing, pp. 1–10, Trento, Italy (2013)Google Scholar
- 23.Dingledine, R., Mathewson, N., Syverson, P.:Tor: the second-generation onion router. In: Proceedings of the USENIX Security Symposium (2004)Google Scholar
- 24.Donet Donet, J.A., Pérez-Solà, C., Herrera-Joancomartí, J.: The Bitcoin P2P network. In: Böhme, R., Brenner, M., Moore, T., Smith, M. (eds.) FC 2014. LNCS, vol. 8438, pp. 87–102. Springer, Heidelberg (2014). https://doi.org/10.1007/978-3-662-44774-1_7CrossRefGoogle Scholar
- 25.Ethereum Community. devp2p forward compatibility requirements for homestead. https://github.com/ethereum/EIPs/blob/master/EIPS/eip-8.md. Accessed Apr 2017
- 26.Ethereum Community. D\(\Xi \)Vp2p wire protocol. https://github.com/ethereum/wiki/wiki/%C3%90%CE%9EVp2p-Wire-Protocol. Accessed Apr 2017
- 27.Ethereum Community. Ethereum wire protocol. https://github.com/ethereum/wiki/wiki/Ethereum-Wire-Protocol. Accessed Apr 2017
- 28.Ethereum Community. A next generation smart contract and decentralized application platform. https://github.com/ethereum/wiki/wiki/White-Paper. Accessed Apr 2017
- 29.Ethereum Community. RLPx: Cryptographic network & transport protocol. https://github.com/ethereum/devp2p/blob/master/rlpx.md. Accessed Apr 2017
- 30.Ethereum Community. RLPx encryption. https://github.com/ethereum/go-ethereum/wiki/RLPx-Encryption. Accessed Apr 2017
- 31.EthereumJ. The Ethereum nodes explorer. https://www.ethernodes.org/. Accessed June 2017
- 32.Etherscan Team. Etherscan: The Ethereum block explorer. https://etherscan.io/. Accessed June 2017
- 33.Ethstats Team. Ethstats. https://ethstats.net/. Accessed June 2017
- 34.Eyal, I., Gencer, A.E., Sirer, E.G., van Renesse, R.: Bitcoin-NG: a scalable blockchain protocol. In: Proceedings of the USENIX Symposium on Networked Systems Design and Implementation (NSDI), pp. 45–59, Santa Clara, CA, USA (2016)Google Scholar
- 35.Eyal, I., Sirer, E.G.: Majority is not enough: Bitcoin mining is vulnerable. In Proceedings of the International Financial Cryptography and Data Security Conference, Barbados (2014)Google Scholar
- 36.Feld, S., Schönfeld, M., Werner, M.: Analyzing the deployment of Bitcoin’s P2P network under an AS-level perspective. In: Proceedings of the International Workshop on Secure Peer-to-Peer Intelligent Networks and Systems, vol. 32, pp. 1121–1126 (2014)CrossRefGoogle Scholar
- 37.Francis, P., et al.: IDmaps: a global internet host distance estimation service. IEEE/ACM Trans. Netw. (TON) 9, 525–540 (2001)CrossRefGoogle Scholar
- 38.Garay, J., Kiayias, A., Leonardos, N.: The Bitcoin backbone protocol: analysis and applications. In: Oswald, E., Fischlin, M. (eds.) EUROCRYPT 2015. LNCS, vol. 9057, pp. 281–310. Springer, Heidelberg (2015). https://doi.org/10.1007/978-3-662-46803-6_10CrossRefGoogle Scholar
- 39.Gencer, A.E., van Renesse, R., Sirer, E.G.: Short paper: service-oriented sharding for blockchains. In: Kiayias, A. (ed.) FC 2017. LNCS, vol. 10322, pp. 393–401. Springer, Cham (2017). https://doi.org/10.1007/978-3-319-70972-7_22CrossRefGoogle Scholar
- 40.Gervais, A., Karame, G.O., Capkun, V., Capkun, S.: Is Bitcoin a decentralized currency? In: Proceedings of the IEEE Symposium on Security and Privacy, vol. 3, no. 12, pp. 54–60 (2014)CrossRefGoogle Scholar
- 41.Gervais, A., Karame, G.O., Wüst, K., Glykantzis, V., Ritzdorf, H., Capkun, S.: On the security and performance of proof of work blockchains. In: Proceedings of the ACM Conference on Computer and Communications Security (CCS), pp. 3–16, Vienna, Austria (2016)Google Scholar
- 42.Go-ethereum Authors: Official Go implementation of the Ethereum protocol. https://github.com/ethereum/go-ethereum. Accessed Apr 2017
- 43.Guha, S., Murty, R., Sirer, E.G.: Sextant: a unified framework for node and event localization in sensor networks. In: Proceedings of the ACM International Symposium on Mobile Ad Hoc Networking and Computing, pp. 205–216. ACM (2005)Google Scholar
- 44.Hearn, M., Corallo, M.: Connection bloom filtering. BIP 37. https://github.com/bitcoin/bips/blob/master/bip-0037.mediawiki. Accessed Sept 2017
- 45.Heilman, E., Kendler, A., Zohar, A., Goldberg, S.: Eclipse attacks on Bitcoin’s peer-to-peer network. In: Proceedings of the USENIX Security Symposium, pp. 129–144, Washington, D.C., USA (2015)Google Scholar
- 46.IP Info Team. IP Info. http://ipinfo.io/. Accessed Apr 2017
- 47.jackwinters. Ethpool & Ethermine voting on the soft fork. https://forum.daohub.org/t/ethpool-ethermine-voting-on-the-soft-fork/5364. Accessed Apr 2017
- 48.Jameson, H.: Hard fork no. 4: Spurious Dragon. https://blog.ethereum.org/2016/11/18/hard-fork-no-4-spurious-dragon/. Accessed Apr 2017
- 49.Koshy, P., Koshy, D., McDaniel, P.: An analysis of anonymity in Bitcoin using P2P network traffic. In: Christin, N., Safavi-Naini, R. (eds.) FC 2014. LNCS, vol. 8437, pp. 469–485. Springer, Heidelberg (2014). https://doi.org/10.1007/978-3-662-45472-5_30CrossRefGoogle Scholar
- 50.Kwon, A., Lazar, D., Devadas, S., Ford, B.: Riffle: an efficient communication system with strong anonymity. In: Proceedings of the Privacy Enhancing Technologies Symposium (PETS) (2016)Google Scholar
- 51.Loibl, A.: Namecoin. namecoin.info (2014)
- 52.Lumezanu, C., Baden, R., Spring, N., Bhattacharjee, B.: Triangle inequality variations in the internet. In: Proceedings of the ACM SIGCOMM Conference on Internet Measurement (IMC), pp. 177–183 (2009)Google Scholar
- 53.Malkhi, D., Reiter, M.: Byzantine quorum systems. J. Distrib. Comput. 11(4), 203–213 (1998)CrossRefGoogle Scholar
- 54.Maymounkov, P., Mazières, D.: Kademlia: a peer-to-peer information system based on the XOR metric. In: Druschel, P., Kaashoek, F., Rowstron, A. (eds.) IPTPS 2002. LNCS, vol. 2429, pp. 53–65. Springer, Heidelberg (2002). https://doi.org/10.1007/3-540-45748-8_5CrossRefzbMATHGoogle Scholar
- 55.McCorry, P., Shahandashti, S.F., Hao, F.: A smart contract for boardroom voting with maximum voter privacy. In: Kiayias, A. (ed.) FC 2017. LNCS, vol. 10322, pp. 357–375. Springer, Cham (2017). https://doi.org/10.1007/978-3-319-70972-7_20CrossRefGoogle Scholar
- 56.Miller, A., et al.: Discovering Bitcoin’s public topology and influential nodes (2015)Google Scholar
- 57.Nakamoto, S.: Bitcoin: a peer-to-peer electronic cash system (2008)Google Scholar
- 58.Nayak, K., Kumar, S., Miller, A., Shi, E.: Stubborn mining: generalizing selfish mining and combining with an eclipse attack. IACR Cryptology ePrint Archive 2015, 796 (2015)Google Scholar
- 59.Pappalardo, G., Di Matteo, T., Caldarelli, G., Aste, T.: Blockchain inefficiency in the Bitcoin peers network. arXiv preprint arXiv:1704.01414 (2017)
- 60.Parity Authors: Ethereum Rust client. https://github.com/paritytech/parity. Accessed Apr 2017
- 61.Pyethapp Authors: Python based client implementing the Ethereum protocol. https://github.com/ethereum/pyethapp/. Accessed Apr 2017
- 62.Reyzin, L., Meshkov, D., Chepurnoy, A., Ivanov, S.: Improving authenticated dynamic dictionaries, with applications to cryptocurrencies. In: Kiayias, A. (ed.) FC 2017. LNCS, vol. 10322, pp. 376–392. Springer, Cham (2017). https://doi.org/10.1007/978-3-319-70972-7_21CrossRefGoogle Scholar
- 63.Sinnott, R.W.: Virtues of the haversine. Sky and Telescope (1984)Google Scholar
- 64.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). https://doi.org/10.1007/978-3-662-47854-7_32CrossRefGoogle Scholar
- 65.Statoshi Team: Statoshi info. http://statoshi.info/. Accessed May 2017
- 66.Swende, M.: Announcement of imminent hard fork for EIP150 gas cost changes. https://blog.ethereum.org/2016/10/13/announcement-imminent-hard-fork-eip150-gas-cost-changes/. Accessed Apr 2017
- 67.Wang, G., Zhang, B., Ng, T.: Towards network triangle inequality violation aware distributed systems. In: Proceedings of the ACM SIGCOMM Conference on Internet Measurement (IMC), pp. 175–188. ACM (2007)Google Scholar
- 68.Wang, L., Liu, Y.: Exploring miner evolution in Bitcoin network. In: Mirkovic, J., Liu, Y. (eds.) PAM 2015. LNCS, vol. 8995, pp. 290–302. Springer, Cham (2015). https://doi.org/10.1007/978-3-319-15509-8_22CrossRefGoogle Scholar
- 69.Wang, Y., Burgener, D., Flores, M., Kuzmanovic, A., Huang, C.: Towards street-level client-independent IP geolocation. In: Proceedings of the USENIX Symposium on Networked Systems Design and Implementation (NSDI), pp. 365–379. USENIX Association (2011)Google Scholar
- 70.Wood, G.: Ethereum: a secure decentralised generalised transaction ledger. Ethereum Project Yellow Paper (2014)Google Scholar