The Bitcoin Cash network has officially upgraded the blockchain protocol at approximately 1:54 EDT by extending the current block size fourfold from 8MB to 32MB. The consensus change is one of the largest block size increases in blockchain history, and the upgrade also adds the great knowledge of understanding Satoshi’s OP_Codes – which could add the ability to code colored coins and binary contracts.
The wait is over as the Bitcoin Cash (BCH) network has upgraded its base block size from 8MB to 32MB. The implementation of the new consensus rules went into effect at block height 530356, and so far the transition has been smooth as the community awaits the next concession of blocks. Miners and other full BCH nodes had already upgraded their clients to the latest Bitcoin ABC 0.17.1 and other supported implementations like Bitcoin Unlimited, and XT over the past few weeks as the community prepared for the change. Among some minor updates, three notable changes have been enforced throughout the network which includes a 32MB block size, an increased default data-carrier-size to 220 bytes, and re-enabling previously disabled Satoshi OP_Codes.
The first and biggest change to the Bitcoin Cash consensus rules is obviously the fourfold block size increase. Raising the block size to 32MB will allow vast amounts of transactions to pass through the network with consistent inexpensive transaction fees. Right now the amount of BCH transactions per day has been steadily increasing, and because the base block size has increased by four times its original size, blocks will not fill up for a very long time. The capability of this mechanism has been proven multiple times as there have been many BCH blocks between 2-8MB processed over the course of the past nine months. For instance, just sixteen days after the fork on August 1 the mining pool Viabtc processed an 8MB BCH block which cleared over 37,000 transactions in one fell swoop.
Another notable Bitcoin Cash network change is the blockchain’s default data-carrier-size being raised from 80-bytes to 220-bytes. This enables a robust OP_Return feature which is a relatively inexpensive way to embed data into the BCH chain. Essentially the OP_Return is a script code that is used to mark transactions as invalid but many cryptocurrency enthusiasts believe the OP_Return feature is meant to record a rich set of data and not just financial transactions. However, back in 2014, BTC developers believed “storing arbitrary data in the blockchain is a bad idea” and recommended users store “non-currency data elsewhere.” OP_Return has been in the Bitcoin codebase since it was launched, and in February 2014 the 80-byte OP_Return was reduced to 40-bytes, but it was later increased and merged back to 80 bytes in 2015. Basically, the developers at the time considered this type of blockchain usage as ‘spam’ that would end up bloating the network.
However, even as developers warned that the use of OP_Return was a ‘bad idea,’ individuals and organizations continued to use it to embed arbitrary data. Two organizations, specifically Omni layer, and Counterparty, showed that using OP_Return for arbitrary data could be innovative towards building meta-protocols over a secure blockchain — although when blocks are full and the network is congested these types of layer systems find the blockchain’s network fees unsustainable. The BCH chain upgrading to 32MB and increasing the default data-carrier-size to 220 bytes will allow all kinds of innovations, like added creativity in applications such as Memo, Counterparty Cash, Blockpress, and many other platforms.
Last but not least is the re-enabling of disabled Satoshi OP_Codes — which are essentially codes that perform specific operations using an internal stack language called Script. Many people consider Script to be extremely similar to the programming language Forth — another stack-based language and software environment. In the original Satoshi Nakamoto Bitcoin client, the creator added OP_Codes to the software which can perform operations like simple math and string handling processes. Most of the original OP_Codes were disabled in earlier clients and many people believe this language could bring new functionalities to the Bitcoin Cash network.
The OP_Codes implemented on the BCH network will improve our understanding of these codes Satoshi originally added. If all goes well with gaining knowledge from these codes then developers can enhance binary operations and contracts using the OP_Datasigverify code, and possibly OP_Group in the future. Further BCH proponents believe a good portion of these OP_Codes will bring forth many innovative features such as multi-signature operations, colored coins or representative tokens, smart contract compilers, and 0-confirmation sending techniques.
Today’s upgrade is the first step towards many of these innovations and visions BCH proponents have been talking about for months. And there’s a bunch of other developments being discussed, such as double spend notifications — which notify nodes when a double spend takes place and a new Proof-of-Work (PoW) target called Bobtail. Additionally, programmers are looking into the Graphene protocol and other concepts that could add a rich feature set to the BCH chain. Today’s 32MB upgrade was a successful fork for the BCH community, and very likely there will be many more other upgrades in the future.
What do you think about the Bitcoin Cash upgrade? Let us know your thoughts on this subject in the comments below.
Written by Jamie Redman