Ravencoin began its life as a code fork of Bitcoin, and inherited its strengths and weaknesses. Ravencoin is not the first code fork of Bitcoin, and certainly won’t be the last.
The original, and still present, difficulty adjustment in Bitcoin looks back 2016 blocks, and calculates the difficulty that will be used for the next 2016 blocks with the goal of adjusting the difficulty so that the collective hashing power will create a new block every 10 minutes. This has been working really well for over nine years — on Bitcoin.
Some of the altcoins that copied Bitcoin code ran into some problems, and many have been completely destroyed because they didn’t change the proof-of-work algorithm, and as they became profitable on an exchange, the mining community noticed and turned their own hash power — and in many cases additional rented hash power — to the alt coin. Sometimes this is completely automatic when a profit-seeking multi-pool targets the coin. This very quickly mines the coins profitably until the 2016 block boundary and the difficulty adjusts. The difficulty would adjust so much that mining the coin would no longer be profitable, and almost all the hash power would leave. In many of these cases, the coin would never recover.
Ravencoin didn’t have this problem because x16r hash power came exclusively from CPU mining initially, and only later came from GPUs. It wasn’t until the x16r hash power was rentable from Nicehash and others that Ravencoin became vulnerable to this phenomenon. It isn’t really an attack as much as it is self-interested miners working towards their own profit motivated goals.
Ravencoin had a spike in price and with the availability of rentable hash power, the miners jumped in started mining. At the next 2016 block boundary the difficulty jumped up, as it should. This made it less profitable during the next 2016 blocks, so only those with a clear understanding of the long term outlook for Ravencoin continued mining. Then, the next 2016 block boundary hit, and the difficulty dropped significantly, making Ravencoin very profitable to mine. The cycle repeated, but each time going lower, then higher until it hit some coded limits of 4x. Ravencoin hit these extremes in August.
The solution to these extreme swings is to implement a smoother and more frequent difficulty adjustment. The first of these was Kimoto Gravity Well (KGW), and others like Dark Gravity Wave (DGW), and Linear Weighted Moving Average (LWMA). We looked at all of these and picked the one we felt was best for Ravencoin.
The wonderful Ravencoin community has kept the Ravencoin blockchain going even while mining at a financial loss during the difficult times, and for that we are grateful.
The difficulty algorithm change will take place on block 338778 on mainnet. We’ve tested this switch from Bitcoin’s 2016 look-back to a 180 block DGW look-back on testnet4. Version 2.04 is available for download. The mining pools have been notified and the exchanges have been notified of the change. If you’re late updating the software and you’re just HODLing RVN, then you can update at any time. If you’re actively sending, receiving, and mining (not in a pool), then make sure you’ve upgraded to version 2.04 before block 338778.