> For the complete documentation index, see [llms.txt](https://docs.ethstorage.io/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.ethstorage.io/readme/how-ethstorage-works.md).

# How EthStorage Works

The EthStorage network consists of two main components:

1. A storage contract deployed on the Ethereum L1 responsible for on-chain fee distribution and Proof of Storage verification.
2. An L2 storage network composed by es-nodes, responsible for off-chain data storage replicas and prove via continuous DA sampling.

This is a rough overview of how it works:

## Step 1/5

Users upload their data to an application contract, which then interacts with the EthStorage contract to store the data.

<figure><img src="https://ethstorage.io/img/work1.d595c1f9.svg" alt=""><figcaption><p>step 1/5</p></figcaption></figure>

## Step 2/5

In the EthStorage L2 network, storage providers receive notifications about data awaiting storage.

<figure><img src="https://ethstorage.io/img/work2.ee049c2c.svg" alt=""><figcaption><p>step 2/5</p></figcaption></figure>

## Step 3/5

Storage providers download data from the Ethereum data availability network.

<figure><img src="https://ethstorage.io/img/work3.89adbac4.svg" alt=""><figcaption><p>step 3/5</p></figcaption></figure>

## Step 4/5

Storage providers submit storage proof to L1, proving a substantial number of replicas in the L2 networks.

<figure><img src="https://ethstorage.io/img/work4.bb8f04dc.svg" alt=""><figcaption><p>step 4/5</p></figcaption></figure>

## Step 5/5

The EthStorage contract rewards the storage provider who successfully submits the storage proof.

<figure><img src="https://ethstorage.io/img/work5.165c0bba.svg" alt=""><figcaption><p>step 5/5</p></figcaption></figure>
