Skip to content
LogoLogo

Snapshots & state commitment

Without a state commitment, every new node must re-verify every post-quantum signature since genesis. Arrekta commits to the chain state in every block, so a node can start from a snapshot and have it proven by proof of work (§9.7).

The state hash

The consensus state is the UTXO set, the asset registry and the freeze list. Each entry is expanded with SHAKE256 into 1024 16-bit lanes, and the state hash is the lane-wise sum of all entries (LtHash16). Adding or removing an entry adds or subtracts its expansion, so the hash updates incrementally and is order-independent.

LtHash rests on a lattice assumption (as used by Solana's accounts lattice hash, SIMD-0215), not on discrete logarithms like Bitcoin's MuHash, so it stays sound against quantum computers.

The commitment, with a delay

Block h commits TH("utxo/commitment", lthash) of the state after block max(h − delay, 0) in a coinbase burn output starting "ARKU" (bad-cb-utxo otherwise). The delay is 100 blocks on mainnet and testnet, 10 on regtest. Miners commit to settled state, and side branches validate normally.

Snapshots

A snapshot file holds the state items, all headers, the last delay commitments and the filter header at its height H. Importing it (into an empty data directory only):

  1. checks every header like headers-first sync (links, AuxPoW, bits, median time);
  2. rebuilds the LtHash and requires it to match the commitment for H;
  3. sets a finality floor at H.

Block H + delay must commit to the state after H, so a forged but self-consistent snapshot is rejected there by consensus. No software release has to bless a snapshot hash (unlike Bitcoin's assumeutxo). Rust and Python exporters produce byte-identical files and import each other's.

Guide: Snapshots.