Expand description
Top-level semantic block verification for Zebra.
Verifies blocks using the CheckpointVerifier or full SemanticBlockVerifier,
depending on the config and block height.
§Correctness
Block and transaction verification requests should be wrapped in a timeout, because:
- checkpoint verification waits for previous blocks, and
- full block and transaction verification wait for UTXOs from previous blocks.
Otherwise, verification of out-of-order and invalid blocks and transactions can hang indefinitely.
Modules§
- service_
trait - Trait aliases for block verification Tower services.
Structs§
- Background
Task Handles - The background task handles for
zebra-consensusverifier initialization. - Block
Verifier 🔒Router - The block verifier router routes requests to either the checkpoint verifier or the semantic block verifier, depending on the maximum checkpoint height.
Enums§
- Router
Error - An error while semantically verifying a block.
Constants§
- VERIFIER_
BUFFER_ 🔒BOUND - The bound for the chain verifier and transaction verifier buffers.
Functions§
- init
- Initialize block and transaction verification services.
- init_
checkpoint_ list - Parses the checkpoint list for
networkandconfig. Returns the checkpoint list and maximum checkpoint height. - init_
test - Calls
initwith a closed mempool setup channel for conciseness in tests.