Forum Home
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Popular

    [Dev] Hard fork to change retarget, averages and block time

    Technical Development
    23
    125
    52993
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • Bushstar
      Bushstar last edited by wrapper

      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.

      Donate: 6hf9DF8H67ZEoW9KmPJez6BHh4XPNQSCZz

      1 Reply Last reply Reply Quote 2
      • N
        netnerd Regular Member last edited by

        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

        1 Reply Last reply Reply Quote 0
        • kris_davison
          kris_davison last edited by

          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.

          1 Reply Last reply Reply Quote 0
          • wrapper
            wrapper Moderators last edited by

            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.

            1 Reply Last reply Reply Quote 0
            • MrWyrm
              MrWyrm administrators last edited by

              This is fantastic news. I’m greatly in favour of steps towards multi-pool resistance.

              Like what I do: 6uuy6isbrW1SBF191Bzgui1gWxPdNKx2PB

              1 Reply Last reply Reply Quote 0
              • T
                Tuck Fheman last edited by

                hardfork_zps077ae511.jpg

                1 Reply Last reply Reply Quote 0
                • Wellenreiter
                  Wellenreiter Moderators last edited by

                  lol

                  nice picture :)

                  Feathercoin development donation address: 6p8u3wtct7uxRGmvWr2xvPxqRzbpbcd82A
                  Openpgp key: 0x385C34E77F0D74D7 (at keyserver.ubuntu.com)/fingerprint: C7B4 E9EA 17E1 3D12 07AB 1FDB 385C 34E7 7F0D 74D7

                  1 Reply Last reply Reply Quote 0
                  • U
                    uncle_muddy administrators last edited by

                    Do I take it from this that we need to go about getting mining pools updated etc???

                    UM

                    1 Reply Last reply Reply Quote 0
                    • Wellenreiter
                      Wellenreiter Moderators last edited by

                      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:

                      1. update wallets
                      2. update/replace miner software

                      Besides the wallet update there are no special tasks for the pool operators required.

                      Feathercoin development donation address: 6p8u3wtct7uxRGmvWr2xvPxqRzbpbcd82A
                      Openpgp key: 0x385C34E77F0D74D7 (at keyserver.ubuntu.com)/fingerprint: C7B4 E9EA 17E1 3D12 07AB 1FDB 385C 34E7 7F0D 74D7

                      1 Reply Last reply Reply Quote 0
                      • E
                        eaxvac Regular Member last edited by

                        I’ll support that.

                        1 Reply Last reply Reply Quote 0
                        • W
                          wec Regular Member last edited by

                          You’ll need to do the standard tasks for a hard fork:

                          1. update wallets
                          2. 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

                          1 Reply Last reply Reply Quote 0
                          • V
                            Vidicus Regular Member last edited by

                            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.

                            1 Reply Last reply Reply Quote 0
                            • V
                              voingiappone Regular Member last edited by

                              Go ahead!

                              I think you have the support of all the loyal miners here!

                              1 Reply Last reply Reply Quote 0
                              • wrapper
                                wrapper Moderators last edited by

                                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.

                                1 Reply Last reply Reply Quote 0
                                • E
                                  EnigmaMan last edited by

                                  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!

                                  1 Reply Last reply Reply Quote 0
                                  • lizhi
                                    lizhi last edited by

                                    We are a small step forward. :) I look forward to greater change.

                                    DigiShield, This is a good choice for our next step.

                                    1 Reply Last reply Reply Quote 0
                                    • surfguy72
                                      surfguy72 Regular Member last edited by

                                      We are a small step forward. :) I look forward to greater change.

                                      +1

                                      1 Reply Last reply Reply Quote 0
                                      • M
                                        mooccr last edited by

                                        Really excited to see that, maybe we can defeat DigiShield ?

                                        1 Reply Last reply Reply Quote 0
                                        • E
                                          EnigmaMan last edited by

                                          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…

                                          1 Reply Last reply Reply Quote 0
                                          • kris_davison
                                            kris_davison last edited by

                                            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

                                            1 Reply Last reply Reply Quote 0
                                            • First post
                                              Last post