Hacker Read top | best | new | newcomments | leaders | about | bookmarklet login

> In a PoW chain, Vitalik Buterin can talk, propose, and make patches to an Etherum client, but it means nothing unless miners approve the changes by running the updated client. He is the most important voice in that coin's ecosystem, but miners are the ones who decided to approve the fork.

No, it means nothing unless users use, buy, and sell the coin. The miners' are subservient to them, assuming the miners are trying to make money. Miners do not decide or approve which set of consensus rules people decide to use, though they can, at a potentially quite significant loss, disrupt the functioning of the network somewhat.



sort by: page size:

In a PoW chain, Vitalik Buterin can talk, propose, and make patches to an Etherum client, but it means nothing unless miners approve the changes by running the updated client. He is the most important voice in that coin's ecosystem, but miners are the ones who decided to approve the fork.

Switching consensus to a different set of rules is entirely within the scope of a PoW system, and it's based on the same mechanism that gives legitimacy to the rest of the blockchain. The original Bitcoin paper explains this perfectly, so I won't replicate it here.


So it's not up to the miners and the consensus to decide what's best for the network? The leadership can decide the rules of a new fork unless everyone else coordinate to oppose it?

Edit: What prohibits the leadership to do an arbitrary fork? How do cryptographic protocols factor the fact that leadership can just say 'no' and do the opposite and the chain will follow. Especially the word 'secure' in every coin looses it's meaning isn't it?


> ...they can push arbitrary modifications into the block chain. In effect, they can do whatever they want.

No, since who holds what coin is defined by consensus, which has to stretch out of the mining pool. If they arbitrarily gave themselves coin, for example, then no other client would accept that they hold that.

See smtddr's reply for details of what they can and cannot do.


The lead eth developer Vitalik has an excellent blog post addressing what it takes to fork a blockchain- https://vitalik.ca/general/2021/03/23/legitimacy.html

The key takeaway is that yes, it's ultimately just controlled by majority agreement between users.


> This setup assumes there’s already consensus on a certain set of validators, but the challenge is arriving at this consensus in the first place.

The validator set changes as people bond or unbond coins in exchange for stake. Running a fair and secure initial distribution is a somewhat orthogonal problem; perhaps you can run an open auction. Any Proof-of-Work or Proof-of-Stake systems has issues with low security in the beginning. Consider that until late ~2012 the total hashrate of the Bitcoin network was less than the hashrate of a single Antminer S9.

> This is the general problem of proof-of-stake: it assumes the presence of consensus in order to arrive at consensus. This is because consensus is reached by utilizing the scarce resource that is the chain’s token, but without consensus in the first place this token isn’t scarce at all.

Consensus and scarcity are tightly related. The consensus process and protocol spec are what make the token scarce, since by definition the majority agree on the token's inflation rate, supply, block reward, etc.... What happens when validators try to fork and change these parameters? They are directly incentivized to do so, yet similarly, what happens when Bitcoin miners try to change the block reward? Of course, they don't hold all the power; with sufficient cause and collaboration, users can signal a user-activated soft fork, or simply choose to follow the original unmodified fork.

> Proof-of-work uses something external to its chain as the scarce resource that determines consensus (energy), while proof-of-stake uses something internal to its chain (the chain’s token). This means that when a PoW chain forks, the two chains have to share the external resource, while the resource is copied for PoS chain forks.

Yes, this is called the "nothing-at-stake" problem, and it is solved by punishing validators who equivocate. This enforces scarcity of voting power across forks. The point is they can't exercise their voting power on both chains. As soon as they vote on one fork, they are committed. The validators on the other fork are incentivized to delete their stake if they vote on the other fork simultaneously.


> In Bitcoin decisions are made on the principle of one CPU, one vote

This is how it works in Ethereum as well

> They decide what gets pushed to miners via the All Core Devs call.

Blockstream does the same, it's literally no different.


From the article

> There are also people who try to claim that PoS allows big stakeholders to control the protocol, but I think those arguments are just plain wrong. They rest on a misconception that PoW and PoS are governance mechanisms, when in reality they are consensus mechanisms. All they do is help the network agree on the right chain. A block that violates the protocol rules (eg. if it tries to print more coins than the protocol rules allow) will not be accepted by the network, no matter how many miners or stakers support it. Governance is a completely separate process, involving users freely choosing to download software, and BIPs and EIPs and all core devs calls and other bureaucracy to coordinate which changes get proposed. The funny thing is that bitcoiners (who tend to be the most pro-PoW) should understand this well, as the Bitcoin civil wars in 2017 demonstrated really well that miners are quite powerless in the governance process. In PoS, it's exactly the same; stakers don't choose the rules, they just execute the rules and help order transactions


> You don’t need most to agree. Just the basic majority (50%+). And of course that’s exactly what the major mining consortiums will do

You don't need anyone else to agree to start mining your own fork / altcoin. However, even if most of the miners change the protocol, it doesn't mean that the users will.


> 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.


> With Ethereum, Cardano, Solana, etc, your value is in the hands of where the developers choose to take the protocols. They can and have changed their monetary policies, and they will again.

The consensus mechanism has nothing to do with governance in most chains. Bitcoin and Ethereum governance is both determined off-chain through social consensus, based on what node and client software the honest users of the chain choose to run.


Quoting Vitalik:

> If someone puts a gun to my head & tells me to write a hardfork patch, I will definitely write it. If I publish a patch to delete a bunch of accounts, how many people here would download & install the update & switch to that chain? I see few raised hands. This is called decentralization.

Sure, the Ethereum Foundation has substantial influence in the sense that their proposed changes tend to be adopted, but that's because they tend to propose good changes. If they propose a bad change, chances are the community will reject it. If they propose a questionable/controversial change, chances are the community will fork, as with the DAO fork.


Except that it isn't powerful people calling the shots. It's powerful people making suggestions, and then the shots being called by the network participants. There is nothing happening here that is contrary to the ethos of smart contracts or decentralized governance. If any sort of fork is accepted it will be because a majority of miners thought it was a good idea, not because Vitalik said so.

>how do these users vote?

Simple, by running which ever client that has the consensus rule set they want.

>how are they different from miners?

Miners use hashing power to produce blocks that meet users' consensus rules. Users verify these blocks meet their own consensus rules.

e.g. HashingCo uses their miners to produce a block with a blockreward of 12.5 bitcoin. In that block they include a transaction to their power supplier. The power supplier receives the block over the p2p network, checks if it is valid for their consensus rules, and then settles their bill. If HashingCo produces a block with a 100 bitcoin coinbase reward, sent that block to their power supplier, no amount of hashing will get their supplier to accept it as valid


> A hard fork in a decentralized cryptocurrency is democratic, users chose which of the 2 new chains assets' they want to keep.

Show us the votes, then. Did a majority of miners and/or coinholders vote to hard-fork?


That is a misleading point by Brian here, miners are not the only stakeholders. Eg: Majority of miners may decide on something but the users reject it through their nodes & miners coins & hardware would be rendered valueless.

> The longest chain is always the most valuable.

Only the longest chain that users consider legitimate. If users reach consensus on using rules that have lower transaction costs, it won't matter how long miners mine their higher transaction cost chain.

The big question is: can users achieve such consensus politically, or in practice do the miners lead the users because they need less organization to do so?


> You vote for consensus rules with your node.

That's incorrect. Non-mining nodes are passive, they do not cast votes.

> A chain with more proof of work, but that is violating the rules that nodes have formed consensus on, is ignored.

That is correct. Non-mining nodes are programmed to reject invalid blocks... or they can accept them if they want. It's of no importance because what they do has no influence on the rest of the network.


> That is the whole point of decentralization...if one or two large pools (Ethermine and Sparkpool) get too big then they can sway proposals almost single handedly…

If the pool operators don't actually own the mining hardware then their power is limited to what the participants in the pool, who do own the hardware, allow them to do. If as an individual miner you don't like what your pool operator is doing you can always switch to another pool and take your delegated influence with you. Most proposals require supporting votes in many blocks before they take effect, so you have time to choose a more representative operator.


Neither the miners nor the developers control bitcoin's consensus.

The stability of bitcoin is the tyranny of the installed base. Even non-mining nodes will not relay invalid blocks that break the fundamental rules.

See also: Ethereum Classic, a case study in developer-as-dictator

next

Legal | privacy