Skip to main content
Log in

Revisiting FAW attack in an imperfect PoW blockchain system

  • Published:
Peer-to-Peer Networking and Applications Aims and scope Submit manuscript

Abstract

Malicious miners in a Proof-of-Work (PoW) blockchain can apply less computing power to perform fork-after-withholding (FAW) attack than that to selfish mining and other withholding attacks. Quantitative study of FAW attack enables an in-depth understanding of the attack and then helps design countermeasures. The existing quantification studies of FAW attack only considered a perfect Bitcoin blockchain, where there is no block propagation delay. This paper aims to quantitatively investigate FAW attack in imperfect Bitcoin and Ethereum systems. We first establish an analytic model to capture the chain dynamics under FAW attack in a PoW system where the longest-chain protocol is used. Then the model is explored to derive closed-formed metric formulas for Bitcoin and Ethereum, respectively. These closed-formed formulas enable the evaluation of both the profitability of FAW adversaries and the impact of FAW attack on system throughput. Experimental results reveal that FAW adversaries can get more revenue in the network with propagation delay than without delay. FAW attack can reduce the blockchain throughput, especially in Bitcoin.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Fig. 1
Fig. 2
Fig. 3
Fig. 4
Fig. 5
Fig. 6
Fig. 7
Fig. 8
Fig. 9
Fig. 10
Fig. 11
Fig. 12
Fig. 13
Fig. 14
Fig. 15

Similar content being viewed by others

References

  1. Nakamoto S (2008) Bitcoin: A peer-to-peer electronic cash system. Decentralized Bus Rev 21260

  2. https://ethereum.org/en/. Accessed Oct 2021

  3. Kwon Y, Kim D, Son Y, Vasserman E, Kim Y (2017) Be Selfish and Avoid Dilemmas: Fork After Withholding (FAW) Attacks on Bitcoin. ACM CCS 2017, Dallas, TX, USA, pp 195–209

  4. Rosenfeld M (2014) Analysis of hashrate-based double spending,” arXiv preprint arXiv:1402.2009

  5. Eyal I, Sirer EG (2014) Majority Is Not Enough: Bitcoin Mining Is Vulnerable, Financial Cryptography, Berlin. Heidelberg 2014:436–454

    MATH  Google Scholar 

  6. Yang R, Chang X, Misic J, Misic V (2020) Assessing blockchain selfish mining in an imperfect network: Honest and selfish miner views. Comput Secur 97:101956

    Article  Google Scholar 

  7. Ke J, Jiang H, Song X, Zhao S, Wang H, Xu Q (2018) Analysis on the Block Reward of Fork After Withholding (FAW),” NSysS 2018, Dhaka, Bangladesh, December 2018. pp 16–31

  8. Courtois NT, Bahack L (2014) On subversive miner strategies and block withholding attack in bitcoin digital currency”. arXiv preprint arXiv:1402.1718

  9. Yang R, Chang X, Mišić J, Mišić VB, Kang H (2021) On Selfholding Attack Impact on Imperfect PoW Blockchain Networks. IEEE Trans Netw Sci Eng

  10. https://tokenview.com/en/minePoolList. Accessed Oct 2021

  11. https://btc.com/stats/pool?pool_mode=year. Accessed Oct 2021

  12. https://etherscan.io/stat/miner/1?range=7&blocktype=blocks. Accessed Oct 2021

  13. Buterin V (2014) A next-generation smart contract and decentralized application platform,” white paper. 3(37)

  14. Li X, Jiang P, Chen T, Luo X, Wen Q (2020) A survey on the security of blockchain systems. Future Gener Comput Syst 107:841–853

    Article  Google Scholar 

  15. Saad M, Spaulding J, Njilla L, Kamhoua C, Shetty S, Nyang D, Mohaisen D (2020) Exploring the Attack Surface of Blockchain: A Comprehensive Survey. IEEE Commun Surv Tutorials 22(3):1977–2008

    Article  Google Scholar 

  16. Zaghloul E, Li T, Mutka M, Ren J (2020) Bitcoin and Blockchain: Security and Privacy. IEEE Internet Things J 7(10):10288–10313

    Article  Google Scholar 

  17. Chen H, Pendleton M, Njilla L, Xu S (2020) A Survey on Ethereum Systems Security: Vulnerabilities, Attacks, and Defense. ACM Comput Surv 53(3):67:1–67:43

  18. Chang SY, Park Y, Wuthier S, Chen CW (2019) Uncle-Block Attack: Blockchain Mining Threat Beyond Block Withholding for Rational and Uncooperative Miners. ACNS 241–258

  19. Gao S, Li Z, Peng Z, Xiao B (2019) Power Adjusting and Bribery Racing: Novel Mining Attacks in the Bitcoin System. CCS 833–850

  20. Kang H, Chang X, Yang R, Mišić J, Mišić VB (2021) Understanding selfish mining in imperfect bitcoin and ethereum networks with extended forks. IEEE Trans Netw Service Manag 18(3):3079–3091

    Article  Google Scholar 

  21. Göbel J, Keeler H, Krzesinski A, Taylor P (2016) Bitcoin blockchain dynamics: The selfish-mine strategy in the presence of propagation delay. Perform Evaluation 104:23–41

    Article  Google Scholar 

  22. Carlsten M, Kalodner H, Weinberg SM, Narayanan A (2016) On the Instability of Bitcoin Without the Block Reward. CCS 154–167

  23. Ritz F, Zugenmaier A (2018) The Impact of Uncle Rewards on Selfish Mining in Ethereum. EuroS&P Workshops 50–57

  24. Feng C, Niu J (2019) Selfish Mining in Ethereum. ICDCS 1306–1316

  25. Misic J, Misic VB, Chang X (2019) On Ledger Inconsistency Time in Bitcoin's Blockchain Delivery Network. GLOBECOM 1–6

  26. https://www.blockchain.com/charts/n-orphaned-blocks. Accessed Oct 2021

  27. https://etherchain.org/charts. Accessed Oct 2021

  28. https://www.maplesoft.com/. Assessed Oct 2021

Download references

Acknowledgements

We would like to thank the editors and anonymous reviewers for their helpful comments. The work of H. Zhu, X. Chang and R. Yang was supported by Beijing Municipal Natural Science Foundation (No. M22037). The work of J. Mišić and V. B. Mišić was supported by Natural Science and Engineering Research Council (NSERC) of Canada through their respective Discovery Grants.

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Xiaolin Chang.

Ethics declarations

Conflict of interest

The authors declare that they have no conflict of interest.

Additional information

Publisher's Note

Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.

Appendices

Appendix A

In the main part, several propositions are proposed in Section III for computing rewards of pools. In this appendix, we present the proofs of Lemma 1 and Proposition 1. Due to space limitations, we omit the proof of Proposition 2 and 3, which is similar to Proposition 1. The notations used in this appendix are given in Table 1 of the main part.

Before describing the proof, we first define “round” to denote the interval where there is no block newly created, and there are one or two blocks created at the start. The end of one round is the start of its subsequent round. It is illustrated in Fig. 16. In the rest of the appendix, four types of pools, MP, IM, VH, and OP, are considered. We use their initials to represent the pool that generates blocks. For example, MV indicates both MP and VHs create blocks in the next round.

Fig. 16
figure 16

Illustration of a round

Proof of lemma 1

We first prove the formula of computing \(P_{B} \left( {M|MV} \right)\), which denotes the probability that MP’s block becomes a regular block when a fork occurs due to MP and VHs generating blocks. These two blocks (namely MP’s block and VHs’ block) are respectively denoted by \(B_{M}\) and \(B_{V}\), which all pools can choose to mine their new block in the next round. As described in Section III.C, there are 11 types of block generation in total and they can be classified into two categories: generating one block and generating two blocks simultaneously. Since IMs behave maliciously, we consider them separately. Thus, we discuss these three cases in the following.

2.1 Generate one new block

In this case, MP, VHs, or OPs generate one new block in the next round. As all pools mine blocks honestly, MP mines block on \(B_{M}\) and VHs mine on \(B_{V}\). For OPs, they mine blocks on \(B_{M}\) and \(B_{V}\) with the probability of 50%, respectively. Thus, \(B_{M}\) can be a regular block with the probability \(p_{M} + p_{O} /2\) when MP or OPs generate one block in the next round.

2.2 Generate two new blocks

In this case, any two types of pools can generate blocks simultaneously. In addition, OPs can create a fork. That is, a fork occurs because more than one block is generated by OPs. Thus, there are the following 7 subcases in this case.

  1. a)

    blocks generated by MI. IMs submit block if only OPs publish their blocks. Thus, only MP’s block is published in this case and this block is mined on \(B_{M}\).

  2. b)

    blocks generated by MV. MP and VHs mine their new blocks on \(B_{M}\) and \(B_{V}\) respectively. The probability that \(B_{M}\) becomes a regular block is \(P_{B} \left( {M|MV} \right)\).

  3. c)

    blocks generated by MO. MP’s new block is on \(B_{M}\) while OPs randomly choose one block from \(B_{M}\) and \(B_{V}\)(as shown in Fig. 17) to mine. If an OP creates a block on \(B_{M}\)(Fig. 17a), \(B_{M}\) can be a regular block. However, if an OP creates a block on \(B_{V}\) (Fig. 17b), \(B_{M}\) can be a regular block with probability \(P_{B} \left( {M|MO} \right)\). Each of the two subcases occurs with a probability of 1/2.

  4. d)

    blocks generated by IV. Similar to case 0, IMs withhold their block and VHs publish. Since VHs mine block on \(B_{V}\), \(B_{M}\) cannot be a regular block in this case.

  5. e)

    blocks generated by IO. OPs publish their block so IMs choose to submit their block in this case. As mentioned before, OPs mine blocks on \(B_{M}\) with probability 1/2 while IMs mine on \(B_{V}\). Similar to Fig. 17, if an OP creates a block on \(B_{V}\), \(B_{M}\) cannot be a regular block. If an OP creates a block on \(B_{M}\), \(B_{M}\) can be a regular block with probability \(P_{B} \left( {O|VO} \right)\).

  6. f)

    blocks generated by VO. This is basically the same as the previous case since VHs behave as same as IMs in Case 2.e.

  7. g)

    blocks generated by OO. OPs generate a fork in this case. Each OP chooses blocks randomly so the probability that both new blocks are on \(B_{M}\) is 1/4 and one of the new blocks is on \(B_{M}\) is 1/2. In the next round, all pools will choose blocks randomly since all blocks are created by OPs. Thus, when one of the new blocks is on \(B_{M}\), the probability of \(B_{M}\) becoming a regular block is 1/2.

Fig. 17
figure 17

Two cases that each of MP and OPs generates one block when the blockchain is in MV fork of Section 7.2.c

2.3 AIMs generate one new block

IMs withhold their block in most cases. When OPs generate blocks in the next round, IMs submit their block. These blocks have the same block height. When the blockchain is in MV fork, IMs mine blocks on \(B_{V}\) to avoid detection. However, OPs choose blocks randomly and then there are the following two subcases.

  1. a)

    OPs generate one block in the next round. This subcase happens with probability \(p_{O}\). In the next round, the blockchain is in VO fork because the information of IMs’ block is the same as that of VHs’ block. Thus, this subcase can be considered as Case 2.e.

  2. b)

    OPs generate two blocks in the next round. This subcase happens with probability \(p_{OO}\). If both of the two blocks are on \(B_{M}\)(with probability 1/4), the probability of \(B_{M}\) being a regular block is \(P_{B} \left( {O|VOO} \right)\). If one of the blocks is on \(B_{M}\)(with probability 1/2), the probability of \(B_{M}\) being a regular block is \(P_{B} \left( {O|VOO} \right)/2\). If none of the blocks is on \(B_{M}\)(with probability 1/4), \(B_{M}\) cannot become a regular block.

We add the probabilities in all cases and get the formula of \(P_{B} \left( {M|MV} \right)\) given in Eq. (1) in the main part. Similarly, we can compute \(P_{B} \left( {M|MO} \right)\),\(P_{B} \left( {V|VO} \right)\) and \(P_{B} \left( {V|VOO} \right)\)

Proof of proposition 1

We first consider the types of block generation that make pools get regular rewards with certain probabilities. We call these types as “reward type” of the pool. We call the probabilities as “reward probability” of the reward types. Then we calculate the reward probability of each reward type. We can get the regular reward of a pool by multiplying the block generation rate of all reward types and the corresponding regular reward probabilities and adding them up.

For MP, it can get a regular reward when MP, MI, MV, and MO generate blocks. For both MP and MI, only MP publishes its new block and then all pools reach a consensus. Namely, MP can get a regular reward with probability 1 when MP or MI generates blocks. However, when MP generates a fork with VP or OPs, it cannot always get regular rewards. As proved in Lemma 1, \(P_{B} \left( {M|MV} \right)\) is the probability of MP’s block becoming a regular block when MV and MO generate blocks, respectively. Thus, the regular reward which MP can get is the addition of the above.

VP can get a regular reward when VHs, MV, IV, IO, VO, and IMs generate blocks. Among them, VHs and IV have the same probability that the newly-generated block by VHs becomes a regular block, respectively. So are IO and VO. When only VHs publish one block in a round, all pools get to a consensus and VP gets regular block reward. If VO generate blocks, VP can get regular reward with probability \(P_{B} \left( {V|VO} \right)\). Similarly, if MV generate blocks, VP can get regular reward with probability \(P_{B} \left( {V|MV} \right)\). When only IMs generate a block in a round, VP’s regular reward relies on the block generation in the next round. In particular, if OPs publish a block in the next round, VP can get regular rewards with probability \(P_{B} \left( {V|VO} \right)\). In addition, if OPs publish two blocks, VP can get regular rewards with probability \(P_{B} \left( {V|VOO} \right)\).

OPs can get regular rewards when OP, MO, IO, VO, and OO generate blocks. The probability for OPs getting regular rewards is \(P_{B} \left( {O|MO} \right)\) when MO generate blocks, and is \(P_{B} \left( {O|VO} \right)\) when IO or VO generate blocks. We now further discuss the situations of OP and OO. If IMs do not withhold blocks (in state (0,1,0), (0,2,0), (0,2,1), or (0,3,1)), OPs can get regular reward immediately. Namely, the probability of OPs getting regular block rewards when OP or OO generate blocks is 1 in this case. However, IMs submit blocks when OP or OO generate blocks if they have withheld blocks (in state (1,1,0), (1,2,0), (1,2,1), or (1,3,1)). In these two cases, OPs can get regular rewards with probability \(P_{B} \left( {O|VO} \right)\) and \(P_{B} \left( {O|VOO} \right)\) respectively.

Proposition 1 is proved by multiplying the block generating probability and the corresponding regular reward probability and adding them up. ■

Rights and permissions

Springer Nature or its licensor holds exclusive rights to this article under a publishing agreement with the author(s) or other rightsholder(s); author self-archiving of the accepted manuscript version of this article is solely governed by the terms of such publishing agreement and applicable law.

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Zhu, H., Chang, X., Mišić, J. et al. Revisiting FAW attack in an imperfect PoW blockchain system. Peer-to-Peer Netw. Appl. 15, 2430–2443 (2022). https://doi.org/10.1007/s12083-022-01360-1

Download citation

  • Received:

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s12083-022-01360-1

Index Terms

Navigation