4 ms·
All the nodes that have been online long enough will know that the fake chain is fake. Because it doesn't match the state that they have been observing all alon
by bhaak 4y ago
All the nodes that have been online long enough will know that the fake chain is fake. Because it doesn't match the state that they have been observing all along.
So as long as you have no extended downtime, your nodes know what the right chain has to look like. Ethereum dynamically adds checkpoints so that block reorgs can't reach too far into the past but that is mostly a convenience function as it alone couldn't solve this issue.
Now, there is a problem if you are a new participant. Then you can't decide which chain is the right one. You could observe for a while and choose the one that has more validators but in theory, there's the possibility that there's a contentious hard fork going on.
In this case you need to get the information which chain is the right one from outside sources. E.g. like your preferred exchange or the official subreddit.
This is the most glaring difference between POS and POW. With POW, you don't need any outside information as you can just verify which chain needed more work to be created and this is by definition the correct one.
POW leverages physics to be completely self contained for the price of energy consumption.
- betwixthewires 4y agoThis problem is overstated IMO. Choosing the one with the most validators is closely analogous to choosing the chain with the most work i.e. the one with the most hash power. And with algorithmic difficulty adjustment in PoW, you don't pick the chain with the headers with the most 0s preceding, you pick the longest chain. A longer chain with a sudden difficulty adjustment is an obvious invalid chain, but I digress The bigger problems for me are the nothing st stake problem. Why pick one chain when you're new? Just pick both, it costs virtually nothing, and when you figure out which one is more profitable to you, just let the stake in the other one get slashed. Validators can help an attack on the network just in case it becomes profitable, and if it doesn't they lose nothing, because they incur no ongoing costs in the real world to do so.
- doomroot 4y agoI’m not sure about Ethereum PoW, but in Bitcoin you absolutely pick the chain with the most work not the longest chain that’s a consensus rule. This is how bitcoin/PoW avoids weak subjectivity, the problem described by the parent comment.
- betwixthewires 4y agoThe two are equivalent if each hash is valid. The only way for a longer chain to have less work is if there's a sudden, protocol violating drop in the difficulty in a block header. If this happens then you know that chain is not the valid chain.
- tzs 4y agoCould POS and POW be combined? Say you have a POS chain that functions as your main cryptocurrency ledger, and a POW chain that runs at a much slower rate that serves as a ledger to periodically record history of the POS chain?
- easrng 4y agoIt's not possible to lower the energy consumption of PoW like that, it has to constantly be mined to stay secure.
- 1ark 4y agoPeercoin is hybrid PoS+PoW, but for other reasons. Their university pages are well written for most people to read.
- landemva 4y agoSort of, if btc checkpoints eth. Hash the entire eth PoS state tree every hour or so and include that hash with block height in a bitcoin transaction.
- redox99 4y agoThat's polygon basically (which uses Ethereum for its checkpoints). It's one of the most used chains.
- sktrdie 4y agoThanks, this answers my main concerns. I guess that same level of validation applies also for the wallet software we download: we need to make sure the app comes from a source that people have agreed upon, and that usually means applying some sort of general intuition on where to find stuff (googling, forums, reddit etc.). And as you mention, the same trust-game is applied to finding the right chain. But then, I wonder, if we're all anyway looking for the trustworthy data ourselves (based on general human intuition), why use blockchain at all? Why not just apply the same level of trust towards, say, a regular database? My thinking is that PoS makes it easier to trust because we'd only have to trust the beginning of the chain, and the rest is verified via the PoS math. Whereas with a normal database we'd have no real way of verifying it hasn't been tampered with? It does seem a bit scary though that so much money is going into a system where "you have to find the trustworthy data yourself based on your own social network".
- bhaak 4y ago> But then, I wonder, if we're all anyway looking for the trustworthy data ourselves (based on general human intuition), why use blockchain at all? Why not just apply the same level of trust towards, say, a regular database? You don't have the same level of transparency with a regular database. You can't look into the databases of Google or Facebook or of your bank and see what's going on. You have to trust them to some degree. From a high level view, any blockchain solution is less efficient than a centralized one. If you don't care about trust and transparency, a centralized solution will always be better. > It does seem a bit scary though that so much money is going into a system where "you have to find the trustworthy data yourself based on your own social network". The whole cryptocurrency thing is about reducing trusting third parties. But that adds burden on your part. With Bitcoin's POW you have to do less work for getting to the trust level you are comfortable with because we are pretty certain that no human can change physics. With POS, you need to compensate for the loss of the physical part.