Disclaimer: This is a work in progress and may change significantly.

This draft includes some research-based concepts and surveys integral to the development process. These sections will be removed in the final version.

The spec follows the structure of the Dilithium consensus spec. If not explicitly included below, assume absent sections unchanged from Dilithium.

Based on research in ‣, Protocol Research, and recent research paper https://arxiv.org/abs/2406.08252

NOTE: Most of the assumptions, including security-related ones, are based on the SMR paper. While the SMR system is intended for use in a permissioned network, key security assumptions, such as the minimum required number of nodes (in our case, farmers), remain applicable.

Color Legend

Green: Implemented

Blue: Needs to be implemented

Yellow: Unstable, awaits confirmation

Purple: More context and explanation

Goal

This document is a draft of the specification for an upcoming upgrade to the Subspace protocol after the Mainnet launch. The upgrade will introduce bandwidth scaling, allowing more data to be throughput through the network than one node can throughput alone.

Primitives

Farmer: A farmer is a participant who has pledged an amount of storage to the network. The farmers can join or leave a shard under conditions. Their responsibility is maintaining long-term and short-term data availability.

System Parameter $p$: The probability of rotating a shard or getting into a shard in each time slot.

Data shard: A data shard is a stateless connected peer-to-peer network of farmers. They may have their Archival History as part of the Global History. Unlike the consensus chain, the farmers are only responsible for signing a bundle body and broadcasting (or gossiping) their signatures to the operator.