3 ms·
> One strategy to protect against this would be to accept alerts from network nodes when they detect an invalid block, prompting the user's software to download
by garmaine 9y ago
> One strategy to protect against this would be to accept alerts from network nodes when they detect an invalid block, prompting the user's software to download the full block and alerted transactions to confirm the inconsistency
This part of the white paper is broken. Satoshi was wrong. Accepting unverifiable "alerts" from network peers as a trigger for doing large amounts of computation is a significant DoS vulnerability.
For this sort of scheme to work you would have a small-to-transmit, easy-to-verify proof of the invalidity of a block. (Called a "fraud proof" among developers who have looked at this.) Bitcoin protocol as specified by Satoshi does not allow for the full range of fraud proofs necessary to support this sort of DoS-resistant lite node implementation.
- unlimitless 9y agoHe didn't give the strategy as a requirement for light wallets to actually work. He gave it as an example of making the security trade off better. Light wallets do work. To fool them you have to have to be able to 51% the network and sybil my node. Not likely, especially if my spv wallet is checking multiple sources, even over https.
- garmaine 9y agoNo, I have to send a simple forged "alert" packet to cause you to download 1-4MB of block data plus additional dependent spend data of similar size from your peers, and lock up your CPU for an intensive amount of time doing signature verification and hash tree calculations only to find out the alert was incorrect. Meanwhile another spoofed peer sends another alert packet....
- unlimitless 9y agoand then my wallet bans your peer and moves on. Not an issue