ABC vs BSV Hash War (Part III) — The war of the Hash power
Translation Weibo Article
“ABC vs BSV Hash War (Part I) — Why we need Hash Vote？”
This article talks about why we should use hash vote to resolve Bitcoin Conflict.
“ABC vs BSV Hash War (Part II) — Stability Theory vs Evolution Theory”
This article discussed the fundamental differences between BCH-ABC and BCH-BSV in the upcoming BCH hard fork.
Part 1: Why Can Hash Rate Become the Best Consensus Mechanism for Bitcoin?
The answer is simple: because the hash rate can kill a chain.
This is the underlying rule: survival is the final debate, the very reason that determines right from wrong. There are a lot of sayings that states the rule, for example “the winner is the king and the loser is the thief”, “ the truth is only within the reach of the gunfire’’, “force determines the rules”.
Why is atheism correct? Is it because atheism is able to convince other religious beliefs? On the contrary, atheism and religion stem from very different foundation logic, it is almost incomparable. The reason why atheism is correct is not because it is more ‘’logical’’, but rather atheism can create gun.
Say I can create a gun to terminate you, if you no longer exist, what rights do you have to discuss about what is right and what is wrong.
Therefore, to survive is the final truth, it is the most logical reason to decide what is right and what is wrong. Why do I support “evolution theory” as opposed to the “stability theory”? It is because the “evolution theory’’ is based on adapting the market’s needs and its goal is to increase its user base; the “stability theory” is, on the hand, not deeming those as its highest goals.
Of course, the “stability theory” would consider, if my protocol is stable, my users would choose me. What if it is not? What if those two things are the opposite?
In accordance to market demand, we can add functionalities like DSV to attract more users and reach the ultimate goal of having 500 million users. Who can decide what is right and what is wrong?
Therefore, “evolution theory” is governed by logic. Extreme lockdown and frequent upgrades are both wrong and “evolution theory” is likely to achieve a balance between “stability” and “evolve” and acquire more users.
On the other hand, “stability theory” consists of one assumption: stability is the key to increasing user base. However, we know that this assumption will crumble in the context of application commercialisation: we cannot just win the market solely based on what others had sowed. Satoshi did not design a global currency that enables us to do so.
Some may think that: “only commercial products need to attract users, currencies should not be designed the same way”, “BCH should focus on improving itself as a currency and not diving into new functionalities and second layer protocols”. I would beg to differ because currencies are also a type of product (i.e. commodity). The US dollar similarly have to face competition from Chinese Yuan, Japanese Yen. Have you ever thought of why oil is priced and traded in US dollar? This is a deliberate measure by the US government to increase ‘’use case’’ and ‘’user base’’ of the US dollar because we know that oil is a global commodity demanded by the entire world.
In the crypto industry, the product competition is more fierce: any coin ultimately has to face strong competitions from other coins.
Part 2 — How to kill a chain using hash power?
Let’s go back to the hash war. For most people, the hash war is the killer weapon that has never been deployed, therefore a lot of articles and predictions are erroneous. BTC.TOP is the only one that had experience in participating in a hash war of scale and any article that diverges from the discussion from this article (including views from CSW) are likely to be wrong.
We all know the 51% attack:
1. Attacker use more hashrate, mine blocks on the ‘attacker chain’ which is longer than the original chain
2. The ‘attacker chain’ will then be broadcasted to the entire network and the nodes will follow the rules: adopt the longer ‘attacker chain’ and abandon the original chain
The figure below shows how the ‘’attacker chain’’ will be accepted by the nodes as the main chain.
PS: to be accurate, the ‘longer’ chain here means the chain that has more ‘accumulated difficulty’, for example, a node would accept 2 blocks that have a difficulty of 10 and abandon 3 blocks that have a difficulty of 5 as 10+10=20>15=5+5+5. For convenient explanations, the rest would assume the the difficulty level is the same for every block.
Through a 51% attack, it can achieve all sorts of goals, for example:
- When Tx1 (transaction 1) is confirmed, cancel Tx1, validate a conflicted Tx2 (transaction 2).
For instance when Alice use Tx1 to send 1 BTC to Bob and in exchange gets 100 LTC from Bob. When Alice received the 100 LTC from Bob, she can use a Tx2 where you used to send 1 BTC to herself, switch it with Tx1 and retrieve back the 1 BTC sent to Bob.
- Using the blocks that mine by yourself (red blocks) to orphan the blocks mine by other miners (blue blocks), it would result in other miners to lose their mining rewards.
On top of the 51% attack, one can start “51% empty block attack”: the attacker would only mine the empty blocks (not including any transactions), refusing (orphaning) all the normal blocks mined by other miners to make the chain malfunctioning and no one could trade on this chain anymore.
Moreover, due to the orphaning of the blocks, the miners will stop mining for getting no rewards. Eventually, the chain will die.
Part 3 -How to prevent ‘’51% empty block attack’’?
Defenders must not acknowledge the ‘’attacker chain’’ and when the original chain gets ‘’attacked’’, they need to gather more hashrate to form a chain that is longer than the ‘’attacker chain’’.
In the event of a real attack, both parties will build on its own chain and result in a possibility of a fork. For an honest node that by default only accepts the longest chain, it may adopt the ‘’attacker chain’’ when it is longer and also later adopts the original chain when that is longer.
Part 4 — Analysis on the cost of attacking
The winner would only need to mine one more block than the loser.
1. If the defender gives up, the attacker does not need to waste resources to mine and it can stop mining. The chain will die thereafter. If the attacker realizes that the defender starts to mine again, he only needs to mine one more block than the defender.
Because the chain has already died, all the blocks that have been mined by the attacker and the defenders are wasted. Both parties will lose all their investment.
If the attacker gives up, they will lose all the blocks they have mined (as well as input costs). Because the chain is still alive, defenders can obtain the blocks that were previously mined to keep them as revenue.
In other words, regardless of who succeeds or loses, the attackers will face the consequences of losing their initial input. On the other hand, defenders have an advantage where they are able to obtain mined blocks as compensation.
Part 5 — Analysis on both parties’ hashrate
On 15th November, BCH has upgraded its client ABC to version 0.18.2 that supports hard fork. Bitmain supports this ABC’s upgrade.
For the client that is supported by CSW, it will hard fork to secure chain BSV. They also announced that they would stage a hash war with chain ABC (version 0.18.2) in order to kill the chain completely.
5.1 The hashrate of CSW
The mining pools that currently signal support for CSW (Coingeek, svpool, BMG etc), exhibiting hashrate about 2000–3000P. CSW also claims that they have ‘’hidden hasing power’’ thus we can assume that CSW owns at least 3000P hashrate.
CSW is also able to do rental in order to obtain more hashrate, such as negotiating renting of hashrate from mining pools and large mining factories. In addition, they can rent hashrate from platforms such as nicehash, as long as they are willing to pay a reasonable price (eg. 20% of their mining revenue). Combined owned and rented computation power, CSW can easily hit 10,000P hashrate.
5.2 The Hashrate of Bitmain
Mining pools under Bitmain (such as BTC.com and Antpool) collectively have 15,000 P hashrate. With ViaBTC where Bitmain is a shareholder, the entity has 20,000 P hashrate altogether.
BTC and BCH both uses SHA256 algorithm to mine, therefore in terms of technicalities in mining pool, we are able to switch hashrate between BTC and BCH. As long as we pay miners a reward for the BTC they mined, miners in fact do not have to care about what coins they are actually mining. Miners might not even know which coins are mined and what they know is that they are solving algorithmic problems issued by the mining pools. If Bitmain is willing, they can ultilise their 20,000P BTC hashrate to be a defender of BCH. Rumour has it that, Bitmain has 90,000 mining machines in Xinjiang to prepare for the hash war — but they are all meaningless rumours. If Bitmain is using the hashrate of BTC to start a hash war and this would be the epitome of ‘’survival of the fittest’’.
Bitmain is at the crucial period of doing their IPO, CSW threatened that if Bitmain uses its BTC hashrate and wages a hash war, he will start a lawsuit and press charges against Bitmain. However, the impact of this is not huge because Bitmain does not necessarily need to use all its hashrate for the war. If they were to use only part of their hashrate, Bitmain can claim that they are using hashrate that they own (or from their partners). Other miners (who are being paid BTC as per normal) will have no incentives to sue Bitmain. Moreover, they are unable to confirm what coins they have mined anyway.
5.3 Capital from both parties
Although the hashrate of Bitmain is confirmed to be higher than CSW, the determining factor to win the hash war does not rely merely on hashrate. If CSW were to face the hash war head on, they will burn millions of capital every day and the bottleneck of the hash war is not just hashrate but rather the amount of capital both parties are willing to burn.
In terms of capital, CSW claimed that himself is a billionaire who owns mansions and premium cars as well as support from Calvin Arye (a leader in the gambling industry). If Bitmain is valued at 15 billion USD, and is currently planning for IPO and owns about a million BCH, they have enough incentive to profit off just BCH. Both parties are heavyweight opponents, but how much capital they are willing to burn for the hash war depends on their willingness, which we are unable to estimate.
Part 6 — An analysis of the capital burn rate ratio of both parties
The normal hashrate of BCH depends on: hashrate of BTC and the exchange rate between BCH and BTC. For instance, if the total hashrate of BTC on 2/11 is 51370P and BCH/BTC conversion is 0.067, the normal hashrate of BCH will be 51370*0.067=3441P. If the actual BCH hashrate is higher than 3441P, every mining machine will mine lesser profits on BCH than BTC and miners will shift from mining BCH to BTC until the profits are equalised.
Therefore, the capital burn rate will depend on the hashrate that CSW contributes.
6.1 If CSW invests in 7000P hashrate (double the normal hashrate of BCH)
As mentioned in section 4, regardless of who succeeds or loses, the attackers will face the consequences of losing their initial input. On the other hand, defenders have an advantage where they are able to obtain mined blocks as compensation. Therefore if Bitmain also invests in 7000P hashrate and wins eventually, they are able to get all the mined BCH as compensation (equivalent to them only having 3500P cost of capital).
In other words, when we talk about capital burning, if Bitcoin invests 7000P hashrate to defend, only 3500P are burned and the remaining 3500P will be mined to be kept as revenue in the future. On the other hand, when CSW loses, he will lose all his capital for the 7000P hashrate he invests in.
Therefore, if CSW invests lesser in hashrate, the defense advantage of Bitmain will be higher. If both parties invest in 5000P each, Bitmain will only burn 1500P of his invested hashrate and CSW will lose all of his capital. Bitmain will most likely battle till the very end.
6.2 If CSW invest in 7000P — 14000P hashrate
It is very clear that the winning factor is not hashrate of both parties but rather the willingness to burn capital. If Bitmain and CSW both invest in 10000P, the defense advantage of Bitmain will not be so obvious anymore: it will become something like ‘’CSW burning 10000P hashrate vs Bitmain burning 6500P hashrate’’.
Also, when both parties are adjusting BTC hashrate (say 20000P) to BCH for the hash war, it will increase the cost of rent for every unit of hashrate.
a.Transaction fees of BTC will increase substantially
As the block size of BTC has been locked by the core team to 1M, therefore: hashratedecline by 40% → block production slows down by 40% → only 0.6M block will be mine every 10 minutes → BTC mainnet will face severe congestion like end of 2017 → BTC transaction fee to rise by 20% — 30% → the cost of utilisation of every unit of hashrate increases by 20% — 30%.
b.The output of every unit of hashrate increase for BTC
If the hashrateis unable to conclude within a short period of time, after adjusting of the mine difficulty, output of every unit hashrate will increase by 40% and increase cost of utilisation of hashrate, thus lowering the defense advantage.
Currently, 20000P hashrate generates a revenue of 30 million, but the costs will increase to 50 million per day after the hash war or more. Thus, if CWS were to face the hash war full on, he will burn capital at the lightning speed and it will not last him for too long.
6.3 Conclusion: the winning factor of the hash war depends on the combination of hashrate and capital. The lesser hashrate if CSW has, the more capital he needs and vice versa. If CSV has huge capital base, even if he only has 4000P hashrate
Part 7 — The full-on war and guerilla war
From chapter 2 to 6, we discussed about ‘’the hash war where the goal is to kill one of the chains’’: At the point of the fork, the attacker and the defender will continue to mine blocks on their chain until one party abandons its own chain.
This kind of full-on war is similar to what we see in wars among countries where the goal of the war is to destroy the other countries. Full-on war requires huge amount of resources, not sustainable in the long run and has little detrimental effect to military targets.
On the other hand, we have the guerilla war: because the attacker does not have enough strength or determination, they do not battle with each other full on and do not engage in continuous mining to attack other chains but rather engage in scattered and infrequent attacks. Therefore, the cost of attack is low and this tactic is likely to be more sustainable. Every attack will overwhelm the original chain, but it will also be recovered by the defender. This tactic will only affect the stability of the chain but not ‘’kill’’ the entire chain.
For defender, where the cost of defense is 0 in a guerilla war because the attacker will not mine continuously and the defender will only need to mine a few blocks as before in order to overwhelm the attacker chain. They do not have to pay for additional cost for defending but their compromise is the stability of the chain. During the war, their chain is unable to process transaction and therefore all transactions will be unidentified.
Below is a summary of ‘‘full-on war’’ and ‘‘ guerrilla war’’.
As with other segments of the article, the aim hash voting is a type of arbitration. If both parties have the same goal but use different means to achieve it, we can avoid necessary forks. Only full on war is able to ‘’kill one chain to prevent fork’’ and the guerilla war is unable to do this. Guerilla war has no other purpose apart from prolonging the hash war and damage the ecosystem.
Part 8 — The outcome of the hash war
Scenario A: CSW attack failure, Bitmain defense success
CSW has been advocating for ‘’hash war and no splits’’. If CSW loses the war and fulfils his promise and gives up the BSV chain which ends the hash war, ABC will become BCH and BSV chain will cease to exist. 【see flow chat, result no.1】
However, CSV claims again he is going to engage in 2 years of war and let BCH unable to trade. (Refer to the email CSW sent to Roger Ver after he announced that Bitcoin.com is going to pledge support for ABC)
If CSV loses the war, he would not be able to kill the chain by engaging in continuous attacks and also he will not be able to prevent the split if BSV chain continues to mine blocks. Overtime, there will still be two split chains BSV and ABC. 【see flow chat, result no.1】
Then CSW would have broken his promise of not supporting splits and his chain would likely be abandoned by most of the community.
If CSW engages in long term guerilla war, it will cause BCH to be unstable and exchanges will not resume deposit and withdrawal of BCH. This is what CSW meant by “2 years of no trade” and “welcome to bankruptcy” in this email to Roger Ver. This does not benefit anyone in the BCH community.
If BCH community is unable to stop CSW from engaging in long term guerilla war, then:
1. BCH mining pools will need to build cooperation measures for self defense systems. When hashrate of CSW is mining blocks as per normal, accepts it. When it detects an attacker chain that tries to isolate the original chain, the pool should not accept the chain. They should adjust and gather hashrate to mine on the main chain until it overwhelms the attacker chain.
2. When the defense chain overwhelms the attacker chain (which can last for a few minutes to a few hours, depending on the length of the chain, longer the chain, longer it takes for recovery). The BCH chain will not be able to verify any transactions and users will see that transactions that were recently confirm will become unconfirm and this brings about instability for the BCH main chain.
Therefore, the best method is ABC dev team to issue patch fixes during the hash war and will only accept height=1 reorg chain (normal orphan blocks) and reject any reorg chain with heights ≥ 2. In this case, the attacker can only isolate the most recent block, period for recovery is short and will not cause any threat to exchanges and merchants.
The mining pools need to be more alert because in case of network issues, continuous blocks with height greater or equal to 2 can be mine, and this will result in a permanent split. If such split did occur, mining pools should coordinate with one another to abandon the shorter chain and adopt the longest chain.
Scenario B: CSW successfully attacks the chain and Bitmain gives up on defending
As analysed in 6.2, if CSW is able to burn more money than Bitmain, Bitmain will then be forced to give up their defense. If the ABC dev team abandons ABC chain and adopts BSV chain, or it doesn’t accept BSV chain and quit BCH development, it means that the hashing war has ended and ABC chain dies (nobody mines on the chain anymore), BSV chain becomes BCH 【see flow chat, result no.3】.
It is also possible that the ABC dev team does not give up. They might announce that they are being attacked and their original mining algorithm is not safe, so they could change the algorithm from POW to POW+POS.
Changing consensus mechanism might result in a huge controversy, however, given that both BitcoinCash.org and ABC developer team have pledged support for the ABC chain, exchanges are likely to reserve the BCH trading pair for the ABC chain and use a new BSV trading pair for the BSV chain (similar to BTC forks)【see flow chat, result no.4】.
This is the worst case scenario, because BCH community will have a huge divide and BCH will be compromised. BSV will take over BCH and abandon the original goal — which is to challenge BTC and become the real Bitcoin.
No matter the outcome, this war will display the power and influence of the hashrate and this would potentially put weight on the importance of hashrate in the ecosystem. This lays the ground of using hashrate as the deciding factor for future Bitcoin splits. BTC, BCH, BSV and other coins which have same consensus algorithm and yet splits will eventually be unified.
Part 9 — User advice during hash war
- If you do not intend to buy or sell BCH during the hash war, you simply need to keep your private keys.
- If you intend to buy/sell BCH, please read carefully the mechanisms and logic behind the attacker and the defender and ignore any articles which have any opposing views from what you have read here. During the war, if you want to know the price changes in ABC and BSV, please consult God. (my view: for short term price fluctuation, seek God. for long term price fluctuation, look at the user base.)
- CSW has been confusing the community with ‘‘one transaction can be confirm on both chains’’ and ‘’there is only one chain and no split’’. These two views are not directly related.
When the war starts, as long as ABC and BSV has the slightest different (like ABC confirm a transaction that contains DSV code), then ABC and BSC will split into two chains. Therefore, in reality there is no such thing as ‘there is only one chain’. The most CSV could do would be to kill the ABC chain and only let one chain survive.
After ABC and BSV split, CSW will not increase protection for BSV and the incident that happened when ETH and ETC split might happen again (when sending ETH, ETC from the same address was being sent out). When you are sending ABC, the same transaction can also be confirm on the BSV chain, the BSV coins might be also sent out. If you do not know how to do split, please send your coins to exchanges with the same deposit addresses for BCH and BSV, in order not to lose your coins.
- Before the war begins, deposit your BCH to exchanges that promises to give you both coins. The benefit is that you can still trade your BCH during the war and if fork really occurs, the exchange will help to split the two coins. The limitation is that we will have to rely on what the exchange says about withdrawal and deposit. If the war persists (especially if CSW engages in guerrilla war), it could be likely that the exchanges will not open for deposit and withdrawal for a long time. Also, exchanges face the risk of shutting down.
- Leave your coins in your wallet where you have access to the private keys. The limitation is that you will not be able to trade during the war but the benefit is that you are able to have access to your private keys and when the war ends, you can still trade on exchanges that resume their activities. There are pros and cons of the various options, you should choose the best option according to your needs.
Part 10 — BTC.TOP’s stance
I support the hash war and agree that BCH should focus on acquiring users, iterate quickly and through the means of a hash war (hash vote) to eliminate differences and prevent unnecessary forks. BTC.TOP’s hashrate will pledge support to the party who is willing to invest more hashrate and capital, quickly resolve the war and let BCH chain resume its operation the soonest.
Part 11 — Summary
1. Survival is the ultimate truth and it’s the deciding factor on what is right and wrong. hashrate can ‘’kill a chain’’ and therefore it should have governing power for any mechanism that Bitcoin eventually adopts.
2. Through ‘‘51% empty block attack’’,we can stop any chain from verifying any transaction. When miners are unable to mine any blocks from the chain, they will abandon the chain and the chain eventually dies.
3. Defending using ‘‘51% empty block attack’’ requires us to defend the original chain and gather more hashrate and form a longer chain in order to overwhelm the attacker chain.
4. Defender has mining rewards as their ‘‘defense advantage’’, but the more hashrate the attacker has, the defense advantage falls and the capital the attacker needs falls. On the other hand, if an attacker has large capital, they need lesser hashrate.
5. Bitmain can use hashrate from BTC to engage in the BCH hash war and thus has more hashrate than CSW. CSW needs large amount of capital and must be willing to burn all his capital in order to win this war.
6. ‘Guerilla war’ does not achieve the goal of this war: “to kill one of the chains’’. Apart from prolonging the war and causing damage to the ecosystem, it has no other purpose.
7. After the war, if one of the parties concedes defeat, the war ends and the surviving chain will become BCH. If the failing party does not concede defeat (CSW engage in Guerilla war or ABC switches to POW+POS), BCH will split into BCH and BSV.
8. If CSW engages in “Guerilla war”, ABC developer team will need to issue patch fixes and will need cooperation from mining pools and exchanges to eliminate his influence.