Invariants / CN-CONS-04
CN-CONS-04
CN derived enforcedHeader validation must bind exactly to the accepted body and consensus context
- Source
classification_table.md §D
Enforcement trace
Code
Tests 13
- consensus::header_validate::tests::pipeline_short_circuits_on_first_failure
- consensus::header_validate::tests::nonce_contribution_uses_nonce_role_vrf_output_not_leader_role
- valid_header_accepted_advances_state
- header_with_slot_regression_rejected
- header_with_block_no_regression_rejected
- header_with_op_cert_regression_rejected
- header_with_invalid_vrf_proof_rejected
- header_beyond_forecast_horizon_rejected
- validate_replay_is_deterministic
- consensus::candidate::tests::candidate_fragment_carries_anchor_block_no
- conway_corpus_headers_all_pass_leader_check
- praos_vrf_keyhash_mismatch_rejected
- altered_body_rejected_by_hash_binding
Cross-references
Strengthened in
Attack rationale
Prevents partial-validation acceptance.
Evidence notes
Cardano-specific: header/body separation is a Cardano block structure choice.