{"type":"rich","version":"1.0","author_name":"npub1j0js72tmnxzmrtd6j0j5wcvfuhsqwgqxdwkpmw28rmmuy22y3wzsdw9k8n","author_url":"https://nostr.ae/npub1j0js72tmnxzmrtd6j0j5wcvfuhsqwgqxdwkpmw28rmmuy22y3wzsdw9k8n","provider_name":"njump","provider_url":"https://nostr.ae","html":"📅 Original date posted:2017-11-01\n📝 Original message:Hi all,\n\nFeedback is welcome on the draft below.  In particular, I want to see if\nthere is interest in further development of the idea and also interested in\nany attack vectors or undesirable dynamics.\n\n(Formatted version available here:\nhttps://github.com/devrandom/btc-papers/blob/master/aux-pow.md )\n\n# Soft-fork Introduction of a New POW\n\n## Motivation:\n\n- Mitigate mining centralization pressures by introducing a POW that does\nnot have economies of scale\n- Introduce an intermediary confirmation point, reducing the impact of\nmining power fluctuations\n\nNote however that choice of a suitable POW will require deep analysis.\nSome pitfalls include: botnet mining, POWs that seem ASIC resistant but are\nnot, unexpected/covert optimization.\n\nIn particular, unexpected/covert optimizations, such as ASCIBOOST, present\na potential centralizing and destabilizing force.\n\n## Design\n\n### Aux POW intermediate block\n\nAuxiliary POW blocks are introduced between normal blocks - i.e. the chain\nalternates between the two POWs.\nEach aux-POW block points to the previous normal block and contains\ntransactions just like a normal block.\nEach normal block points to the previous aux-POW block and must contain all\ntransactions from the aux-POW block.\nBlock space is not increased.\n\nThe new intermediate block and the pointers are introduced via a soft-fork\nrestriction.\n\n### Reward for aux POW miners\n\nThe reward for the aux POW smoothly increases from zero to a target value\n(e.g. 1/2 of the total reward) over time.\nThe reward is transferred via a soft-fork restriction requiring a coinbase\noutput to an address published in the\naux-POW block.\n\n### Aux POW difficulty adjustment\n\nDifficulty adjustments remain independent for the two POWs.\n\nThe difficulty of the aux POW is adjusted based on the average time between\nnormal block found\nto aux block found.\n\nFurther details are dependent on the specific POW.\n\n### Heaviest chain rule change\n\nThis is a semi-hard change, because non-upgraded nodes can get on the wrong\nchain in case of attack.  However,\nit might be possible to construct an alert system that notifies\nnon-upgraded nodes of an upcoming rule change.\nAll blocks are still valid, so this is not a hardforking change.\n\nThe heaviest chain definition changes from sum of `difficulty` to sum of:\n\n    mainDifficulty ^ x * auxDifficulty ^ y\n\nwhere we start at:\n\n    x = 1; y = 0\n\nand end at values of x and y that are related to the target relative\nrewards.  For example, if the target rewards\nare equally distributed, we will want ot end up at:\n\n    x = 1/2; y = 1/2\n\nso that both POWs have equal weight.  If the aux POW is to become dominant,\nx should end small relative to y.\n\n\n## Questions and Answers\n\n- What should be the parameters if we want the aux POW to have equal\nweight? A: 1/2 of the reward should be transferred\nto aux miners and x = 1/2, y = 1/2.\n\n- What should be the parameters if we want to deprecate the main POW?  A:\nmost of the reward should be transferred to\naux miners and x = 0, y = 1.  The main difficulty will tend to zero, and\naux miners will just trivially generate the\nmain block immediately after finding an aux block, with identical content.\n\n- Wasted bandwidth to transfer transactions twice?  A: this can be\noptimized by skipping transactions already\ntransferred.\n\n- Why would miners agree to soft-fork away some of their reward?  A: they\nwould agree if they believe that\nthe coins will increase in value due to improved security properties.\n\n## Open Questions\n\n- After a block of one type is found, we can naively assume that POW will\nbecome idle while a block of the other type is being mined.  In practice,\nthe spare capacity can be used to find alternative (\"attacking\") blocks or\nmine other coins.  Is that a problem?\n- Is selfish mining amplified by this scheme for miners that have both\ntypes of hardware?\n\n## POW candidates\n\n- SHA256 (i.e. use same POW, but introduce an intermediate block for faster\nconfirmation)\n- Proof of Space and Time (Bram Cohen)\n- Equihash\n- Ethash\n\n## Next Steps\n\n- evaluate POW candidates\n- evaluate difficulty adjustment rules\n- simulate miner behavior to identify if there are incentives for\ndetrimental behavior patterns (e.g. block withholding / selfish mining)\n- Protocol details\n\n## Credits\n\nBram Cohen came up with a similar idea back in March:\nhttps://lists.linuxfoundation.org/pipermail/bitcoin-dev/2017-March/013744.html\n-------------- next part --------------\nAn HTML attachment was scrubbed...\nURL: \u003chttp://lists.linuxfoundation.org/pipermail/bitcoin-dev/attachments/20171101/9dc7ba4e/attachment.html\u003e"}
