Roles Explained
This document explains the key roles in the Delegated Proof of Stake (DPoS) system, with a focus on validators, their responsibilities, and the hierarchical structure within the Ronin network.
1. Candidate
Definition
- A candidate is an entity that applies to become a validator.
- Candidates must meet specific requirements, such as staking a minimum amount of tokens.
- Candidates hold specific data:
admin
: The address used for rotating the consensus address and other information, identical to the treasury address.treasury
: The address to receive rewards, identical to the admin address.governor
: Used for voting on proposals; only governing validators have this information.commissionRate
: The percentage of rewards the validator shares with their delegators.pubKeyHash
: Hash of the public key used to vote for finality.vrfKeyHash
: Hash of the VRF key used to submit random seeds; only governing validators have this information.
Responsibilities
- Maintain their staking balance to remain eligible for promotion.
- Await selection to join the validator set.
- Submit fast finality proofs to finalize blocks.
Process
- A user applies to become a candidate by calling the
applyValidatorCandidate
function in the smart contract. - Eligible candidates may be promoted to validator status.
2. Validator
Definition
- A validator is a candidate that has been selected to participate in block production and governance of the network.
- Validators are divided into three types:
- Governing Validators (GV): Trusted entities with governance privileges.
- Standard Validators (SV): Selected based on their staking amounts.
- Rotating Validators (RV): Temporarily promoted validators selected randomly for fairness.
Types of Validators
1. Governing Validators (GV)
- Role: Act as core participants in network governance and block production.
- Selection: Chosen based on predefined trusted organization weights.
- Special Privileges:
- Submit VRF proofs to generate random seeds.
- Participate in voting for proposals and changes to network parameters.
- Maintain a public
vrfKeyHash
andgovernor
address for governance.
2. Standard Validators (SV)
- Role: Provide block production support with no governance privileges.
- Selection: Chosen based on staking amounts from the top-ranked candidates after governing validators.
- Special Privileges:
- Contribute to block production.
- Earn rewards from transaction fees and block rewards.
- Limitation: Excluded from voting on governance proposals.
3. Rotating Validators (RV)
- Role: Promote decentralization by allowing temporary participation.
- Selection:
- Randomly selected from the remaining candidates after GV and SV are assigned.
- Determined by the random seed generated during beacon finalization.
- Special Privileges:
- Participate in block production during assigned epochs.
- Limitation:
- Rotation occurs periodically; their validator status is not permanent.
Responsibilities of Validators
- Block Production:
- Validate and include transactions in blocks.
- Produce blocks during assigned epochs.
- Finality Proofs:
- All candidates, including non-block producers, contribute fast finality proofs to finalize blocks.
- Compliance:
- Maintain active participation to avoid penalties or slashing.
- Ensure sufficient staking to retain validator status.
3. Block Producer
Definition
- A block producer is a validator assigned to create blocks during a specific epoch.
Responsibilities
- Validate transactions and include them in new blocks.
Key Points
- Block producers are a subset of validators assigned to create blocks during specific epochs.
- All candidates (not just block producers) are responsible for submitting finality proofs.
4. Delegator
Definition
- A delegator is a token holder who stakes their tokens with a validator.
- Delegators share in validator rewards and indirectly influence governance by supporting specific validators.
Reward Sharing
- Rewards are distributed based on:
- Validator’s commission rate.
- Delegator’s staked amount.
5. Hierarchical Relationship
Structure
- Candidates: The initial pool of participants awaiting promotion.
- Validators:
- Governing Validators (GV): Trusted and responsible for governance and block production.
- Standard Validators (SV): Support block production without governance roles.
- Rotating Validators (RV): Temporarily promoted to encourage decentralization.
- Block Producers: A subset of validators responsible for creating blocks during specific epochs.
- Delegators: Stake tokens with validators to share in rewards and indirectly support the network.