Validating pairwise transactions on cryptocurrencies: a novel heuristics and network simulation
- 1 Downloads
Abstract
Bitcoin, along with other cryptocurrencies, has received a lot of attention in the recent past. The popularity of Bitcoin has increased the volume of transactions in an unprecedented way. The time to complete a simple pairwise transaction is determined by proof-of-work which requires a significant time compared to other components of the Bitcoin protocol. In this study, we propose a heuristic for validating pairwise transactions on cryptocurrencies. Our heuristic is based on simulating the participants sending and receiving transactions. We use SHA256 algorithm to enhance our solution for pairwise transactions, creating a local Blockchain of transactions, which has been previously used in the development of various Blockchain systems. We tested in-file and in-memory configurations in our simulations with two million transactions, which respectively took 290.39 and 5.34 s. The peak number for transactions-per-second was 6.88 when using the in-file setting and 374.25 for in-memory setting. From these experiments, we conclude that the number of transactions processed per second improves by increasing the block size as well as avoiding file access. We also implemented a parallel version of our algorithm in order to simulate the sharding technique and ultimately achieve further improvements in performance. In addition, we used Bitcoin simulator to analyze the impact of increasing the block size on the number of forks. Our simulations show that using a secondary relay network, such as FIBRE, to propagate the new blocks significantly reduces the number of forks and consequently the number of stale blocks.
Keywords
Blockchain Bitcoin Cryptocurrency Pairwise transaction Network simulator FIBRE Throughput ShardingNotes
Acknowledgements
The last three authors acknowledge Natural Sciences and Engineering Research Council (NSERC) Canada for partial financial support for this research through Discovery Grants. The first and second authors acknowledge the GETS funding from Faculty of Graduate Studies and Faculty of Science respectively. The first two authors also acknowledge the International Graduate Student Scholarship from the Faculty of Graduate Studies, University of Manitoba.
References
- 1.Back A (2002) Hashcash—a denial of service counter-measure. Technical Report (unpublished) . ftp://sunsite.icm.edu.pl/site/replay.old/programs/hashcash/hashcash.pdf. Accessed 1 Nov 2018
- 2.Bentov I, Gabizon A, Mizrahi A (2016) Cryptocurrencies without proof of work. In: International conference on financial cryptography and data security. Springer, pp 142–157Google Scholar
- 3.Bentov I, Lee C, Mizrahi A, Rosenfeld M (2014) Proof of activity: extending bitcoin’s proof of work via proof of stake [extended abstract] y. ACM SIGMETRICS Perform Eval Rev 42(3):34–37CrossRefGoogle Scholar
- 4.Bitcore: Bitcoin improvement proposals—compact block (2018). https://github.com/bitcoin/bips/blob/master/bip-0152.mediawiki. Accessed 1 Nov 2018
- 5.Bitnodes: Global bitcoin nodes distribution—bitnodes (2018). https://bitnodes.earn.com/. Accessed 1 Nov 2018
- 6.Blockchain.info: Transaction rate. https://blockchain.info/charts/transactions-per-second?timespan=all. Accessed 1 Nov 2018
- 7.BlockGeeks: what is cryptocurrency: everything you need to know (2016). https://blockgeeks.com/guides/what- is-cryptocurrency/. Accessed 1 Nov 2018
- 8.Btc.com: Pool stats—btc.com (2018). https://btc.com/stats/pool. Accessed 1 Nov 2018
- 9.Catalini C, Gans J.S (2017) Some simple economics of the blockchain, Rotman School of Management working paper no. 2874598Google Scholar
- 10.Chauhan A, Malviya O.P, Verma M, Mor T.S. (2018) Blockchain and scalability. In: 2018 IEEE international conference on software quality, reliability and security companion (QRS-C). IEEE, pp 122–128Google Scholar
- 11.Croman K, Decker C, Eyal I, Gencer AE, Juels A, Kosba A, Miller A, Saxena P, Shi E, Sirer EG, et al (2016) On scaling decentralized blockchains. In: International conference on financial cryptography and data security. Springer, pp 106–125Google Scholar
- 12.Dagum L, Menon R (1998) Openmp: an industry standard API for shared-memory programming. IEEE computational science and engineering 5(1):46–55. https://www.openmp.org/. Accessed 1 Nov 2018
- 13.Distler T, Cachin C, Kapitza R (2016) Resource-efficient byzantine fault tolerance. IEEE Trans Comput 65(9):2807–2819MathSciNetCrossRefzbMATHGoogle Scholar
- 14.Dwork C, Naor M (1992) Pricing via processing or combatting junk mail. In: Annual international cryptology conference. Springer, pp 139–147Google Scholar
- 15.Eyal I, Gencer AE, Sirer EG, Van Renesse R (2016) Bitcoin-NG: a scalable blockchain protocol. In: NSDI, pp 45–59Google Scholar
- 16.Eyal I, Sirer E.G (2014) Majority is not enough: bitcoin mining is vulnerable. In: International conference on financial cryptography and data security. Springer, pp 436–454Google Scholar
- 17.Farell R (2015) An analysis of the cryptocurrency industry. Master’s Thesis, Wharton School of Business, University of PennsylvaniaGoogle Scholar
- 18.FIBRE: fast internet bitcoin relay engine (2017). http://bitcoinfibre.org/. Accessed 1 Nov 2018
- 19.Gervais A (2016) Github—arthurgervais/bitcoin-simulator: bitcoin and blockchain simulator. https://github.com/arthurgervais/Bitcoin-Simulator. Accessed 1 Nov 2018
- 20.Gervais A, Karame G.O, Wüst K, Glykantzis V, Ritzdorf H, Capkun S (2016) On the security and performance of proof of work blockchains. In: Proceedings of the 2016 ACM SIGSAC conference on computer and communications security. ACM, pp 3–16Google Scholar
- 21.King S, Nadal S (2012) Ppcoin: peer-to-peer crypto-currency with proof-of-stake. Self-published paper, August 19Google Scholar
- 22.Kokoris-Kogias E, Jovanovic P, Gasser L, Gailly N, Syta E, Ford B (2018) Omniledger: a secure, scale-out, decentralized ledger via sharding. In: 2018 IEEE symposium on security and privacy (SP). IEEE, pp 583–598Google Scholar
- 23.Lewenberg Y, Sompolinsky Y, Zohar A (2015) Inclusive block chain protocols. In: International conference on financial cryptography and data security. Springer, pp 528–547Google Scholar
- 24.Luu L, Narayanan V, Zheng C, Baweja K, Gilbert S, Saxena P (2016) A secure sharding protocol for open blockchains. In: Proceedings of the 2016 ACM SIGSAC conference on computer and communications security. ACM, pp 17–30Google Scholar
- 25.Luu L, Saha R, Parameshwaran I, Saxena P, Hobor A (2015) On power splitting games in distributed computation: The Case of bitcoin pooled mining. In: Computer security foundations symposium (CSF), 2015 IEEE 28th. IEEE, pp 397–411Google Scholar
- 26.Miller A, Juels A, Shi E, Parno B, Katz J (2014) Permacoin: repurposing bitcoin work for data preservation. In: Security and privacy (SP), 2014 IEEE symposium on. IEEE, pp 475–490Google Scholar
- 27.Mukhopadhyay U, Skjellum A, Hambolu O, Oakley J, Yu L, Brooks R, (2016) A brief survey of cryptocurrency systems. In: Proceedings of annual conference on privacy, security and trust (PST). IEEE, pp 745–752Google Scholar
- 28.Nakamoto S (2008) Bitcoin: a peer-to-peer electronic cash system. WhitepaperGoogle Scholar
- 29.Schwartz D, Youngs N, Britto A, et al (2014) The ripple protocol consensus algorithm. Ripple Labs Inc White Paper 5Google Scholar
- 30.Stiglitz JE (2002) Information and the change in the paradigm in economics. Am Econ Rev 92(3):460–501CrossRefGoogle Scholar
- 31.Vishnumurthy V, Chandrakumar S, Sirer EG (2003) Karma: a secure economic framework for peer-to-peer resource sharing. Workshop on economics of peer-to-peer systemsGoogle Scholar
- 32.Vukolić M (2015) The quest for scalable blockchain fabric: proof-of-work vs. BFT replication. In: International workshop on open problems in network security. Springer, pp 112–125Google Scholar
- 33.Wood G (2014) Ethereum: a secure decentralised generalised transaction ledger. Ethereum Proj Yellow Pap 151:1–32Google Scholar
- 34.Zamani M, Movahedi M, Raykova M (2018) Rapidchain: scaling blockchain via full sharding. In: Proceedings of the 2018 ACM SIGSAC conference on computer and communications security, CCS ’18. ACM, pp 931–948. https://doi.org/10.1145/3243734.3243853