3 ms·
That page does not explain how the correct chain is chosen... I searched and found a blog that claims a chain is chosen by trusting other nodes: “In PoS syste
by alexmingoia 6y ago
That page does not explain how the correct chain is chosen...
I searched and found a blog that claims a chain is chosen by trusting other nodes:
“In PoS systems, weak subjectivity arises because the longest chain rule is not sufficient to determine the main chain due to the (nearly) costless process of creating an up-to-date chain.
Creating up-to-date competing chains would take little effort in PoS as opposed to in PoW. Therefore, new nodes or nodes that have been a long time offline have to trust the information they receive from other nodes about which chain is the valid one, causing weak subjectivity.
In the case of weak subjectivity, to ensure that the information about the valid chain is accurate, a node that is new or comes online after a significant period would have to get a recent block hash from a reputable source, such as a blockchain explorer, and insert that as a “checkpoint” into their blockchain client. This is the method of dealing with weak subjectivity, which relies on the trust with a reputable source. Although not completely in line with a trustless system, it shouldn’t really be an issue unless the reputable source is compromised.” - https://medium.com/better-programming/the-problems-that-ethereum-2-0-proof-of-stake-aims-to-solve-5361c155461a https://medium.com/better-programming/the-problems-that-ethe...
- chrisco255 6y agoFrom the page I linked: In distributed networks, a transaction has "finality" when it's part of a block that can't change. "To do this in proof-of-stake, Casper, a finality protocol, gets validators to agree on the state of a block at certain checkpoints. So long as 2/3 of the validators agree, the block is finalised. Validators will lose their entire stake if they try and revert this later on via a 51% attack." In ETH2 2/3 of 128 randomly selected validators have to agree. You also get slashed if your validator goes offline, so they factored for that case: https://ethereumprice.org/guides/article/eth-2-staking-risks/ https://ethereumprice.org/guides/article/eth-2-staking-risks... And at least for the beacon chain you have to sync the whole chain to your node before you can begin validating.
- alexmingoia 6y agoDetermining a valid block isn’t the same thing as determining the correct chain. A node validates blocks by staking, but how does the node know it’s validating a block on the correct chain? As far as I can tell, PoS projects don’t have a trustless solution to this problem. Imagine a net split, where the network becomes briefly partitioned. Nodes in each partition would keep adding blocks. When the network converges, there would be two conflicting chains. Using proof-of-work the chain with the most work (longest chain) is the valid chain. Another scenario: Using proof-of-stake I can create my own alternative chain easily (if I don’t want stake money I could create new genesis block), and broadcast blocks to nodes that join the network. When those new nodes receive blocks from conflicting chains, which one is correct? From what I understand of Ethereum, new nodes have to choose trusted nodes when they join the network. I wonder, if one is going to consider trust a non-problem, then why stake at all? A network like Nano works the same way, by trusting a quorum of voting nodes, but there’s no staking or inflation, which has the benefit of allowing anyone to participate without the rich getting richer.