Bitcoin Game Theory: Feather Forks
How your transactions could be censored on the Bitcoin network
A feather fork is a censorship attack by a Bitcoin miner that needs far less than 50% of the network’s hash power to block a Bitcoin address and prevent them from transacting. It is called a feather fork because it is a very soft fork off the main block chain and was first introduced on the bitcointalk.org forum in 20131. Normally, a transaction would not be able to be censored or blocked from the network unless a malicious miner had 51% of the network’s hash power or could convince half the network to collude with them to block a transaction. However, a Feather Fork allows a malicious miner to incentivize other miners to censor a Bitcoin address by building on the malicious miner’s block chain instead of any valid block chain.
Feather forks might be used for ransom/extortion, or possibly by law enforcement to prevent blacklisted addresses from moving their bitcoin. Suppose you have bitcoin and want to make a transaction but a malicious miner (let’s call him bad Bob) with 20% hash power doesn’t like you and wants to block and censor all of your transactions. Bob could publicly announce that he will not directly add to any block with your transaction in it. However if a second block is added to the block containing your transaction, then Bob will continue mining on it as it will be the longest chain. Miners always want to be mining the longest chain of blocks because that is the valid chain that produces block rewards.
With 20% of the hash power, Bob’s probability to win the next block is 20% (0.2), and his probability to mine the next 2 consecutive blocks is equal to his hash power squared (0.2)² = 0.04. This means Bob has a 4% probability to censor your transactions by not including them in his mined blocks. Any non-malicious miner that includes your transaction would then have their effective mining rate diminished by 4% because Bob would not add to their block chain if they included your transaction. If a miner is acting rationally for maximum profit, your transaction will be excluded because miners always want to be mining on the longest block chain to earn block rewards.
There are four variables that determine if a rational profit-seeking miner will collude with Bob the malicious miner.
B = Block reward
H = Network hash rate of the malicious miner (where 0 < H < 1)
n = n consecutive blocks mined by malicious miner (typically 2)
T = Transaction fee paid by the censored user
Expected Value including censored transaction = (B*H^n) + T
Expected Value not including censored transaction = B
If (B*H^n > T) then a rational profit-seeking miner will collude with the malicious miner and not include the censored transaction, however if the censored user pays a sufficiently high fee, a rational profit-seeking miner will include the transaction. This could be extended from 2 consecutive blocks (as previously stated) to n, though the probability of winning n consecutive blocks becomes exponentially smaller.
Let’s plug in some numbers to see how this would play out.
B = 6.25 bitcoin, H = 0.2, n = 2.
Expected Value of including censored transaction = 6.25*0.2^2 = 0.25 bitcoin = $9,579.75 at this time of writing. So that would require a censored user to pay $9,579.75 or 0.25 bitcoin to have their transaction included, which is significant! Since it is always possible to circumvent a feather fork, the censorship is more likely to increase the costs for the victims of the attack, rather than actually succeeding in forking the chain.
One suggested positive application of feather forking, or increasing transaction costs for certain users, is for the Bitcoin network to discourage nonrenewable energy production. This would be done by feather forking any blocks that come from known fossil fuel miners2 thereby incentivizing miners to switch to renewable energy.
Another application of feather forking is enforcing a minimum transaction fee across the entire bitcoin network. As the block subsidy approaches zero, miners will increasingly rely on transaction fees to stay profitable. If users are not paying a high enough transaction fee, miners could collude to block transactions.
Feather forks are one method that an address could get blacklisted and censored on the Bitcoin network, which usually offers censorship-resistance. However, if a transaction fee is sufficiently high, a blacklisted address can still circumvent censorship by financially incentivizing miners to include their transactions regardless of bad actors.
Reference
Simsek, Kaan. "Feather Forking." Medium, July 2021. https://medium.com/@ksimsek19/feather-forking-f9f3d5b5f9aa
socrates1024. “Feather-forks: enforcing a blacklist with sub-50% hash power” Bitcoin Forum, October 2013. https://bitcointalk.org/index.php?topic=312668.0
Magnani, Calderoni, Palmieri. “Feather forking as a positive force: incentivising green energy production in a blockchain-based smart grid” MobiSys, June 2018. https://www.paolopalmieri.com/pdf/Magnani_Calderoni_Palmieri_CryBlock_MobiSys2018.pdf
Jacobsen, “Distributed Systems”, 2020/21. https://www.studocu.com/de/document/technische-universitat-munchen/middleware-and-distributed-systems/a9-blockchain-assignment-9/21451880
https://bitcointalk.org/index.php?topic=312668.0
https://www.paolopalmieri.com/pdf/Magnani_Calderoni_Palmieri_CryBlock_MobiSys2018.pdf