zips
zips copied to clipboard
[ZIP 403] Describe what is verified (for each combination of options) in zcashd
https://zips.z.cash/zip-0403
As of zcashd 4.0.0, there is a -checkpoints flag (inherited from upstream) that is set to true by default. When enabled (i.e. by default), ConnectBlock has the following behaviour:
- Sprout JoinSplit proofs prior to the last checkpoint are skipped.
- Transparent ECDSA signatures prior to the last checkpoint are skipped.
Everything else is checked unconditionally. In particular, the following expensive checks are always performed:
- Sprout
joinSplitSig. - Sapling Spend and Output proofs.
- Sapling
spendAuthSigs. - Sapling
bindingSig.
On a performance note, as of 4.0.0, transparent ECDSA signatures are verified in a threadpool, while all other expensive checks are performed serially. No batching is performed for any checks.