Next Article in Journal
Pure Rotational Spectrum of Benzophenone Detected by Broadband Microwave Spectrometer in the 2–8 GHz Range
Next Article in Special Issue
Blockchain-Based Distributed Patient-Centric Image Management System
Previous Article in Journal
Power Line Interference Reduction Technique with a Current-Reused Current-Feedback Instrumentation Amplifier for ECG Recording
Previous Article in Special Issue
Block Data Record-Based Dynamic Encryption Key Generation Method for Security between Devices in Low Power Wireless Communication Environment of IoT
 
 
Correction published on 15 September 2022, see Appl. Sci. 2022, 12(18), 9233.
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

Profitable Double-Spending Attacks

School of Electrical Engineering and Computer Science, Gwangju Institute of Science and Technology (GIST), 123 Cheomdangwagi-ro, Buk-gu, Gwangju 61005, Korea
*
Author to whom correspondence should be addressed.
Appl. Sci. 2020, 10(23), 8477; https://doi.org/10.3390/app10238477
Submission received: 9 November 2020 / Revised: 24 November 2020 / Accepted: 25 November 2020 / Published: 27 November 2020 / Corrected: 15 September 2022
(This article belongs to the Special Issue New Trends in Blockchain Technology)

Abstract

:
Our aim in this paper is to investigate the profitability of double-spending (DS) attacks that manipulate an a priori mined transaction in a blockchain. It was well understood that a successful DS attack is established when the proportion of computing power an attacker possesses is higher than that of the honest network. What is not yet well understood is how threatening a DS attack with less than 50% computing power used can be. Namely, DS attacks at any proportion can be a threat as long as the chance to make a good profit exists. Profit is obtained when the revenue from making a successful DS attack is greater than the cost of carrying out one. We have developed a novel probability theory for calculating a finite time attack probability. This can be used to size up attack resources needed to obtain the profit. The results enable us to derive a sufficient and necessary condition on the value of a transaction targeted by a DS attack. Our result is quite surprising: we theoretically show how a DS attack at any proportion of computing power can be made profitable. Given one’s transaction value, the results can also be used to assess the risk of a DS attack. An example of profitable DS attack against BitcoinCash is provided.

1. Introduction

A blockchain is a distributed ledger which has originated from the desire to find a novel alternative to centralized ledgers such as transactions through third parties [1]. Besides the role as a ledger, blockchains have been applied to many areas, e.g., managing the access authority to shared data in the cloud network [2] and averting collusion in e-Auction [3]. In a blockchain network based on the proof-of-work (PoW) mechanism, each miner verifies transactions and tries to put them into a block and mold the block to an existing chain by solving a cryptographic puzzle. This series of processes is called mining. However, the success of mining a block is given to only a single miner who solves the cryptographic puzzle for the first time. The reward of minting a certain amount of coins to the winner motivates more miners to join and remain in the network. As a result, blockchains have been designed so that the validity of transactions is confirmed by a lot of decentralized miners in the network.
A consensus mechanism is programmed for decentralized peers in a network to share a common chain. If a full-node succeeds in generating a new block, it has the latest version of the chain. All of the nodes in the network continuously communicate with each other to share the latest chain. A node may run into a situation in which it encounters mutually different chains more than one. In such a case, it utilizes a consensus rule with which it selects a single chain. Satoshi Nakamoto suggested the longest chain consensus for Bitcoin protocol in which the node selects the longest chain among all competing chains [1]. There are also other consensus rules [4,5], but a common goal of consensus rules is to select the single chain by which the most computation resources have been consumed based on the belief that it may have been verified by the largest number of miners.
A double-spending (DS) attack aims to double-spend a cryptocurrency for the worth of which a corresponding delivery of goods or services has already been completed. The records of payment are written in transactions and shared in a network via the status-quo chain. Thus, to double spend, attackers need to replace the status-quo chain in the network with their new one, after taking the goods or services. For example, under the longest chain consensus, this attack will be possible if an attacker builds a longer chain than the status-quo. Nakamoto [1] and Rosenfeld [6] have shown that the higher computing power is employed, the higher probability to make a DS attack successful is. In addition, if an attacker invests more computing power than that invested by a network, a success of DS attack is guaranteed. Such attacks are called the 51% attack.
In the last few years, unfortunately, blockchain networks have been recentralized [7,8], which make them vulnerable to DS attacks. To increase the chance of mining blocks, some nodes may form a pool of computing chips. The problem arises when a limited number of pools occupy a major proportion of the computing power in the network. For example, the pie chart (date accessed from BTC.com on November 24, 2020) shown in Figure 1 illustrates the proportion of computing power in the Bitcoin network as of January 2020. In the chart, five pools such as F2Pool, BTC.com, Poolin, and Huobi.pool occupy more than 50% of the total computing power of Bitcoin. In a recentralized network, since most computing resources are concentrated on a small number of pools, it could be not difficult for them to conspire to alter the block content for their own benefits, if aiming to double-spend. Indeed, there have been a number of reports in 2018 and 2019 in which cryptocurrencies such as Verge, BitcoinGold, Ethereum Classic, Feathercoin, and Vertcoin suffered from DS attacks and millions of US dollars have been lost [9].
In addition to the recentralization, the advent of rental services which lend the computing resources can be a concern as well [10]. Rental services such as nicehash.com which provide a brokerage service between the suppliers and the consumers have indeed become available. The rental service can be misused for making DS attacks easier. The presence of such computing resource rental services significantly reduce the cost of making a profit from double spending. This is because renting a required computing power for a few hours is much cheaper than building such a computing network. Indeed, nicehash.com attracts DS attackers to use their service by posting one-hour fees for renting 51% of the total computing power against dozens of blockchain networks on their website Crypto51.App (accessed on 26 November 2020).
Success by making DS attacks is possible but is believed to be difficult for a public blockchain with a large pool of mining network support. By the results in [1,6], 51% attack has been considered as the requirement for a successful DS attack [11]. This conclusion however shall be reconsidered given our result in the sequel that there are significant chances of making a good profit from DS attacks regardless of the proportion of computing power. The problem to consider, therefore, is to analyze the profitability of such attacks.
The analysis of attack profitability requires the ability to predict the time an attack will take, since the profit would be a function of time. Studies in [12,13,14,15,16,17,18,19,20] provided DS attack profitability analyses, but their time predictions were not accurate. Specifically, to make the time prediction easier, they either added impractical assumptions to the DS attack model defined by Nakamoto [1] and Rosenfeld [6] or oversimplified the time prediction formula (see Section 6 for details). Whereas, we follow the definition of DS attack in [1,6], and therefore we need to develop a new set of mathematical tools for precise analysis of attack profitability that we aim to report in this paper.

1.1. Contributions

We study the profitability of DS attacks. The concept of cut-time is introduced. Cut-time is defined to be the duration of time, from the start time to the end time of an attack. For each DS attempt, the attacker needs to pay for the cost to run his mining rig. A rational attacker would not, therefore, continue an attack indefinitely especially when operating within the regime of less than 50% computing power. To reduce the cost, the attacker needs to figure out how his attack success probability rolls out to be as the time progresses. We define that a DS attack is profitable if and only if the expected profit, the difference between revenue and cost (see Equation (33)), is positive. Our contributions are summarized into two folds:
First, we theoretically show that DS attacks can be profitable not only in the regime of 51% attack but also in the sub-50% regime where the computing power invested by the attacker is smaller than that invested by the target network. Specifically, a sufficient and necessary condition is derived for profitable DS attacks on the minimum value of target transaction. In the sub-50% regime, we also show that profitable DS attacks necessitate setting a finite cut-time.
Second, we derive novel mathematical results that are useful for an analysis of the attack success time. Specifically, the probability distribution function and the first moment expectation of the attack success time have been derived. They enable us to estimate the expected profit of a DS attack for a given cut-time. All mathematical results are numerically-calculable. All numerical examples of the theoretical results given in this paper are reproducible in our web-site (https://codeocean.com/capsule/2308305/tree).

1.2. Organization of the Paper

In Section 2, we define DS attack scenario and sufficient and necessary conditions required for successful DS attacks. Also, we define random variables that are useful in analyzing the attack profits. Section 3 comprises the analytic results of stochastics of the time-finite attack success. In Section 4, we define the profit function of DS attacks, followed by new theoretical results about the conditions for making them profitable. In Section 5, an example analysis of DS attack profitability in sub-50% regime against BitcoinCash network is given. Section 6 compares our results with related works. Finally, Section 7 concludes the paper with a summary.

2. The Attack Model

We define DS attack that we consider throughout this paper. We also define DS attack achieving (DSA) time, which is the least time spent for an occurrence of double-spending. The DSA time is a random variable derived from a random walk of Poisson counting processes (PCP).

2.1. Attack Scenario

We extend a DS attack scenario which has been considered by Nakamoto [1] and Rosenfeld [6]. Specifically, we add a time-finite attack scenario. There are two groups of miners, the normal group of honest miners and a single attacker. The normal group tends the honest chain.
When the attacker decides to launch a DS attack, he/she makes a target transaction for the payment of goods or services. In the target transaction, the transfer of cryptocurrency ownership from the attacker to a victim is written. We denote t = 0 as the time at which the last block of the honest chain has been generated. At time t = 0, the attacker announces the target transaction to normal group so that normal group starts to put it into the honest chain. At the same time t = 0, the attacker makes a fork of the honest chain which stems from the last block and builds it in secret. We refer to this secret fork as fraudulent chain. In the fraudulent chain, a fraudulent transaction is contained which alters the target transaction in a way that deceives the victim and benefits the attacker.
Before shipping goods or providing services to the attacker, the victim will obviously choose to wait for a few more blocks on the honest chain in addition to the block on which the his/her transaction has been entered, i.e., so-called block confirmation. Karame et al. [21] showed the importance of block confirmation: attackers are able to double-spend against zero block-confirmation even without mining a single block on the fraudulent chain at all. The number of blocks the victim chooses to wait for is referred to as the block confirmation number N B C , which includes the block on which the target transaction is entered.
The attacker chooses to make the fraudulent chain public if his/her attack was successful. An attack is successful if the fraudulent chain is longer than the honest chain after the moment the block confirmation is satisfied. We define two necessary conditions G 1 , G 2 , for a success of DS attack:
Definition 1.
A DS attack succeeds only if there exists a DS attack achieving (DSA) time T D S A 0 , such that
  • G 1 : (block confirmation) the length of the honest chain for the duration of time T D S A has grown greater than or equal to NBC, and
  • G 2 : (success in PoW competition) the length of the fraudulent chain for the duration of time T D S A has grown longer than that of the honest chain.
Rational attackers will not wait for his success indefinitely since growing the attacker’s chain incurs the expense per time spent for operating the computing power. The attack thus shall put a limit to the end time to cut loss. We refer to this end time as the cut-time t c u t + . A sufficient condition for the success of DS attack can be defined with applying the cut-time t c u t :
Definition 2.
For a given cut-time t c u t + , the success of DS attack is declared if, and only if, there exists a DSA time T D S A 0 , t c u t at which G 1 and G 2 in Definition 1 have been achieved.

2.2. Stochastic Model

We model the conditions in Definition 2 with a stochastic model. We fit the block generation process using the PCP [22] with a given block generation rate λ (blocks per second). Including Nakamoto [1] and Rosenfeld [6], it has been most conventional to analyze the block generation process of a blockchain using PCP. A rationale why the block generation process is modeled as PCP is given in Bowden et al. [23], where experiments show the fitness of PCP model to real data samples from a live network.
We denote the lengths of the honest chain and the fraudulent chain over time t 0 , by two independent PCPs, H t 0 with the block generation rate λ H (blocks per second) and A t 0 with the block generation rate λ A , respectively. Both processes start at the time origin t = 0 (at which the DS attack is launched) at which the both chains are at the zero states, i.e., H 0 = A 0 = 0 . Each chain independently increases at most by 1 at a time point. An increment of 1 in the counting process occurs when the pertinent network adds a new block to its chain.
We represent the difference between A t and H t in a discrete-time domain as a random walk S i for i . For this purpose, we first define two continuous stochastic processes M t and S t , which are respectively defined as
M t : = H t + A t ,
and
S t : = H t A t .
The first process M t is also a PCP [22] with the rate
λ T : = λ A + λ H .
The second process S t is the continuous-time analog of the random walk S i for i such that
S i : = S T i ,
where T i is the state progression time defined by
T i : =   inf   t + : M t = i   ,
which increases as i increases. Random walk S i is a stationary Markov chain starting from S 0 = 0 . The state transition probabilities [22] are given by
p A : = Pr S i = n 1 | S i 1 = n = λ A λ T ,
and
p H : = Pr S i = n + 1 | S i 1 = n = λ H λ T ,
for all i and n . The state transition probabilities p H and p A are the proportions of computing power occupied by the normal miners and that by the attacker, respectively.
We define independent and identically distributed (i.i.d.) state transition random variables Δ i ± 1 ~ Bernoulli p H as
Δ i : = S i S i 1 ,
for i . Note that S i = k = 0 i Δ k .
Definition 3.
A DS attack DS p A , t c u t ; N B C is a random experiment that picks a sample ω Ω . Each element ω is an infinite-length sequence of pairs of T i and Δ i in Equations (5) and (8) for all i , i.e.,
ω : = T 1 , Δ 1 , T 2 , Δ 2 , , T , Δ .
The set Ω is the universal set of all possible ω , i.e.,
Ω : = ω + × ± 1 .
For given a DS sample ω   Ω and a state index i , we denote projections
π T i ω : = T i
and
π Δ i ω : = Δ i
that retrieve the progression time T i and the transition Δ i of the i -th state, respectively.

2.3. DS Attack Achieving Time

Definition 4.
For a DS sample ω of DS p A , t c u t ; N B C , we define the DSA time T D S A which measures the least one among the state progression times π T i ω of state indices i at which ω achieves the necessary conditions G 1 and G 2 in Definition 1.
To express T D S A as a random variable, we construct event sets D j 1 Ω and D i , j 2 Ω . The sets D j 1 for j N B C , N B C + 1 , , consist of DS samples ω which achieves the block confirmation G 1 at state j for the first time. The sets D i , j 2 for i j , j + 1 , , and j N B C , N B C + 1 , , consists of ω which achieves the success in the PoW competition G 2 at state i for the first time, given that G 1 has been already achieved at state j . Subsequently, we aim for the samples ω D j 1 D i , j 2 to achieve the two conditions in Definition 1 at a state pair i , j for the first time.
Formally, we first construct a set D j 1 focusing only on the first j transitions Δ k for k = 1 , , j of DS samples ω Ω with two requirements; one is that they must have N B C number of + 1 ’s and j N B C number of 1 ’s; and the other is that the j -th transition Δ j must be + 1 to guarantee that they have never been achieved in any states prior to the state j . The former requirement implies that all ω D j 1 hold S j = k = 1 j π Δ i ω = 2 N B C j . For example, when N B C = 2 and j = 5 , a sequence + 1 , 1 , 1 , 1 , + 1 , of state transitions satisfies the first requirement, and also satisfies S j = 2 N B C j .
We next construct a set D i , j 2 Ω which does not care about the first j transitions Δ k for k = 1 , , j , but only focuses on the interim transitions Δ m for m = j + 1 , , i . By the definition, all sequences ω D i , j 2 must achieve G 1 before the j -th state, which implies that they must hold S j = 2 N B C j . The rest requirement for each ω D i , j 2 is that the state changes from starting state S j = 2 N B C j to state S i = 1 , while any interim states S k remain non-negative; i.e., S k 0 for each k = j + 1 , , i 1 .
The sets D j 1 for all j are mutually exclusive as each of them represents the first satisfaction of the block confirmation condition exactly at the j -th state. For example, if ω D 5 1 then ω D 6 1 since ω already has achieved the block confirmation at the 5-th state for the first time before reaching the 6-th state. The sets D i , j 2 for all i , j are also mutually exclusive for the same reason. Thus, their intersections D j 1 D i , j 2 for all i , j are also mutually exclusive.
By Definition 4, the attack achieving time T D S A can be measured if there exist index pairs i , j such that ω D j 1 D i , j 2 . By the mutual exclusivity of D j 1 D i , j 2 , if there exists such a pair i , j , it must be unique. In addition, if ω D j 1 D i , j 2 , T D S A equals π T i ω , since the state progression time T k is non-decreasing as k increases. As the result, T D S A can be rewritten as follows,
T D S A = π T i ω , i f   i , j 2 :   ω D j 1 D i , j 2 , , o t h e r w i s e .

3. The Attack Probabilities

We aim to calculate the probability distribution function (PDF) of the DSA time T D S A . Using this, the success probability of DS attack with a given cut-time t c u t can be figured out as the probability that T D S A < t c u t . Also, the expectation of attack success time can be calculated. The expected attack success time will be used in Section 4 to estimate the attack profits.
From Equation (13), the PDF of T D S A requires the probabilities of two random events: one is the state progression time T i in Equation (5); and the other is the event that a given state index i satisfies ω D j 1 D i , j 2 . It has been well known that T i follows Erlang distribution [22] given as
f T i t = λ T λ T t i 1 e λ T t i 1 ! .
We provide the probability for the latter event, i.e., p D S A , i = Pr ω D j 1 D i , j 2 in the following Lemma 1:
Lemma 1.
For a sample ω of random experiment DS p A , t c u t ; N B C , the probability p D S A , i = Pr ω D j 1 D i , j 2 can be computed as
p D S A , i = j = N B C j = 2 N B C j 1 N B C 1 C i 1 2 N B C , 2 N B C j p A i + 1 2 p H i 1 2 + i 1 N B C 1 p H N B C p A i N B C
for odd i > 2 N B C , where C n , m is the ballot number [24] given by
C n , m : = m + 1 n + m + 1 2 n + m n , n , m + 0 , 0 , o t h e r w i s e ,
and for i 2 N B C and for all even-numbered i , p D S A , i = 0 .
Proof. 
See Appendix A. □
By taking infinite summations of p D S A , i in Lemma 1 for all indices i , we can compute the probability D S A that a DS attack will ever achieve the necessary conditions in Definition 1.
Corollary 1.
For a sample ω of random experiment DS p A , t c u t ; N B C with t c u t = , the probability D S A has an algebraic expression
D S A = 1 , p H p A , 1 p A N B C + 1 p H N B C j = N B C 2 N B C j 1 N B C 1 A j , p H > p A ,
where
A j : = p A j 2 N B C 1 p H j 2 N B C 1 .
Proof. 
See Appendix B. □
From Equation (13), the PDF of T D S A follows the PDF of T i at a given state index i , if at which it holds that ω D j 1 D i , j 2 , with the probability of p D S A , i . If there does not exist such an index i , with the probability of 1 D S A , then T D S A = . Thus, we can write the PDF f T D S A of T D S A as follows,
f T D S A t = i = 2 N B C + 1 p D S A , i f T i t + 1 D S A δ t ,
where δ t is the Dirac delta function.
Proposition 1.
The PDF f T D S A has an analytic expression:
f T D S A t = p A λ T e λ T t p A p H λ T t 2 N B C 2 N B C ! j = N B C j = 2 N B C j 1 N B C 1   2 F 3 a ; b ; p A p H λ T t 2 + e λ T t t p H λ T t N B C N B C 1 ! e p A λ T t i = 0 N B C p A λ T t i i ! + 1 D S A δ t ,
where p F q a ; b ; x is the generalized hypergeometric function (See Appendix E for definition) with the parameter vectors
a = N B C + 1 j / 2 N B C + 1 / 2 j / 2
and
b = 2 N B C + 2 j N B C + 1 N B C + 1 / 2 .
Proof. 
See Appendix C. □
By Definition 2, the probability A S that a DS attack DS p A , t c u t ; N B C succeeds equals
A S t c u t = Pr T D S A < t c u t
Note that for a special case of t c u t = , A S t c u t = D S A , which coincides with the result in Rosenfeld [6].
It will be shown to be convenient to define the attack success time T A S of a DS attack as
T A S : = T D S A , i f   T D S A < t c u t , not   defined , o t h e r w i s e .
A random variable for T D S A > t c u t does not need to be defined since it is not useful. The PDF f T A S of T A S is just a scaled version of f T D S A t for 0 < t < t c u t , which is given in Equation (20), with a scaling factor of A S 1 . Formally, the PDF f T A S t equals
f T A S t = f T D S A t A S , f o r   0 t < t c u t , 0 , f o r   t t c u t .
The expectation of attack success time is computed as
𝔼 T A S t c u t = 0 t c u t t f T D S A t d t A S t c u t .
The following Proposition 2 gives an explicit formula of 𝔼 T A S for the special case when t c u t = .
Proposition 2.
Let p M : = max p A , p H , p m : = min p A , p H . If t c u t = , the expectation 𝔼 T A S t c u t has a closed-form expression:
lim t c u t 𝔼 T A S t c u t = λ T 1 j = N B C 2 N B C j 1 N B C 1 Z j + N B C p H D S A ,
where
Z j : = p A p m N B C p M N B C j + 1 2 N B C 2 j p m + 1 p M p m j p A N B C j p H N B C .
Proof. 
See Appendix B. □

4. Profitable DS Attacks

The previous probabilistic analyses in [1,6] have shown that the success of DS attacks is not guaranteed when p A < 0.5 . However, DS attacks with p A < 0.5 can be vigorously pursued as long as they bring profit.
We analyze the profitability of DS attacks and to this end, we define a profit function P of a DS attack DS C , p A , t c u t ; N B C , where C is the value of a fraudulent transaction, in terms of revenue and operating expense (OPEX) of the computing power.
The OPEX X (e.g., the rental fee for the computing power) and the block mining reward R tend to increase with respect to λ A and the time t consumed during the attack. Thus, X and R are expressed as functions of λ A and t , and they can be any increasing function; e.g., linear, exponential, or logarithm. We define X and R , respectively, as follows:
X λ A , t : = γ λ A t log x 1 x 2 λ A log x 3 x 4 t
for real constants γ > 0 , x 1 , x 2 > 1 , and x 3 , x 4 > 1 , and
R λ A , t : = β λ A t log r 1 r 2 λ A log r 3 r 4 t
for real constants β > 0 , r 1 , r 2 > 1 , and r 3 , r 4 > 1 . We denote the ratio of γ and β by
μ : = β γ 1 .
With regards to P , if an attack succeeds, the revenue comes from C , as it is double-spent, added to R for the number of blocks mined during the time duration T A S , i.e., R λ A , T A S . In this case, the cost is the OPEX for the time duration T A S , i.e., X λ A , T A S . If the attack fails, the cost is the OPEX X λ A , t c u t for the time duration t c u t , and there is no revenue. Hence, for a DS attack DS C , p A , t c u t ; N B C , we define P as follows,
P : = C + R λ A , T A S X λ A , T A S , i f         T D S A < t c u t , X λ A , t c u t , o t h e r w i s e .
Subsequently, the expected profit function is
𝔼 P = A S t c u t C + 𝔼 R λ A , T A S 𝔼 X λ A , T A S 1 A S t c u t X λ A , t c u t = A S t c u t C + 𝔼 R λ A , T A S 𝔼 X ,
where 𝔼 X is the expected OPEX defined as
𝔼 X : = A S t c u t 𝔼 X λ A , T A S + 1 A S t c u t X λ A , t c u t .
Definition 5.
A DS attack DS C , p A , t c u t ; N B C is said to be profitable if and only if the expected profit 𝔼 P > 0 , where 𝔼 P is defined in Equation (33).
The key factor in determining the profitability of DS attacks is the value C of the fraudulent transaction. Thus, attackers would be interested in the minimum value required for profitable DS attacks [25]. Definition 5 implies that a DS attack DS C , p A , t c u t ; N B C is profitable if and only if C > C Req . , where the required value of target transaction C Req . is
C Req . = 𝔼 X A S 𝔼 R λ A , T A S .
The following results in Theorem 1 and Theorem 2 focus on the case where both X λ A , t and R λ A , t are linearly increasing functions of λ A and t .
Theorem 1.
Suppose x 1 = x 2 and x 3 = x 4 in Equation (29), and r 1 = r 2 and r 3 = r 4 in Equation (30). Then, a DS attack DS C , p A , t c u t ; N B C for any p A 0 , 1 and for any t c u t 0 , is profitable if and only if C > C Req . , where
C Req . = 1 A S t c u t A S t c u t γ λ A t c u t μ 1 γ λ A 𝔼 T A S t c u t .
Proof. 
Substituting x 1 = x 2 , x 3 = x 4 , r 1 = r 2 , and r 3 = r 4 into Equation (35) results in Equation (36). □
Theorem 1 shows that not only superior attackers with p A 0.5 , 1 but also inferior attackers with p A 0 , 0.5 are able to expect profitable DS attacks once a high enough value C greater than C Req . of the target transaction is designed. The condition C Req . in Equation (36) can be pre-computed before carrying out an attack, as it stochastically estimates the future expected cost, for a given position p A 0 , 1 and a cut-time t c u t of an attacker, and a given set of network environment parameters γ and β .
Table 1 and Table 2 list the resources including C Req . , 𝔼 X , and 𝔼 T A S required for profitable DS attacks respectively using p A = 0.35 and p A = 0.4 , when t c u t = c N B C λ H 1 with c = 4 . Note that the expectation of the time spent for the block confirmation equals N B C λ H 1 , and we let t c u t linear to it. In other words, as normal traders wait for N B C λ H 1 seconds on the average, attackers shall be tolerable as well and wait for the same scale of time duration. Note that the A S for N B C = 1 is smaller than that for N B C = 3 due to not long enough t c u t . We scaled the results by parameters λ H and γ , which we will explain how to obtain from the internet in the next subsection.
The following Theorem 2 is for the inferior attackers with p A 0 , 0.5 and shows the importance of setting a finite t c u t .
Theorem 2.
Suppose x 1 = x 2 and x 3 = x 4 in Equation (29), and r 1 = r 2 and r 3 = r 4 in Equation (30). Then, a DS attack DS C , p A , t c u t ; N B C with p A 0 , 0.5 is profitable only if t c u t < .
Proof. 
For any p A 0 , 0.5 , it always holds that A S < 1 . In this case, if t c u t then C Req . from Equation (36); i.e., infinite value C of fraudulent transaction is required for a DS attack DS C , p A , t c u t ; N B C to be profitable. Thus, for a DS attack with p A 0 , 0.5 to be profitable, a finite cut-time t c u t < must be set. □
Theorem 2 shows that for p A 0 , 0.5 , setting t c u t = is expected to incur infinite deficit. On the contrary, for p A 0.5 , 1 , what we have numerically checked out but omitted due to space limitation is the result that 𝔼 P is an increasing function of t c u t ; i.e., setting t c u t = is the optimal choice in the superior attack regime. Applying p A 0.5 , 1 and t c u t = into Equation (36) leads to A S = 1 , and thus C Req . turns into
C Req . = μ 1 γ λ A 𝔼 T A S ,
where a closed-form expression of 𝔼 T A S is given in Proposition 2. In this case, if β > γ ; i.e., μ > 1 , DS attacks are always profitable regardless of C . According to nicehash.com, most networks maintain β > γ by the economic equilibrium. As the result, in addition to the results in [1] and [6] that DS attacks with p A 0.5 , 1 guarantee probabilistic success, we show that such attacks guarantee economic gain as well.

5. Practical Example of Profitable DS Attacks against BitcoinCash

We analyze resources required for profitable DS attacks against BitcoinCash network. The resources include the computing power proportion p A , expected OPEX 𝔼 X , expected attack success time 𝔼 T A S , and the required value of fraudulent transaction C Req . .
To this end, we first recall the parameters involved in block mining reward R and the OPEX X . The parameters used in Equation (29) and Equation (30) are assumed to x 1 = x 2 , x 3 = x 4 , r 1 = r 2 , and r 3 = r 4 which lead to linear functions X λ A , t and R λ A , t with respect to λ A and t . There are three more parameters: γ , β , and λ H 1 . From Equation (29) and Equation (30), the parameter γ is the expected cost spent per generating a block; and the parameter β is the reward per generating a block. Parameter λ H 1 is the average block generation time of the honest chain. All the parameters are different for each blockchain network.
In BitcoinCash, the reward β per block mining was 12.5 BCH (without transaction fees), which is around β = 0.44 BTC per block mining (as of 26 February 2020). The average block generation time was fixed at λ H 1 = 600 seconds.
The parameter γ is obtainable from nicehash.com. BitcoinCash uses the SHA-256 cryptographic puzzle for which the unit of computation is hash. As of 26th Feb. 2020, the rental fee for 1-peta (P) hashes per second for a day was around 0.017 BTC, which was around 1.97 × 10 7 BTC per second. In other words, the rental fee was approximately 1.97 × 10 22 BTC per the computing of a hash. Referring to BTC.com, the network’s computing speed is 3.57-exa (E) hashes per second; i.e., 3 . 57 E 600 = 2142 E hashes are needed to generate one block on the average. As the result, the parameter γ is obtained as
γ = 1.97 × 10 22   BTC / hash × 2142 E hashes / block   mining 0.422   BTC / block   mining .
Note that it holds β > γ . From Equation (37), this relationship makes DS attack DS C , p A , t c u t ; N B C with p A > 0.5 and t c u t = always profitable regardless of the value C of target transaction.
In case of DS attacks with p A < 0.5 , the cut-time t c u t must be determined as a finite value for profitable DS attacks by Theorem 2. We set t c u t = c N B C λ H 1 = 12000 seconds with c = 4 and p A = 0.35 . We compute the resources required for profitable DS attacks against BitcoinCash when N B C = 5 . Results are obtainable from the values in Table 1 and Table 2 by multiplying the scaling parameters γ = 0.422 and λ H 1 = 600 and by substituting μ = β γ 1 = 1.04 and c = 4 .
As the results, we obtain A S 0.218 , 𝔼 T A S 5200 seconds, 𝔼 X 3.98 BTC, and C Req . 16.22 BTC. One can compute expected running time; i.e., the expected time spent for a single DS attack attempt as A S 𝔼 T A S + 1 A S t c u t , which is around 2 h and 55 min. That is to say, attackers can repeatedly perform n number of attacks every 2 h and 55 min on the average. With the value C of target transaction, by the strong law of large numbers, the multiple attack attempts will return net profit n P A S t c u t C C Re q . as n with probability 1.

6. Related Works

By Nakamoto [1] and Rosenfeld [6], the probabilities have been studied that a DS attack will ever succeed when there is no time limit, i.e., the cut-time is set to t c u t = . Both of them applied PCPs to model the growth of chains H t and A t . On one hand, the main difference between them was in probability calculations of the block confirmation process in Definition 1. Rosenfeld applied the PCPs to both H t and A t , whereas Nakamoto assumed the time spent for H t N B C deterministic to simplify the calculation. On the other hand, they both used the gambler’s ruin approach to obtain the asymptotical behavior of S i as i by manipulating the recurrence relationship between two adjacent states. Namely, their results are based on an assumption that an indefinite number of attack chances are given [12].
On the contrary, we introduce the cut-time t c u t which generalizes analytical framework to the more interesting finite attack time and inferior attacker regime. By setting t c u t infinite, the same result D S A was obtained in [6] as well. By setting a finite t c u t , our results shall be useful when attack chances are limited due to limited amount of resources such as time and cost. In addition, we show in Theorem 2 that DS attacks with p A < 0.5 must set a finite t c u t in order to expect a non-negative profit. It shall be noted that there has been no intermediate result like p D S A , i in Lemma 1. We use Lemma 1 to derive the novel results.
Rosenfeld [6] and Bissias et al. [13] have analyzed the profitability of DS attacks. However, they put additional assumptions on the attack scenario to simplify the calculation of the attack time. Specifically, Rosenfeld assumed the attack time to be a constant. Bissias et al. assumed that the attack stops if either the normal peers or the attacker achieves the block confirmation first. On the contrary, in our model, an attack can be continued for a random attack time as long as it brings profit, even if the normal peers achieve the block confirmation before the attacker does.
In Zaghloul et al. [14], the profit of DS attack has been analyzed. Interestingly, they have discussed the need of cut-time for DS attacks with p A < 0.5 , which is theoretically proven in this paper in Theorem 2. They also calculated the profit of DS attacks with a finite time-limit (see Section IV-C in [14]), but their calculation was not as precise as ours in three points:
First, the probability of attack success within a finite time-limit, i.e., A S t c u t in Equation (23) was never considered, which requires the distribution of the DS achieving time, i.e., TDSA given in Proposition 1. Instead, their calculation used D S A referring to the result in Rosenfeld [6]. This contradicts their time-limited attack scenario, since D S A in [6] was resulted from the assumption of infinite time-limit.
Second, they approximated costs and revenues of DS attack spent within a time-limit. Estimation of the costs and revenues requires estimations of the numbers of blocks respectively mined by honest nodes and attackers within a time-limit, but those were assumed to be constant. This was due to the absence of the time analysis we provide in Proposition 1.
Third, they assumed the average block generation rates λ H , λ A respectively by honest miners and by attackers are always the same. Since, the proportions p H , p A of computing power occupied by the two groups can be quite different in general, such a result is not very useful. We agree to their assumption that most blockchains control the difficulty of block mining puzzle to keep the average speed of block generation constant, and thus λ H can be considered as a constant. However, λ A should be left as a varying quantity by p A . The fact is that the computing power invested by the attacker cannot be monitored by the honest network and thus it cannot be reflected in the difficulty control routine.
Budish [15] conducted simulations on the profitability of DS attacks only in the cases of p A > 0.5 . Under the cases, a condition on the value of the target transaction that makes DS attacks not profitable has been given based on the simulations. We give theoretical and numerically-calculable results for any p A 0 , 1 , which do not require massive simulations.
Gervais et al. [16] and Sompolinsky et al. [12] have used a Markov decision process (MDP) to analyze profits from DS attacks. These works differ from our contributions in the following regards:
First, they did not follow the DS attacks scenario considered by Nakamoto [1] and Rosenfeld [6]. Instead, the scenario in [12] was a special case of the pre-mining strategy which was introduced in [17,18]. We show that the success of DS attack under this scenario is even more difficult to occur than the success of the DS attack under the scenario of Nakamoto and Rosenfeld (see Appendix D for details). Also, the attack scenario in [16] went even further by modifying the condition for block confirmation in Definition 1. Specifically, under our definition, it is required for the honest chain to have added N B C blocks, while under their condition it was fraudulent for the chain to do so (see Section 3 of [16]). Thus, it was not ensured that the potential victim has shipped the goods or service, and an attack success did not guarantee for the attacker to obtain the benefit of attacking.
Second, one important new advance in this paper is the derivation of the time analysis f T A S given in Proposition 1. When one uses the MDP framework, one can obtain similar information such as the estimations for the attack success time E T A S , the future profit P that an attacker will earn in the end, and the minimum value of target transaction C Req . . However, using MDP to make such estimations would have required extensive Monte Carlo simulations. Using our mathematical results, such estimations can be obtained without Monte Carlo simulations.
In addition, we believe that our mathematical results can be utilized in the MDP frameworks to improve the reliability of analyses. Conventionally, a rational user of an MDP will make a decision at every state whether to stop or to continue the process by comparing the rewards that will be incurred in the future by his/her decision. The rewards for stop actions are clear because such actions are either an attack success or a give-up. The reward for the continue action is complex because it needs to consider all the actions in all future possible states as well. In [12,16], the rewards for the continue action were over-simplified as they were evaluated only for the very next state and did not include the estimation of the profits in further future actions. To improve the reliability, the PDF f T A S in Proposition 1 can be used at any intermediate Markov state to estimate the future profits. Specifically, the conditional expectation of the time left for an attack success T A S given T A S > τ can be calculated using f T A S , where τ is the observable time elapsed for reaching the current state. Once the time left is estimated, the estimation of future profits can be updated by substituting it into Equation (33). That is to say, at each state, the estimation of profits can be updated and used as the rewards resulting from the continue action.
Goffard [19] and Karame et al. [20] have derived the PDFs of attack success time, but none of their DS attack scenarios matched with ours in Definition 1. In [19], Goffard derived the PDF of catch-up time spent for the fraudulent chain to catch up with the honest chain given that the length of honest chain is initially ahead by several blocks. The author used counting processes such as order statistic point process and renewal process which are more general than PCP, but there was no analytic result similar to what is given in Proposition 1. In [20], Karame et al. derived the PDF of the first attack success time under a fast-payment model which fixed N B C = 0 . To sum up, the attack success time in neither analysis included the time spent for achieving the first condition: the block confirmation should be realized.

7. Discussion and Conclusions

We showed that DS attacks using 50% or a lower proportion of computing power can be profitable and thus quite threatening. We provided how much quantitative resources are required to make a profitable DS attack. We derive the PDF of attack success time which enables us to figure out the operating time and the expense of mining rigs. We provided MATLAB codes on the website (https://codeocean.com/capsule/2308305/tree) for numerical evaluation of the expected profit function in Equation (33). We also listed an example of the minimum resources required for a profitable DS attack, which is applicable to any blockchain networks by substituting the network parameters γ , β , and λ H . We also showed a more specific example of the required resources against BitcoinCash network.
Our results quantitatively guide how to set a block confirmation number for a safe transaction. The lower the block confirmation number is, the lower the minimum resource is required for a profitable attack. A solution can be utilized by the network developers to discourage such an attack. On the one hand, given a block confirmation number, we can have the value of any transaction to be set below the required value of making a profitable attack in a given network. On the other hand, given the value of transaction, the network can provide a service to inform the payee with the lowest block confirmation number that leads to negative DS attack profit.

Author Contributions

Conceptualization, J.J. and H.-N.L.; methodology, J.J.; software, J.J.; validation, J.J.; formal analysis, J.J.; investigation, J.J.; resources, J.J.; data curation, J.J.; writing—original draft preparation, J.J.; writing—review and editing, J.J. and H.-N.L.; visualization, J.J. and H.-N.L.; supervision, H.-N.L.; project administration, H.-N.L.; funding acquisition, H.-N.L. All authors have read and agreed to the published version of the manuscript.

Funding

This research was partially funded by Institute of Information & Communications Technology Planning & Evaluation, grant number 2020-0-00958. This work was partially supported by a National Research Foundation of Korea (NRF) grant funded by the Korean government (MSIP) (NRF-2018R1A2A1A19018665).

Conflicts of Interest

The authors declare no conflict of interest. The funders had no role in the design of the study; in the collection, analyses, or interpretation of data; in the writing of the manuscript, or in the decision to publish the results.

Appendix A

Proof of Lemma 1.
For a given sample ω and a given index i , the event ω D j 1 D i , j 2 is equivalent to the event that there exists an intermediate state index j such that ω D j 1 D i , j 2 . By the mutual exclusiveness of D j 1 D i , j 2 for integers j , such a state j is unique if it exists. Thus, we can write the probability p D S A , i as follows,
p D S A , i = Pr j :   ω D j 1 D i , j 2 = j = N B C Pr ω D j 1 D i , j 2 .
Note that D j 1 D i , j 2 = ϕ for i 2 N B C , since the minimum number of states for an attack success is 2 N B C + 1 : N B C number of + 1 ’s state transitions for the block confirmation; and N B C + 1 number of 1 ’s state transitions for the success of PoW competition. Thus, p D S A , i = 0 for i 2 N B C . □
We further explore D j 1 and D i , j 2 . We divide the domain of state index j in Equation (A1) into two exclusive domains; one is j 2 N B C ; and the other is j > 2 N B C . First, for j 2 N B C , two sets D j 1 and D i , j 2 are independent, since their requirements on the state transitions are focusing on disjoint indices of state by their definitions. Formally, Pr ω D j 1 D i , j 2 = Pr ω D j 1 Pr ω D i , j 2 . Second, we explore the domain j > 2 N B C . By the definition of D j 1 , all ω D j 1 satisfy S j = k = 1 j π Δ k ω = 2 N B C j . Thus, for every j > 2 N B C , S j is already negative, which implies all ω D j 1 satisfy both and at state j . The set D i , j 2 = ϕ for j > 2 N B C and j < i , since the state S j = 2 N B C j contradicts one requirement of D i , j 2 : the interim transitions between the states j and i should be non-negative. For j > 2 N B C and j = i , let us set D i , j 2 = Ω , since there is no interim state to apply the requirement to. To sum up, D j 1 D i , j 2 = D i 1 for j > 2 N B C and i = j , and D j 1 D i , j 2 = ϕ for j > 2 N B C and i > j . Subsequently, Equation (A1) is computed as
p D S A , i = j = N B C 2 N B C Pr ω D j 1 Pr ω D i , j 2 + Pr ω D i 1 .
We now compute the ingredient probabilities Pr ω D j 1 and Pr ω D i , j 2 in Equation (A2). First, by the definition, all samples in D j 1 must have N B C 1 number of + 1 ’s state transitions among the first j 1 transitions. And the rest of the j 1 transitions must be valued by 1 . In addition, the j -th transition must be valued by + 1 so that the block confirmation is achieved exactly at the j -th state index. As the result, the probability Pr ω D j 1 equals the point mass function of a negative binomial distribution:
Pr ω D j 1 = j 1 N B C 1 p H N B C p A j N B C .
Second, computing the probability Pr ω D i , j 2 starts from counting the number of combinations of state transitions satisfying the requirements of set D i , j 2 . Recall the requirements on every element of D i , j 2 , for j = N B C , , 2 N B C , are that the state starts from the state S j = 2 N B C j and ends at the state S i = 1 while all the i j 1 number of interim states remain nonnegative. The i -th transition should be Δ i = 1 so that the success of PoW competition is achieved exactly at the state index i. The number of combinations of such state transitions can be counted using the ballot number C n , m [24], which is the number of random walks that consist of 2 n + m steps and never become negative, starting from the origin and ending at the point m . In our problem, the number of random walk steps is 2 n + m = i j 1 with m = 2 N B C j . As a result, by multiplying the probabilities p A and p H for state transitions, the probability Pr ω D i , j 2 is computed as
Pr ω D i , j 2 = C n , m p A n + m + 1 p H n ,
where 2 n + m = i j 1 and m = 2 N B C j .
Finally, substituting Equations (A3) and (A4) into Equation (A2) results in Equation (15).

Appendix B

Proof of Corollary 1.
Taking infinite summations of p D S A , i for all indices i results in D S A :
D S A = i = 2 N B C + 1 p D S A , i
By substituting p D S A , i in Lemma 1 into Equation (A5), the probability D S A becomes
D S A = j = N B C 2 N B C j 1 N B C 1 p A i = 2 N B C + 1 C i 1 2 N B C , 2 N B C j p A p H i 1 2 + p H p A N B C i = 2 N B C + 1 i 1 N B C 1 p A i .
By rearranging the indices i in the summations, we can obtain
D S A = j = N B C 2 N B C j 1 N B C 1 p A i = 0 C i , 2 N B C j p A p H i + N B C + p H p A N B C i = N B C i 1 N B C 1 p A i i = N B C 2 N B C i 1 N B C 1 p A i .
We define two generating functions as
M k x : = i = 0 C i , k x i ,
and
G k x : = i = k i k x i .
By substituting M k and G k into Equation (A7), we can write
D S A = j = N B C 2 N B C j 1 N B C 1 p A p A p H N B C M 2 N B C j p A p H   + p H p A N B C p A G N B C 1 p A i = N B C 2 N B C i 1 N B C 1 p A i
The function M k x is a generating function of the ballot numbers C i , k , for which the algebraic expression given in [26] is
M k x = 2 1 + 1 4 x k + 1 .
Putting x = p A p H into M k x results in
M k p A p H = 2 1 + 1 4 p A p H k + 1 = 2 1 + 1 4 p A 1 p A k + 1 , i f   p A < p H , 2 1 + 1 4 1 p H p H k + 1 , i f   p A p H = 1 p M k + 1 ,
where p M : = max p H , p A . The function G k x is a generating function of binomial coefficients, and the algebraic expression for it is given in [27]:
G k x = x k 1 x k + 1 .
Putting x = p A into G k x results in
G k p A = p H 1 p A p H k .
Substituting Equation (A12) and Equation (A14) into Equation (A10) provides
D S A = j = N B C 2 N B C j 1 N B C 1 p A p A p H N B C p M 2 N B C j + 1 + 1 p H p A N B C i = N B C 2 N B C i 1 N B C 1 p A i .
We define p m : = min p A , p H , then the relationship p A p H = p m p M holds. By rearranging the order of operands, we can obtain
D S A = 1 j = N B C 2 N B C j 1 N B C 1 p H p A N B C p A j p A p M p m p M N B C p M j ,
which is equal to Equation (17). □
Proof of Proposition 2.
From Equations (19) and (26), when t c u t = , we obtain
𝔼 T A S = lim t c u t 0 t c u t t f T D S A t d t A S t c u t = i = 2 N B C + 1 𝔼 T i p D S A , i D S A = i = 2 N B C + 1 i λ T p D S A , i D S A ,
where E[Ti] = T−1 [22]. By substituting PDsA,i in Equation (15) into Equation (A17) and rearranging the order of operands, we obtain
λ T D S A 𝔼 T A S = j = N B C 2 N B C j 1 N B C 1 i = 2 N B C i + 1 C i 2 N B C , 2 N B C j p A i + 2 2 p H i 2 + i = N B C 1 i + 1 i N B C 1 p A i + 1 N B C p H N B C i = N B C 1 2 N B C 1 i + 1 i N B C 1 p A i + 1 N B C p H N B C .
By rearranging the indices of summations, we arrive at
λ T D S A 𝔼 T A S = j = N B C 2 N B C j 1 N B C 1 p A N B C + 1 p H N B C i = 0 2 i + 2 N B C + 1 C i , 2 N B C j p A p H i + p A p H p A N B C i = N B C 1 i + 1 i N B C 1 p A i i = N B C 2 N B C i i 1 N B C 1 p A i N B C p H N B C .
By substituting the generating functions M k x and G k x defined respectively in Equation (A8) and Equation (A9), Equation (A19) becomes
λ T D S A 𝔼 T A S = j = N B C 2 N B C j 1 N B C 1 p A N B C + 1 p H N B C · 2 i = 0 i C i , 2 N B C j p A p H i + 2 N B C + 1 M 2 N B C j p A p H + p A p H p A N B C i = N B C 1 i i N B C 1 p A i + G N B C 1 p A i = N B C 2 N B C i i 1 N B C 1 p A i N B C p H N B C .
We use the following relationships,
i = 0 i C i , k x i = x M k x
and
i = k i i k x i = x G k x ,
and their derivatives are given by
M k x : = d d x M k x = i = 0 i C i , k x i 1 = k + 1 1 4 x 2 1 + 1 4 x k + 2
and
G k x : = d d x G k x = i = k i i k x i 1 = k x k 1 + x k 1 x k + 2 .
By substituting Equation (A21) and Equation (A22) into Equation (A20), we obtain
λ T D S A 𝔼 T A S = j = N B C 2 N B C j 1 N B C 1 p A N B C + 1 p H N B C 2 p A p H M 2 N B C j p A p H + 2 N B C + 1 M 2 N B C j p A p H + p A p H p A N B C p A G N B C 1 p A + G N B C 1 p A i = N B C 2 N B C i i 1 N B C 1 p A i N B C p H N B C
Putting x = p A p H into M k x in Equation (A23) results in
M k p A p H = M k p m p M = k + 1 1 2 p m 1 p M k + 2 .
Putting x = p A into G k x in Equation (A24) gives
G k p A = k p A k 1 + p A k p H k + 2 .
By substituting Equation (A12), Equation (A14), Equation (A26), and Equation (A27) into Equation (A25), we finally obtain Equation (27). □

Appendix C

Proof of Proposition 1.
We use a generating function and generalized hypergeometric functions to compute the infinite summations in Equation (19).
By substituting PDsA,i in Equation (15) and f T i t in Equation (14) into Equation (19), we arrive at
f T D S A t 1 D S A δ t = j = N B C j = 2 N B C j 1 N B C 1 i = 2 N B C + 1 C i 1 2 N B C , 2 N B C j p A i + 1 2 p H i 1 2 λ T i t i 1 e λ T t i 1 ! + i = 2 N B C + 1 i 1 N B C 1 p H N B C p A i N B C λ T i t i 1 e λ T t i 1 ! .
By rearranging the indices of summations and the order of operands, we obtain
f T D S A t 1 D S A δ t = j = N B C j = 2 N B C j 1 N B C 1 i = 0 C i , 2 N B C j p A N B C + i + 1 p H N B C + i · λ T 2 N B C + 2 i + 1 t 2 N B C + 2 i e λ T t 2 N B C + 2 i ! + p H p A N B C e λ T t i = N B C i 1 N B C 1 p A i λ T i t i 1 i 1 ! i = N B C 2 N B C i 1 N B C 1 p A i λ T i t i 1 i 1 ! .
We can define two generating functions as
B x : = i = 0 C i , 2 N B C j x i 2 N B C + 2 i ! = 2 N B C j + 1 i = 0 2 i + 2 N B C j ! i ! i + 2 N B C j + 1 ! x i 2 N B C + 2 i ! ,
and
H x : = i = N B C i 1 N B C 1 x i 1 i 1 ! = i = N B C 1 i N B C 1 x i i ! .
By substituting B x and H x into Equation (A29), we obtain
f T D S A t 1 D S A δ t = j = N B C j = 2 N B C j 1 N B C 1 p A λ T e λ T t p A p H λ T t 2 N B C B p A p H λ T t 2 + p H p A N B C e λ T t p A λ T H p A λ T t i = N B C 2 N B C i 1 N B C 1 p A i λ T i t i 1 i 1 ! .
We replace function B x in Equation (A30) with the generalized hypergeometric functions (See Appendix E for definition). For this purpose, we first denote the sequences in B x by
β i : = 2 i + 2 N B C j ! i ! i + 2 N B C j + 1 ! 1 2 N B C + 2 i ! ,
and
β 0 : = 1 2 N B C j + 1 2 N B C ! .
Next, the function B x can be rewritten as
B x = 2 N B C j + 1 i = 0 β i x i = 2 N B C j + 1 β 0 x 0 + β 1 β 0 x 1 + β 2 β 1 β 1 β 0 x 2 + .
The reformulated sequence in Equation (A35) is computed by
β i + 1 β i = i + 1 + N B C j / 2 i + 1 / 2 + N B C j / 2 i + 2 + 2 N B C j i + 1 + N B C i + 1 / 2 + N B C i + 1 ,
which has 2 polynomials in i on the numerator and 3 polynomials in i except for i + 1 on the denominator. B x can be expressed in terms of a generalized hypergeometric function 2 F 3 [28] as follows,
B x = 2 N B C j + 1 β 0   2 F 3 a j ; b j ; x = 1 2 N B C !   2 F 3 a j ; b j ; x ,
where vectors a j and b j respectively defined in Equations (21) and (22) are the constants in the polynomials in i of the numerator and denominator in Equation (A31), respectively.
We use a closed-form expression of generating function H x in Equation (A31) given by
H x = i = N B C 1 i N B C 1 x i i ! = 1 N B C 1 ! i = N B C 1 x i i N B C + 1 ! = x N B C 1 N B C 1 ! e x ,
where the following relationship is used [29]:
i = 0 x i i ! = e x .
By substituting Equation (A37) and Equation (A38) into Equation (A32), we arrive at
f T D S A t 1 D S A δ t = p A λ T e λ T t p A p H λ T t 2 N B C 2 N B C ! · j = N B C j = 2 N B C j 1 N B C 1 2 F 3 a j ; b j ; p A p H λ T t 2 + p H p A N B C e λ T t p A λ T p A λ T t N B C 1 N B C 1 ! e p A λ T t i = N B C 2 N B C i 1 N B C 1 p A i λ T i t i 1 i 1 ! = p A λ T e λ T t p A p H λ T t 2 N B C 2 N B C ! · j = N B C j = 2 N B C j 1 N B C 1 2 F 3 a j ; b j ; p A p H λ T t 2 + p H p A N B C e λ T t p A λ T p A λ T t N B C 1 N B C 1 ! e p A λ T t 1 N B C 1 ! i = N B C 2 N B C p A i λ T i t i 1 i N B C ! .
We obtain Equation (20) by rearranging the indices of the summations and the order of operands. □

Appendix D

Comparison of Attack Success Probabilities of DS Attack and Pre-Mining Attack

In [12], a special case of pre-mining strategy has been considered, where the condition for a DS attack success was different from Definition 1. Specifically, the only condition was to have the fraudulent chain to grow longer than the honest chain by N B C , i.e., A t > H t + N B C (see Section 7 of [12]). We refer to pre - mine as the probability of satisfying this condition. The literature has shown that satisfying this condition suffices a success of DS attack [12]. What they have not shown, however, is that this condition is not a necessary one. Thus, we here aim to show that their condition is indeed not a necessary condition, by showing that D S A > pre - mine for all p A 0 , 0.5 . First, it has been given that pre - mine = p A / p H N B C + 1 . Under the condition of [12], it is required that the fraudulent chain catches up with the honest chain with additional NBC blocks. The catch-up probability has been derived by Nakamoto in [1] using the gambler’s ruin approach as p A / p H k , where k is the number of blocks that the honest chain leads by at the initial status. Next, we refer to an intermediate step in the derivation of D S A by Rosenfeld [6]:
D S A = k = 0 N B C + 1 N B C + k 1 k p H N B C p A k p A p H N B C k + 1 + k = N B C + 2 N B C + k 1 k p H N B C p A k .
Finally, clear inequalities can be used to show D S A > pre - mine :
D S A > k = 0 N B C + 1 N B C + k 1 k p H N B C p A k p A p H N B C k + 1 + k = N B C + 2 N B C + k 1 k p H N B C p A k p A p H N B C + 1 > p A p H N B C + 1 k = 0 N B C + k 1 k p H N B C p A k = p A p H N B C + 1 = pre - mine .
For numerical example, when p A = 0.35 and N B C = 5 the probabilities can be computed as D S A = 0.2287 and pre - mine = 0.0244 . As the gap is significant, it is shown that the DS attack success condition defined in [12] was indeed only a sufficient condition, set to be too strict.

Appendix E

Generalized Hypergeometric Function

We define generalized hypergeometric series and generalized hypergeometric functions [28].
For a variable z and a given set of coefficients β 0 , , β , if the ratio of coefficients b n can be expressed in terms of two polynomials A n and B n in n as follows,
β n + 1 β n = A n B n n + 1
for all integer n 0 , a power series n 0 β n z n is a generalized hypergeometric series, where the polynomials are in the forms of
A n = c a 1 + n a p + n
and
B n = d b 1 + n b q + n ,
for real numbers c and d and complex numbers a 1 , , a p and b 1 , , b q . The generalized hypergeometric series is denoted by
p F q a ; b ; z : = n 0 β n z n ,
where a and b are the vectors of a 1 , , a p and b 1 , , b q , respectively.
A generalized hypergeomteric series can be a generalized hypergeometric function, if it converges. If p < q + 1 , the ratio Equation (A43) goes to zero as n . This implies the series Equation (A46) converges for any finite value z and thus can be defined as a function.

References

  1. Nakamoto, S. Bitcoin: A Peer-to-Peer Electronic Cash System. 2008. Available online: https://bitcoin.org/bitcoin.pdf (accessed on 26 November 2020).
  2. Ritzdorf, H.; Soriente, C.; Karame, G.O.; Marinovic, S.; Gruber, D.; Capkun, S. Toward Shared Ownership in the Cloud. IEEE Trans. Inf. Forensics Secur. 2018, 13, 3019–3034. [Google Scholar] [CrossRef]
  3. Wu, S.; Chen, Y.; Wang, Q.; Li, M.; Wang, C.; Luo, X. CReam: A Smart Contract Enabled Collusion-Resistant e-Auction. IEEE Trans. Inf. Forensics Secur. 2018, 14, 1687–1701. [Google Scholar] [CrossRef]
  4. Nguyen, G.-T.; Kim, K. A Survey about Consensus Algorithms Used in Blockchain. J. Inf. Process. Syst. 2018, 14, 101–128. [Google Scholar] [CrossRef]
  5. Sompolinsky, Y.; Zohar, A. Secure High-Rate Transaction Processing in Bitcoin; Böhme, R., Okamoto, T., Eds.; Springer: Berlin/Heidelberg, Germany, 2015; pp. 507–527. [Google Scholar]
  6. Rosenfeld, M. Analysis of Hashrate-Based Double Spending. arXiv 2014, arXiv:1402.2009 [cs]. [Google Scholar]
  7. Beikverdi, A.; Song, J. Trend of centralization in Bitcoin’s distributed network. In Proceedings of the 2015 IEEE/ACIS 16th International Conference on Software Engineering, Artificial Intelligence, Networking and Parallel/Distributed Computing (SNPD), Takamatsu, Japan, 1–3 June 2015; pp. 1–6. [Google Scholar]
  8. Gervais, A.; Karame, G.O.; Capkun, V.; Capkun, S. Is Bitcoin a Decentralized Currency? IEEE Secur. Priv. 2014, 12, 54–60. [Google Scholar] [CrossRef]
  9. Attah, E. Five most prolific 51% attacks in crypto: Verge, Ethereum Classic, Bitcoin Gold, Feathercoin, Vertcoin. CryptoSlate. Available online: https://cryptoslate.com/prolific-51-attacks-crypto-verge-ethereum-classic-bitcoin-gold-feathercoin-vertcoin/ (accessed on 26 November 2020).
  10. Bonneau, J. Why Buy When You Can Rent? Bribery Attacks on Bitcoin Consensus; Springer: Berlin, Germany, 2016. [Google Scholar]
  11. Sayeed, S.; Marco-Gisbert, H. Assessing Blockchain Consensus and Security Mechanisms against the 51% Attack. Appl. Sci. 2019, 9, 1788. [Google Scholar] [CrossRef]
  12. Sompolinsky, Y.; Zohar, A. Bitcoin’s Security Model Revisited. arXiv 2016, arXiv:1605.09193 [cs]. [Google Scholar]
  13. Bissias, G.; Levine, B.N.; Ozisik, A.P.; Andresen, G. An Analysis of Attacks on Blockchain Consensus. arXiv 2016, arXiv:1610.07985 [cs]. [Google Scholar]
  14. Zaghloul, E.; Li, T.; Mutka, M.W.; Ren, J. Bitcoin and Blockchain: Security and Privacy. IEEE Internet Things J. 2020, 7, 10288–10313. [Google Scholar] [CrossRef]
  15. Budish, E.B. The Economic Limits of Bitcoin and the Blockchain. SSRN J. 2018. [Google Scholar] [CrossRef]
  16. Gervais, A.; Karame, G.O.; Wüst, K.; Glykantzis, V.; Ritzdorf, H.; Capkun, S. On the Security and Performance of Proof of Work Blockchains. In Proceedings of the 2016 ACM SIGSAC Conference on Computer and Communications Security—CCS’16, Vienna, Austria, 24–28 October 2016; pp. 3–16. [Google Scholar]
  17. Ramezan, G.; Leung, C.; Jane Wang, Z. A Strong Adaptive, Strategic Double-Spending Attack on Blockchains. In Proceedings of the 2018 IEEE International Conference on Internet of Things (iThings) and IEEE Green Computing and Communications (GreenCom) and IEEE Cyber, Physical and Social Computing (CPSCom) and IEEE Smart Data (SmartData), Halifax, NS, Canada, 30 July–3 August 2018; pp. 1219–1227. [Google Scholar]
  18. Pinzón, C.; Rocha, C. Double-spend Attack Models with Time Advantange for Bitcoin. Electron. Notes Theor. Comput. Sci. 2016, 329, 79–103. [Google Scholar] [CrossRef]
  19. Goffard, P.-O. Fraud risk assessment within blockchain transactions. Adv. Appl. Probab. 2019, 51, 443–467. [Google Scholar] [CrossRef]
  20. Karame, G.O.; Androulaki, E.; Roeschlin, M.; Gervais, A.; Čapkun, S. Misbehavior in Bitcoin: A Study of Double-Spending and Accountability. ACM Trans. Inf. Syst. Secur. 2015, 18, 2:1–2:32. [Google Scholar] [CrossRef]
  21. Karame, G.O.; Androulaki, E.; Capkun, S. Double-spending fast payments in bitcoin. In Proceedings of the 2012 ACM Conference on Computer and Communications Security—CCS ’12, Raleigh, NC, USA, 16–18 October 2012; p. 906. [Google Scholar]
  22. Papoulis, A.; Pillai, S.U. Random walks and other applications. In Probability, Random Variables and Stochastic Processes; McGraw-Hill Europe: Boston, MA, USA, 2002; ISBN 978-0-07-122661-5. [Google Scholar]
  23. Bowden, R.; Keeler, H.P.; Krzesinski, A.E.; Taylor, P.G. Block arrivals in the Bitcoin blockchain. arXiv 2018, arXiv:1801.07447 [cs]. [Google Scholar]
  24. Flajolet, P.; Sedgewick, R. Combinatorial structures and ordinary generating functions. In Analytic Combinatorics; Cambridge University Press: Cambridge, UK, 2009; ISBN 978-1-139-47716-1. [Google Scholar]
  25. Conti, M.; Sandeep Kumar, E.; Lal, C.; Ruj, S. A Survey on Security and Privacy Issues of Bitcoin. IEEE Commun. Surv. Tutor. 2018, 20, 3416–3452. [Google Scholar] [CrossRef]
  26. Wilf, H.S. Analytic and asymptotic methods. In Generatingfunctionology, 3rd ed.; A K Peters/CRC Press: Wellesley, MA, USA, 2005; ISBN 978-1-56881-279-3. [Google Scholar]
  27. Wilf, H.S. Introductory ideas and examples. In Generatingfunctionology, 3rd ed.; A K Peters/CRC Press: Wellesley, MA, USA, 2005; ISBN 978-1-56881-279-3. [Google Scholar]
  28. Gasper, G.; Rahman, M. Basic Hypergeometric series. In Basic Hypergeometric Series; Encyclopedia of Mathematics and Its Applications; Cambridge University Press: Cambridge, UK, 2004; Volume 96, ISBN 978-0-521-83357-8. [Google Scholar]
  29. Flajolet, P.; Sedgewick, R. Labelled structures and exponential generating functions. In Analytic Combinatorics; Cambridge University Press: Cambridge, UK, 2009; ISBN 978-1-139-47716-1. [Google Scholar]
Figure 1. Computation power distribution among the largest mining pools.
Figure 1. Computation power distribution among the largest mining pools.
Applsci 10 08477 g001
Table 1. Numerical computations of required resources for profitable double-spending (DS) attacks with p A = 0.35 when t c u t = c N B C λ H 1 with c = 4 .
Table 1. Numerical computations of required resources for profitable double-spending (DS) attacks with p A = 0.35 when t c u t = c N B C λ H 1 with c = 4 .
Block   Confirmation   Number   ( N B C )
13579
Attack   success   probability   ( A S )
0.3150.2790.2180.1700.132
Expected   attack   success   time   ( 𝔼 T A S ) ( Scaled   by   λ H 1 )
2.0045.5188.68111.69414.607
Expected   OPEX   ( 𝔼 X ) ( Scaled   by   γ )
1.8155.4879.44013.58817.859
Required   value   of   target   transaction   ( C Suf . ) ( Scaled   by   γ )
1.079 1 μ   +   4.680
2.971 1 μ   +   16.68
4.675 1 μ   +   38.62
6.297 1 μ   +   73.84
7.866 1 μ   +   127.00
Table 2. Numerical computations of required resources for profitable DS attacks with p A = 0.4 when t c u t = c N B C λ H 1 with c = 4 .
Table 2. Numerical computations of required resources for profitable DS attacks with p A = 0.4 when t c u t = c N B C λ H 1 with c = 4 .
Block   Confirmation   Number   ( N B C )
13579
Attack   success   probability   ( A S )
0.4110.4190.3760.3340.297
Expected   attack   success   time   ( 𝔼 T A S ) ( Scaled   by   λ H 1 )
1.9535.3388.43411.41814.325
Expected   OPEX   ( 𝔼 X ) ( Scaled   by   γ )
2.1066.13910.43614.97719.716
Required   value   of   target   transaction   ( C Suf . ) ( Scaled   by   γ )
1.302 1 μ   +   3.819
3.559 1 μ   +   11.10
5.622 1 μ   +   22.15
7.612 1 μ   +   37.25
9.550 1 μ   +   56.96
Publisher’s Note: MDPI stays neutral with regard to jurisdictional claims in published maps and institutional affiliations.

Share and Cite

MDPI and ACS Style

Jang, J.; Lee, H.-N. Profitable Double-Spending Attacks. Appl. Sci. 2020, 10, 8477. https://doi.org/10.3390/app10238477

AMA Style

Jang J, Lee H-N. Profitable Double-Spending Attacks. Applied Sciences. 2020; 10(23):8477. https://doi.org/10.3390/app10238477

Chicago/Turabian Style

Jang, Jehyuk, and Heung-No Lee. 2020. "Profitable Double-Spending Attacks" Applied Sciences 10, no. 23: 8477. https://doi.org/10.3390/app10238477

Note that from the first issue of 2016, this journal uses article numbers instead of page numbers. See further details here.

Article Metrics

Back to TopTop