<oembed><type>rich</type><version>1.0</version><author_name>npub10tqt6wdc2neye0cxwyphtre6n5uccgur94khtqjdry9wxhrvywlq6w9uu9</author_name><author_url>https://nostr.ae/npub10tqt6wdc2neye0cxwyphtre6n5uccgur94khtqjdry9wxhrvywlq6w9uu9</author_url><provider_name>njump</provider_name><provider_url>https://nostr.ae</provider_url><html>📅 Original date posted:2016-03-02&#xA;📝 Original message:It is **essential** that emergency code be prepared. This code must be&#xA;able to lower the difficulty by a large factor.&#xA;&#xA;---&#xA;&#xA;This halving-difficulty-drop problem can, with some bad luck, get quite&#xA;disastrous, very quickly.&#xA;&#xA;( I did a micro-study of this problem here, for those who are unaware:&#xA;http://www.truthcoin.info/blog/mining-heart-attack )&#xA;&#xA;For example, it is theoretically possible that 100% of miners (not 50%&#xA;or 10%) will shut off their hardware. This is because it is revenue&#xA;which ~halves, not profit. If miners are all equal, difficulty causes&#xA;their profit margin to narrow over time (for example, if BTC revenues&#xA;are $100, and amortized fixed costs are $10, then difficulty adjustments&#xA;will cause total energy costs to rise to ~ $89, such that total&#xA;pre-halving profit is $1 for everyone...post-halving, profit is -$49 for&#xA;everyone).&#xA;&#xA;So, if miners are homogenous the result is disastrous. Fortunately,&#xA;miners are probably still somewhat heterogenous. However, we don&#39;t know&#xA;how their power contracts (or their hardware turnover) are&#xA;scheduled...many miners might (?) have already planned, in private, to&#xA;close down (or substantially reduce) operations after the halving.&#xA;&#xA;As the coinbase rewards are currently orders of magnitude larger than&#xA;tx-fees, fees are unlikely to be able to compensate for this. Users may&#xA;decide to simply hold-off on transacting until fees decrease.&#xA;&#xA;Worse, if the price crashes (possibly as a result of uncertainty&#xA;surrounding this episode), it will begin to affect miner-revenue.&#xA;&#xA;As a result, miners may decide to temporarily halt mining until the&#xA;difficulty falls naturally.&#xA;&#xA;But such a temporary halt is also (potentially) disastrous. Recall the&#xA;simple fact that difficulty adjustments are measured in blocks, not time&#xA;(it appears that we have exactly 1015 blocks between the halving block&#xA;and the next difficulty adjustment block). If excessive difficulty&#xA;chokes the system, next difficulty adjustment may *never* arrive naturally.&#xA;&#xA;In this worst-case (but somewhat plausible) scenario, we will be&#xA;*forced* to lower the difficulty via hard fork, and we will be forced to&#xA;do so very very QUICKLY, as word will be spreading that the Bitcoin&#xA;system has broken!&#xA;&#xA;If a specific hard fork is not coded and tested for this, in advance,&#xA;the delay might be accompanied by endless [contentious] conversations&#xA;about what else should be included in this hard fork.&#xA;&#xA;Worse, since all users will need to upgrade, there will be uncertainty&#xA;over contentious versions, malicious agents may try to tamper with&#xA;versions (to steal Bitcoins), etc. We should consider pushing a version&#xA;out for users to upgrade, in advance of the halving, as soon as possible.&#xA;&#xA;&#xA;&#xA;What a disaster! I certainly hope it does not happen, but if it does we&#xA;should have already agreed on what to do.&#xA;&#xA;&#xA;One choice is &#34;which number do we set the difficulty to?&#34;. Half may be&#xA;too much, or too little. However, allow me to suggest that, if this&#xA;disastrous scenario occurs, we shouldn&#39;t take any chances, and reduce&#xA;difficulty by a huge proportion...80% or so. The difficulty will then&#xA;quickly begin to increase again...we can warn users of the increased&#xA;orphan risk, and that they should wait for many confirmations (which&#xA;should be happening faster).&#xA;&#xA;So, &#34;Allow the alert key to reduce the difficulty by 80%, exactly once&#xA;on one of the 1015 blocks between halving and difficulty adjustment.&#34;&#xA;&#xA;And we should consider smoothing the rewards (as described in my post,&#xA;can be done via soft fork) to prevent this from happening again. In&#xA;microeconomics literature, &#39;kinks&#39; in incentive-systems are&#xA;almost-universally agreed to be very undesirable.&#xA;&#xA;Paul&#xA;&#xA;&#xA;On 3/2/2016 10:42 AM, Luke Dashjr via bitcoin-dev wrote:&#xA;&gt; On Wednesday, March 02, 2016 2:56:14 PM Luke Dashjr via bitcoin-dev wrote:&#xA;&gt;&gt; so it may even be possible to have such a proposal ready in time to be&#xA;&gt;&gt; deployed alongside SegWit  to take effect in time for the upcoming subsidy&#xA;&gt;&gt; halving.&#xA;&gt; &#xA;&gt; Lapse of thinking/clarity here. This probably isn&#39;t a practical timeframe for &#xA;&gt; deployment, unless/until there&#39;s an emergency situation. So if the code were &#xA;&gt; bundled with SegWit, it would need some way to avoid its early activation &#xA;&gt; outside of such an emergency (which could possibly be detected in code, in &#xA;&gt; this case).&#xA;&gt; &#xA;&gt; Luke&#xA;&gt; _______________________________________________&#xA;&gt; bitcoin-dev mailing list&#xA;&gt; bitcoin-dev at lists.linuxfoundation.org&#xA;&gt; https://lists.linuxfoundation.org/mailman/listinfo/bitcoin-dev&#xA;&gt;</html></oembed>