[Dev] Hard fork to change retarget, averages and block time
-
It is no secret that our current difficulty solution is being exploited by the multipools to take the value of out Feathercoin mining. They use our solution against us to mine without moving the difficulty by much. Wrapper and Wellenreiter have spent a long time simulating our current problem and coming up with better solutions. What we have come down to is a much shorter retarget and the use of two averages compared to just the one.
We suffer from ‘peck’ attacks as Wrapper likes to put it, where the multipool throw a huge number of hashes at us for a small amount of time. Due to the 126 block retarget and the 504 average they can do this and leave the difficulty pretty much where it is but this does leave the difficulty higher overall removing room for loyal miners. It is hard to convince people to mine Feathercoin when the profit is so low due to the way multipools mine us.
For a while the current difficulty solution did its job but the multipools have now looked at how to maximise their profits and the cost to regular Feathercoin miners. With the new solution we hope to see a significant increase in the amount of coins that can be mined by regular miners as the effect of ‘peck’ attacks will be greatly reduced.
In addition to this something that was raised in the past is increasing the block time. This allows us to react faster to the ‘peck’ attack over a smaller amount of time. The coin reward has to be reduced proportional to the time reduction. Blocks that are too fast suffer from a large number of orphan blocks being created. The orphan rate drops off significantly at 45-50 seconds and we aim for a block time target of 60 seconds to be safe. Kevlar pointed out before that shortening the block time reduces the risk of double spends. We would also be the fastest coin on BTC-e so that’s an additional feather in our cap. Block reward will be reduced to 80 coins to maintain our current inflation model.
There is more to it than this and I hope to see Wrapper and Wellenreiter come on this thread. This may seem sudden but this has been a long time in the works without wanting to give too much heads up to those that exploit us. I am preparing a hard fork to make these changes to protect our users.
-
I long for these changes, as a loyal FTC miner frustration is putting it mildly. Difficulty calculation is a bit beyond my understanding, but I am just thankful that Bushstar and our dev team is looking out for us. You Fork away ;)
+1
-
Sounds like a well thought out fork. I’m looking forward to seeing the benefits.
I believe that merchants will be much safer as waiting a maximum of 60 seconds for one confirm is reasonable and as Kevlar said will reduce the risks of double spends via adding higher fees.
Just let me know the date and im ready to go.
-
As you all probably realise, I agree multipool coin hopping defence is a priority for all coins.
At the moment there seems little disadvantage in the changes we have investigated but major advantages to loyal miners. Wellenreiter and I have spent a lot of time on this, whilst all solutions have disadvantages, “advanced block time averaging” of the difficult calculation has the least.
The main problems with alternate solutions, such as Kimoto’s Gravity well, is they are more energy and calculation intensive but gave little or no benefit to loyal miners. The advanced averaging, combined with ReTargeting difficulty every block, is simple, low cost and is an extension of a standard “Bitcoin protocol” solution.
-
This is fantastic news. I’m greatly in favour of steps towards multi-pool resistance.
-
-
lol
nice picture :)
-
Do I take it from this that we need to go about getting mining pools updated etc???
UM
-
Do I take it from this that we need to go about getting mining pools updated etc???
UM
You’ll need to do the standard tasks for a hard fork:
- update wallets
- update/replace miner software
Besides the wallet update there are no special tasks for the pool operators required.
-
I’ll support that.
-
You’ll need to do the standard tasks for a hard fork:
- update wallets
- update/replace miner software
Besides the wallet update there are no special tasks for the pool operators required.
Would you elaborate a bit more on the update/replace miner software? I am currently using CGMiner 3.7.2. O0
-
Sounds great! One minute conformations compared to ten minutes for BTC, and 2.5 for LTC. This is a huge step in the right direction! This is why I am a loyal FTC supporter, innovative solutions which do not change the decentralized block chain base, but only fine tweaks the dials.
-
Go ahead!
I think you have the support of all the loyal miners here!
-
Would you elaborate a bit more on the update/replace miner software? I am currently using CGMiner 3.7.2. O0
It is only the solo miners and the pools that will need to update feathercoind to the new version, before the hard fork date / block number.
Miners using cgminer etc will not be effected.
-
Just a heads up Doge coin is already doing this!! It would be a great time to follow suit and get our changes in as well!
http://www.reddit.com/r/dogecoin/comments/207hfb/ann_dogecoin16_its_ready_all_you_need_to_know/
Now, onto the juicy part; what did we change?
Firstly, for those of you not already aware - Dogecoin has been gamed by Multipools. Multipools were cherry-picking large blocks (which were found to be provably pre-calculable), and hammering our networks hashrate - making mining for the solo doges incredibly difficult, while dampening their payouts massively. The end result was Multipool’s having twice as much doge as the average consumer; allowing them to dump our prices down with ease.
This ends with v1.6.
Changes implemented;
1) No longer a random block reward - we now only have static blocks. The current reward will be 250,000 Doge per block, with the halvening dropping us to 125,000 Doge per block, etc etc. This will prevent block cherry-picking; as we’re seeing at the moment, with our community pools only seeing 100-200k blocks, while the multi’s gaming the system are enjoying 300-500k blocks. From the 1.6 update, all blocks will be completely even.
2) The DigiShield difficulty algorithm: again, developed and contributed by the very clever folks at /r/DigiByte , this allows for rapid block retarget times, and rapid recovery from multipools suddenly hitting the network; meaning that our miners will no longer suffer from extremely long block times if a Multipool does decide to jump on board. This new algorithm will retarget our block times MUCH faster - ensuring the hard-mining shibe is not left holding the bag after the multipool ransack.
tl,dr: Multipools cannot selectively pick nice blocks anymore - nor can they do long lasting damage to our hashrates.
Now, importantly - what does this mean for your wallets?
We have implemented this code so that the new block rewards, and difficulty algorithms kick in at block 145K. Up until then, it’ll be standard, same-old business; beyond this, the new and improved dogecoin will kick in to action. This is in around 5 days - and we’ll be posting the new wallet link on here as soon as possible. You MUST update your wallet, to remain on the correct fork!
-
We are a small step forward. :) I look forward to greater change.
DigiShield, This is a good choice for our next step.
-
We are a small step forward. :) I look forward to greater change.
+1
-
Really excited to see that, maybe we can defeat DigiShield ?
-
So if before it was 2.5 mins @ 200FTC now its every 1 min @ 80 FTC. Theoretically that still = 160FTC every 2.5 mins but could be more / less depending on block solving luck.
So from what I am understanding, this will reduce the length of peck attacks because difficulty will increase that much quicker, but allow for it to recover quickly when they go to other coins.
Some questions I have:
1. Will there still be a 9% +/- max difficulty?
2. What will deter them from exploiting this and as soon as difficulty drops they jump back in until difficulty resets?
3. Since Target time is set to every 1 min, will the initial difficulty be set higher to compensate for this?
Typically for Multi-pools they continue mining a coin until the next block is found then it switches… So it is not profitable for them to switch prior to finding a block and moving towards the next coin…
-
No every 1 min @ 80 FTC means that still = 200FTC every 2.5 mins
1 min @ 80FTC = 80 FTC
Plus 1 min @ 80FTC = 160 FTC
Plus 0.5 min @ 80FTC = 200FTC