...
Info |
---|
This proposal is a work in progress. |
Definitions
Types of nodes and states a node can be in
Term | Definition |
---|---|
Observer node | |
Validator node | |
Inactive validator node | |
Active validator node | |
Lazy validator node | |
Slashed validator node |
Other terms related to the validation protocol
Term | Definition |
---|---|
Bond | |
Bond request | |
Withdrawal request | |
Draw map | |
Bonds map | |
Reward map | |
Withdrawal map | |
Random seed | |
Transaction fee reward | |
Seniorage reward | |
Constants used in the validation protocol
Term | Definition |
---|---|
MAX_SIZE | |
EPOCH | |
SENIORAGE_BLOCK | |
SENIORAGE_REWARD_PERCENT% | |
FORCED_UNBONDING_THRESHOLD | |
LONG_RANGE_ATTACK |
Protocol Proposal
The proof of stake (PoS) contract is a genesis contract written in Rholang. It defines a set of methods that codify how validator incentives will work.
Validators can propose non-empty blocks that have a maximum of MAX_SIZE size at any time they wish.
The active set of validators are defined in the "bonds map" of the proof of stake (PoS) contract. The bonds map consists of up to ACTIVE_VALIDATORS key-value pairs where the key is a validator's public key and the value is their corresponding stake, denominated in REVs.
...