Shard chain

From JaxNetwork Wiki
Jump to navigation Jump to search

There are multiple blockchains in JaxNetwork. There is one beacon chain (BC) and one or more shard chains (SC). The number of shards is not fixed; JaxNet protocol allows the nodes to dynamically increase the number of shard chains to scale JaxNetwork.

Shard chain properties

The block difficulty on shard chains is adjusted every 4096 blocks according to difficulty adjustment algorithm to keep block rate around 15 seconds.

Shard chain independence

The important property of shards is their independence. There are no cross-shard interactions when miners add new blocks or verify their validity. JaxNet implements this independence via the use of different tokens for different chains; each shard has its own token. We believe that shards’ tokens will have similar values over time. This common value is called Jax coin.

Merkle Mountain Range commitments

Shard chains in JaxNetwork support an efficient transaction verification light client called FlyClient. This feature requires a specific approach to organize data in the blockchain. In contrast to traditional blockchains in which blocks are arranged into chains, where every block header contains the hash of the previous one, in JaxNetwork block headers form a specific data structure called Merkle Mountain Range (MMR).

Reward function

A miner, who has mined a valid shard block, can get a block reward and transaction fees for his work. The amount of Jax coins in the block reward is calculated according to the formula:

[math]\displaystyle{ Reward = \frac{K \cdot D} {N}, }[/math]

where

[math]\displaystyle{ K }[/math] is a K-coefficient,

[math]\displaystyle{ D }[/math] is a difficulty of the shard block,

[math]\displaystyle{ N }[/math] is a number of shard chains that were merge-mined by the miner.

This function for the block reward is also called generalized proportional allocation rule (see [1], p.6, example 3).

Merge-mining of shard chains

Merge-mining Merkle Tree

Merge-mining number

ChainID

Shard creation protocol

Condition for opening a new shard

Genesis block of the shard chain

Cross chain atomic swaps

Superlight client

Atomic swaps

Exchange agents

See Also

References

https://arxiv.org/abs/1909.10645

  1. xxxxx