4 ms·
If you're running a node, and it finalizes a block, that means your node will refuse to ever revert that block. A long-range attack is when a validator withdra
by narush 4y ago
If you're running a node, and it finalizes a block, that means your node will refuse to ever revert that block.
A long-range attack is when a validator withdrawals their stake, waits the withdrawal period (e.g. the 6 month delay delay mentions above), and then creates a fake chain starting from before they withdrew their staked eth.
Because in the "real" history (e.g. the ones that most nodes have seen over the past 6 months) the validator doesn't have Eth locked up still, there's no way to punish them. Thus, these long range attacks get very cheap (you could even imagine someone who pays validators for old keys -- aka, you don't even need to be a validator yourself).
These two facts together mean that PoS blockchains require some "weak subjectivity" - which pretty much means when you download and start syncing your node, you need to know a "finalized" block hash from the past 6 months (or within the withdrawal delay). This ensures you won't get tricked by a cheap long-range attack.
In practice, I don't think this will be much of a problem - clients can just do a new release with a new block has every few months for new users!
- 3np 4y agoThere must be some part of the attack I am missing here. Let's say I'm an attacker and I do this. But now none of the subsequent blocks on the original chain will validate anymore because of hashes mismatching. I could of course validate new blocks but 6months+ of blocks from only one or a small number of validators (depending on how much validator capital one can amass for the attack) is going to be pretty obvious. Unless the attacker can get a significant percentage of validators part of the attack, I can' see it work out in practice.
- baby 4y agoWhat do you mean by obvious? Your crypto client is a computer and unless you go and check what it is connected to this will be opaque to you (and so not obvious).