Bitcoin Gold: How The Difficulty Adjustment Algorithm Will Work

10/24/2017 - 10:42 UTC
Bitcoin Gold: How The Difficulty Adjustment Algorithm Will Work

Bitcoin Gold has finally hard forked at block height 491,407, and it is only a matter of time before the new blockchain goes live. The project has released their roadmap (see link at the end of this article) which describes the various changes and the way forward. One of these changes is a new Difficulty Adjustment Algorithm which will replace that of legacy Bitcoin.

As you might know, Bitcoin's mining difficulty is automatically adjusted every 2016  blocks or two weeks, to maintain an average interval of 10 minutes between blocks.

If the average time between bitcoin blocks is less than 10 minutes, the difficulty increases; if the average time is more than 10 minutes, the difficulty decreases. This is how the Difficulty Adjustment Algorithm works in Bitcoin.

Being an utterly separate cryptocurrency, Bitcoin Gold adopts a much different difficulty adjustment algorithm called DigiShield V3. In fact, this algorithm is anything but new. It is already used by Zcash cryptocurrency although it was initially developed for another cryptocurrency: DigiByte.  No problem with that. Cryptocurrencies are open-source, and projects can implement useful ideas from others without question.

Anyhow, the idea behind DigiShield V3 is to look at how much time has elapsed between the most recent block and the median of a set number of preceding blocks and to adjust the difficulty every block to target a 10-minute block interval.

Bitcoin Gold developers think this more responsive difficulty adjustment algorithm will be "extremely useful in protecting against big swings in the total amount of hash power."  Because such swings can result in extreme deviation from the standard 10-minute target block interval.

Note that Bitcoin Cash attempted to protect against this risk by implementing an “emergency difficulty adjustment” algorithm, but that had the catastrophic effect of sometimes causing 50 blocks to be mined in one hour, and other times more than 12 hours between two blocks.

To remedy this problem, DigiShield is asymmetrical, in that it increases mining difficulty more slowly than it decreases it. For instance, in ZCash the difficulty can rise by 8% max and decrease by 16% max compared to the last difficulty level. Bitcoin Gold developers have not clarified yet how exactly they are going to program the algorithm, but we think this will be explained in the coming days.

More reading: Bitcoin Gold Roadmap

Disclaimer: This article should not be taken as, and is not intended to provide, investment advice on Bitcoin, Cryptocurrencies or finance in general.