With Bitcoin’s blockchain splits into BCH, BTG, and possibly S2X now on the horizon, we’re already seeing the potential damage being done across the existing ones by miners. Most miners are hunting for profitability, jumping to whatever coin is going to net the most money, and BCH/BTC have been taking a large hit mining-wise as a result. But in theory, there is a potential solution to this: faster retargeting, maybe through something like the “Kimoto Gravity Well” algorithm, though there are others as well.
How Retargeting Works
As a coin’s hash rate increases and decreases, its difficulty fluctuates to make it harder or easier to mine. The goal is to keep the blocks being generated at a specific rate, regardless of how much power is being thrown at mining. In the case of the various Bitcoin chains, they are set to come at a rate of 1 block per 10 minutes. Essentially, what is changing is the required result of a hashing function (SHA-256, though there is a bit more to it, best explained in the white paper). As the difficulty goes up, the required result shrinks. As it goes back down, the required result increases. With the smaller numbers, it takes more time/power to get the result, analogous to rolling between 1 and 100 and going for a result that is below 50 vs. below 2. You’ll need to generate more numbers to get the latter (on average).
In the case of the Bitcoin blockchains, this retargeting system currently happens every 2016 blocks, taking an average of how long it took to generate the previous set of blocks. It’s expected that this will take place every two weeks, and if it takes less, the difficulty goes up. If it takes longer, it goes down.
Chain Hash Attacks Due to Splits
For ease of explaining, while more and more hardware is constantly coming online for mining, we are somewhat plateaued until a new, much more efficient mining chip is created. So let’s assume that we have (for ease, though the number is much, much higher) 100 GH/s across the SHA-256 coins.
All of this hash rate is on Bitcoin, and it has stabilized. Now BCH splits, and its difficulty crashes significantly, making it very easy to mine. At the same time, its value goes up, to the point where it’s actually more profitable to mine than the original Bitcoin chain. What happens? Miners that were on BTC start swapping over to BCH for more money. This leads to two things:
- BTC is at a much higher difficulty than its hash rate can handle, so it takes longer to mine blocks
- BCH is at a much lower difficulty than its hash rate, so it starts plowing through them
We’ve already seen this cycle many times. Once the 2016 blocks are mined on BCH, it retargets up and miners move back to BTC again. During the meantime, however, the chain with the least hash rate ends up processing blocks at a much slower rate – in fact, BTC has had many periods where the average is closer to an hour, and the fast swap to BCH has led to blocks as short as 1-2 minutes.
Solving This Issue Through Faster Retargets
The easiest way to solve this is through retargeting faster. It’s not the current hash rate that causes problems – it’s the fact that as hash rates go up and down, it has to finish the current cycle (2016 blocks) before any change is made. Kimoto Gravity Well is a great example of a fix, in that it retargets every block. Forms of this are used in many coins, such as Dash, VTY, Eth, and others to great success. And with Bitcoin going through more and more chain splits and still going further mainstream, finding a way to keep them stable is paramount at this point – as it is, we’re already seeing it become more and more centralized due to overwhelming hash power being abused for profit.