Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

Sharding

TON shards split account space so transactions can be processed in parallel.

Shard Identifier

Shard ids are 64-bit prefixes. The high bit is significant. The full shard is represented by:

0x8000000000000000

Do not format shard ids only as signed decimals in diagnostics; preserve hex output for clarity.

Account To Shard

An account belongs to a shard based on the prefix of its 256-bit account id. As shards split and merge, the shard covering an account can change over time.

Masterchain Relation

Masterchain blocks reference shardchain blocks. A light client verifies shard data by proving the shard block is referenced by a verified masterchain block.

LiteAPI Methods

Relevant methods:

liteServer.getShardInfo ...
liteServer.getAllShardsInfo ...
liteServer.getShardBlockProof ...

SDK Requirements

  • Determine account shard at a given masterchain block.
  • Fetch shard block proof.
  • Verify shard inclusion.
  • Handle shard split and merge history.

Missing Work

  • Shard descriptor TLB decoder.
  • Account-to-shard helper.
  • Split/merge traversal helpers.