Phoenixcoin has had 5 hard forks which have changed the technical
specifications significantly. The currency was released with Scrypt as the basic
hashing algorithm, a total supply of 168 million coins, 50 PXC per block,
a block target of 1.5 minutes, difficulty retargets every 2400 blocks,
a 4.0 difficulty limiter.
As Phoenixcoin ran into a serious difficulty trap early in June of 2013, the 1st
hard fork took place at block #46500 (19th of June). It reduced the interval
between difficulty retargets from 2400 to 600 blocks and the difficulty limiter
from 4.0 to 1.8 which helped for a short while.
The 2nd hard fork took place at block #69444 (2nd of August 2013). It was
infamous for taking people by surprise as it was released with a 6 hours advance
notice only and played with things which were better left unchanged. The block
target was halved from 1.5 minutes (90 seconds) to 45 seconds while the block
reward remained at 50 PXC per block. Simply said, the coin generation rate was
doubled. Such developer's incompetence made many coin holders dump and leave.
Most of the pools failed to update in time which caused losses to their miners.
In fact, even most of loyal miners had switched elsewhere soon after. To make
a conclusion, it was a plain disaster.
The 3rd hard fork at block #74100 (30th of August 2013) was supposed to fix
the previous one. The block reward was halved down to 25 PXC per block and
the block target was adjusted to 45 seconds to restore the previous generation
rate of 48 thousand PXC per day. Averaging window was reduced to 126 blocks and
difficulty limiter was set at 1.09.
The 4th hard fork was prepared by the new lead developer. It took place at block
#154000 (16th of November 2013). It was meant to remove all code of the previous
developer and write new one with protocol settings suitable for the long run.
The block target and block reward were restored at 1.5 minutes and 50 PXC
respectively, the total coin supply was set at 98 million. A significant update
was made to the difficulty retarget algorithm. All previous implementations
operated with averaging windows sized equally to retarget intervals. Although
small retarget intervals with small averaging windows have advantage of smooth
difficulty transitions which keep actual block targets close to nominal and
deliver better rewards to loyal miners, there is a serious threat of time travel
attacks with difficulty traps. To address this issue, a complex algorithm has
been developed. It retargets every 20 blocks, but operates with two reasonably
large averaging windows of 100 and 500 blocks each. Results of both windows are
averaged again, damped with a 0.1 coefficient and passed to a 1.02 difficulty
limiter. There were additional precautions taken to reduce efficiency of time
travel attacks. The 4th hard fork also included support for broadcast
synchronised checkpoints also known as the ACP (Advanced CheckPointing)
to prevent massive block chain reorganisations also known as 51% attacks.
The ACP code was written by Sunny King of Peercoin and Primecoin and merged into
the development tree of Feathercoin on the 20th of August and next to Phoenixcoin.
The 5th hard fork switched Phoenixcoin from Scrypt to NeoScrypt. It also adjusted
max. difficulty change on every retarget to be between +2% and -5%.
- NeoScrypt (N = 128, r = 2, p = 1, etc.)
- ~98 million total coins
- block target is 1.5 minutes
- block reward is 25 coins
- block reward gets halved every 1 million blocks
- retargets every 20 blocks (~30 minutes)
- +2% to -5% max. change on every re-target
- advanced averaging: 100 + 500 blocks 0.1 damped
- advanced checkpointing against 51% attacks
- the default P2P port is 9555, RPC port is 9554