Trading network performance for cash in the bitcoin blockchain
This thesis describes a longitudinal study of Bitcoin, the perhaps most popular blockchain based system today. Public blockchains have emerged as a plausible messaging substrate for applications that require highly reliable communication. However, sending messages over existing blockchains can be cumbersome and costly as miners require payment to establish consensus on the sequence of messages, since the electricity consumption needed to run miners is not negligible. The blockchain protocol requires an always growing size of the information stored in it so its scalability is the biggest problem. For that reason we decided to collect and store data locally in our own data structure, necessary for the analysis, allowing us to save up to 10 times the amount of disk space. Today, systems using the blockchain protocol are emerging, and cryptocurrencies are a glaring example of its implementation. Bitcoin represents the largest cryptocurrency on market, and it has to face a massive scale due to its popularity, having in 2012 about fifty thousands transaction per day and reaching now, in 2017, more than three hundred fifty thousands of transactions approved every day. This massive scale in the system leads to a saturation of the messaging substrate, hence performance issues. In this thesis we will focus also on the Bitcoin network performance, in particular, transaction throughput and latency. From 2009 to 2017 a lot of analyses on the blockchain have been performed, enhancing the considerable change in the block size limit, from 256 bytes to 1MB, as an attempt to overcome scalability problems. Different papers were published, discussing whether changing or not the block size limit. In addition, the Bitcoin price increased from ~0.7$ to more than 7.000$, making the system even more desirable for miners, but causing several complications in the fee and reward mechanism. We evaluate and discuss possible ways to improve this fee mechanism in order to guarantee more revenue for miners along with an user fee optimization. We finally present our own system for longitudinal analysis on the Bitcoin blockchain, BAS. It generates a dataset which contains a significant portion of the whole blockchain, updated on September 2017. We discuss our results and compare them with other evaluations from past years, considering three main key points: scalability, performance and fees/costs. We discuss how scalability affects performance, and how the costs and fees are dependent from them both. We want also to take into consideration the environmental impact of Bitcoin and how it affects the coming of new cryptocurrencies. We evaluate and propose, using machine learning techniques, two different cost prediction models that aim to predict bandwidth for upcoming transactions according the fee they are willing to pay, and the expected revenue for miners according to the time spent mining. These models can be used by application to throttle network traffic to optimize message delivery. We also discuss whether the block size limit should be increased for a higher throughput or not.
ForlagUiT Norges arktiske universitet
UiT The Arctic University of Norway
Følgende lisensfil er knyttet til denne innførselen: