Blockchain Commitments
Publish a Block hash or Merkle root hash as optional commitment evidence. Commitments do not create, store, or change ALX Block identity.
A commitment records a deterministic blockHash or Merkle root hash at a blockchain position. Applications can evaluate the record after applying the selected network's finality requirements. Block content stays offchain.
Applications continue to create Blocks, validate identities, and verify lineage offchain. The blockchain records only commitment values. The recorded values later support direct commitment checks or Merkle inclusion proofs.
Blockchain commitments are optional. ALX does not require a blockchain. The supported deployment, ALXAnchor on Base (chain ID 8453), is listed on the ALX on Base page.
Architecture
- ALX Protocol defines the deterministic Block structure, identity, declared lineage, and local verification rules independently of storage, transport, or anchoring.
- Blockchain Commitments record a
blockHashor Merkle root hash at a blockchain position without storing Block content. - Blockchain Implementation describes the commitment interface, verification context, and operational responsibilities for an application-selected network.
What Is Committed
Each blockchain commitment records one deterministic value. Block content, lineage graphs, application metadata, and application storage remain offchain. The committed value is one of:
- A single
blockHash - A Merkle root representing multiple Block hashes
Commitment Purpose
Blockchain commitments provide a public reference that can be independently verified within a specified contract, network, and chain position. Applications can later establish that a Block hash or Merkle root was recorded without storing the underlying Block data onchain.
Roots and Proofs
When committing multiple Blocks as one value, the application builds a Merkle root hash with the optional Merkle extension (buildMerkleTree() from @alx-protocol/sdk/merkle) and commits the Merkle root hash; ALXAnchor does not compute Merkle roots. Merkle Trees and Merkle Proofs describe tree construction and inclusion proofs.
Choose a Commitment Form
Commit individual Block hashes when each Block needs its own record or when Blocks arrive over time. Commit a Merkle root when one record should represent a complete collection of Block hashes; a Block added later needs a new root.
Several individual commitments can share one transaction: ALXAnchor anchorBatch records 2 to 256 Block hashes, each as its own record. The transaction does not commit to collection membership.
| Consideration | Individual blockHash commitments | One Merkle root |
|---|---|---|
| Records | One record for each Block hash | One record for the complete leaf collection |
| Checking a Block | Look up the Block hash directly | Look up the Merkle root, then verify a Merkle proof for the Block hash |
| Collection membership | Not recorded; the application keeps any grouping | Fixed by the root; an added, removed, or changed Block hash produces a different root |
| Values published onchain | Every Block hash | The Merkle root only |
| Storage written | One record per Block hash, so transaction cost grows with the collection | One record for any collection size |