2024-01-31 22:09:03 +00:00
|
|
|
; VERSION 0.1
|
|
|
|
; ------------ BLOCK ----------------------
|
|
|
|
BLOCK = HEADER CONTENT
|
|
|
|
; ------------ HEADER ---------------------
|
2024-02-01 21:16:14 +00:00
|
|
|
VERSION = %x01
|
2024-02-09 14:12:12 +00:00
|
|
|
HEADER = VERSION HEADER-FIELDS MOCK-LEADER-PROOF ORPHAN-PROOFS
|
2024-02-01 21:16:14 +00:00
|
|
|
HEADER-FIELDS = CONTENT-SIZE CONTENT-ID BLOCK-DATE PARENT-ID
|
|
|
|
CONTENT-SIZE = U32
|
|
|
|
BLOCK-DATE = BLOCK-SLOT
|
|
|
|
BLOCK-SLOT = U64
|
|
|
|
PARENT-ID = HEADER-ID
|
2024-02-06 18:21:16 +00:00
|
|
|
MOCK-LEADER-PROOF = COMMITMENT NULLIFIER EVOLVE-COMMITMENT
|
|
|
|
EVOLVE-COMMITMENT = COMMITMENT
|
2024-02-09 14:12:12 +00:00
|
|
|
ORPHAN-PROOFS = ORPHAN-PROOF-CNT *ORPHAN-PROOF
|
|
|
|
ORPHAN-PROOF-CNT = U32
|
|
|
|
; note this is not recursive, only the header leadership proof will be processed (orphan proofs are ignored)
|
|
|
|
ORPHAN-PROOF = HEADER
|
2024-01-31 22:09:03 +00:00
|
|
|
|
|
|
|
; ------------ CONTENT --------------------
|
|
|
|
CONTENT = *OCTET
|
|
|
|
|
|
|
|
; ------------- MISC ----------------------
|
|
|
|
U32 = 4OCTET ; unsigned integer 32 bit (BE)
|
|
|
|
U64 = 8OCTET ; unsigned integer 32 bit (BE)
|
|
|
|
HEADER-ID = 32OCTET
|
|
|
|
CONTENT-ID = 32OCTET
|
2024-02-01 21:16:14 +00:00
|
|
|
COMMITMENT = 32OCTET
|
|
|
|
NULLIFIER = 32OCTET
|