JAR: JAM Axiomatic Reference

7.2. Header Validation (§5)🔗

🔗def
Jar.validateHeader [Jar.JamConfig] (s : Jar.State) (h : Jar.Header) : Bool
Jar.validateHeader [Jar.JamConfig] (s : Jar.State) (h : Jar.Header) : Bool

Validate block header against the current state. GP §5. Checks:

  1. Parent hash matches last known block

  2. Timeslot strictly increasing

  3. Timeslot not too far in the future

  4. Author index is valid

  5. Extrinsic size bounds

  6. Seal signature (via crypto opaque)

  7. VRF output (via crypto opaque)

🔗def
Jar.validateExtrinsic [Jar.JamConfig] (e : Jar.Extrinsic) : Bool
Jar.validateExtrinsic [Jar.JamConfig] (e : Jar.Extrinsic) : Bool

Validate extrinsic data bounds. GP §5, §11.