Assume that Bitcoin value versus the “fiat money” is of great significance and imagine suddenly discounted by 50% or more, the current pools are not in money any more, stop hashing. The current Bitcoin system will automatically set the difficulty down ( exponentially decreasing mode and easy to mine blocks using again a laptop ). Any supervisory power on earth to ensure that Bitcoin system will remain resilient if hashing conditions change rapidly?
-
supervisory power from where? from mars?– amaclinCommented Jan 17, 2015 at 5:50
-
Are you asking if Bitcoin transactions will still be secure from double-spending if the difficulty drops to almost nothing?– Dr.HariboCommented Jan 18, 2015 at 1:19
-
@amaclin Are you asking for clarification, or mocking the asker? @ efaysal The Bitcoin developers spring to mind; are you asking if there's a group specifically for supervising mining?– Nick ODellCommented Jan 19, 2015 at 4:21
-
1The difficulty wasn't 0 between 4 Jan 2009 and 8 Jan 2009, it was 1. A hash with 32 leading zero bits was necessary to mine a block. It just happens that no blocks were actually mined in that time period (assuming their date stamps are accurate), probably because nobody was trying to mine. As far as I know, there is no such thing as "difficulty 0" in the protocol, and I don't know why you think there is. But this may be a topic for another question.– Nate EldredgeCommented Jan 19, 2015 at 6:33
-
I think you may also be misunderstanding how the difficulty changes. It is recalculated periodically based on a fixed algorithm, which is described here. It may happen to behave similarly to an exponential function over some periods of time, but there's no inherent reason why it must do so. In particular, the algorithm specifies that the difficulty does not decrease below 1.– Nate EldredgeCommented Jan 19, 2015 at 19:30
1 Answer
Bitcoin is a decentralized currency and there is nobody with "supervisory power" over it.
Anyone is welcome to suggest improvements to the protocol (changing hashing rules or anything else) at any time, and can create a source code patch to any of the several pieces of Bitcoin client software to implement them. (The maintainers of Bitcoin Core or another piece of client software can do so simply by releasing a new version.) Each user can then make their own decision whether to adopt this patch or new version, or to continue using the software they already have. (Of course, they might be more likely to decide to adopt a patch if it comes from a "trustworthy" source, such as the software maintainers.)
If a general consensus emerges that the improvement is desirable, and essentially all Bitcoin users adopt the patch, then the protocol has effectively changed. So such a method could be used to make a change to the difficulty adjustment rules, should there be a consensus that such a change was necessary.
Assume the patch changes the protocol in a way that is incompatible with the existing protocol, so that the old and new protocols disagree about the validity of certain blocks or transactions. (For example, the new protocol might "lower difficulty" by saying a block of a certain low difficulty is valid in a certain situation, where the old protocol said it was invalid.) If some people adopt the patch and others do not, then there will be a problem: those two groups will disagree over whether particular transactions or blocks are valid. This situation is called a hard fork and essentially would split Bitcoin into two separate currencies: "old Bitcoin (BTCO)" and "new Bitcoin (BTCN)". Anyone who held, say, 1 bitcoin before the fork would effectively now hold 1 BTCO and 1 BTCN. The economic effects would be confusing, to say the least. Many people consider that if such a state of affairs continued for a significant length of time, and with a significant population on each side, the effect would be to destroy confidence in both the new currencies and render them both valueless.
As a result, users are likely to be cautious about adopting patches that change the protocol. They should only do so if they believe that the vast majority of other Bitcoin users will do the same. For this reason, implementing protocol changes is as much a political challenge as a technical one, and it helps a lot to have "trustworthy" people advocating for the change. So those trustworthy people may have some amount of power over the protocol, but not in a "supervisory" sense. It's less like being the king, and more like being the prime minister of an unstable coalition government.
If there was a feeling that the existing difficulty adjustment rules were not working well, the software maintainers and other well-regarded people could propose a change and hope that the user community as a whole would agree. That's what would likely have to happen in a situation like what you describe.
-
NateEldredge, 1) any idea how to select or elect these "trustworthy" people? 2) Existing difficulty adjustment rules set an inf-limit on the difficulty minimum one, nothing can prevent the system to oscillate between one and an upper value when hashing conditions change rapidly very often, is this condition acceptable for the security of the system? if No how to fix it?– efaysalCommented Jan 20, 2015 at 23:32
-
(1) They're not "selected or elected". They are people whose public work on the Bitcoin project has earned them the trust of the community. It's each individual user's decision whether to follow their recommendations or not. Commented Jan 21, 2015 at 0:58
-
(2) I don't understand what you're asking; maybe it should be a new question. And I'm not sure what you mean by "rapidly" here. There is a built in limit on the difficulty adjustment; it does not change by more than a factor of 4. At present it would take 18 adjustments to get down to minimum difficulty, and in order for a maximum downward adjustment to be made, the adjustment time has to be at least 4 times longer than normal, i.e. 8 weeks. So it would take at least 2.5 years to get to difficulty 1. Doesn't seem particularly rapid to me. Commented Jan 21, 2015 at 1:03
-
Thank you very much for your clarification. Your numbers sound and are very compatible with my calculation using Difficulty historical data, the change statistics: 1stQuantile=1.056, Median=1.14, Mean=1.18 ,3rd Quantile=1.28 , Max=4. Also the current difficulty historical data showed a statistically validated exponential increasing trend.– efaysalCommented Jan 21, 2015 at 2:09
-
The 4 amplification happened one time between: 15/07/2010 18:15:05 difficulty=45.38582 && 16/07/2010 18:15:05 difficulty=181.5433– efaysalCommented Jan 21, 2015 at 2:40