2
This isn't a problem today, because if I want to run a pruned node then I still have to download the whole chain, but it sure would be nice if I could just download a pruned chain instead and validate it.
The attack I'm thinking of would be that I download a pruned chain, but the person I got it from omitted an unspent address from a thousand blocks back. I'd have no way of knowing.
This means that the full chain will always have to be downloaded and pruned manually. Right?
edit: I think I figured it out. All the unspent addresses on a pruned chain should add up to all the bitcoin in circulation, which is known based on how many blocks there are. So you could tell right away if someone evil omitted an unspent address.. Turns out that doesn't help
Does this mean that each block would have a hash of all the current unspent addresses? Because I think that would solve it. – CornSmith – 2017-12-04T02:40:26.980
1Not unspent addresses (those don't exist technically). Rather all of the unspent outputs. – Andrew Chow – 2017-12-04T02:45:40.203
Cool, yep I'm convinced that'd solve it. A pruned node would immediately see that they're compromised – CornSmith – 2017-12-04T03:07:51.943