Expand description
Consensus critical contextual checks
Re-exports§
pub use utxo::transparent_coinbase_spend;
Modules§
- anchors 🔒
- Checks for whether cited anchors are previously-computed note commitment tree roots.
- difficulty 🔒
- Block difficulty adjustment calculations for contextual validation.
- nullifier 🔒
- Checks for nullifier uniqueness.
- utxo 🔒
- Consensus rule checks for the finalized state.
Functions§
- block_
commitment_ 🔒is_ valid_ for_ chain_ history - Check that
block
is contextually valid fornetwork
, using thehistory_tree
up to and including the previous block. - block_
is_ 🔒not_ orphaned - Returns
ValidateContextError::OrphanedBlock
if the height of the given block is less than or equal to the finalized tip height. - block_
is_ 🔒valid_ for_ recent_ chain - Check that the semantically verified block is contextually valid for
network
, based on thefinalized_tip_height
andrelevant_chain
. - difficulty_
threshold_ 🔒and_ time_ are_ valid - Validate the time and
difficulty_threshold
from a candidate block’s header. - height_
one_ 🔒more_ than_ parent_ height - Returns
ValidateContextError::NonSequentialBlock
if the block height isn’t equal to the parent_height+1. - initial_
contextual_ 🔒validity - Perform initial contextual validity checks for the configured network, based on the committed finalized and non-finalized state.
- legacy_
chain 🔒 - Check if zebra is following a legacy chain and return an error if so.