pull down to refresh

assume* => trust PoW
Eric's point => trust nothing

You should see these as peacetime vs wartime rules, given that:

  1. During peacetime, multiple people DO have fully validated chains (I have it and I have it archived too (in the form of bootstrap files, see linearize), but I'm quite sure that higher profile people than me have it too) and will speak up if something goes terribly wrong. I think that this is a safe assumption.
  2. During wartime, if you boot up a new node, you either use the bootstrap files you made during peacetime, or sync with all the assume* off.

Whether right now we are in peace or war time is subjective, though I'd guess that consensus would be that right now it's peacetime. May change with all these nasty inphlooencer-forks. Preppers be prepped though.

That's a helpful way to think about it.

As always, learning about Bitcoin is humbling. I am surprised that I didn't realize I was not validating. It is certainly not something that is widely discussed.

As to wartime vs peacetime, seems best to use assumewar

I need to get a 2TB drive here soon and my plan is to redo IBD rather than transfer the chain and state. I'm excited to see how ong it will take my little laptop. (also considering doing it with libbitcoin, but then I wouldn't be able to compare it to my previous Core nodes that were all assumevalid)

reply
I am surprised that I didn't realize I was not validating.

You were validating, but you were not validating everything you could validate. No shame in that, especially because there is to my knowledge no known preimage attack for sha256[d] right now, and there are no known large competing mining farms burning away at minority chaintips. assumevalid was brought in from 0.14, so any datadir older than that is a fully validated copy, unless shut off between releases for an extended duration.

As to wartime vs peacetime, seems best to use assumewar

I'd say assumefuturewar, yes. Since the design of BIP-110 is war, depending on the level of success it will have, it may be useful to have a reference network state. A running client will not wipe block files though so you can reconstruct it from datadir.

redo IBD rather than transfer the chain and state.

You can do it with -reindex after turning off all the assumptions. Saves download.

reply