2 ms·
Some group could not just change the blocksize. Instead, what can happen is that someone publishes a piece of software implementing a protocol - call this Bitco
by vertex-four 11y ago
Some group could not just change the blocksize. Instead, what can happen is that someone publishes a piece of software implementing a protocol - call this Bitcoin 2.0 - that can process all previous blocks correctly, but relaxes the rules for future blocks. People can then choose whether or not to run this piece of software.
However, Bitcoin is only useful because of the consensus on what the protocol is - so in practice, people must generally run whatever everyone else is running. At the moment, there's a general consensus that everyone should be running software implementing the same protocol as the latest version of the Bitcoin software implemented by a certain group of people. That could, theoretically, change if the majority of the community doesn't like some change to the protocol, forcing the dissenting minority to follow along with them.
- Animats 11y agoOnly miners get a vote, because they validate all blocks. The design of Bitcoin is such that what a majority of the miners want, happens. The two top miners have just over 50% of the mining power, and the top four pretty much do most of the mining. The top four or five miners are all companies in China. They've issued joint statements in the past, and what they say, goes. The "core developers" and the Bitcoin Foundation don't matter, although they sometimes act like they do.
- vertex-four 11y ago> Only miners get a vote, because they validate all blocks. No, everyone validates all blocks. (Or at least they theoretically should.) Otherwise you could get miners lying about whether they've validated a block. Changing the Bitcoin protocol is essentially creating an altcoin - the only difference is that the money distribution is "pre-seeded" with everything that's happened on the Bitcoin network so far. If all users move along, the altcoin succeeds and the "original" Bitcoin fails. If everyone except the current miners decided to follow new rules, the miners would be forced to follow - there's not much point mining a currency which nobody will accept in exchange for goods, services or other currency.
- TheDong 11y ago"altcoin" is a highly misleading term for that. That term already means "a cryptocurrency unrelated to bitcoin", typically having a different genesis block, subsequently an entirely different chain, and often further differences. We already have a term exactly for what you're talking about: a hard-fork (or just a fork if you like). On either side of the fork is bitcoin, not the "original" bitcoin and an "altcoin". You're also incorrect in other ways. In the case of most forks, you fork via voting by "x% of the last 1000 blocks were mined by this implementation". Because of that, if everyone except the current miners use the alternate implementation, the new "fork" will never activate. That's because forks are not altcoins, but typically run on the same exact chain, behave compatibly with each other (prior to activation), and wait for consensus in mined blocks (to activate). That method of voting does mean that only miners get a vote. It's not because they validate all blocks, but rather because mining a block is the same as voting in basically all fork-consensus-algorithms so far.
- makomk 11y agoYou're conflating two fundamentally different kinds of forks. The ones activated through voting were soft forks, where old nodes still accepted all blocks mined by the new ones, and the voting was to ensure that enough miners would enforce the new rules to overtake any chains created by the old nodes and bring everyone back onto the same chain - that is, it was necessary to ensure there wasn't a permanent fork. This simply doesn't apply to hard forks because by definition, the old nodes will not accept the newer fork no matter how long it grows. Calling it "voting" is kind of a misnomer - it's a purely technical measure to make sure soft forks don't break Bitcoin when they activate.
- TheDong 11y ago"voting" is a technical concept used in many distributed systems; even if it's a purely technical concept that term is correct. Voting also applies in hard-forks. Case-in-point, XT/classic both had activation thresholds and voting. Splitting the chain is not really useful unless you have a large majority with you for both technical and non-technical reasons, and so you vote. Soft-forks and hard-forks aren't so different in the happy-case. They both extend the same original chain, they both have concerns about two competing chains existing and wish to avoid that, they both change the validation layer in some way (though to lesser and greater extents).