A Study on Nine Years of Bitcoin Transactions: Understanding Real-World Behaviors of Bitcoin Miners and Users
Total Page:16
File Type:pdf, Size:1020Kb
A Study on Nine Years of Bitcoin Transactions: Understanding Real-world Behaviors of Bitcoin Miners and Users Binbing Hou∗ Feng Chen LinkedIn Co. Louisiana State University [email protected] [email protected] Abstract—Bitcoin is the world’s first blockchain-based, peer-to- and finalize transactions to make payments. Being designed peer cryptocurrency system. Being tremendously successful, the to support reliable, secure, and trusted transactions between Bitcoin system is designed to support reliable, secure, and trusted untrusted peers, the Bitcoin system provides a high degree transactions between untrusted peers. Since its release in 2009, the Bitcoin system has rapidly grown to an unprecedentedly large of freedom for the participants, allowing them to prioritize scale. However, the real-world behaviors of miners and users in transaction processing, customize transaction implementation, the system and the efficacy of the original Bitcoin system design determine transaction confirmation, etc. In other words, ex- in the field deployment still remain unclear, hindering us from cept following several basic system protocols and rules, the understanding its internals and developing the next-generation participants in the Bitcoin system have a high degree of cryptocurrency system. In this paper, we study the behaviors of Bitcoin miners and flexibility and freedom to make decisions based on their own users and their interactions based on quantitative analysis of more interests. Unfortunately, such “optimizations” could sometimes than nine years of Bitcoin transaction history, from its first release be against the original design purposes and cause unexpected on January 3rd, 2009 to April 30th, 2018. We have analyzed system performance deficiency and even security loopholes, as over 300 million transaction records to study the transactions’ we will discuss later in this paper. processing, confirmation, and implementation. We have obtained several critical findings regarding how the miners and users Due to its great success, the Bitcoin system and its underly- exploit the high degree of freedom provided by the Bitcoin ing blockchain technology have raised widespread interests in system to achieve their own interests. For example, we find that both academia [3], [4], [5], [6], [7], [8], [9], [10], [11] and miners often attempt to maximize their profits even by sacrificing system performance; users could try to speed up the transaction industry [12], [13], [14], [15], [16]. Some public websites, processing by mistakenly trading off security for reduced latency. online documents, and research papers have introduced the Such unexpected behaviors, to some degree, deviate from the Bitcoin system to the public [17]. Statistical data are also original design purposes of the Bitcoin system and could bring reported on Bitcoin usage [18], [19], [20], [21]. Some academic undesirable consequences. Besides revealing several unexpected research has studied the Bitcoin system based on theoretical behaviors of the Bitcoin miners and users in the real world, we have also discussed the associated system implications as well as models [3], [5], [9], [22]. However, the Bitcoin system is a optimization opportunities in the future. large-scale peer-to-peer system composed of over one million miners and millions of users [23], [24], who work individually I. INTRODUCTION and collaboratively together in a distributed manner. It still Bitcoin is the world’s first blockchain-based, peer-to-peer remains a highly interesting but unanswered question—how cryptocurrency system [1]. Since its first release in 2009, the these Bitcoin participants behave and interact with each other acceptance of Bitcoin has been dramatically expanding from in the real-world system deployment? a niche community to the general public worldwide. In the In this paper, we study the behaviors of Bitcoin miners and recent years, its peak market capitalization has surpassed $100 users and particularly investigate the effect of these behaviors billion [2]. in practice. To achieve this, we conduct a quantitative study on Unlike conventional financial systems, which rely on a more than nine years of Bitcoin transaction history (from its trusted third party for financial endorsement and system man- first release on January 3rd, 2009 to April 30th, 2018), which agement, the Bitcoin system is a peer-to-peer electronic cash contains over 300 million transaction records. We analyze the system maintained and used by participants, who play two main transaction records in three aspects, i.e., transaction processing, roles—Miners run the nodes that form the Bitcoin network and confirmation, and implementation, which together reflect how work collaboratively to process transactions, which are written the miners and users use the Bitcoin system to achieve their into a publicly shared database, called blockchain; Users submit interests. It is worth noting that since our purpose is to ∗This work was done while the author was a Ph.D. student at Louisiana investigate how the critical system mechanisms are utilized in State University. real-world deployment, we mostly focus on the behaviors of miners and users observed from the system level via statistical analysis, rather than the behaviors of individual miners and users. Based on our quantitative study, we have obtained several important findings: Fig. 1: An illustration of two Bitcoin transactions TX0 and TX1. • To incentivize the miners for processing transactions, the miners are allowed to collect and compete for transaction The black circle represents the transaction output that has been fees and mining rewards. Our data analysis shows an spent, and the white circles represent the unspent transaction unexpected negative effect—the miners tend to maximize outputs. the obtainable benefits in various means, even at the cost of transaction processing efficiency. For example, system design and implementation of Bitcoin and other similar the current fee-rate-based prioritization policy adopted by cryptocurrency systems. miners is highly biased against low-fee-rate transactions, The rest of the paper is organized as follows. Section II intro- which can cause about 15%-16.6% of the coins in the duces the background. Section III describes our methodology system to be frozen and not spendable. Even worse, to for data analysis. Section IV to VI present our observations win the block competition for obtaining the incentives, on transaction processing, confirmation, and implementation. the miners prefer to create a relatively small block, which Section VII discusses the system implications. Section VIII not only degrades the already-low transaction processing gives the related work. The final section concludes the paper. performance but also undermines the effort of improving system performance by increasing the block size limit. II. BACKGROUND • To guarantee the security of a transaction, users are recommended to wait for a high number of confirmations A. Transaction Implementation to finalize the transaction. However, we find that at least Coin-based transacting model. A Bitcoin transaction rep- 55.22% of all the transactions are completed with at most resents the fund transfer between a sender and a receiver. A five confirmations (although the standard recommendation transaction contains a list of inputs for the sender to spend is six confirmations). More surprisingly, at least 21.27% (send) the previously received funds, and a list of outputs for of all the transactions are zero-confirmation transactions, the receiver to receive funds. Shown in Figure 1 is an illustrative which clearly violate the basic rule for using the Bitcoin example of two transactions TX0 and TX1, each having one system that a transaction should be finalized with at least input and two outputs. Each output is associated with a value one confirmation. This means that a large percentage of indicating the amount of fund and a locking script locking the users are making a risky decision to sacrifice the transact- fund; each input references a previously Unspent Transaction ing security to improve transacting speed by shortening Output (UTXO) and provides an unlocking script to unlock the necessary waiting time for confirmations. and spend the fund. A UTXO is generally called a coin. The • To enable the customization of peer-to-peer transactions, value of a coin is the value associated with the UTXO, and is the users are provided with a scripting language for trans- measured as BTC. One BTC can be sliced into smaller units, action implementation. Our findings are two-fold. First, such as Satoshi (1 BTC = 100 million Satoshis). we find that 99.7% of all the transactions are standardized Transaction scripts. The Bitcoin system provides a unique rather than customized, indicating that most users show scripting language to implement the locking and unlocking very low interests in, or are simply incapable of customiz- scripts. The scripting language supports 256 opcodes. Each ing transactions. It means that the need for customizing opcode is an instruction [25]. A script is composed of a set transactions in the original Bitcoin system design was of opcodes and the related data. To illustrate the scripting likely to be overrated. Second, and more importantly, we mechanism, we take a standard transaction type, P2PKH (Pay- find that such an unnecessary flexibility for transaction to-Public-Key-Hash), as an example: implementation could even lead to erroneous or harmful P2PKH utilizes the Elliptic Curve Digital Signature Algo- transaction