3 ms·
> unsolved double spending problem and provide true, distributed, open-to-all decision making This seems to be the fundamental piece of Bitcoin dogma that stil
by hudon 8y ago
> unsolved double spending problem and provide true, distributed, open-to-all decision making
This seems to be the fundamental piece of Bitcoin dogma that still gives a modicum of hope to Blockchain enthusiasts. Let me try to get the record straight:
Firstly, “Bitcoin” is not tied to any blockchain by the laws of physics. Some people call the BTC blockchain “Bitcoin”, some people call the BCH blockchain “Bitcoin”, and some people call the sum of both UTXO sets “Bitcoin”. Some even call the set of all forks that originate from Satoshi’s genesis block “Bitcoin”. To wit, there is no set-in-stone definition of which blockchain is “Bitcoin” in the event of a fork. Some think it’s “most POW”, others say that’s not true because users can change the POW algo to escape from centralized miner takeover. The latter camp will argue that the fork that the economic majority call “Bitcoin” is Bitcoin. Some will say Bitcoin must use SHA256, others will disagree. Some say that the 21M supply cap is a defining characteristic of Bitcoin, others will say that if the majority of the network wants to change it to 22M, then that’s the new Bitcoin. So I think it’s clear at this point that Bitcoin is not tied to any one blockchain and is actually determined by social consensus.
Here’s a thought exercise: Say exactly half of the investors think a hard fork should be done to make Bitcoin fungible and anonymous (like Monero), but the other half disagrees. If such a fork happens, there is a social struggle to establish consensus on which fork is “Bitcoin”. It is impossible to accurately measure which side is “winning”. Maybe you can do Twitter polls to ask people which blockchain they think is Bitcoin, but we all know that such surveys can be trivially manipulated. So there is no robust way to mathematically determine which blockchain is Bitcoin. You may believe “BTC-Fungible” is Bitcoin but you have to understand that someone else, or the majority of the market even, may disagree with you and believe that “BTC-Non-Fungible” is Bitcoin.
A historical example: In 2013, due to a bug, there were 2 Bitcoin blockchains: the v0.8 blockchain and the v0.7 blockchain. For the time during which the 24 forked blocks were being mined in parallel, which blockchain was Bitcoin? The most reasonable answer is “both” but admittedly it’s not clear. Others would say it was v0.8 because it had more hash rate? But then Bitcoin just rolled back after 24 blocks mined? That doesn’t sound very immutable...
Anyway, this is where double-spending comes in. When the fork was happening, double spends could be done easily without having to be or work with a miner. Just send the merchant Bitcoin on the v0.8 fork. Luke DashJr could have easily done this since he’s the one that called for that chain to be dropped. Then, when the social consensus resolves on v0.7 being Bitcoin, it’s too late (24 blocks): the merchant already accepted your v0.8 tokens and you’re free to spend them again somewhere else on the v0.7 chain.
In conclusion, proof-of-work consensus does not rule Bitcoin, social consensus does. Double-spends are easy to understand when you talk about Bitcoin as being a God-given or set-in-stone ruleset. However, the rules of Bitcoin are in constant flux, determined by the market. This makes double-spends a social problem, not one resolved by code.
- swift532 8y agoThis is a very good comment. I'll think about this and edit this comment when I can. Sorry, not trying to cop out. Hopefully I can sort some stuff out for myself too while responding to this. I'm not trying to overstate my knowledge on the subject (it's hard to understate it), just trying to reason this out for myself due to the fact that it's hard to find credible argumentation online.
- Obi_Juan_Kenobi 8y agoPeople have been writing about consensus since the very beginning of Bitcoin, and long before that. These are not new ideas, at least not to anyone paying the slightest attention to cryptocurrency development. It's just about all Vitalik writes about now, and is the motivation for essential designs like Ethereum's ICE AGE. Social consensus, however, doesn't affect the standard 'malicious' double-spend cheat. You're not going to get social consensus forming around an obvious 'criminal' behavior. It's only going to happen around political issues like network governance/rules (like the DAO), technical bugs (like BTC forks), or global political issues (Satoshi Dice blacklist?). Considering this a criticism of cryptocurrencies is inane. We're all just apes shouting at each other about value. We can just as easily blacklist or boycott each other outside of any kind of value-information network to achieve the same effect; recognizing that this behavior can become part of the network is trivial. Social/political elements will always be the ultimately arbiter precisely because human assessments of value aren't physical or mathematical realities. This is overwhelmingly obvious when stated explicitly, but for whatever reason this is seen as some sort of 'gotcha!' Bitcoin still achieves an entirely novel way for humans to communicate information about value. It is still qualitatively different from anything that has come before precisely because it is reliably a consensus mechanism. Nakamoto consensus is the innovation, yet many do not understand this consensus.
- hudon 8y ago> Social consensus, however, doesn't affect the standard 'malicious' double-spend cheat. You're not going to get social consensus forming around an obvious 'criminal' behavior. You haven’t refuted my point with any evidence. I’ve shown how one could spend a digital token twice by taking advantage of weak social consensus (see my Luke DashJr example). This attack bypasses Nakamoto consensus. You don’t need any hashrate or material wealth to pull this off, you just need social capital... or a wrench https://xkcd.com/538/ https://xkcd.com/538/