The Bitcoin ABC development team has announced its plans for the November 13 Hard Fork upgrade of Bitcoin Cash. The upgrade is designed to stabilize the problematic difficulty adjustment algorithm (DAA). News.Bitcoin.com talked to Bitcoin ABC lead developer Amaury Séchet and Bitprim CEO Juan Garavaglia about what to expect.
Statement on November 13 Hard Fork
The Bitcoin ABC development team issued a statement on Monday regarding the upcoming hard fork of Bitcoin Cash (BCC). The upgrade is intended to address the cryptocurrency’s problematic DAA, which makes Bitcoin Cash’s blocktimes slow to a crawl at times and work several times too fast at others. According to the announcement:
Activation of the new consensus rules will be done on a median time stamp basis on blocks that occur after timestamp 1510600000, which corresponds to November 13th, 2:06 PM GMT.
In addition, “this activation code has been merged,” the statement continued, adding that a new software version containing an updated DAA will be published on or before November 1.
Bitcoin ABC’s lead developer, Amaury Séchet, told news.Bitcoin.com on Monday that “nodes need to upgrade. Some wallets need to [upgrade], others do not. It depends on the technology powering the wallet.” He believes that the upgrade “is unlikely to result in a split this time, so the overall risk is reduced.” However, the developer suggested that “users should double check their transactions on an explorer such as blockdozer.com or blockchair.com if they have doubts.”
It is up to the decentralized Bitcoin Cash development community, especially the other node and wallet development teams, to upgrade their software before November 13 in order for the hard fork to proceed smoothly. Project developers stated that they “have been in communication with Bitcoin Cash miners and they are expecting this upgrade.”
Competition for the New DAA
The Monday statement describes five criteria which the new DAA algorithm seeks to accomplish. It needs to “adjust difficulty to hash rate to target a mean block interval of 600 seconds”; “avoid sudden changes in difficulty when hash rate is fairly stable”; “adjust difficulty rapidly when hash rate changes rapidly”; “avoid oscillations from feedback between hash rate and difficulty”; and “be resilient to attacks such as timestamp manipulation”.
These criteria address problems with the cryptocurrency’s original DAA, called the Emergency Difficulty Adjustment (EDA). The statement explained:
The original Bitcoin Cash “EDA” allowed Bitcoin Cash to survive as a minority chain but produces wild fluctuations of hashrate. This is problematic because it prevents consistently fast confirmations for users, and radically shifts the coin issuance schedule.
Three algorithms satisfying the criteria from developers in the greater Bitcoin Cash community were tested. They were D578 from Neil Booth; D601 from Amaury Séchet; and D622 from Tom Harding.
Two development teams in the Bitcoin Cash space that did not submit proposals, Bitprim and Nchain, reviewed the three proposed algorithms. After weeks of testing to judge their performance, Séchet’s DAA was chosen to replace the EDA.
Séchet told news.Bitcoin.com that the testing showed another algorithm, Harding’s D622, performed “slightly better overall, but is also more complex to analyze from a security point of view and as a result was put aside for now.” He also believes the D622 algorithm could be improved upon and replace his own in the future, but he feels that “we must not delay solving a problem that is currently live on the network for too long.”
According to the Monday statement, Nchain found that Séchet’s DAA “is the logical choice,” despite the fact that D622 “is 3.1% (+/- 1.2% at 95% CI) better in most instances.” However, the faster algorithm lacked safety in their estimation. “For example, a large miner can set fluctuations into the timing,” Nchain mentioned, adding that:
We acknowledge that D601 (proposal from Amaury Séchet) may not necessarily have the highest performance, but since all 3 had similar performance, D601 was selected because it appears to have the least risk.
Why the Upgrade is Needed
Since its launch at the beginning of August, Bitcoin Cash has displayed a highly variable time between blocks being mined. With both Bitcoin and Bitcoin Cash, this blocktime is supposed to average out to six blocks per hour, no matter how much hashrate is pointed at it.
The fluctuation in the time between blocks on the newer chain is so strong that production can jump between one block every four hours to a high of 61 blocks the following hour, like it did on October 12. With such a fast production rate, the Bitcoin Cash chain has lept over 7,800 blocks (55 days) ahead of the legacy chain recently. At that rate, it would be time for the next mining reward halving event much earlier than planned. Once halved, the Bitcoin Cash blockchain would be far less profitable than Bitcoin’s blockchain and profit-driven miners would likely abandon Bitcoin Cash.
The EDA, which is responsible for these wild fluctuations, was created to help keep the mining hashrate steady during its first few weeks. Soon after the Bitcoin Cash community’s developers realized the EDA problem, a debate ensued about how to remove it and what to replace it with in order to keep the miners interested in mining bitcoin cash.
Juan Garavaglia, the CEO and founder of the Bitprim project, told news.Bitcoin.com that “we expect the new algo will mitigate fluctuations in block generation, giving Bitcoin Cash users a better user experience and is one step forward aligned with Satoshi original vision.”
Séchet shared the sentiment, telling new.Bitcoin.com that, after the upgrade:
What do you think will be the result of the Bitcoin Cash hard fork? Let us know in the comments section below.
Images courtesy of Shutterstock and Bitcoin ABC.
Need to calculate your bitcoin holdings? Check our tools section.