Can a bad actor omit an unspent address from a pruned chain?

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

CornSmith

Posted 2017-12-02T22:44:45.310

Reputation: 123

Answers

2

This is precisely why Bitcoin Core does not support pruning in this manner. However this does not always need to be the case. There are people working on things like UTXO set syncing where each block commits to the UTXO set as of that block. You can then use that to be sure that you have downloaded the proper blockchain.

Andrew Chow

Posted 2017-12-02T22:44:45.310

Reputation: 40 910

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 compromisedCornSmith 2017-12-04T03:07:51.943