2019-12-17 03:44:44 -08:00
|
|
|
<!--
|
2019-12-11 09:35:27 -08:00
|
|
|
order: 0
|
|
|
|
title: Staking Overview
|
|
|
|
parent:
|
|
|
|
title: "staking"
|
2019-12-17 03:44:44 -08:00
|
|
|
-->
|
2019-12-11 09:35:27 -08:00
|
|
|
|
2019-12-10 06:29:46 -08:00
|
|
|
# `staking`
|
2018-05-08 14:35:24 -07:00
|
|
|
|
|
|
|
## Abstract
|
|
|
|
|
2021-12-17 15:48:56 -08:00
|
|
|
This paper specifies the Staking module of the Cosmos SDK that was first
|
2018-05-18 11:26:32 -07:00
|
|
|
described in the [Cosmos Whitepaper](https://cosmos.network/about/whitepaper)
|
2021-05-27 08:31:04 -07:00
|
|
|
in June 2016.
|
2018-05-08 14:35:24 -07:00
|
|
|
|
2021-12-17 15:48:56 -08:00
|
|
|
The module enables Cosmos SDK-based blockchain to support an advanced
|
|
|
|
Proof-of-Stake (PoS) system. In this system, holders of the native staking token of
|
2020-02-07 08:15:55 -08:00
|
|
|
the chain can become validators and can delegate tokens to validators,
|
|
|
|
ultimately determining the effective validator set for the system.
|
2018-05-08 14:35:24 -07:00
|
|
|
|
2021-12-17 15:48:56 -08:00
|
|
|
This module is used in the Cosmos Hub, the first Hub in the Cosmos
|
2018-05-18 11:26:32 -07:00
|
|
|
network.
|
2018-05-08 14:35:24 -07:00
|
|
|
|
|
|
|
## Contents
|
|
|
|
|
2019-02-20 10:21:57 -08:00
|
|
|
1. **[State](01_state.md)**
|
2022-02-10 04:07:01 -08:00
|
|
|
* [Pool](01_state.md#pool)
|
|
|
|
* [LastTotalPower](01_state.md#lasttotalpower)
|
|
|
|
* [Params](01_state.md#params)
|
|
|
|
* [Validator](01_state.md#validator)
|
|
|
|
* [Delegation](01_state.md#delegation)
|
|
|
|
* [UnbondingDelegation](01_state.md#unbondingdelegation)
|
|
|
|
* [Redelegation](01_state.md#redelegation)
|
|
|
|
* [Queues](01_state.md#queues)
|
|
|
|
* [HistoricalInfo](01_state.md#historicalinfo)
|
2019-02-20 10:21:57 -08:00
|
|
|
2. **[State Transitions](02_state_transitions.md)**
|
2022-02-10 04:07:01 -08:00
|
|
|
* [Validators](02_state_transitions.md#validators)
|
|
|
|
* [Delegations](02_state_transitions.md#delegations)
|
|
|
|
* [Slashing](02_state_transitions.md#slashing)
|
2019-02-20 10:21:57 -08:00
|
|
|
3. **[Messages](03_messages.md)**
|
2022-02-10 04:07:01 -08:00
|
|
|
* [MsgCreateValidator](03_messages.md#msgcreatevalidator)
|
|
|
|
* [MsgEditValidator](03_messages.md#msgeditvalidator)
|
|
|
|
* [MsgDelegate](03_messages.md#msgdelegate)
|
|
|
|
* [MsgUndelegate](03_messages.md#msgundelegate)
|
2022-04-07 05:39:27 -07:00
|
|
|
* [MsgCancelUnbondingDelegation](03_messages.md#msgcancelunbondingdelegation)
|
2022-02-10 04:07:01 -08:00
|
|
|
* [MsgBeginRedelegate](03_messages.md#msgbeginredelegate)
|
2019-12-18 05:20:02 -08:00
|
|
|
4. **[Begin-Block](04_begin_block.md)**
|
2022-02-10 04:07:01 -08:00
|
|
|
* [Historical Info Tracking](04_begin_block.md#historical-info-tracking)
|
2021-05-27 08:31:04 -07:00
|
|
|
5. **[End-Block](05_end_block.md)**
|
2022-02-10 04:07:01 -08:00
|
|
|
* [Validator Set Changes](05_end_block.md#validator-set-changes)
|
|
|
|
* [Queues](05_end_block.md#queues-)
|
2021-02-01 04:35:18 -08:00
|
|
|
6. **[Hooks](06_hooks.md)**
|
|
|
|
7. **[Events](07_events.md)**
|
2022-02-10 04:07:01 -08:00
|
|
|
* [EndBlocker](07_events.md#endblocker)
|
|
|
|
* [Msg's](07_events.md#msg's)
|
2021-02-01 04:35:18 -08:00
|
|
|
8. **[Parameters](08_params.md)**
|