This paper was converted on www.awesomepapers.org from LaTeX by an anonymous user.
Want to know more? Visit the Converter page.

An Incentive Mechanism for Sustainable Blockchain Storage

Yunshu Liu, Student Member, IEEE, Zhixuan Fang, Member, IEEE, Man Hon Cheung,
Wei Cai, Member, IEEE, and Jianwei Huang, Fellow, IEEE
Part of this paper was presented in ICC 2020 [1]. (Corresponding author: Jianwei Huang.) Y. Liu is with the Department of Information Engineering, The Chinese University of Hong Kong, Hong Kong and Shenzhen Institute of Artificial Intelligence and Robotics for Society (AIRS), Shenzhen, China. Z. Fang is with Institute for Interdisciplinary Information Sciences, Tsinghua University, Beijing, China; and Shanghai Qi Zhi Institute, Shanghai, China. M. H. Cheung is with the Department of Computer Science, City University of Hong Kong, Hong Kong. W. Cai is with the School of Science and Engineering, The Chinese University of Hong Kong, Shenzhen, China, and Shenzhen Institute of Artificial Intelligence and Robotics for Society (AIRS), Shenzhen, China. J. Huang is with the School of Science and Engineering, The Chinese University of Hong Kong, Shenzhen, China, and Shenzhen Institute of Artificial Intelligence and Robotics for Society (AIRS), Shenzhen, China (corresponding author).
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
𝒩\mathcal{N} Set of users
𝒩H(𝒩L)\mathcal{N}_{H}(\mathcal{N}_{L}) Set of type-HH (type-LL) users
\mathcal{M} Set of miners
Indices
nn Index of users
mm Index of miners
(n,i)(n,i) Index of ii-th transaction of user nn
kk Index of rounds of mining
Variables
𝝆\bm{\rho} Fee-per-byte choice
ρ¯\overline{\rho}, ρ¯\underline{\rho} Two fee-per-byte choices
𝑷\bm{P} Waiting tax rate vector
PHH(PHL)P_{HH}(P_{HL}) Waiting tax that a type-HH user pays to
another type-HH (type-LL) user
PLH(PLL)P_{LH}(P_{LL}) Waiting tax that a type-LL user pays to
another type-HH (type-LL) user
pnlp_{nl} Waiting tax that user nn pays to user ll
𝝀\bm{\lambda} All users’ transaction generation rates
𝝀n\bm{\lambda}_{n} User nn’s transaction generation rates
λn1,λn2\lambda_{n1},\lambda_{n2} User nn’s transaction generation rates at ρ¯\overline{\rho} and ρ¯\underline{\rho}
𝒳mk\mathcal{X}_{m}^{k} Miner mm’s transaction selection in round kk
Parameters
NN Number of users
NH(NL)N_{H}(N_{L}) Number of type-HH (type-LL) users
MM Number of miners
ρn,i\rho_{n,i} Fee-per-byte of transaction txn,itx_{n,i}
sn,is_{n,i} Size of transaction txn,itx_{n,i}
s¯\bar{s} Expected size of transaction txn,itx_{n,i}
wn,iw_{n,i} Waiting time of transaction txn,itx_{n,i}
RnR_{n} User nn’s transaction on-chain utility
RH(RL)R_{H}(R_{L}) A type-HH (type-LL) user’s transaction on-chain
utility
γ\gamma User’s impatience level
CsC_{s} A miner’s storage cost per byte
αm\alpha_{m} Miner mm’s mining power
μ\mu Block generation rate
𝒬k\mathcal{Q}^{k} Transaction pool in round kk
Payoffs
θn,i\theta_{n,i} User nn’s surplus from txn,itx_{n,i}
unu_{n} User nn’s time-average payoff
vmkv_{m}^{k} Miner mm’s payoff in round kk
swsw 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.

Refer to caption

Figure 1: Blockchain operation.

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. 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. 2.

    Users’ transaction generation: A user nn generates two transactions (tx n1n_{1} and tx n2n_{2}) 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 ×\times 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. 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 m1m_{1} selects both tx n1n_{1} and tx n2n_{2}).

    • 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 m1m_{1} gets fees of tx n1n_{1} and tx n2n_{2}) 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. 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. 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, NN users, and MM miners as a three-stage Stackelberg game, as illustrated in Fig. 2.

Refer to caption

Figure 2: Three-stage Stackelberg game.

In Stage I, the protocol designer ensures users to pay sufficient fees by setting fee-per-byte choices 𝝆=(ρ¯,ρ¯)\bm{\rho}=(\overline{\rho},\underline{\rho}). 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 𝑷\bm{P}. 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 nn tradeoffs between paying high transaction fees and bearing long time waiting for transaction inclusion. More specifically, the user chooses the transaction generation rates 𝝀n=(λn1,λn2)\bm{\lambda}_{n}=(\lambda_{n1},\lambda_{n2}), which denote the transaction generation rates corresponding to the high and low fee-per-byte choices (i.e., ρ¯\overline{\rho} and ρ¯\underline{\rho}), 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 𝑷\bm{P} 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 k=1,2,k=1,2,\cdots of mining, during which miners mine the block kk. The length of each round kk (the time between the successful mining of block k1k-1 and kk) 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 mm wants to achieve the proper balance between receiving transaction fees and bearing storage costs. The timeline of round kk is as follows:

  1. 1.

    First, each miner mm selects a set of transactions 𝒳mk\mathcal{X}_{m}^{k} 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. 2.

    During round kk, users may generate transactions at any time. The newly generated transactions enter the transaction pool and each miner mm can change his transaction selection 𝒳mk\mathcal{X}_{m}^{k}.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 kk as 𝒬k\mathcal{Q}^{k} such that 𝒳mk𝒬k\mathcal{X}_{m}^{k}\subseteq\mathcal{Q}^{k} and notice that finding a new block is a stochastic event.

  3. 3.

    When a miner finds block kk, the round kk ends. The miner who finds the block kk receives the transaction fees from the transactions included in his proposed block. All the miners store the block kk and bear the costs of storage individually. The transaction pool updates by removing those transactions that have been included in the block kk.

Fig. 3 illustrates the above mining process with the case of 2 users and 2 miners. For multiple transactions generated by user nn, we will differentiate them in the subscript ii, i.e., txn,itx_{n,i} (i=1,2,)(i=1,2,\cdots).

Refer to caption

Figure 3: Timeline of round kk.
  1. 1.

    First, there are two transactions tx1,1tx_{1,1} and tx2,1tx_{2,1} in transaction pool in Fig. 3. Miner 1 and 2 adopt strategies 𝒳1k={tx1,1}\mathcal{X}_{1}^{k}=\{tx_{1,1}\} and 𝒳2k=\mathcal{X}_{2}^{k}=\emptyset, respectively.

  2. 2.

    During round kk, user 2 generates a new transaction tx2,2tx_{2,2} and it enters transaction pool. Miner 1’s strategy remains the same while miner 2 changes his strategy to 𝒳2k={tx2,2}\mathcal{X}_{2}^{k}=\{tx_{2,2}\}. In this example, 𝒬k={tx1,1,tx2,1,tx2,2}\mathcal{Q}^{k}=\{tx_{1,1},tx_{2,1},tx_{2,2}\}.

  3. 3.

    Miner 2 finds a block kk and round kk ends. Miner 2 includes tx2,2tx_{2,2} in blockchain and transaction pool deletes tx2,2tx_{2,2}.

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 k=1,2,k=1,2,\cdots 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 kk

Although miners will interact with each other over many rounds of mining, we will focus on a particular round kk 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 ={1,,M}\mathcal{M}=\{1,\cdots,M\}.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 mm\in\mathcal{M} is αm>0\alpha_{m}>0, which represents the probability of miner mm successfully finding a block. We have mαm=1\sum_{m\in\mathcal{M}}\alpha_{m}=1.

IV-A2 Miners’ strategies

Each miner mm selects a set 𝒳mk𝒬k\mathcal{X}_{m}^{k}\subseteq\mathcal{Q}^{k} of transactions from the transaction pool 𝒬k\mathcal{Q}^{k}. 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 mm’s strategy satisfies |𝒳mk|{0,1}|\mathcal{X}_{m}^{k}|\in\{0,1\}. 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 𝒳mk={(n,i)}\mathcal{X}_{m}^{k}=\{(n,i)\} (or \emptyset) to represent that miner mm selects txn,itx_{n,i} (or no transaction) in round kk.

Miners’ payoff functions: Miner mm’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 txn,itx_{n,i}, its transaction fee is the product of the transaction size and fee-per-byte, i.e., sn,iρn,is_{n,i}\rho_{n,i}. Only the miner who successfully finds a block receives the transaction fees from his selection. Thus miner mm will get the total transaction fees of (n,i)𝒳mksn,iρn,i\sum_{(n,i)\in{\mathcal{X}_{m}^{k}}}{s_{n,i}\rho_{n,i}} with probability αm\alpha_{m}.

  • Storage cost: For analysis, we assume that all miners have homogeneous storage cost of CsC_{s} 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 txn,itx_{n,i} with size sn,is_{n,i} imposes a storage cost sn,iCss_{n,i}C_{s} to a miner. If any miner jj\in\mathcal{M} selects transaction txn,itx_{n,i} (i.e., 𝒳jk={(n,i)}\mathcal{X}_{j}^{k}=\{(n,i)\}) and successfully finds a block (with probability αj\alpha_{j}), all miners need to store that block and bear the storage costs sn,iCss_{n,i}C_{s} for the transaction txn,itx_{n,i} that miner jj selects [3]. Overall, miner mm will bear the storage costs of

    Ck(𝒳mk,𝓧mk)=jαj(n,i)𝒳jksn,iCsC^{k}(\mathcal{X}_{m}^{k},\bm{\mathcal{X}}_{-m}^{k})=\sum\limits_{j\in\mathcal{M}}\alpha_{j}\sum\limits_{(n,i)\in{\mathcal{X}_{j}^{k}}}s_{n,i}C_{s} (1)

    in round kk,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 𝓧mk=(𝒳jk,j,jm)\bm{\mathcal{X}}_{-m}^{k}=(\mathcal{X}_{j}^{k},\forall j\in\mathcal{M},j\not=m) represents the strategies of all the miners other than mm. Miner mm’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 mm’s payoff in round kk is:

vmk(𝒳mk,𝓧mk,𝝆)=αm(n,i)𝒳mksn,iρn,iCk(𝒳mk,𝓧mk).v_{m}^{k}(\mathcal{X}_{m}^{k},\bm{\mathcal{X}}_{-m}^{k},\bm{\rho})=\alpha_{m}\sum\limits_{(n,i)\in{\mathcal{X}_{m}^{k}}}{s_{n,i}\rho_{n,i}}-C^{k}(\mathcal{X}_{m}^{k},\bm{\mathcal{X}}_{-m}^{k}). (2)

IV-A3 Game formulation

We formulate the round kk 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 kk).

In Stage III, Transaction Selection Game in round k=1,2,k=1,2,\cdots is a tuple Φk=(,𝒳k,𝐕k)\Phi^{k}=(\mathcal{M},\mathcal{X}^{k},\bm{V}^{k}) defined by:

  • Players: The set of miners \mathcal{M}.

  • Strategies: Each miner mm\in\mathcal{M} selects a set 𝒳mkmk={𝒜|𝒜𝒬k,|𝒜|{0,1}}\mathcal{X}_{m}^{k}\in\mathcal{B}_{m}^{k}=\{\mathcal{A}|\mathcal{A}\subseteq\mathcal{Q}^{k},|\mathcal{A}|\in\{0,1\}\} of transactions. The strategy profiles of all the miners is (𝒳mk,m)(\mathcal{X}_{m}^{k},\forall m\in\mathcal{M}). The set of feasible strategy profile of all miners is 𝒳k=mmk\mathcal{X}^{k}=\prod_{m\in\mathcal{M}}\mathcal{B}_{m}^{k}.

  • Payoffs: The vector 𝑽k=(vmk,mM)\bm{V}^{k}=(v_{m}^{k},\forall m\in M) 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 mm 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 𝛒\bm{\rho}, a strategy profile (𝒳mk,NE,(\mathcal{X}_{m}^{k,{\rm NE}}, m)\forall m\in\mathcal{M}) constitutes a Nash equilibrium in Game 1 if

vmk(𝒳mk,NE,𝓧mk,NE,𝝆)vmk(𝒳mk,𝓧mk,NE,𝝆),\displaystyle v_{m}^{k}(\mathcal{X}_{m}^{k,{\rm NE}},\bm{\mathcal{X}}_{-m}^{k,{\rm NE}},\bm{\rho})\geqslant v_{m}^{k}(\mathcal{X}_{m}^{k},\bm{\mathcal{X}}_{-m}^{k,{\rm NE}},\bm{\rho}), (3)
𝒳mkmk,m.\displaystyle\forall\mathcal{X}_{m}^{k}\in\mathcal{B}_{m}^{k},\forall m\in\mathcal{M}.

We define some strategy-related notation for the ease of presentation. When the transaction pool in round kk is not empty, the set of all the highest-fee-per-byte transactions in the transaction pool as 𝒬k,high{(n,i)𝒬k|ρn,iρj,l,(j,l)𝒬k}.\mathcal{Q}^{k,\text{high}}\triangleq\{(n,i)\in\mathcal{Q}^{k}|\rho_{n,i}\geqslant\rho_{j,l},\forall(j,l)\in\mathcal{Q}^{k}\}. Within the set 𝒬k,high\mathcal{Q}^{k,\text{high}}, we define the transaction with the earliest generation time is

(nk,ik)argmin(n,i)𝒬k,hightn,igen,(n^{k*},i^{k*})\triangleq\underset{(n,i)\in\mathcal{Q}^{k,\text{high}}}{\arg\min}\hskip 2.84526ptt^{\rm gen}_{n,i}, (4)

where tn,igent^{\rm gen}_{n,i} is the generation time of transaction (n,i)(n,i). Then, we summarize the Nash equilibrium as follows.

Theorem 1 (Miners’ Equilibrium in Stage III).

The strategy profile (𝒳mk,NE,m)(\mathcal{X}_{m}^{k,{\rm NE}},\forall m\in\mathcal{M}) constitutes a Nash equilibrium in round kk, where

𝒳mk,NE={{(nk,ik)},if 𝒬k and ρnk,ikCs,,otherwise.\mathcal{X}_{m}^{k,{\rm NE}}=\begin{cases}\{(n^{k*},i^{k*})\},&\text{if }\mathcal{Q}^{k}\not=\emptyset\text{ and }\rho_{n^{k*},i^{k*}}\geqslant C_{s},\\ \emptyset,&\text{otherwise.}\end{cases}

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 txn,itx_{n,i} if its fee-per-byte is higher than a miner’s storage cost per byte, i.e., ρn,iCs\rho_{n,i}\geqslant C_{s}. However, a miner’s storage cost per byte CsC_{s} is insufficient to cover all miners’ total storage cost per byte, i.e., MCsMC_{s}.

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 𝒩={1,,N}\mathcal{N}=\{1,\cdots,N\}. Given two fee-per-byte choices ρ¯\overline{\rho} and ρ¯\underline{\rho} offered by the protocol designer, each user n𝒩n\in\mathcal{N} generates transactions at each choice following a Poisson process. The strategy of user nn is to set the transaction generation rates 𝝀n=(λn1,λn2){\bm{\lambda}_{n}}=(\lambda_{n1},\lambda_{n2}), where λn1\lambda_{n1} and λn2\lambda_{n2} are the rates of user nn generating transactions at ρ¯\overline{\rho} and ρ¯\underline{\rho}, respectively, satisfying the following constraints:

{λn1+λn2μN,λn1,λn20,\begin{cases}\lambda_{n1}+\lambda_{n2}\leqslant\frac{\mu}{N},\\ \lambda_{n1},\lambda_{n2}\geqslant 0,\end{cases} (5)

where μ\mu is the system average block generation rate and each user’s maximum transaction generation rate is μN\frac{\mu}{N}. 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 txn,itx_{n,i} as the time lapse between the generation time and the on-chain time.

  • Generation time of transaction txn,itx_{n,i} is denoted as tn,igent^{\rm gen}_{n,i}.

  • On-chain time: When a miner selects transaction txn,itx_{n,i} and finds a block in round k(=1,2,)k(=1,2,\cdots), then round kk ends, and transaction txn,itx_{n,i} is included in the blockchain. Thus, round kk’s ending time tend(k)t^{\rm end}(k) is the transaction on-chain time, i.e.,

    tn,ion={tend(k),if txn,i is included in block k,,if txn,i is not included in any block.t^{\rm on}_{n,i}=\begin{cases}t^{\rm end}(k),&\text{if $tx_{n,i}$ is included in block $k$,}\\ \infty,&\text{if $tx_{n,i}$ is not included in any block.}\end{cases} (6)
  • Waiting time is the difference between the on-chain time minus and the generation time, i.e., wn,i=tn,iontn,igenw_{n,i}=t^{\rm on}_{n,i}-t^{\rm gen}_{n,i}. Waiting time wn,iw_{n,i} is a random variable as the block generation is stochastic. The rate of transactions entering the transaction pool affects the waiting time wn,iw_{n,i}, thus it is a function of all users transaction generation rates, i.e., 𝝀=(𝝀n,n𝒩)\bm{\lambda}=(\bm{\lambda}_{n},\forall n\in\mathcal{N}). We will compute the expectation of wn,iw_{n,i} in Lemma 1 of Section V-B.

Negative externality in transaction generation: When user nn generates a transaction and miners include it in the blockchain, other transactions in the transaction pool have to wait. Thus, user nn’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 nn’s surplus obtained from one transaction txn,itx_{n,i}

User nn’s surplus obtained from one transaction txn,itx_{n,i} depends on whether txn,itx_{n,i} is included in the blockchain.

  • If txn,itx_{n,i} 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 nn’s on-chain utility from txn,itx_{n,i}: When txn,itx_{n,i} is included in the blockchain, user nn will obtain utility of RnR_{n}. 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 NHN_{H} high-utility users (type-HH) and NL=NNHN_{L}=N-N_{H} low-utility users (type-LL).131313Two applications can capture heterogeneous users set transaction fee to compete for shorter waiting time. Thus, user nn’s on-chain utility from one transaction is

      Rn={RH,if user n is type-H,RL,if user n is type-L,R_{n}=\begin{cases}R_{H},&\text{if user $n$ is type-$H$,}\\ R_{L},&\text{if user $n$ is type-$L$,}\\ \end{cases}\vspace{-1mm} (7)

      where RHRLR_{H}\geqslant R_{L}. Our model generalizes the homogeneous utility model in [13] and [14].

    • Transaction fee of txn,itx_{n,i}: User nn pays the transaction fee fn,i=sn,iρn,if_{n,i}=s_{n,i}\rho_{n,i} to the miner who includes txn,itx_{n,i} in the blockchain. We model the size of any transaction follows an i.i.d. distribution with the expectation of s¯\bar{s}. The fee-per-byte ρn,i\rho_{n,i} belongs to the protocol designer’s fee-per-byte choices, i.e., ρn,i{ρ¯,ρ¯}\rho_{n,i}\in\{\overline{\rho},\underline{\rho}\}.

    • Waiting time cost of txn,itx_{n,i}: The transaction waiting time wn,i(𝝀)w_{n,i}(\bm{\lambda}) imposes a cost to user nn, which we assume to be a linear function with the impatience coefficient γ\gamma, i.e., γwn,i(𝝀)\gamma w_{n,i}(\bm{\lambda}). A higher γ\gamma means users are less patient.

    • Waiting tax of txn,itx_{n,i}: Since user nn’s transaction generation increases the expected transaction waiting time of any other user lnl\not=n, we introduce the waiting tax pnlp_{nl} to internalize this negative externality. More specifically, user nn pays user ll the amount of pnlp_{nl} to compensate the waiting costs nn imposes. Depending on the types of users nn and ll, the possible waiting tax has four different values 𝑷=(PHH,PHL,PLH,PLL)\bm{P}=(P_{HH},P_{HL},P_{LH},P_{LL}):

      pnl={PHH,if both user n and l are type-H,PHL,if user n is type-H and user l is type-L,PLH,if user n is type-L and user l is type-H,PLL,if both user n and l are type-L.p_{nl}=\begin{cases}P_{HH},&\text{if both user $n$ and $l$ are type-$H$,}\\ P_{HL},&\text{if user $n$ is type-$H$ and user $l$ is type-$L$,}\\ P_{LH},&\text{if user $n$ is type-$L$ and user $l$ is type-$H$,}\\ P_{LL},&\text{if both user $n$ and $l$ are type-$L$.}\\ \end{cases}\vspace{-1mm} (8)

    To sum up, user nn’s surplus when txn,itx_{n,i} is included in the blockchain is

    θn,i(𝝀,𝝆,𝑷)=Rnsn,iρn,iγwn,i(𝝀)l𝒩,lnpnl.\theta_{n,i}(\bm{\lambda},\bm{\rho},\bm{P})=R_{n}-s_{n,i}\rho_{n,i}-\gamma w_{n,i}(\bm{\lambda})-\sum\limits_{l\in\mathcal{N},l\not=n}p_{nl}.\vspace{-1mm} (9)
  • If txn,itx_{n,i} is not included in the blockchain (i.e., not in any block), user nn will not get the transaction on-chain utility RnR_{n}, and he will not pay the fee fn,if_{n,i} or the waiting tax. However, user nn still experiences the (possibly infinite) waiting time to know that the transaction will not be included. In this case, user nn’s surplus from transaction txn,itx_{n,i} is

    θn,i(𝝀,𝝆,𝑷)=γwn,i(𝝀).\theta_{n,i}(\bm{\lambda},\bm{\rho},\bm{P})=-\gamma w_{n,i}(\bm{\lambda}).\vspace{-2mm} (10)

To simplify the formulation, we define the indicator function to indicate whether txn,itx_{n,i} is included in the blockchain as follows

𝟏(n,i)={1,if txn,i is included in blockchain,0,if txn,i is not included in blockchain.\mathbf{1}(n,i)=\begin{cases}1,\text{if $tx_{n,i}$ is included in blockchain,}\\ 0,\text{if $tx_{n,i}$ is not included in blockchain.}\end{cases}\vspace{-1mm} (11)

Hence user nn’s surplus obtained from txn,itx_{n,i} can be written as

θn,i(𝝀,𝝆,𝑷)=\displaystyle\theta_{n,i}(\bm{\lambda},\bm{\rho},\bm{P})= 𝟏(n,i)(Rnsn,iρn,il𝒩,lnpnl)\displaystyle\mathbf{1}(n,i)(R_{n}-s_{n,i}\rho_{n,i}-\sum\limits_{l\in\mathcal{N},l\not=n}p_{nl}) (12)
γwn,i(𝝀).\displaystyle-\gamma w_{n,i}(\bm{\lambda}).

V-A4 Users’ time-average payoff

User nn’s payoff is the summation of the surplus from all his transactions and the waiting tax paid to him by other users. For user nn, we denote the number of all his generated transactions in time interval [0,t][0,t] as TXn(t)TX_{n}(t). His time-average payoff is

un(𝝀,𝝆,𝑷)\displaystyle u_{n}(\bm{\lambda},\bm{\rho},\bm{P}) (13)
=\displaystyle= limti=1TXn(t)𝔼[θn,i(𝝀,𝝆,𝑷)]+l𝒩,lni=1TXl(t)𝟏(l,i)plnt,\displaystyle\lim\limits_{t\rightarrow\infty}\frac{\sum\limits_{i=1}^{TX_{n}(t)}\mathbb{E}[\theta_{n,i}(\bm{\lambda},\bm{\rho},\bm{P})]+\sum\limits_{l\in\mathcal{N},l\not=n}\sum\limits_{i=1}^{TX_{l}(t)}\mathbf{1}(l,i)p_{ln}}{t},

where 𝔼[θn,i(𝝀,𝝆,𝑷)]\mathbb{E}[\theta_{n,i}(\bm{\lambda},\bm{\rho},\bm{P})] is user nn’s expected surplus from transaction txn,itx_{n,i}. The expectation is taken in terms of random variables transaction size sn,is_{n,i} and waiting time wn,iw_{n,i}.

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.

limti=1TXn(t)𝔼[wn,i(𝝀)]t={λn1μl𝒩λl1+μλn2(μl𝒩λl1)[μl𝒩(λl1+λl2)],if Csρ¯<ρ¯,                                     (14a)λn1μl𝒩λl1,if ρ¯Cs<ρ¯ and λn2=0,                    (14b),if ρ¯Cs<ρ¯ and λn2>0,                    (14c),if ρ¯<ρ¯<Cs and (λn1>0 or λn2>0),   (14d)0,if ρ¯<ρ¯<Cs and (λn1=0 and λn2=0). (14e)\lim\limits_{t\rightarrow\infty}\frac{\sum\limits_{i=1}^{TX_{n}(t)}\mathbb{E}[w_{n,i}(\bm{\lambda})]}{t}=\begin{cases}\frac{\lambda_{n1}}{\mu-\sum_{l\in\mathcal{N}}\lambda_{l1}}+\frac{\mu\lambda_{n2}}{(\mu-\sum_{l\in\mathcal{N}}\lambda_{l1})[\mu-\sum_{l\in\mathcal{N}}(\lambda_{l1}+\lambda_{l2})]},&\text{if $C_{s}\leqslant\underline{\rho}<\overline{\rho}$,\hskip 120.35516pt(14a)}\\ \frac{\lambda_{n1}}{\mu-\sum_{l\in\mathcal{N}}\lambda_{l1}},&\text{if $\underline{\rho}\leqslant C_{s}<\overline{\rho}$ and $\lambda_{n2}=0$,\hskip 64.87228pt(14b)}\\ \infty,&\text{if $\underline{\rho}\leqslant C_{s}<\overline{\rho}$ and $\lambda_{n2}>0$,\hskip 64.87228pt(14c)}\\ \infty,&\text{if $\underline{\rho}<\overline{\rho}<C_{s}$ and ($\lambda_{n1}>0$ or $\lambda_{n2}>0$),\hskip 9.3894pt(14d)}\\ 0,&\text{if $\underline{\rho}<\overline{\rho}<C_{s}$ and ($\lambda_{n1}=0$ and $\lambda_{n2}=0$). (14e)}\\ \end{cases}
Game 2 (Stage II: Transaction Generation Game).

In Stage II, Transaction Generation Game is a tuple Ω=(𝒩,Λ,𝐔)\Omega=(\mathcal{N},\Lambda,\bm{U}) defined by:

  • Players: The set of users 𝒩\mathcal{N}.

  • Strategies: Each user nn sets transaction generation rate 𝝀n\bm{\lambda}_{n}, where the strategy space is Λn={𝝀n=(λn1,λn2)|(λn1,λn2) satisfies (5)}\Lambda_{n}=\{\bm{\lambda}_{n}=(\lambda_{n1},\lambda_{n2})|(\lambda_{n1},\lambda_{n2})\text{ satisfies (\ref{Tx_generation_constraint})}\}. The strategy profiles of all the users is 𝝀=(𝝀n,n𝒩)\bm{\lambda}=(\bm{\lambda}_{n},\forall n\in\mathcal{N}) and the set of all feasible strategy profiles is Λ=Λ1××ΛN\Lambda=\Lambda_{1}\times\cdots\times\Lambda_{N}.

  • Payoffs: The vector 𝑼=(un,n𝒩)\bm{U}=(u_{n},\forall n\in\mathcal{N}) 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 nn will experience a lower average waiting time by generating more high-fee transactions. However, if paying a high fee is too costly, user nn 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 nn’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 n𝒩\forall n\in\mathcal{N} 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 CsC_{s}. 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 CsC_{s}.

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. 1.

    At a ρ¯\overline{\rho}-SNE, all users only generate transactions with the fee-per-byte ρ¯\overline{\rho}.

  2. 2.

    At a ρ¯\underline{\rho}-SNE, all users only generate transactions with the fee-per-byte ρ¯\underline{\rho}.

At an equilibrium, each user nn’s net transaction utility hnh_{n} plays an important role in his transaction generation rate, which defined as follows

hn={hH=RH[(NH1)PHH+NLPHL],if n𝒩H,hL=RL[NHPLH+(NL1)PLL],if n𝒩L,h_{n}=\begin{cases}h_{H}=R_{H}-[(N_{H}-1)P_{HH}+N_{L}P_{HL}],&\text{if $n\in\mathcal{N}_{H}$,}\\ h_{L}=R_{L}-[N_{H}P_{LH}+(N_{L}-1)P_{LL}],&\text{if $n\in\mathcal{N}_{L}$,}\\ \end{cases} (15)

where 𝒩H\mathcal{N}_{H} and 𝒩L\mathcal{N}_{L} are the set of types HH and LL users, respectively.

πB(hB,hS,ρ)={0,if hBs¯ρ+γμ,  (16a)A1(hB,ρ),if hB>s¯ρ+γμ and hSs¯ρ+γμNBA1(hB,ρ),  (16b)min{μNB+NS,[μA2(hB,hS,ρ)][(hBs¯ρ)A2(hB,hS,ρ)γ]NB[(hBs¯ρ)A2(hB,hS,ρ)γ]+NS[(hSs¯ρ)A2(hB,hS,ρ)γ]},if hS>s¯ρ+γμNBA1(hB,ρ).  (16c)\pi_{B}(h_{B},h_{S},\rho)=\begin{cases}0,&\hskip 48.36967pt\text{if $h_{B}\leqslant\bar{s}\rho+\frac{\gamma}{\mu}$, \hskip 1.42262pt(16a)}\\ A_{1}(h_{B},\rho),&\text{if $h_{B}>\bar{s}\rho+\frac{\gamma}{\mu}$ and $h_{S}\leqslant\bar{s}\rho+\frac{\gamma}{\mu-N_{B}A_{1}(h_{B},\rho)}$, \hskip 1.42262pt(16b)}\\ \min\{\frac{\mu}{N_{B}+N_{S}},\frac{[\mu-A_{2}(h_{B},h_{S},\rho)][(h_{B}-\bar{s}\rho)A_{2}(h_{B},h_{S},\rho)-\gamma]}{N_{B}[(h_{B}-\bar{s}\rho)A_{2}(h_{B},h_{S},\rho)-\gamma]+N_{S}[(h_{S}-\bar{s}\rho)A_{2}(h_{B},h_{S},\rho)-\gamma]}\},&\text{if $h_{S}>\bar{s}\rho+\frac{\gamma}{\mu-N_{B}A_{1}(h_{B},\rho)}$. \hskip 1.42262pt(16c)}\end{cases}
πS(hB,hS,ρ)={0,if hBs¯ρ+γμ,        (17a)0,if hB>s¯ρ+γμ and hSs¯ρ+γμNBA1(hB,ρ),        (17b)μNBπB(hB,hS,ρ)NSγ(NS1)+γ2(NS1)2+4NS(hSs¯ρ)γ[μNBπB(hB,hS,ρ)]2(hSs¯ρ)NS2,if hS>s¯ρ+γμNBA1(hB,ρ).        (17c)\hskip 31.29802pt\pi_{S}(h_{B},h_{S},\rho)=\begin{cases}0,&\hskip 49.79231pt\text{if $h_{B}\leqslant\bar{s}\rho+\frac{\gamma}{\mu}$, \hskip 21.33955pt(17a)}\\ 0,&\text{if $h_{B}>\bar{s}\rho+\frac{\gamma}{\mu}$ and $h_{S}\leqslant\bar{s}\rho+\frac{\gamma}{\mu-N_{B}A_{1}(h_{B},\rho)}$, \hskip 21.33955pt(17b)}\\ \frac{\mu-N_{B}\pi_{B}(h_{B},h_{S},\rho)}{N_{S}}\\ -\frac{\gamma(N_{S}-1)+\sqrt{\gamma^{2}(N_{S}-1)^{2}+4N_{S}(h_{S}-\bar{s}\rho)\gamma[\mu-N_{B}\pi_{B}(h_{B},h_{S},\rho)]}}{2(h_{S}-\bar{s}\rho)N_{S}^{2}},&\text{if $h_{S}>\bar{s}\rho+\frac{\gamma}{\mu-N_{B}A_{1}(h_{B},\rho)}$. \hskip 21.33955pt(17c)}\end{cases}
A1(hB,ρ)=min{μNBγ(NB1)+γ2(NB1)2+4γμNB(hBs¯ρ)2NB2(hBs¯ρ),μNB+NS}.A_{1}(h_{B},\rho)=\min\{\frac{\mu}{N_{B}}-\frac{\gamma(N_{B}-1)+\sqrt{\gamma^{2}(N_{B}-1)^{2}+4\gamma\mu N_{B}(h_{B}-\bar{s}\rho)}}{2N^{2}_{B}(h_{B}-\bar{s}\rho)},\frac{\mu}{N_{B}+N_{S}}\}. (18)
A2(hB,hS,ρ)=γ(NB+NS1)+γ2(NB+NS1)2+4γμ[NB(hBs¯ρ)+NS(hSs¯ρ)]2[NB(hBs¯ρ)+NS(hSs¯ρ)].A_{2}(h_{B},h_{S},\rho)=\frac{\gamma(N_{B}+N_{S}-1)+\sqrt{\gamma^{2}(N_{B}+N_{S}-1)^{2}+4\gamma\mu[N_{B}(h_{B}-\bar{s}\rho)+N_{S}(h_{S}-\bar{s}\rho)]}}{2[N_{B}(h_{B}-\bar{s}\rho)+N_{S}(h_{S}-\bar{s}\rho)]}. (19)

Notice that hHh_{H} may not be larger than hLh_{L} due to the waiting time tax rate vector (PHH,PHL,PLH,PLL)(P_{HH},P_{HL},P_{LH},P_{LL}). We define type-BB as the bigger net transaction utility user type (i.e., B=argmaxl{L,H}hlB={\arg\max}_{l\in\{L,H\}}\hskip 2.84526pth_{l}) and type-SS as the smaller net transaction utility user type (i.e., S=argminl{L,H}hlS={\arg\min}_{l\in\{L,H\}}\hskip 2.84526pth_{l}). We illustrate the connections between types BB and SS as well as types HH and LL in Table I.

TABLE I: Types BB and SS and corresponding types HH and LL.
If hHhLh_{H}\geqslant h_{L} B=H,𝒩B=𝒩HB=H,\mathcal{N}_{B}=\mathcal{N}_{H} S=L,𝒩S=𝒩LS=L,\mathcal{N}_{S}=\mathcal{N}_{L}
If hH<hLh_{H}<h_{L} S=H,𝒩S=𝒩HS=H,\mathcal{N}_{S}=\mathcal{N}_{H} B=L,𝒩B=𝒩LB=L,\mathcal{N}_{B}=\mathcal{N}_{L}

Next, we characterize the types BB and SS users’ equilibrium strategies at the ρ¯\overline{\rho}-SNE and ρ¯\underline{\rho}-SNE in Proposition 1.

Proposition 1 (Stage II Equilibrium Strategy).

Consider ρ{ρ¯,ρ¯}\rho\in\{\overline{\rho},\underline{\rho}\}. The following strategy profile (𝛌nNE=(\bm{\lambda}_{n}^{\rm NE}= (πB(hB,hS,ρ),0),n𝒩B,𝛌lNE=(πS(hB,hS,ρ),0),(\pi_{B}(h_{B},h_{S},\rho),0),\forall n\in\mathcal{N}_{B},\bm{\lambda}_{l}^{\rm NE}=(\pi_{S}(h_{B},h_{S},\rho),0), l𝒩S)\forall l\in\mathcal{N}_{S}) constitutes a ρ\rho-SNE, where πB(hB,hS,ρ)\pi_{B}(h_{B},h_{S},\rho), πS(hB,hS,ρ)\pi_{S}(h_{B},h_{S},\rho), and the intermediate variables A1(hB,ρ)A_{1}(h_{B},\rho) and A2(hB,hS,ρ)A_{2}(h_{B},h_{S},\rho) are shown in (16)-(19), respectively.

Here we explain the intuition of the ρ\rho-SNE, where ρ{ρ¯,ρ¯}\rho\in\{\overline{\rho},\underline{\rho}\}. When both hBh_{B} and hSh_{S} are small (i.e., (16a) and (17a)), users do not generate transactions. When hBh_{B} is large but hSh_{S} is small (i.e., (16b) and (17b)), only type-BB users generate transactions. When both hBh_{B} and hSh_{S} 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 Δ(hB,hS,ρ¯)>s¯ρ¯\Delta(h_{B},h_{S},\underline{\rho})>\bar{s}\overline{\rho}, then there exists a ρ¯\overline{\rho}-SNE, where Δ(hB,hS,ρ¯)\Delta(h_{B},h_{S},\underline{\rho}) is shown in (20).

  • If Δ(hB,hS,ρ¯)s¯ρ¯\Delta(h_{B},h_{S},\underline{\rho})\leqslant\bar{s}\overline{\rho}, then there exist a ρ¯\underline{\rho}-SNE.

Δ(hB,hS,ρ¯)=\displaystyle\Delta(h_{B},h_{S},\underline{\rho})= max{hBγμγπB(hB,hS,ρ¯)[2μNBπB(hB,hS,ρ¯)NSπS(hB,hS,ρ¯)]μ[μNBπB(hB,hS,ρ¯)NSπS(hB,hS,ρ¯)]2,\displaystyle\max\Big{\{}h_{B}-\frac{\gamma}{\mu}-\frac{\gamma\pi_{B}(h_{B},h_{S},\underline{\rho})[2\mu-N_{B}\pi_{B}(h_{B},h_{S},\underline{\rho})-N_{S}\pi_{S}(h_{B},h_{S},\underline{\rho})]}{\mu[\mu-N_{B}\pi_{B}(h_{B},h_{S},\underline{\rho})-N_{S}\pi_{S}(h_{B},h_{S},\underline{\rho})]^{2}}, (20)
hSγμγπS(hB,hS,ρ¯)[2μNBπB(hB,hS,ρ¯)NSπS(hB,hS,ρ¯)]μ[μNBπB(hB,hS,ρ¯)NSπS(hB,hS,ρ¯)]2}.\displaystyle h_{S}-\frac{\gamma}{\mu}-\frac{\gamma\pi_{S}(h_{B},h_{S},\underline{\rho})[2\mu-N_{B}\pi_{B}(h_{B},h_{S},\underline{\rho})-N_{S}\pi_{S}(h_{B},h_{S},\underline{\rho})]}{\mu[\mu-N_{B}\pi_{B}(h_{B},h_{S},\underline{\rho})-N_{S}\pi_{S}(h_{B},h_{S},\underline{\rho})]^{2}}\Big{\}}.

Fig. 4 illustrates two SNEs in Theorem 2 against fee-per-byte choices (ρ¯,ρ¯)(\overline{\rho},\underline{\rho}), which reflects users’ tradeoff between paying low fee and bearing low waiting time. When ρ¯\overline{\rho} is small, then Δ(hB,hS,ρ¯)>s¯ρ¯\Delta(h_{B},h_{S},\underline{\rho})>\bar{s}\overline{\rho} and a ρ¯\overline{\rho}-SNE exists. In other words, all users choose high fee-per-byte ρ¯\overline{\rho}, because ρ¯\overline{\rho} is not high enough and hence the consideration of low waiting time dominates the consideration of paying low fee. As ρ¯\overline{\rho} increases such that Δ(hB,hS,ρ¯)s¯ρ¯\Delta(h_{B},h_{S},\underline{\rho})\leqslant\bar{s}\overline{\rho}, the ρ¯\underline{\rho}-SNE emerges where all users choose low fee-per-byte ρ¯\underline{\rho}. This is because when ρ¯\overline{\rho} is high, the consideration of paying low fee dominates the consideration of low waiting time.

Refer to caption

Figure 4: Two SNEs in Theorem 2 VS ρ¯\overline{\rho} and ρ¯\underline{\rho}.

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 𝝆=(ρ¯,ρ¯)\bm{\rho}=(\overline{\rho},\underline{\rho}) (with ρ¯>ρ¯0\overline{\rho}>\underline{\rho}\geqslant 0) and the waiting tax rate vector 𝑷=(PHH,PHL,PLH,PLL)\bm{P}=(P_{HH},P_{HL},P_{LH},P_{LL}). 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 nn with a positive transaction generation rate (i.e., λn1+λn2>0\lambda_{n1}+\lambda_{n2}>0), 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

ρnavg=λn1ρ¯+λn2ρ¯λn1+λn2MCs,n{i𝒩|λi1+λi2>0}.\rho_{n}^{\text{avg}}=\frac{\lambda_{n1}\overline{\rho}+\lambda_{n2}\underline{\rho}}{\lambda_{n1}+\lambda_{n2}}\geqslant MC_{s},\forall n\in\{i\in\mathcal{N}|\lambda_{i1}+\lambda_{i2}>0\}. (21)

VI-A3 Social welfare

The social welfare equals the sum of users’ and miners’ time-average payoffs.

Based on miner mm’s payoff vmkv_{m}^{k} in round kk in (2), the miner mm’s time-average payoffs as

vm(𝓧,𝝆)=limtk=1Round(t)vmk(𝒳mk,𝓧mk,𝝆)t,v_{m}(\bm{\mathcal{X}},\bm{\rho})=\lim\limits_{t\rightarrow\infty}\frac{\sum_{k=1}^{\text{Round}(t)}v_{m}^{k}(\mathcal{X}_{m}^{k},\bm{\mathcal{X}}_{-m}^{k},\bm{\rho})}{t}, (22)

where 𝓧=(𝒳mk,m,k)\bm{\mathcal{X}}=(\mathcal{X}_{m}^{k},\forall m,\forall k) is the strategy profile of all miners in Stage III and Round(t)\text{Round}(t) is the number of rounds completed in time interval [0,t][0,t].

The social welfare is as follows

sw(𝝆,𝑷,𝝀,𝓧)=n𝒩un(𝝀,𝝆,𝑷)+mvm(𝓧,𝝆).sw(\bm{\rho},\bm{P},\bm{\lambda},\bm{\mathcal{X}})=\sum_{n\in\mathcal{N}}u_{n}(\bm{\lambda},\bm{\rho},\bm{P})+\sum_{m\in\mathcal{M}}v_{m}(\bm{\mathcal{X}},\bm{\rho}). (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.

max\displaystyle\max sw(𝝆,𝑷,𝝀,𝓧)\displaystyle\hskip 8.53581ptsw(\bm{\rho},\bm{P},\bm{\lambda},\bm{\mathcal{X}}) (24)
s.t. (21), ρ¯>ρ¯0,\displaystyle\hskip 8.53581pt\text{(\ref{Sufficient_fee}), }\overline{\rho}>\underline{\rho}\geqslant 0,
var. 𝝆=(ρ¯,ρ¯),𝑷=(PHH,PHL,PLH,PLL).161616The waiting tax can be negative, which motivates users to generate transactions by compensating them. This makes the mechanism more flexible.\displaystyle\hskip 8.53581pt\bm{\rho}=(\overline{\rho},\underline{\rho}),\bm{P}=(P_{HH},P_{HL},P_{LH},P_{LL}).\text{}

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 RHMs¯Cs+γμR_{H}\leqslant M\bar{s}C_{s}+\frac{\gamma}{\mu}, then

    • the fee-per-byte choices are (ρ¯,ρ¯)=(MCs+γs¯μ,(\overline{\rho}^{*},\underline{\rho}^{*})=(MC_{s}+\frac{\gamma}{\bar{s}\mu}, MCs)MC_{s}),

    • the waiting tax rate vector (PHH,PHL,PLH,PLL)4(P_{HH}^{*},P_{HL}^{*},P_{LH}^{*},P_{LL}^{*})\in\mathbb{R}^{4} satisfies the following conditions:

      {(NH1)PHH+NLPHL=0,(25a)NHPLH+(NL1)PLL=0.(25b)\hskip 38.41121pt\begin{cases}(N_{H}-1)P_{HH}^{*}+N_{L}P_{HL}^{*}=0,\hskip 25.60747pt\text{\emph{(25a)}}\\ N_{H}P_{LH}^{*}+(N_{L}-1)P_{LL}^{*}=0.\hskip 30.5867pt\text{\emph{(25b)}}\\ \end{cases}
  • If RH>Ms¯Cs+γμR_{H}>M\bar{s}C_{s}+\frac{\gamma}{\mu}, then

    • the fee-per-byte choices are (ρ¯,ρ¯)=(RHs¯γs¯μ,(\overline{\rho}^{*},\underline{\rho}^{*})=(\frac{R_{H}}{\bar{s}}-\frac{\gamma}{\bar{s}\mu}, MCs)MC_{s}),

    • the waiting tax rate vector (PHH,PHL,PLH,PLL)4(P_{HH}^{*},P_{HL}^{*},P_{LH}^{*},P_{LL}^{*})\in\mathbb{R}^{4} satisfies the conditions in (26) and the intermediate variables g1g_{1} and g2g_{2} are shown in (27) and (28), respectively.

Next we discuss the insights of Theorem 3. If RHMs¯Cs+γμR_{H}\leqslant M\bar{s}C_{s}+\frac{\gamma}{\mu}, both types of users have low transaction on-chain utilities (i.e., RLRHMs¯Cs+γμR_{L}\leqslant R_{H}\leqslant M\bar{s}C_{s}+\frac{\gamma}{\mu}), which are insufficient to cover a transaction’s total storage costs (i.e., Ms¯CsM\bar{s}C_{s}) plus waiting time costs (i.e., γμ\frac{\gamma}{\mu}). Thus the optimal FWT mechanism prevents both types of users from generating any transactions. For any type-HH user (or type-LL user, respectively), the sum of his waiting tax payment is 0 as shown in (25a) (or (25b), respectively), due to no transaction generation.

{(NH1)PHH+NLPHL=RHρ¯s¯γ[μ(NH1)g1NLg2](μNHg1NLg2)2,(26a)NHPLH+(NL1)PLL=RLρ¯s¯γ[μNHg1(NL1)g2](μNHg1NLg2)2.(26b)\hskip 101.00728pt\begin{cases}(N_{H}-1)P_{HH}^{*}+N_{L}P_{HL}^{*}=R_{H}-\underline{\rho}^{*}\bar{s}-\dfrac{\gamma[\mu-(N_{H}-1)g_{1}-N_{L}g_{2}]}{(\mu-N_{H}g_{1}-N_{L}g_{2})^{2}},\hskip 88.20354pt\text{(26a)}\\ N_{H}P_{LH}^{*}+(N_{L}-1)P_{LL}^{*}=R_{L}-\underline{\rho}^{*}\bar{s}-\dfrac{\gamma[\mu-N_{H}g_{1}-(N_{L}-1)g_{2}]}{(\mu-N_{H}g_{1}-N_{L}g_{2})^{2}}.\hskip 93.89409pt\text{(26b)}\\ \end{cases}
g1=min{μNH+NL,1NH(μγμRHMs¯Cs)}.(27)g2={0,if RLMs¯Cs+γ(NH+NL)2NL2μ,μNH+NL1NLγμRLMs¯Cs,otherwise.(28)\hskip 11.38109ptg_{1}=\min\Big{\{}\frac{\mu}{N_{H}+N_{L}},\frac{1}{N_{H}}(\mu-\sqrt{\frac{\gamma\mu}{R_{H}-M\bar{s}Cs}})\Big{\}}.\hskip 8.53581pt\text{(27)}\hskip 31.29802ptg_{2}=\begin{cases}0,&\text{if }R_{L}\leqslant M\bar{s}Cs+\frac{\gamma(N_{H}+N_{L})^{2}}{N_{L}^{2}\mu},\\ \frac{\mu}{N_{H}+N_{L}}-\frac{1}{N_{L}}\sqrt{\frac{\gamma\mu}{R_{L}-M\bar{s}Cs}},&\text{otherwise.}\end{cases}\hskip 19.91692pt\text{(28)}

If RH>Ms¯Cs+γμR_{H}>M\bar{s}C_{s}+\frac{\gamma}{\mu}, type-HH 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 ρ¯=MCs\underline{\rho}^{*}=MC_{s} to guarantee the sufficient fee condition. Since users will generate transactions at SNE, the sum of a type-HH user’s (or type-LL 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).

max\displaystyle\max sw(𝝆,𝑷,𝝀,𝓧)\displaystyle\hskip 8.53581ptsw(\bm{\rho},\bm{P},\bm{\lambda},\bm{\mathcal{X}}) (29)
s.t. ρ¯>ρ¯0,\displaystyle\hskip 8.53581pt\overline{\rho}>\underline{\rho}\geqslant 0,
var. 𝝆=(ρ¯,ρ¯),𝑷=(PHH,PHL,PLH,PLL).\displaystyle\hskip 8.53581pt\bm{\rho}=(\overline{\rho},\underline{\rho}),\bm{P}=(P_{HH},P_{HL},P_{LH},P_{LL}).

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.

Proposition 2 shows through our careful design of the FWT mechanism, imposing the sufficient condition of (21) does not lead to any loss of social welfare.

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 nn’s total waiting tax rate qnq_{n} based on the waiting tax rate vector defined in Theorem 3, i.e.,

qn{(NH1)PHH+NLPHL,if n𝒩H,NHPLH+(NL1)PLL,if n𝒩L.q_{n}\triangleq\begin{cases}(N_{H}-1)P_{HH}^{*}+N_{L}P_{HL}^{*},&\text{if $n\in\mathcal{N}_{H}$,}\\ N_{H}P_{LH}^{*}+(N_{L}-1)P_{LL}^{*},&\text{if $n\in\mathcal{N}_{L}$.}\\ \end{cases} (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 RH>Ms¯Cs+γμR_{H}>M\bar{s}C_{s}+\frac{\gamma}{\mu}, then for any type-H user n𝒩H\forall n\in\mathcal{N}_{H} and type-L user l𝒩L\forall l\in\mathcal{N}_{L}, we have

  • if RHRL<δR_{H}-R_{L}<\delta, then qn<qlq_{n}<q_{l},

  • if RHRLδR_{H}-R_{L}\geqslant\delta, then qnqlq_{n}\geqslant q_{l},

where δ=γ(g1g2)(μNHg1NLg2)2\delta=\frac{\gamma\left(g_{1}-g_{2}\right)}{\left(\mu-N_{H}g_{1}-N_{L}g_{2}\right)^{2}} and g1g_{1} and g2g_{2} are in (27) and (28), respectively.

Corollary 2 leads to an interesting observation. When RHRL<δR_{H}-R_{L}<\delta, the protocol designer can assign a higher total waiting tax rate for a type-LL user ll (i.e., qn<qlq_{n}<q_{l}), despite such a user ll generates fewer transactions and imposes lower waiting time costs on others than a type-HH user nn. The reason is as follows. Without the waiting tax, when RLR_{L} is close to RHR_{H}, a type-LL user’s transaction generation rate will be close to a type-HH user’s. However, as RHRLR_{H}\geqslant R_{L}, the optimal FWT mechanism encourages a type-HH user to generate much more transactions than a type-LL user to maximize the social welfare. Thus, the mechanism assigns a higher total waiting tax rate to force a type-LL 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.

TABLE II: Blockchain parameters.
Blockchain throughput [6] μ=15\mu=15
The number of miners [6] M=104M=10^{4}
Average transaction size [39] s¯=150\bar{s}=150 bytes
Storage cost per byte [40] Cs=5×1010C_{s}=5\times 10^{-10}
(USD/byte)
Ratio of transaction on-chain utilities RH:RL=2:1R_{H}:R_{L}=2:1

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-HH user’s transaction on-chain utility as RH[5×104,3×103]R_{H}\in[5\times 10^{-4},3\times 10^{-3}] and the user’s impatience level as γ[105,103]\gamma\in[10^{-5},10^{-3}]. 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 γ\gamma and transaction on-chain utility RHR_{H} on the average fee-per-byte ρnavg\rho_{n}^{\text{avg}}, respectively.

  • Storage cost in this figure corresponds to all miners’ total storage cost per byte (i.e., MCsMC_{s}) 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 γ3.76×103\gamma\geqslant 3.76\times 10^{-3}. Moreover, we make an interesting observation as follows:

    Observation 1.

    As the impatience level γ\gamma increases, users pay lower average fee-per-byte ρnavg\rho_{n}^{\text{avg}} 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 RHR_{H} and the sufficient fee condition only holds when RH1.6×103R_{H}\geqslant 1.6\times 10^{-3}. Here we explain the reason for the fee-per-byte increase. As the user’s on-chain utility RHR_{H} increases, users have higher incentives to pay high transaction fees and compete for short waiting time.

Refer to caption
(a) Users’ average fee-per-byte vs. impatience level γ\gamma for RH=1.8×103R_{H}=1.8\times 10^{-3}.
Refer to caption
(b) Users’ average fee-per-byte vs. type-HH users’ transaction on-chain utility RHR_{H} for γ=5×105\gamma=5\times 10^{-5}.
Figure 5: Impact of users’ parameters on average fee-per-byte ρnavg\rho_{n}^{\text{avg}}.
Refer to caption
(a) Social welfare and improvement vs. impatience level γ\gamma for RH=1.8×103R_{H}=1.8\times 10^{-3}.
Refer to caption
(b) Social welfare and improvement vs. type-HH users’ on-chain utility RHR_{H} for γ=5×105\gamma=5\times 10^{-5}.
Figure 6: Impact of users’ parameters on social welfare swsw.

VII-A2 Social welfare

Fig. 6 (a) and (b) illustrate the impact of impatience level γ\gamma and transaction on-chain utility RHR_{H} on the social welfare swsw, 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 γ\gamma, due to the increased waiting time cost with the increasing impatience level γ\gamma. 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 γ\gamma 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 γ\gamma, 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 RHR_{H}, due to the increased on-chain utility. On the right axis, the social welfare improvement decreases in RHR_{H} 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 RHR_{H} (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

Refer to caption
Figure 7: Users’ payoffs vs. numbers of users NN.
Refer to caption
Figure 8: Jain’s fairness index vs. numbers of users NN.

In this subsection, we analyze the impact of the numbers of users NN on the user’s payoff and fairness. The range of NN is set based on minimum and maximum of daily active users of Ethereum in 2020, i.e., N[153k,537k]N\in[153\text{k},537\text{k}]. Users’ parameters are set as RH=1.8×103R_{H}=1.8\times 10^{-3} and γ=5×105\gamma=5\times 10^{-5}.

In Fig. 7, we plot the type-HH and type-LL users’ payoffs under two schemes against NN. Users’ payoffs decrease in NN 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-HH user and a type-LL user is lower under the optimal FWT mechanism than under the existing protocol. This is because type-HH users compensate type-LL users by the waiting tax.

In Fig. 8, we study the users’ payoffs in terms of Jain’s fairness index [41] (defined as (n𝒩un)2/(Nn𝒩un2)\left(\sum\nolimits_{n\in\mathcal{N}}u_{n}\right)^{2}/\left(N\sum_{n\in\mathcal{N}}u_{n}^{2}\right)) again NN. 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

Refer to caption
(a) User’s average fee-per-byte vs. storage costs ratio Cs,H/Cs,LC_{s,H}/C_{s,L}.
Refer to caption
(b) Social welfare and improvement vs. storage costs ratio Cs,H/Cs,LC_{s,H}/C_{s,L}.
Figure 9: Impact of heterogeneity of 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 Cs,HC_{s,H} and Cs,LC_{s,L} per byte, respectively. We analyze the storage costs ratio Cs,H/Cs,LC_{s,H}/C_{s,L} within the range of [1,10][1,10] 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., Cs,L=5×1010C_{s,L}=5\times 10^{-10} (USD/byte) [40]. Users’ parameters are set as RH=4×103R_{H}=4\times 10^{-3} and γ=5×105\gamma=5\times 10^{-5}.

For the FWT mechanism design problem (24), we need to reformulate it considering different storage costs, i.e.,

max\displaystyle\max sw(𝝆,𝑷,𝝀,𝓧)\displaystyle\hskip 3.1298ptsw(\bm{\rho},\bm{P},\bm{\lambda},\bm{\mathcal{X}}) (31)
s.t. ρnavgM(Cs,L+Cs,H)2,n{i𝒩|λi1+λi2>0},\displaystyle\hskip 3.1298pt\rho_{n}^{\text{avg}}\geqslant\frac{M(C_{s,L}+C_{s,H})}{2},\forall n\in\{i\in\mathcal{N}|\lambda_{i1}+\lambda_{i2}>0\},
ρ¯>ρ¯0,\displaystyle\hskip 3.1298pt\overline{\rho}>\underline{\rho}\geqslant 0,
var. 𝝆=(ρ¯,ρ¯),𝑷=(PHH,PHL,PLH,PLL).\displaystyle\hskip 3.1298pt\bm{\rho}=(\overline{\rho},\underline{\rho}),\bm{P}=(P_{HH},P_{HL},P_{LH},P_{LL}).

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 ρ¯>ρ¯M(Cs,L+Cs,H)2\overline{\rho}>\underline{\rho}\geqslant\frac{M(C_{s,L}+C_{s,H})}{2}, 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 ρnavg\rho_{n}^{\text{avg}} and social welfare swsw.

  • Fig. 9(a): Storage cost in this figure shows all miners’ total storage cost per byte (i.e., M(Cs,L+Cs,H)2\frac{M(C_{s,L}+C_{s,H})}{2}) 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 Cs,H/Cs,LC_{s,H}/C_{s,L} and the sufficient fee condition does not hold when Cs,H/Cs,L4.12C_{s,H}/C_{s,L}\geqslant 4.12. 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 Cs,H/Cs,LC_{s,H}/C_{s,L} 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 Cs,H/Cs,LC_{s,H}/C_{s,L}, 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 Cs,H/Cs,LC_{s,H}/C_{s,L} 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.