How to get ready for BCH hard fork coming in November

發佈於 Nov 3, 2020 | 部落格

BCH hard fork will be vulnerable to replay attacks

BCH will hard fork on November 15th 2020. Since Bitcoin Cash currency is supported throughout CYBAVO platforms, we will introduce how we are going to handle this hard fork.

The reasons for the BCH hard fork

Although Bitcoin Cash is defined by a single protocol, the implementation of each client following the protocol depends on different independent teams. The current parties to the dispute are:

  • The ABC full-node client team supports the launch of the Infrastructure Financing Plan (IFP). After the fork, the tentative name of the new currency is BCHA.
  • Multiple full-node client teams including Bitcoin Verde, Bitcoin Unlimited and Bitcoin Cash Node are opposed to the launch of IFP. After the fork, the tentative name of the new currency is set to BCHN.

Although in the past ABC was first in terms of computing power, currently most power is concentrated on Bitcoin Unlimited and its related teams. For the current node computing power distribution, please refer to https://cash.coin.dance/nodes.

What will be the impact

Since hard forks affect the regular behavior by multiple factors such as node computing power, our company will suspend all BCH transaction functions, including withdrawal, batch withdrawal, and SOFA functions (deposits, collections and withdrawals) on 2020/11/15. The detailed time will be announced again on 11/10. 

This action will be taken to avoid user losses caused by node computing power problems such as rollbacks, 51% attacks, transaction replays, etc. It is expected that transactions will resume within two weeks after the fork. We will constantly evaluate the situation to decide whether to extend this date or to resume the trading earlier.

Will CYBAVO support both currencies after the fork?

Both currencies will be supported after the fork, although support time may vary. The time will be determined by varios factors, like the computing power and available nodes after the fork and the ability to avoid replaying transactions.

Is there replay attack protection for this bifurcation?

Unfortunately, the hard fork to BCHN and BCHA does not intend to take any replay protection mechanism.That is, in the two chains existing after the hard fork, if you spend a UTXO on BCHN, it can be taken and replayed to BCHA, and such transaction will succeed.

We can illustrate this with an example. Originally, your BCH address had 10 BCH. After the fork, you will have 10 BCHN and 10BCHA at this address. When you make a 1 BCHN transaction to an address, this same transaction can be taken and re-placed on BCHA, meaning that your BCHA balance will also be transferred to a certain address. This is known as replay attack.

How to avoid replay attacks?

After discussing with the BCH Dev development team, since there is no replay protection adopted during this fork, OPCODE vaccine similar methods, used during the BCH/BSV bifurcation cannot be used, and the only way is to first stop the trading. After a block is produced, there will be a mining reward. That UTXO can be used to “contaminate” the original UTXO with this new UTXO (just a small amount is enough, and then tie all the UTXO in your wallet to this one). By doing this all the subsequent transactions will be protected from replay attacks.

How to proceed

If you are using our custody platform CYBAVO VAULT with vault and batch wallets, you need to be aware of the following steps:

  • From 11/15, you will not be able to trade BCH (you will be able to receive but not to send). Balance information will be displayed as usual. If your company needs funds, please process BCH assets early. It is very likely that other external wallet services will will also suspend trading. 
  • Please collect all BCH wallet assets into a single wallet before (11/15) (collect the BCH of the vault and batch wallets into one BCH vault wallet). After the fork, we will inform you which trading platforms (such as Binance and Huobi) will be allocated to the mining rewards issued by the mining pool. We will inform you which major exchanges allow to buy small amounts of BCHN, to then transfer it to this BCH vault wallet. 
  • Next week we will enable a one-click transfer function to transfer all the funds in this BCH wallet to another wallet. Note that all funds must be transferred together.
  • Thanks to this transfer process, all the old UTXOs that vulnerable to a replay attack will be mixed with the new UTXO (or “contaminated” by the new coins), and therefore protected against the replay attack. As long as one of BCHN or BCHA currencies is “contaminated”, the other currency is safe without worrying about being replayed.

If you are an exchange solution customer (SOFA) with a deposit and withdrawal wallet, you will need:

  • Be sure to notify your customers in advance that BCH transactions will be suspended on 11/15. Customers will not be able to deposit and withdraw coins during this period. Please consider whether to continue holding coins or convert them first. Our company will provide a snapshot function of the deposit address. 
  • The UTXO “contamination” process only needs to be performed in the pool address (not for every deposit address). To do that, send all the funds in the address pool to any external wallet (for the pollution), and then send them back to the pool address after including new UTXO.
  • At that time, only the above-mentioned polluting transaction process is required for the pool address to restore the use of the deposit address and secure accounts without worrying about replay attacks. The same transaction pollution process must be performed in the withdrawal wallet to avoid withdrawal replay attacks.

This hard fork is relatively complicated because the BCH team has not reached a consensus on replay protection. Our company will directly contact companies that use BCH to confirm that the processing is performed correctly. In addition, if one of the currencies disappears after this bifurcation, no further processing will be required.

For more information, visit www.cybavo.com or get in touch with us.