Staking Overview

Introduction

Staking on Starknet involves locking STRK tokens in the staking protocol, contributing to network security and performance. Anyone holding STRK in their wallets can stake their tokens on Starknet either directly or by delegating their tokens to others, with rewards based on their level of participation and contribution.

Key terms

  • Stake: Locking STRK tokens into the staking protocol.

  • Delegate: Assigning STRK tokens to a validator to participate indirectly.

  • Reward: Earnings from participating in staking.

First stage

In the future, validators will be responsible for maintaining and securing the network by producing, attesting, and proving blocks, as part of Starknet’s consensus protocol. However, handing over these responsibilities all in one day is neither feasible nor desirable. Instead, the first stage of staking on Starknet will only require validators to run full nodes and test the protocol’s economic incentive structure and some of its key smart contract components.

In the first phase of staking on Starknet, validators are required to run a full node in preparation for future staking phases

Over time, validators' responsibilities will gradually increase, with each phase bringing additional tasks until validators fully maintain and secure the network. This incremental approach is necessary, as it allows for the following:

  • Gradual implementation: introducing features in small and manageable milestones, ensuring each step is carefully implemented and easily integrated, and allowing to refine the process and address issues as they arise

  • Validators preparation: giving validators time to adapt to their new responsibilities and critical roles, maximizing the network’s stability during the transition

  • Proven reliability: having a proven set of sequencers that reliably produce and attest to blocks by the time validators perform their full responsibilities, cementifying the network’s decentralization

Protocol details

Overview

The staking protocol features two main options:

  • Staking: Users can stake any amount of STRK, with a minimum threshold set at 20,000 STRK. Validators are expected to run full nodes and eventually handle additional responsibilities as the protocol evolves. Validators can choose whether to allow delegation.

  • Stake Delegation: Users can delegate their STRK to validators without running their own nodes, if the validator allows delegation. Delegators share in the rewards earned by the validators they choose.

Validators and delegators can both unstake their funds, subject to network-defined latencies for security.

Minting curve

The minting curve balances participation and inflation by adjusting rewards based on the total STRK locked in the protocol. It is defined by the formula:

\[M = \frac{C}{10} \times \sqrt{S}\]

where:

  • \(S\) is the staking rate as a percentage of the total token supply

  • \(M\) is the annual minting rate as a percentage of the total token supply

  • \(C\) is the maximum theoretical inflation percentage

For the first stage, \(C\) is proposed to be 1.6%.

Staking rewards

Rewards are distributed based on the amount staked and the commission policy constant \(CP\) set by the validator. The yearly reward percentages are calculated using the following formulas:

\[\begin{align} \text{Validators: } & \; \left[\text{self_stake} + \text{total_stake_delegated} \times CP\right] \times \frac{M}{S} \\ \text{Stake Delegators: } & \; \text{stake_delegated} \times (1 - CP) \times \frac{M}{S} \end{align}\]

where \(M\) and \(S\) are the same as described in the minting curve section.

Latencies

  • Current version: Immediate entry and exit from the staking protocol. However, funds are subject to a 21-day security lockup after signaling unstake intent.

  • Future versions: Introduction of epochs to determine entry/exit latencies and continued 21-day lockup after signaling unstake intent.

Stake delegators can switch between validators without waiting for the full lockup period, promoting a competitive delegation market.

Contract addresses

L1 addresses

Reward supplier contract

Mainnet

0xCa1406D57eD09947E68DE121316C87113fBE9ff5

Sepolia

0xE58d25681B9d290D60e4d7f379a05d5BFD973fFB

Mint manager contract

Mainnet

0xCa14076A3cec95448BaD179cc19B351A4204B88B

Sepolia

0x648D1B35a932F5189e7ff97b2F795E03734DE4ce

L2 addresses

Reward supplier contract

Mainnet

0x009035556d1ee136e7722ae4e78f92828553a45eed3bc9b2aba90788ec2ca112

Sepolia

0x02ebbebb8ceb2e07f30a5088f5849afd4f908f04f3f9c97c694e5d83d2a7cc61

Minting curve contract

Mainnet

0x00ca1705e74233131dbcdee7f1b8d2926bf262168c7df339004b3f46015b6984

Sepolia

0x0351c67dc2d4653cbe457be59a035f80ff1e6f6939118dad1b7a94317a51a454

Staking contract

Mainnet

0x00ca1702e64c81d9a07b86bd2c540188d92a2c73cf5cc0e508d949015e7e84a7

Sepolia

0x03745ab04a431fc02871a139be6b93d9260b0ff3e779ad9c8b377183b23109f1

Economic parameters

Parameter Mainnet Sepolia

Minimum stake for validators

20K STRK

1 STRK

Withdrawal security lockup

21 days

5 minutes

Minting curve yearly inflation cap (\(C\))

1.6

1.6

For developers who wish to dive deep, the index update interval parameter is set to a minimum of 1 minute in Starkent Sepolia and 30 minutes in Starknet mainnet.