⛏️Staking

An overview of the Staking Module.

Overview

dYdX Chain leverages the Cosmos SDK Staking module which supports a Proof-of-Stake blockchain and enables DYDX holders to become validators and/or delegate the validation rights (stake) of their DYDX to a dYdX Chain validator.

Summary

Key Concepts and Definitions

  • Staking: the act of delegating and locking up (‘bonding’) DYDX tokens to a dYdX Chain validator to secure and govern the network.

  • Bonded Validator: once the validator receives sufficient bonded tokens they automatically join the Active Set EndBlock and their status is updated to Bonded. A bonded validator (1) is signing blocks and receiving rewards (2) can receive further delegations, and (3) can be slashed for misbehavior.

  • Active Set: the Active Set represents the validators that can participate in consensus, receive rewards, and secure the dYdX Chain at a given time. The active set includes the top validators according to staked tokens (delegated from third parties and self-delegation) and is determined by the max_validators parameter. The Active Set is updated during EndBlock by retrieving validatorsbypower and the max_validators parameter.

  • EndBlock: A function is called after all transactions in a block have been processed. EndBlock is generally used to execute logic that should happen after a block is executed to finalize state transitions, such as determining the active validator set of the dYdX Chain.

  • Inactive Set: Validators who are not in the Active Set, do not participate in consensus and do not receive rewards.

  • Unbonded Validator: The validator (1) is not in the Active Set, (2) cannot sign blocks and (3) does not earn rewards, but they can receive delegations. DYDX holders who stake to an unbonded validator will not earn any staking rewards.

  • Validator Commission: Commission set by each validator and applied to the staking rewards of each delegator. Validators are required to follow the min_commission_rate parameter, but are otherwise free to set their own commission rates.

Parameters

These parameters may be adjusted by the dYdX Community with an on-chain governance proposal.

Staking to a dYdX Chain Validator

On the dYdX Chain, DYDX holders can serve as validators or delegate their stake to existing validators. Such delegation increases the likelihood of the chosen validator(s) entering or staying in the active validator set, thereby becoming or maintaining their position as a participant in the network’s consensus process.

Unbonding delegations / Unstaking

DYDX holders who stake DYDX to a validator can send a transaction to unstake and remove their tokens (fully or partially) from being staked to a validator. After this transaction is sent, the DYDX tokens enter an unbonding period which lasts for the duration of the unbonding_time parameter.

Redelegation

Redelegation in the Cosmos SDK is a feature that allows a delegator to shift their staked tokens (delegations) from one validator to another without having to wait for the unbonding period.

During the redelegation process, the tokens remain staked, meaning they continue contributing to the network's security and potentially earning rewards for the delegator.

However, a user’s slashing risk with the original validator remains until the unbonding period concludes. For example, a user stakes 20 DYDX to validator A for 59 days, on day 60 the user decides to redelegate their 20 DYDX to validator B. If validator A is slashed between days 60-90, the user is at risk of having a portion of their 20 staked DYDX slashed. After the 90th day, the slashing risk transitions to validator B.

After redelegating, you must wait 30 days before redelegating again from this new validator.

Last updated