There are few projects more likely to elicit a robust opinion than Bitcoin Cash (BCH). Despite the drama, contentious hard forks and colorful personalities, the developer teams working on the protocol have made several radical changes to the blockchain over the past 18 months.
With the vision to serve as a fast, inexpensive, peer-to-peer (P2P), global cash, the project has been focused on making BCH the ideal medium of exchange crypto asset. Critics though have often cited the threats to mining and node decentralization that these ambitions present.
In contrast to many monetary-focused crypto assets, BCH developers insist that mass scaling is superior on-chain. Furthermore, the project since its fork has taken steps to increase the functionality and smart contracting capabilities while also making the protocol as merchant and payment-friendly as possible. Recently, there has also been a push to improve the privacy and fungibility of the project
Today, we look at Bitcoin Cash’s unique properties and what to expect over the coming months.
One of the first distinguishing characteristics of Bitcoin Cash was its increased block size. In the eyes of the BCH community, Bitcoin developers were determined to cap the Bitcoin block size at 1 MB. Many in the BTC community favor deferring additional transaction demand off-chain via second layer solutions like the Lightning Network.
Instead, following the Bitcoin hard fork in August 2017, Bitcoin Cash developers increased the block size to 8MB.
In May 2018, the developers scheduled another hard fork with a further increase from 8 MB to 32 MB. However, this was not due to a lack of throughput as blocks were nowhere near full capacity prior to the change. Instead, as Amaury Séchet, Bitcoin ABC lead developer has pointed out, the move was in part to signal the continued dedication to block size increases.
Despite many in the community having an antagonism to the Lightning Network, a recent upgrade to Bitcoin Cash through the inclusion of Schnorr Signatures actually opens the door to such off-chain payment networks being compatible on the BCH blockchain.
Optimizing for Full Nodes
Despite the huge increases in throughput that the BCH roadmap promises, there are widespread concerns regarding mining and node centralization. By allowing for significantly larger blocks, the BCH blockchain would increase in size linearly. Since full nodes need to download a full copy of the blockchain, the huge size could be prohibitive to smaller players who cannot afford the hardware requirements for this storage. In theory, this would then lead to an ever more centralized pool of full nodes and full-node operating miners. According to many critics, this undermines one of the most crucial reasons for using a public blockchain in the first place, namely decentralization, and censorship-resistance.
In order to mitigate some of these effects, another change was made in November 2018 called canonical transaction ordering (CTOR). In Bitcoin, through something called topological transaction ordering (TTOR), transactions are constructed in an almost random sequence and structure. By integrating CTOR though, transactions stack alphanumerically. The effect of all this is that it enables parallel validation of transactions. This, in turn, allows for much faster validation and propagation of bigger blocks.
Parallelization is one of the principal mechanisms by which developers are planning to alleviate the pressures that big blocks impose. Beyond this, there are further plans for parallelization with a protocol called Graphene promising to deliver further improvements.
In addition to being peer-to-peer cash, Bitcoin Cash has been adding significant extensibility to the core protocol. Since its inception, developers have added several opcodes that were originally part of Bitcoin.
There are two opcodes in particular that have added important functionality, namely OP_CHECKDATASIG and OP_CHECKDATASIGVERIFY. These changes allow for external messages to have their signatures validated in a transaction. Essentially these make it possible to bridge the Bitcoin Cash blockchain and external data through oracles. This is a major increase to functionality as it allows for a far broader range of events and value transfers to occur on the blockchain.
The vision for this enhanced extensibility is to allow for and encourage as wide a range of assets to be traded on the blockchain while also enabling as many business use cases as possible. In this regard, Bitcoin Cash is encroaching on the territory of platform protocols by enabling more advanced smart contracting and interoperability with non-blockchain systems. One often-heard criticism of such enhanced functionality is that it increases the attack surface of the protocol and its vulnerabilities to bugs. While this is somewhat true, by maintaining the scripting language, as opposed to substituting a Turing-complete language, these attack vectors should still be kept relatively small.
Regardless of the scalability changes, the Bitcoin Cash block time at ten minutes makes it unsuitable for fast, secure payments. As such, the developer community has outlined plans to make zero-confirmation payments near-instant in a secure manner. For now, the plan is to achieve this by introducing a secondary complimentary consensus mechanism called Avalanche. This will serve alongside the existing Proof of Work (PoW) system.
Pairing with Avalanche
Avalanche is a byzantine fault-tolerant protocol that offers a different way for nodes to reach consensus. In this system, nodes will ask a group of other nodes randomly which transaction they view as valid. The querying node will then accept the majority opinion of this group. This process then repeats over multiple rounds. The effect is that over these rounds, the network reaches consensus.
This mechanism is able to protect against a majority of malicious nodes pretending to be cooperative. However, to make this protection, it is necessary to allow for a very large number of rounds. This, in turn, runs contrary to the goal of fast zero-confirmation payments. Therefore, the proposal by Chris Pacia, a BCH developer is to use the existing PoW mechanism to prevent against this Sybil attack while limiting the number of avalanche rounds.
Developers hope that these improvements could allow for zero-confirmation transactions to be secure within three seconds.
If successful, these changes would make Bitcoin Cash far more suitable for time-sensitive transactions.
Privacy and fungibility are two properties that are increasingly recognized as prerequisites for sound money in the crypto space. While we already have privacy-focused blockchains like Monero and ZCash, other protocols such as Bitcoin and Litecoin are dedicating more attention to these features.
While neither privacy nor fungibility is part of the official Bitcoin Cash roadmap, the protocol has recently integrated Schnorr Signatures. This signature scheme is an alternative to the commonly used ECDSA arrangement. Importantly, it allows for the data within smart contracts to appear identical to regular transactions. As a result, it would blur the lines between regular Bitcoin Cash transactions, atomic swaps, and off-chain transactions. It is important to note though that this in no way obfuscates transaction amounts or blockchain addresses. As a result, the protocol falls short of proper fungibility.
There are currently no plans for further protocol-level privacy upgrades. This is partly out of concern regarding the scalability tradeoffs that it might entail. That being said users can choose to use the Cash Shuffle application which allows for the mixing of coins, so that onlookers cannot identify one’s Bitcoin Cash outputs.
So while there have been attempts to offer some privacy options, Bitcoin Cash has less focus on both fungibility and privacy than the other major monetary crypto assets. For now, it certainly seems that on-chain scaling and extensibility are of more importance to the community and developer teams.
The next 12 months are likely to be crucial for Bitcoin Cash. With the progress of the Lightning Network, we will finally see if on-chain scaling can outmatch off-chain methods.
With the integration of Avalanche, Graphene, further block size increases and additional opcodes, the protocol has set a high bar for itself. It will be fascinating to see the market decide whether Bitcoin Cash’s vision for a global P2P on-chain cryptocurrency can supersede the more conservative path that its twin has taken.
This article is Originally posted on CoinCentral.com
Author: Ben Whittle