An Incentive Mechanism for Sustainable Blockchain Storage
Abstract
Miners in a blockchain system are suffering from ever-increasing storage costs, which in general have not been properly compensated by the users’ transaction fees. This reduces the incentives for the miners’ participation and may jeopardize the blockchain security. We propose to mitigate this blockchain insufficient fee issue through a Fee and Waiting Tax (FWT) mechanism, which explicitly considers the two types of negative externalities in the system. Specifically, we model the interactions between the protocol designer, users, and miners as a three-stage Stackelberg game. By characterizing the equilibrium of the game, we find that miners neglecting the negative externality in transaction selection cause they are willing to accept insufficient-fee transactions. This leads to the insufficient storage fee issue in the existing protocol. Moreover, our proposed optimal FWT mechanism can motivate users to pay sufficient transaction fees to cover the storage costs and achieve the unconstrained social optimum. Numerical results show that the optimal FWT mechanism guarantees sufficient transaction fees and achieves an average social welfare improvement of 33.73% or more over the existing protocol. Furthermore, the optimal FWT mechanism achieves the maximum fairness index, and performs well even under heterogeneous-storage-cost miners.
Nomenclature
Sets | |
---|---|
Set of users | |
Set of type- (type-) users | |
Set of miners | |
Indices | |
Index of users | |
Index of miners |
Index of -th transaction of user | |
Index of rounds of mining | |
Variables | |
Fee-per-byte choice | |
, | Two fee-per-byte choices |
Waiting tax rate vector | |
Waiting tax that a type- user pays to | |
another type- (type-) user | |
Waiting tax that a type- user pays to | |
another type- (type-) user | |
Waiting tax that user pays to user | |
All users’ transaction generation rates | |
User ’s transaction generation rates | |
User ’s transaction generation rates at and | |
Miner ’s transaction selection in round | |
Parameters | |
Number of users | |
Number of type- (type-) users | |
Number of miners | |
Fee-per-byte of transaction | |
Size of transaction | |
Expected size of transaction | |
Waiting time of transaction | |
User ’s transaction on-chain utility | |
A type- (type-) user’s transaction on-chain | |
utility | |
User’s impatience level | |
A miner’s storage cost per byte | |
Miner ’s mining power | |
Block generation rate | |
Transaction pool in round | |
Payoffs | |
User ’s surplus from | |
User ’s time-average payoff | |
Miner ’s payoff in round | |
Social welfare |
I Introduction
With the booming of cryptocurrencies, its underlying blockchain protocol imposes ever-increasing and significant storage costs on the solid-state storage drives [2] of the operation nodes (often referred to as miners [3]). For example, consider the second-largest cryptocurrency, Ethereum. Its data size grows by nearly 16 folds from 385 gigabytes in Feb. 2017 to 6.0 terabytes in Jan. 2021 [4]. Currently, it costs each miner $2000 per month to store the entire blockchain [2].
On the other hand, the blockchain users’ transaction fee payments to the miners are insufficient to compensate such fast growth and significant storage costs. For example, the Ethereum users paid an average monthly transaction fee of $7.32 million during the first half of 2020 [5], much smaller than $20 million monthly costs of all Ethereum nodes storing the entire blockchain (roughly 10,000 nodes [6] and $2000 monthly cost per node). The gap between the storage cost and transaction fee is filled by block reward, which is designed to gradually decrease over time in many blockchain systems (e.g., Bitcoin [7]).
With insufficient transaction fees, miners will have less incentive to stay in the system, which jeopardizes the blockchain system security. For example, the number of miners storing the Ethereum blockchain has declined 66% since 2018, where the large storage costs could have played a major role [8]. The decline of miners may be catastrophic to the blockchain in the long run, as a less decentralized blockchain will become easier for the malicious miners to launch attacks[9] and more vulnerable to a single point of failure [10]. To maintain a healthy decentralized ecosystem, it is critically important to mitigate the issue of insufficient transaction fees (for covering the storage costs).
Mitigating the insufficient fee issue requires users to pay sufficient transaction fees to the miners. The protocol designer of the blockchain (e.g., the technical community serves as a leading role in protocol design) needs a proper mechanism to motivate this. However, to the best of our knowledge, there lacks enough theoretical mechanism design work aiming at mitigating the insufficient fee issue (although the discussion in the technical community is heated [11]). This motivates us to take the first step in this paper to propose such a mechanism to address the issue.
In this work, we focus on understanding the following two key questions:
-
•
(i) Why are miners willing to accept insufficient-fee transactions in the existing blockchain system?
-
•
(ii) How to design an incentive mechanism to encourage users to pay sufficient transaction fees to the miners?
To answer the above two questions, we propose a three-stage model to characterize the blockchain system. In Stage III, miners select transactions to include in the blockchain, considering the tradeoff between transaction fees and storage costs. In Stage II, users determine the transaction generation rates for different fees, by considering the tradeoff between paying high transaction fees and bearing high transaction waiting time. The transaction waiting time depends on how miners select transactions. In user-miner fee interaction of Stages II and III, there exist two types of negative externalities, i.e., each miner’s transaction selection imposes storage costs on other miners and each user’s transaction generation increases the average waiting time of other users. These two types of negative externalities are the reasons behind miners accepting insufficient-fee transactions and users experiencing excessive waiting time, respectively, in the existing protocol. Motivated by such an observation, we propose a Fee and Waiting Tax (FWT) mechanism for the protocol designer in Stage I. The mechanism determines the transaction fee choices for the users and meanwhile imposes waiting tax on the users, in order to motivate users to pay sufficient fees while achieving social welfare maximization.
Our key results and contributions are as follows:
-
•
Fee mechanism design on blockchain storage: To the best of our knowledge, this is one of the first theoretical studies on the fee mechanism design aiming at mitigating blockchain insufficient storage fee issue. The goal of the mechanism is to ensure the long-term stability and security of blockchain system, as the ever-increasing storage costs become a significant burden to miners and reduce their incentives to participate in the blockchain operation.
-
•
Three-Stage Interaction Model: We propose a three-stage game-theoretical model to characterize the interactions among the protocol designer, users, and miners. The analysis of the model is analytically challenging as the user-miner fee interaction is a two-stage queueing game. Specifically, the state transition of the queue system is stochastically affected by the decision of all users and miners, and each miner faces an integer programming problem which is game-theoretically coupled with other miners’ strategies. Nevertheless, we can derive the subgame perfect equilibrium of the model in closed form.
-
•
Explaining the deficiency of the existing protocol: Through the analysis of three-party interaction, we find that under the existing protocol each miner is unaware of the negative externality that it imposes on other miners when making transaction selections. This causes the miners to accept transactions with fees not enough to cover the overall system storage costs.
-
•
Proposing a mechanism to generate sufficient fee and achieve unconstrained social optimum: We propose an FWT mechanism motivated by two types of negative externalities in the system. We show that the optimal FWT mechanism incentivizes users to pay sufficient transaction fees for the overall system storage costs while achieving the unconstrained social optimum. Surprisingly, we also find that users who impose lower waiting time costs on other users may pay a higher waiting tax under the optimal FWT mechanism, as the optimal FWT mechanism encourages other users to generate more transactions to maximize the social welfare.
-
•
Ethereum-based numerical results: We conduct the numerical analysis based on practical Ethereum blockchain environment. Compared with the existing protocol, our proposed optimal FWT mechanism not only produces sufficient transaction fees but also achieves an average social welfare improvement of 33.73% or more. Moreover, the optimal FWT mechanism achieves the maximum fairness index. Even though we relax the assumption of homogeneous-storage-cost miners, the optimal FWT mechanism still achieves an average social welfare improvement of 61.49% over the existing protocol.
The rest of the paper is organized as follows. Section II reviews the related literature. Section III introduces the system model. We characterize the mathematical details and derive the closed-form subgame perfect equilibrium of the model’s three stages in Sections IV,V, and VI, respectively. We evaluate the system performance in Section VII. We conclude this paper in Section VIII.
II Literature Review
Our work studies the mechanism design on the user-miner fee interaction regarding blockchain storage. Hence, we review the previous literature from two aspects, i.e., analysis of the fee interaction scheme in the existing blockchain and new fee mechanism design in blockchain.
II-A Analysis of Fee Interaction Scheme in Existing Blockchain
The first group of literature (e.g., [12, 13, 14, 15, 16]) analyzing how users set transaction fees regarding the transaction waiting time in the existing blockchain. Huberman et al. in [12] found that the desire to shorten the transaction waiting time is the primary reason for users to pay transaction fees. Following this work, several other papers analyzed how waiting time affects users’ transaction fees. Easley et al. in [13] showed that as the average transaction waiting time increases, the ratio of users who pay fees also increases. Li et al. in [14] analyzed the case where users choose between paying a fixed-level fee or not paying the fee. They revealed that an excessive waiting time would discourage low-waiting-time-cost users from paying transaction fees. Several further studies in [15, 16] investigated the factors in blockchain that may impact the waiting time. These works proved that both the block production time and the block propagation time affect the waiting time (hence the transaction fee). However, the previous works did not consider how miners tradeoff between the transaction fees and storage costs. We consider a general model where each miner chooses the transactions considering the tradeoff between the transaction fees and storage costs. This consideration significantly complicates the analysis.
II-B New Fee Mechanism Design in Blockchain
The second group of literature focused on transaction fee market design (e.g., [17, 18, 19, 20, 21]) with different goals. Vitalik et al. in [17] proposed a burning base fee mechanism to make the fee prediction easy for the users. Some works aimed to improve the system performance. Hu et al. in [18] proposed a correlated-equilibrium-based fee mechanism to achieve both the individual and global optimum. Ai et al. in [19] applied the double auction to improve the fairness of the system. The literature [20] used the second prize auction to reduce the variance of transaction fees. Lavi et al. in [21] showed that the monopolistic auction is resilient to market manipulation. Overall, the current work on the fee mechanism design did not consider two types of negative externalities in miners’ transaction selections and users’ transaction generations. Our work is one of the first analytical studies to explicitly considers the mitigation of two types of negative externalities in the blockchain system.
III System Model
In this section, we describe the system model of the blockchain. We first introduce the high-level operation process of the blockchain system in Section III-A and then discuss our proposed FWT mechanism in Section III-B. Finally we propose a three-stage Stackelberg game to characterize the blockchain system in Section III-C.
III-A Blockchain Operation
In this subsection, we briefly introduce the operation process of blockchain.
Fig. 1 illustrates the typical blockchain operation [22]. The protocol designer first determines the mechanism for users and miners. Then the users generate transactions and choose the transaction fees. Finally, miners select transactions and include them in the blockchain through mining. The details are as follows:
-
1.
Protocol designer’s mechanism design: The protocol designer determines the consensus protocol for the system. The blockchain online community usually collectively acts as the protocol designer. For example, in 2018, the Ethereum online community111https://www.reddit.com/r/ethereum/ proposed Ethereum Improvement Proposal 1234 to decrease block reward by 33%.
-
2.
Users’ transaction generation: A user generates two transactions (tx and tx ) and assigns the fee-per-byte value for each transaction.222Users often set the fee-per-byte rather than the transaction fee in Bitcoin [23]. The transaction fee of a transaction satisfies:
transaction fee = transaction size fee-per-byte. The transaction fee serves as an incentive for miners to include the transaction into a future block.333A block is a container of transactions. In Bitcoin [7], a block contains the cryptographic hash of the previous block, a time-stamp, and the data [10]. Each generated transaction enters the transaction pool (tx pool) and waits for miners to include it in the blockchain.
-
3.
Miners’ mining: The process of mining a new block (also referred to as one round of mining) contains several steps, as follows:
-
•
First, each miner selects a set of transactions from the transaction pool (e.g., miner selects both tx and tx ).
-
•
Next, miners compete to solve a cryptographic puzzle. Once a miner solves the puzzle (being first among all miners), he will pack his selected transactions, the puzzle solution, along with some auxiliary data into a block. The miner who produces such a new block can get the fees from his selected transactions (e.g., miner gets fees of tx and tx ) and the block reward (for generating this new block) as a bonus. The transactions in the new block are included in the blockchain.
-
•
Finally, the miner who produces the new block broadcasts the block information to his neighbors in the network, and all miners need to update the local storage to include the new block.
-
•
Next, we will introduce our proposed Fee and Waiting Tax (FWT) mechanism for the protocol designer.
III-B FWT Mechanism
There are two types of negative externalities in the existing blockchain protocol, i.e., each miner’s transaction selection imposes storage costs on other miners and each user’s transaction generation increases the average waiting time of other users. These two types of negative externalities are why miners accept insufficient-fee transactions and users experience excessive waiting time, respectively, in the existing protocol. Motivated by the negative externalities, we propose the FWT mechanism as follows:
-
1.
Fee choices: The FWT mechanism offers several fee-per-byte choices for users. Users can choose the transaction generation rates for different fee-per-byte choices. The protocol designer properly optimizes the fee-per-byte choices such that the users pay sufficient fees to cover the total system storage costs.
-
2.
Waiting tax: The FWT mechanism imposes a waiting tax on each user based on the negative impact that he generates on others, so that the user will be more conservative in generating transactions.
Next, we will present the FWT mechanism in more detail.
III-C Three-stage Stackelberg Game
We model the interactions among the protocol designer, users, and miners as a three-stage Stackelberg game, as illustrated in Fig. 2.
In Stage I, the protocol designer ensures users to pay sufficient fees by setting fee-per-byte choices . Here we consider the protocol designer offers users two fee-per-byte choices. The binary choice is a simplification, but it can show users’ tradeoff between transaction fees and waiting time. Moreover, the protocol designer maximizes the social welfare (a common objective in the literature [24][25]) by setting the waiting tax rate vector . The waiting tax rate vector specifies each user’s tax payment to all other users, compensating the waiting costs that the user imposes on others.
In Stage II, each user tradeoffs between paying high transaction fees and bearing long time waiting for transaction inclusion. More specifically, the user chooses the transaction generation rates , which denote the transaction generation rates corresponding to the high and low fee-per-byte choices (i.e., and ), respectively. Such a differentiated generation rate and fee-per-byte choice provide flexibility to meet the requirements of different applications.444For example, in Ethereum, all top-3 users who pay most transaction fees generate transactions with significantly different gas prices (10 times) for different applications simultaneously [26]. Moreover, the waiting tax rate vector assigns different taxes to different types of users (the details are in Section V-A) and each user pays the waiting tax to all the others accordingly.
In Stage III, mining proceeds continuously over time. Without loss of generality, we examine the round of mining, during which miners mine the block . The length of each round (the time between the successful mining of block and ) follows an exponential distribution.555The exponential distribution is confirmed by Bitcoin data analysis [27] and is also commonly done in blockchain analysis [13][28]. We further assume that the block propagation delay is zero,666This is a valid assumption because the average block propagation delay in Bitcoin is roughly 2% of block interval time [29]. i.e., all miners receive the new block as soon as some miner successfully mines such a block. When determining what to include in a block, each miner wants to achieve the proper balance between receiving transaction fees and bearing storage costs. The timeline of round is as follows:
-
1.
First, each miner selects a set of transactions from the transaction pool to include in the new block. The transaction pool is the set of all transactions waiting to be included in a block.
-
2.
During round , users may generate transactions at any time. The newly generated transactions enter the transaction pool and each miner can change his transaction selection .777The reason is that the mining process is memoryless and the success rate of finding a block is independent of the included transaction [27]. We denote the transaction pool just before miners find block as such that and notice that finding a new block is a stochastic event.
-
3.
When a miner finds block , the round ends. The miner who finds the block receives the transaction fees from the transactions included in his proposed block. All the miners store the block and bear the costs of storage individually. The transaction pool updates by removing those transactions that have been included in the block .
Fig. 3 illustrates the above mining process with the case of 2 users and 2 miners. For multiple transactions generated by user , we will differentiate them in the subscript , i.e., .
-
1.
First, there are two transactions and in transaction pool in Fig. 3. Miner 1 and 2 adopt strategies and , respectively.
-
2.
During round , user 2 generates a new transaction and it enters transaction pool. Miner 1’s strategy remains the same while miner 2 changes his strategy to . In this example, .
-
3.
Miner 2 finds a block and round ends. Miner 2 includes in blockchain and transaction pool deletes .
In the next three sections, we will introduce the mathematical detail of each stage of the model and analyze it through backward induction.
IV Stage III: Transaction Selection Equilibrium of Miners
In this section, we will characterize how miners select transactions in Stage III. We first model miners’ transaction selections in round of mining as a game in Section IV-A, then we characterize the Nash equilibrium of the game in Section IV-B.
IV-A Model of Miners Transaction Selection in Round
Although miners will interact with each other over many rounds of mining, we will focus on a particular round of mining, during which each miner selects a set of transactions to maximize his own payoffs.888Such a myopic setting is widely used in blockchain analysis [28][30]. It is a typical setting in dynamic games with many players, where each player’s influence is small. We formulate the miners’ interaction as a non-cooperative game.
IV-A1 Miners
We consider the set of miners as .999We analyze the system in a quasi-static state [13][28][31]. That is to say, there are no users or miners joining or leaving the system. The normalized mining power (e.g., computing power in proof of work) of miner is , which represents the probability of miner successfully finding a block. We have .
IV-A2 Miners’ strategies
Each miner selects a set of transactions from the transaction pool . For the ease of analysis, we assume that a block can contain at most one transaction.101010This assumption characterizes the reality of block size limit, which has been adopted in [13][14]. Blockchain platform IOTA adopts the one transaction per block rule [32]. Considering multiple transactions per block means that each miner’s strategy space becomes multi-dimensional, making the problem much more challenging to solve. We will relax this assumption in future work. Thus miner ’s strategy satisfies . As transactions vary in both sizes and fees, we adopt a benign assumption where each miner either selects the highest fee-per-byte transaction from the transaction pool or selects no transaction, which is consistent with the empirical studies [23][33]. Existing fee recommendation softwares also follow this rule [34][35].
To simplify the description, we use (or ) to represent that miner selects (or no transaction) in round .
Miners’ payoff functions: Miner ’s payoff depends on both the transaction fee and storage cost.111111We do not consider the block reward and the cost of running the mining machine since they are not affected by each miner’s transaction selection. Besides, the transaction fees are the key to cover blockchain storage costs as the block reward gradually shrinks.
-
•
Transaction fee: For a transaction , its transaction fee is the product of the transaction size and fee-per-byte, i.e., . Only the miner who successfully finds a block receives the transaction fees from his selection. Thus miner will get the total transaction fees of with probability .
-
•
Storage cost: For analysis, we assume that all miners have homogeneous storage cost of per byte, representing that miners use similar storage technology. We will consider the impact of the heterogeneous storage costs numerically in Section VII-C. Storing a transaction with size imposes a storage cost to a miner. If any miner selects transaction (i.e., ) and successfully finds a block (with probability ), all miners need to store that block and bear the storage costs for the transaction that miner selects [3]. Overall, miner will bear the storage costs of
(1) in round ,121212We neglect the storage costs of non-transaction data since it is very small. For example, on June 2nd, 2020, the average block size of Bitcoin is 1.284 MB and non-transaction data in a block takes up less than 1 KB. https://www.blockchain.com/charts/avg-block-size. where represents the strategies of all the miners other than . Miner ’s storage costs in (1) reveals the negative externality in transaction selection: when a miner selects a transaction and finds a block, it imposes storage costs to all the other miners.
Combining the transaction fee and storage cost, miner ’s payoff in round is:
(2) |
IV-A3 Game formulation
We formulate the round of mining as a non-cooperative game, where miners simultaneously select the transactions (to be included in his block) to maximize their own payoffs.
Game 1 (Stage III: Transaction Selection Game in round ).
In Stage III, Transaction Selection Game in round is a tuple defined by:
-
•
Players: The set of miners .
-
•
Strategies: Each miner selects a set of transactions. The strategy profiles of all the miners is . The set of feasible strategy profile of all miners is .
-
•
Payoffs: The vector contains all miners’ payoffs as defined in (2).
In Game 1, each miner tradeoffs between the transaction fee and storage cost to maximize his payoff, considering the strategies of other miners. Specifically, on the one hand, miner gets high revenue for selecting a high-fee transaction and finding a block. Meanwhile, for the highest-fee-per-byte transaction, if its fee is lower than its storage cost, a miner may still select it if all the other miners select it and he will eventually bear the storage cost of it.
IV-B Nash Equilibrium Analysis
We first define the Nash equilibrium in Definition 1.
Definition 1 (Nash Equilibrium).
Given the fee-per-byte choices , a strategy profile constitutes a Nash equilibrium in Game 1 if
(3) | ||||
We define some strategy-related notation for the ease of presentation. When the transaction pool in round is not empty, the set of all the highest-fee-per-byte transactions in the transaction pool as Within the set , we define the transaction with the earliest generation time is
(4) |
where is the generation time of transaction . Then, we summarize the Nash equilibrium as follows.
Theorem 1 (Miners’ Equilibrium in Stage III).
The strategy profile constitutes a Nash equilibrium in round , where
Due to the space limit, we leave the proofs of all mathematical results in the online appendix [36].
Corollary 1 reveals an interesting observation from Theorem 1.
Corollary 1.
Each miner only accepts if its fee-per-byte is higher than a miner’s storage cost per byte, i.e., . However, a miner’s storage cost per byte is insufficient to cover all miners’ total storage cost per byte, i.e., .
Corollary 1 mathematically reveals the negative externality in transaction selection introduced in Section IV-A. Each miner only considers his own storage cost when selecting the transaction, without considering the negative impact on all other miners in the system. Hence even if the transaction fee can cover the storage cost of a single miner, it can be far from enough to cover the total storage cost of system. As miners accept insufficient-fee transactions, users may not pay enough transaction fees to cover all miners’ total storage costs, causing the storage sustainability issue.
V Stage II: Transaction Generation Equilibrium of Users
In this section, we will characterize how users generate transactions in Stage II. We first formulate users’ transaction generation as a game in Section V-A, then we characterize the Nash equilibrium of the game in Section V-B.
V-A Model of Users Transaction Generation
In Stage II, users set the transaction generation rates to maximize their own payoffs.
V-A1 Users’ strategies
We denote the set of users as . Given two fee-per-byte choices and offered by the protocol designer, each user generates transactions at each choice following a Poisson process. The strategy of user is to set the transaction generation rates , where and are the rates of user generating transactions at and , respectively, satisfying the following constraints:
(5) |
where is the system average block generation rate and each user’s maximum transaction generation rate is . Constraint (5) ensures that it is feasible to include all generated transactions from all users in the blockchain (if the miners choose to do so in Stage III).
V-A2 Transaction waiting time
Here we define the waiting time of any transaction as the time lapse between the generation time and the on-chain time.
-
•
Generation time of transaction is denoted as .
-
•
On-chain time: When a miner selects transaction and finds a block in round , then round ends, and transaction is included in the blockchain. Thus, round ’s ending time is the transaction on-chain time, i.e.,
(6) -
•
Waiting time is the difference between the on-chain time minus and the generation time, i.e., . Waiting time is a random variable as the block generation is stochastic. The rate of transactions entering the transaction pool affects the waiting time , thus it is a function of all users transaction generation rates, i.e., . We will compute the expectation of in Lemma 1 of Section V-B.
Negative externality in transaction generation: When user generates a transaction and miners include it in the blockchain, other transactions in the transaction pool have to wait. Thus, user ’s transactions increase the average waiting time of all the other users’ transactions. If a user maximizes his own payoff without considering the negative externality, all the other users will experience excessive waiting time. This motivates us to propose the waiting tax to let each user internalize such a negative externality.
V-A3 User ’s surplus obtained from one transaction
User ’s surplus obtained from one transaction depends on whether is included in the blockchain.
-
•
If is included in the blockchain: The surplus depends on the on-chain utility from one transaction, transaction fee, waiting time cost, and waiting tax.
-
–
User ’s on-chain utility from : When is included in the blockchain, user will obtain utility of . For example, a user gets a certain level of utility when successfully purchasing a kitty in Ethereum-based game cryptokitties. To model the users’ heterogeneity of utilities, we consider two user types: with high-utility users (type-) and low-utility users (type-).131313Two applications can capture heterogeneous users set transaction fee to compete for shorter waiting time. Thus, user ’s on-chain utility from one transaction is
(7) where . Our model generalizes the homogeneous utility model in [13] and [14].
-
–
Transaction fee of : User pays the transaction fee to the miner who includes in the blockchain. We model the size of any transaction follows an i.i.d. distribution with the expectation of . The fee-per-byte belongs to the protocol designer’s fee-per-byte choices, i.e., .
-
–
Waiting time cost of : The transaction waiting time imposes a cost to user , which we assume to be a linear function with the impatience coefficient , i.e., . A higher means users are less patient.
-
–
Waiting tax of : Since user ’s transaction generation increases the expected transaction waiting time of any other user , we introduce the waiting tax to internalize this negative externality. More specifically, user pays user the amount of to compensate the waiting costs imposes. Depending on the types of users and , the possible waiting tax has four different values :
(8)
To sum up, user ’s surplus when is included in the blockchain is
(9) -
–
-
•
If is not included in the blockchain (i.e., not in any block), user will not get the transaction on-chain utility , and he will not pay the fee or the waiting tax. However, user still experiences the (possibly infinite) waiting time to know that the transaction will not be included. In this case, user ’s surplus from transaction is
(10)
To simplify the formulation, we define the indicator function to indicate whether is included in the blockchain as follows
(11) |
Hence user ’s surplus obtained from can be written as
(12) | ||||
V-A4 Users’ time-average payoff
User ’s payoff is the summation of the surplus from all his transactions and the waiting tax paid to him by other users. For user , we denote the number of all his generated transactions in time interval as . His time-average payoff is
(13) | ||||
where is user ’s expected surplus from transaction . The expectation is taken in terms of random variables transaction size and waiting time .
V-A5 Game formulation
We formulate users’ transaction generation as a non-cooperative game, where users set transaction generation rates simultaneously to maximize their own payoffs.141414Here we assume that each user does not consider the influence of his strategic decision on other users (i.e., each user is a price taker). This assumption holds for a blockchain system with many users.
Game 2 (Stage II: Transaction Generation Game).
In Stage II, Transaction Generation Game is a tuple defined by:
-
•
Players: The set of users .
-
•
Strategies: Each user sets transaction generation rate , where the strategy space is . The strategy profiles of all the users is and the set of all feasible strategy profiles is .
-
•
Payoffs: The vector contains all users’ payoffs as defined in (13).
In Game 2, each user faces a tradeoff between paying a high fee and suffering a high transaction waiting time. Since miners prefer to include transactions with high fees, user will experience a lower average waiting time by generating more high-fee transactions. However, if paying a high fee is too costly, user would be better off by generating more low-fee transactions and bearing a higher average waiting time.
V-B Nash Equilibrium Analysis
Based on the equilibrium of Stage III, we analyze the equilibrium of Stage II in this subsection. We first compute the transaction waiting time, then we present the users’ equilibrium in Stage II.
V-B1 Transaction waiting time
According to miners’ equilibrium strategies in Stage III, the process of transaction arriving (i.e., users generating transactions) and leaving (i.e., miners including transactions in blockchain) is a two-class M/M/1 queue [37], where transactions with higher fee-per-byte has priority over transactions with lower fee-per-byte.
Based on the expected waiting time of two-class M/M/1 queue [37], we summarize user ’s time-average transaction waiting time in following Lemma 1.
Lemma 1 (Users’ Transaction Waiting Time).
The time-average transaction waiting time of each user is in (14).
For (14a) and (14b), they correspond to the case where miners (eventually) choose to include the transaction as the transaction’s fee-per-byte is higher than . For (14c) and (14d), they correspond to the case where the transaction waiting time is infinity, as no miner chooses to include the transaction with fee-per-byte strictly lower than .
V-B2 Users’ Equilibrium in Stage II
Here we characterize the users’ equilibrium strategies. Similar to prior blockchain literature [13][1], we consider the symmetric Nash equilibrium (SNE) where the same type of users adopt the same strategy.
For the ease of exposition, we first define some terminology related to the users’ equilibrium.151515There can be other SNE but we pay attention to the Pareto-dominant one, where each user achieves no smaller payoff compared to other possible SNEs [13][38].
Definition 2 (Stage II Equilibrium Types).
-
1.
At a -SNE, all users only generate transactions with the fee-per-byte .
-
2.
At a -SNE, all users only generate transactions with the fee-per-byte .
At an equilibrium, each user ’s net transaction utility plays an important role in his transaction generation rate, which defined as follows
(15) |
where and are the set of types and users, respectively.
(18) |
(19) |
Notice that may not be larger than due to the waiting time tax rate vector . We define type- as the bigger net transaction utility user type (i.e., ) and type- as the smaller net transaction utility user type (i.e., ). We illustrate the connections between types and as well as types and in Table I.
If | ||
---|---|---|
If |
Next, we characterize the types and users’ equilibrium strategies at the -SNE and -SNE in Proposition 1.
Proposition 1 (Stage II Equilibrium Strategy).
Consider . The following strategy profile constitutes a -SNE, where , , and the intermediate variables and are shown in (16)-(19), respectively.
Here we explain the intuition of the -SNE, where . When both and are small (i.e., (16a) and (17a)), users do not generate transactions. When is large but is small (i.e., (16b) and (17b)), only type- users generate transactions. When both and are large (i.e., (16c) and (17c)), all users generate transactions.
Based on the equilibrium characterized in Proposition 1, we summarize users’ equilibria in Theorem 2.
Theorem 2 (Users’ Equilibria in Stage II).
-
•
If , then there exists a -SNE, where is shown in (20).
-
•
If , then there exist a -SNE.
(20) | ||||
Fig. 4 illustrates two SNEs in Theorem 2 against fee-per-byte choices , which reflects users’ tradeoff between paying low fee and bearing low waiting time. When is small, then and a -SNE exists. In other words, all users choose high fee-per-byte , because is not high enough and hence the consideration of low waiting time dominates the consideration of paying low fee. As increases such that , the -SNE emerges where all users choose low fee-per-byte . This is because when is high, the consideration of paying low fee dominates the consideration of low waiting time.
VI Stage I: Optimal FWT Mechanism of Protocol Designer
In this section, we will characterize the protocol designer’s optimal FWT mechanism in Stage I. We first formulate the FWT mechanism design as an optimization problem in Section VI-A, then we compute its optimal solution in Section VI-B.
VI-A FWT Mechanism Design of Protocol Designer
In Stage I, the protocol designer optimizes the FWT mechanism to encourage users to pay sufficient fees while maximizing the social welfare.
VI-A1 Decision variables
The protocol designer’s decision variables are the fee-per-byte choices (with ) and the waiting tax rate vector . The fee-per-byte choices encourages users to pay sufficient transaction fees to mitigate the negative externality in transaction selection in Stage III. The waiting tax rate vector let each user internalize the waiting time costs imposed on others, dealing with the negative externality in transaction generation in Stage II.
VI-A2 Sufficient fee condition
For any user with a positive transaction generation rate (i.e., ), the FWT mechanism aims at inducing an average fee-per-byte value that can cover the total storage cost per byte of all miners, that is
(21) |
VI-A3 Social welfare
The social welfare equals the sum of users’ and miners’ time-average payoffs.
Based on miner ’s payoff in round in (2), the miner ’s time-average payoffs as
(22) |
where is the strategy profile of all miners in Stage III and is the number of rounds completed in time interval .
The social welfare is as follows
(23) |
VI-A4 FWT mechanism design
We formulate the FWT mechanism design problem in (24), which aims at maximizing the social welfare subject to sufficient transaction fee covering the storage cost.
(24) | ||||
s.t. | ||||
var. |
It is very challenging to solve Problem (24), since it is coupled with the strategies of users in Stage II and miners in Stage III. Nevertheless, we can exploit the special property of the social welfare to derive the optimal solution in closed form.
VI-B Optimal Solution of FWT Mechanism Design
In this subsection, we will solve Problem (24) and discuss the property of its optimal solution. We will also analyze the effect of the waiting tax rate vector under the optimal FWT mechanism.
VI-B1 Optimal solution of FWT mechanism design problem
The optimal solution to Problem (24) is as follows.
Theorem 3 (Optimal Solution of FWT Mechanism Design Problem).
The optimal FWT mechanism corresponds to the optimal solution of Problem (24) as follows:
-
•
If , then
-
–
the fee-per-byte choices are ,
-
–
the waiting tax rate vector satisfies the following conditions:
-
–
-
•
If , then
-
–
the fee-per-byte choices are ,
-
–
the waiting tax rate vector satisfies the conditions in (26) and the intermediate variables and are shown in (27) and (28), respectively.
-
–
Next we discuss the insights of Theorem 3. If , both types of users have low transaction on-chain utilities (i.e., ), which are insufficient to cover a transaction’s total storage costs (i.e., ) plus waiting time costs (i.e., ). Thus the optimal FWT mechanism prevents both types of users from generating any transactions. For any type- user (or type- user, respectively), the sum of his waiting tax payment is 0 as shown in (25a) (or (25b), respectively), due to no transaction generation.
If , type- users have high transaction on-chain utility. Thus the optimal FWT mechanism allows users to generate transactions. The protocol designer sets the low fee-per-byte to guarantee the sufficient fee condition. Since users will generate transactions at SNE, the sum of a type- user’s (or type- user’s, respectively) waiting tax payment is non-zero as shown in (26a) (or (26b), respectively).
VI-B2 Property of optimal FWT mechanism
To characterize the property of the optimal FWT mechanism, we first establish the benchmark of unconstrained social optimum, which is the maximum social welfare that can be achieved without considering the sufficient fee condition (21), i.e., the maximum value of the objective function of Problem (29).
(29) | ||||
s.t. | ||||
var. |
Then we characterize the property of the optimal FWT mechanism in Proposition 2.
Proposition 2 (Guarantee on Unconstrained Social Optimum).
The maximum social welfare achieved by the optimal FWT mechanism equals the unconstrained social optimum.
VI-B3 Effect of waiting tax rate vector
Finally, we analyze the effect of the waiting tax rate vector of the optimal FWT mechanism. We define each user ’s total waiting tax rate based on the waiting tax rate vector defined in Theorem 3, i.e.,
(30) |
The total waiting tax rate is the sum of a user’s waiting tax payment to all other users for one transaction. We compare the total waiting tax rates of two types of users in Corollary 2.
Corollary 2.
Under the optimal FWT mechanism, if , then for any type-H user and type-L user , we have
-
•
if , then ,
-
•
if , then ,
where and and are in (27) and (28), respectively.
Corollary 2 leads to an interesting observation. When , the protocol designer can assign a higher total waiting tax rate for a type- user (i.e., ), despite such a user generates fewer transactions and imposes lower waiting time costs on others than a type- user . The reason is as follows. Without the waiting tax, when is close to , a type- user’s transaction generation rate will be close to a type- user’s. However, as , the optimal FWT mechanism encourages a type- user to generate much more transactions than a type- user to maximize the social welfare. Thus, the mechanism assigns a higher total waiting tax rate to force a type- user to generate fewer transactions to reach the social optimum.
VII Performance Evaluations
In this section, we evaluate the performance of the optimal FWT mechanism (FWT) by comparing it with the existing blockchain protocol (Existing). We study the impact of various system parameters on the social welfare, fee-per-byte payment, user’s payoff, and fairness on both schemes. We further analyze the impact of heterogeneity of miners’ storage costs. We summarize the simulation parameters in Table II and we set the blockchain-related parameters based on Ethereum.
Blockchain throughput [6] | |
---|---|
The number of miners [6] | |
Average transaction size [39] | bytes |
Storage cost per byte [40] | |
(USD/byte) | |
Ratio of transaction on-chain utilities |
VII-A Fee-per-byte and Social Welfare
In this subsection, we study how users’ parameters (impatience level and transaction on-chain utility) affect both schemes in terms of fee-per-byte and social welfare. For users’ parameters, we set the type- user’s transaction on-chain utility as and the user’s impatience level as . Under such a setting, the daily number of transactions of the existing protocol is between 0.95 to 1.25 millions. This range aligns well with the range of daily number of transactions in Oct. 2020 that is between 0.96 to 1.25 millions.171717https://etherscan.io/chart/tx
VII-A1 Fee-per-byte
Fig. 5 (a) and (b) illustrate the impact of impatience level and transaction on-chain utility on the average fee-per-byte , respectively.
-
•
Storage cost in this figure corresponds to all miners’ total storage cost per byte (i.e., ) and serves as a benchmark for the other two curves. Under the optimal FWT mechanism (FWT in the figure), we observe that the average fee-per-byte can cover the total storage cost, satisfying the sufficient fee condition. However, under the existing protocol (Existing in the figure), the sufficient fee condition does not hold when . Moreover, we make an interesting observation as follows:
Observation 1.
As the impatience level increases, users pay lower average fee-per-byte in the existing protocol.
We explain the reason behind Observation 1 as follows. When the users become more impatient, they generate fewer transactions to reduce waiting costs. Fewer transactions lead to lower incentives to pay high transaction fees and compete for short waiting time.
-
•
The correspondences of curves and the legend are the same as Fig. 5(a). Under the optimal FWT mechanism, the system always satisfies the sufficient fee condition. Under the existing protocol, users increase the average fee-per-byte with and the sufficient fee condition only holds when . Here we explain the reason for the fee-per-byte increase. As the user’s on-chain utility increases, users have higher incentives to pay high transaction fees and compete for short waiting time.




VII-A2 Social welfare
Fig. 6 (a) and (b) illustrate the impact of impatience level and transaction on-chain utility on the social welfare , respectively.
-
•
Fig. 6(a): On the left axis, two red curves plot the social welfares of the optimal FWT mechanism (FWT in the figure) and the existing protocol (Existing in the figure). We notice that the social welfares of both schemes decrease in , due to the increased waiting time cost with the increasing impatience level . On the right axis, the blue curve marked in stars plots the optimal FWT mechanism’s social welfare improvement over the existing protocol (Improvement in the figure). We observe that the social welfare improvement increases in with an average value of 33.73%. The reason for such an improvement is that the optimal FWT mechanism addresses the negative externality in transaction generation and reduces the transaction waiting time. As the waiting time cost increases with , the consideration of the negative externality brings more social welfare improvement.
-
•
Fig. 6(b): The correspondences of curves and the axes are similar as Fig. 6(a). On the left axis, we observe that the social welfares of both schemes increase in , due to the increased on-chain utility. On the right axis, the social welfare improvement decreases in with an average value of 45.68%. The reason for such a decrease in improvement is as follows. In the existing protocol, the average fee-per-byte increases with (i.e., Fig 5(b)), preventing users from generating too many transactions and causing excessive waiting time costs on others.
Based on Figs. 5 and 6, we have the following observation:
Observation 2.
The optimal FWT mechanism achieves average social welfare of 33.73% or more compared with the existing blockchain protocol while guarantees that users pay sufficient fees.
Observation 2 demonstrates that the optimal FWT mechanism dominates existing protocol in both social welfare and sufficient fees for covering storage costs.
VII-B User’s Payoff and Fairness


In this subsection, we analyze the impact of the numbers of users on the user’s payoff and fairness. The range of is set based on minimum and maximum of daily active users of Ethereum in 2020, i.e., . Users’ parameters are set as and .
In Fig. 7, we plot the type- and type- users’ payoffs under two schemes against . Users’ payoffs decrease in under both schemes, as more users compete for short waiting time and each user will generate fewer transactions. Moreover, the payoff difference between a type- user and a type- user is lower under the optimal FWT mechanism than under the existing protocol. This is because type- users compensate type- users by the waiting tax.
In Fig. 8, we study the users’ payoffs in terms of Jain’s fairness index [41] (defined as ) again . The index measures the fairness level of all users’ payoffs. We makes the following observation:
Observation 3.
The optimal FWT mechanism achieves the maximum fairness index of 1, which is higher than the existing protocol.
Here we explain the reason for achieving the maximum fairness index. Under the optimal FWT mechanism, each user’s payment on the waiting tax perfectly compensates others for the waiting time costs he imposes. The tax can balance users’ payoffs despite users have heterogeneous on-chain utilities.
VII-C Impact of Heterogeneous Storage Costs


So far, we have studied the blockchain mechanism design under homogeneous-storage-cost miners. However, miners’ storage costs can be heterogeneous (e.g., Ethereum offers different data storage modes consuming different amounts of storage), which will affect the performance of the mechanism. In this subsection, we study the impact of such heterogeneity on our FWT mechanism and the existing blockchain protocol.
We conduct the numerical analysis to analyze the impact of heterogeneous storage costs. According to the two storage modes in Ethereum, we assume that half of the miners have high storage costs while the other half have low storage costs, denoted by and per byte, respectively. We analyze the storage costs ratio within the range of based on the actual settings of two Ethereum storage modes.181818Ethereum mainly offers full node synchronization mode and archival mode. On Jan. 2021, full node synchronization mode requires 610 GB of disk space while an archival node requires 6.0 TB. We choose the low storage cost per byte based on the price of SSD disk per byte, i.e., (USD/byte) [40]. Users’ parameters are set as and .
For the FWT mechanism design problem (24), we need to reformulate it considering different storage costs, i.e.,
(31) | ||||
s.t. | ||||
var. |
The only difference between Problems (31) and (24) is the constraint of sufficient fee condition, due to the difference of storage costs.
To simplify Problem (31), we only consider the feasible region , such that any point within the region always satisfies the constraint. Within the region, we prove that each miner’s equilibrium strategy is the same as Theorem 1, since the fee-per-byte choices are sufficiently high and no miners reject any transaction. Thus, users’ equilibrium within the region is also the same as Theorem 2. Finally, we can solve Problem (31) just like we solve Problem (24). The details are in [36].
In Fig. 9, we illustrate the impact of storage costs’ heterogeneity on the average fee-per-byte and social welfare .
-
•
Fig. 9(a): Storage cost in this figure shows all miners’ total storage cost per byte (i.e., ) and serves as a benchmark for the other two curves. Under the optimal FWT mechanism, the average fee-per-byte can cover the total storage cost, satisfying the sufficient fee condition. However, in the existing protocol, the average fee-per-byte does not change with and the sufficient fee condition does not hold when . The reason for the unchanged fee-per-byte is as follows. We consider low-fee transactions that low-storage-cost miners admit. If high-storage-cost miners do not admit those transactions, they may bear the storage costs and get no fee. Thus, they prefer to admit, such that they bear the storage costs but get some fees. Then users do not need to pay a higher fee-per-byte as increases.
-
•
Fig. 9(b): The correspondences of curves and the axes are similar as Fig. 6(a). On the left axis, the social welfares of both schemes decrease in the storage costs ratio , due to the increased storage costs. On the right axis, the social welfare improvement of the optimal FWT mechanism over the existing protocol increases in with an average value of 61.49%. The improvement is due to the optimal FWT mechanism considers miners’ negative externality in transaction selection.
Based on Fig. 9, we have the following observation:
Observation 4.
Under heterogeneous-storage-cost miners, the optimal FWT mechanism still outperforms the existing protocol in both social welfare and sufficient fees for covering storage costs.
Observation 4 demonstrates the effectiveness of the optimal FWT mechanism under heterogeneous-storage-cost miners.
VIII Conclusion
In this paper, we proposed an FWT mechanism to mitigate the issue of insufficient storage fee in blockchain. We noticed two types of negative externalities in the system: a miner’s transaction selection imposes storage costs on other miners and a user’s transaction generation imposes waiting time costs on other users. Motivated by the negative externalities, the FWT mechanism offers fee choices to users and imposes waiting tax on them. We modeled the interactions among the protocol designer, users, and miners as a three-stage Stackelberg game. We derived the subgame perfect equilibrium of the game in closed-form. Based on the equilibrium, we found that miners neglecting the negative externality in transaction selection cause the insufficient fee issue in the existing blockchain. We showed that the optimal FWT mechanism achieves the unconstrained social optimum and guarantees that users pay sufficient transaction fees for storage costs. Surprisingly, we further found that users who impose lower waiting time costs on other users may pay a higher waiting tax under the optimal FWT mechanism, as the mechanism encourages other users to generate more transactions to maximize the social welfare. Ethereum-based numerical results showed that the optimal FWT mechanism guarantees sufficient transaction fees and achieves an average social welfare improvement of 33.73% or more over the existing protocol. Furthermore, the optimal FWT mechanism achieves the maximum fairness index, and performs well even under heterogeneous-storage-cost miners.
In future work, we will extend our analysis to the more practical case where the number of miners and users in the system may dynamically change over time.
References
- [1] Y. Liu, Z. Fang, M. H. Cheung, W. Cai, and J. Huang, “Economics of blockchain storage,” in IEEE International Conference on Communications, 2020, pp. 1–6.
- [2] https://medium.com/quiknode/welcoming-the-newest-member-of-the -quiknode-family-the-eth-archive-node-ac66201e0793.
- [3] W. Wang, D. T. Hoang, P. Hu, Z. Xiong, D. Niyato, P. Wang, Y. Wen, and D. I. Kim, “A survey on consensus mechanisms and mining strategy management in blockchain networks,” IEEE Access, vol. 7, pp. 22 328–22 370, 2019.
- [4] https://etherscan.io/chartsync/chainarchive.
- [5] https://studio.glassnode.com/compare?a=ETH&c=usd&e=&m=fees.VolumeSum&mAvg=0&mMedian=0&mScl=lin&miner=&resolution=1month&s=1440896401&sameAxis=true&u=1601510400&zoom=.
- [6] https://www.ethernodes.org/history.
- [7] S. Nakamoto, “Bitcoin: A peer-to-peer electronic cash system,” https://bitcoin.org/bitcoin.pdf, 2008.
- [8] https://thebitcoin.pub/t/ethereum-essentials-node-nuances/52785.
- [9] “Bitcoinwiki. weaknesses,” https://en.bitcoin.it/wiki/Weaknesses.
- [10] W. Cai, Z. Wang, J. B. Ernst, Z. Hong, C. Feng, and V. C. M. Leung, “Decentralized applications: The blockchain-empowered software system,” IEEE Access, vol. 6, pp. 53 019–53 033, 2018.
- [11] https://ethereum-magicians.org/search?q=state\%20rent.
- [12] G. Huberman, J. Leshno, and C. C. Moallemi, “Monopoly without a monopolist: An economic analysis of the bitcoin payment system,” Bank of Finland Research Discussion Paper, no. 27, 2017.
- [13] D. Easley, M. O’Hara, and S. Basu, “From mining to markets: The evolution of bitcoin transaction fees,” Journal of Financial Economics, vol. 134, no. 1, pp. 91–109, 2019.
- [14] J. Li, Y. Yuan, S. Wang, and F.-Y. Wang, “Transaction queuing game in bitcoin blockchain,” in IEEE Intelligent Vehicles Symposium, 2018, pp. 114–119.
- [15] P. R. Rizun, “A transaction fee market exists without a block size limit,” Block Size Limit Debate Working Paper, 2015.
- [16] R. Zhang and B. Preneel, “On the necessity of a prescribed block validity consensus: Analyzing bitcoin unlimited mining protocol,” in ACM International Conference on Emerging Networking Experiments and Technologies, 2017, pp. 108–119.
- [17] https://github.com/ethereum/EIPs/blob/master/EIPS/eip-1559.md.
- [18] Q. Hu, Y. Nigam, Z. Wang, Y. Wang, and Y. Xiao, “A correlated equilibrium based transaction pricing mechanism in blockchain,” in IEEE International Conference on Blockchain and Cryptocurrency, 2020, pp. 1–7.
- [19] Z. Ai, Y. Liu, and X. Wang, “Abc: An auction-based blockchain consensus-incentive mechanism,” in IEEE International Conference on Parallel and Distributed Systems, 2020, pp. 609–616.
- [20] S. Basu, D. Easley, M. O’Hara, and E. Sirer, “Towards a functional fee market for cryptocurrencies,” Available at SSRN 3318327, 2019.
- [21] R. Lavi, O. Sattath, and A. Zohar, “Redesigning bitcoin’s fee market,” in ACM The World Wide Web Conference, 2019, pp. 2950–2956.
- [22] A. Narayanan, J. Bonneau, E. Felten, A. Miller, and S. Goldfeder, Bitcoin and cryptocurrency technologies: a comprehensive introduction. Princeton University Press, 2016.
- [23] https://metamug.com/article/security/bitcoin-transaction-fee-satoshi-per-byte.
- [24] Y. Jiao, P. Wang, D. Niyato, and K. Suankaewmanee, “Auction mechanisms in cloud/fog computing resource allocation for public blockchain networks,” IEEE Transactions on Parallel and Distributed Systems, vol. 30, no. 9, pp. 1975–1989, 2019.
- [25] C. Chen, J. Wu, H. Lin, W. Chen, and Z. Zheng, “A secure and efficient blockchain-based data trading approach for internet of vehicles,” IEEE Transactions on Vehicular Technology, vol. 68, no. 9, pp. 9110–9121, 2019.
- [26] “Top 50 gas spenders,” https://etherscan.io/gastracker#gassender.
- [27] R. Bowden, H. P. Keeler, A. E. Krzesinski, and P. G. Taylor, “Block arrivals in the bitcoin blockchain,” arXiv preprint arXiv:1801.07447, 2018.
- [28] I. Tsabary and I. Eyal, “The gap game,” in ACM SIGSAC Conference on Computer and Communications Security, 2018, pp. 713–728.
- [29] C. Decker and R. Wattenhofer, “Information propagation in the bitcoin network,” in IEEE International Conference on Peer-to-Peer Computing, 2013, pp. 1–10.
- [30] R. Singh, A. D. Dwivedi, G. Srivastava, A. Wiszniewska-Matyszkiel, and X. Cheng, “A game theoretic analysis of resource mining in blockchain,” Cluster Computing, vol. 23, no. 3, pp. 2035–2046, 2020.
- [31] R. Pass and E. Shi, “Fruitchains: A fair blockchain,” in ACM Symposium on Principles of Distributed Computing, 2017, pp. 315–324.
- [32] https://www.iota.org/.
- [33] C. Wang, X. Chu, and Y. Qin, “Measurement and analysis of the bitcoin networks: A view from mining pools,” in IEEE International Conference on Big Data Computing and Communications, 2020, pp. 180–188.
- [34] https://bitcoiner.live/?tab=info.
- [35] https://www.buybitcoinworldwide.com/fee-calculator/.
- [36] “Online appendix,” https://www.dropbox.com/s/otoi915dms9g6k6/Liuyunshu_OnlineAppendix.pdf?dl=0.
- [37] D. Gross, Fundamentals of queueing theory. John Wiley & Sons, 2008.
- [38] C. Huang, H. Yu, J. Huang, and R. A. Berry, “Crowdsourcing with heterogeneous workers in social networks,” in IEEE Global Communications Conference, 2019, pp. 1–6.
- [39] https://ethereum.stackexchange.com/questions/30175/what-is-the-size- bytes-of-a-simple-ethereum-transaction-versus-a-bitcoin-trans.
- [40] https://www.amazon.com/ssd/s?k=ssd.
- [41] R. K. Jain, D.-M. W. Chiu, W. R. Hawe et al., “A quantitative measure of fairness and discrimination,” Technical Report, Digital Equipment Corporation, Hudson, MA, 1984.