Tomorrow, Wednesday, May 15th, 2019, Bitcoin Cash (BCH) will carry out an update fork of its protocol, introducing a number of interesting novelties, including the Schnorr signature scheme.

The fork will occur at block number 1557921600, approximately around 2 p.m. CET on May 15th. It is possible to see the countdown on the following page.

The Bitcoin Cash fork will not result in the birth of a new cryptocurrency as happened last November with Bitcoin SV. This will only be an upgrade of the BCH protocol.

Bitcoin Cash (BCH) fork: Schnorr’s signatures incoming

By analysing the changelog, it is possible to observe the various novelties that will be introduced with this update. The first thing that stands out is the implementation of Schnorr’s signature scheme in place of the current ECDSA.

The new signature scheme, invented by Claus Schnorr, will allow Bitcoin Cash users to reduce the space used in BCH blockchain blocks thanks to the concept of aggregate signatures.

Not only that but by using the aggregation of signatures, it is also possible to improve the privacy of transactions. This will further reduce transaction costs and improve the performance of the Bitcoin Cash network.

Lucas Nuzzi, director of the research department of the Digital Asset Research Lab, said in a previous statement:

“While the ability to fuse keys may sound trivial, the benefits of key aggregation should not be underestimated. Since multisigs are not natively supported by ECDSA, they had to be implemented in Bitcoin via a standardized smart contract (yes, Bitcoin has smart contracts too) called Pay-to-ScriptHash (P2SH). This enables users to add spend conditions called encumbrances to specify how funds can be spent”.

“The first problem with P2SH is that it requires knowledge of the public keys of all signers participating in the multisig, which is not an efficient system. Aggregating these keys would allow for more efficient validation as only one key needs to be verified by the network, rather than n keys. That also means less footprint on the blockchain, lower transaction costs, and improved bandwidth”.

BCH developers have decided to make Schnorr’s signatures optional while maintaining support for classic ECDSAs. The cryptographers decided to implement Schnorr using the same elliptic used by ECDSA, so as to make the upgrade backwards-compatible with the previous Bitcoin Cash forks.

Despite this, the use of Schnorr’s signatures will save about six bytes compared to the classic 70 bytes required by an ECDSA signature. This is almost 4% less space.

In the case of multisig transactions, the reduction could be as much as 20-25%, leading to a significant reduction in the amount of bandwidth used.

Segwit Recovery Exemption and other news

Another important feature of this Bitcoin Cash fork is the Segwit Recovery Exemption.

In the previous update, the coins accidentally sent to the P2SH addresses of Segwit were rendered unspent by the CLEANSTACK rule. With tomorrow’s fork, an exception to this rule will be added, so that BCHs locked on these addresses can be unlocked.

Among the other features of the Bitcoin Cash fork, the roadmap also mentions the addition of the following features:

  • Payment channels hidden like classic payments;
  • Atomic swaps disguised as normal payments;
  • Lightning Network-style payment channels, if desired;
  • Secure chains of unconfirmed transactions involving several parties (layer 2).

Bitcoin Cash (BCH) fork: how to prepare

Since this is a simple network upgrade, end users have little to do but update their wallets (only if using a proprietary full node).

A different story for those who have a full node, which must be updated to the latest release of the various clients available. The ones ready to fork BCH are:

Updating the various clients is necessary to properly initialise the fork. For users there will be absolutely no differences compared to the pre-fork situation.