In the evolving Autonity ecosystem, validators play a crucial role in maintaining the consistency and reliability of the system. They are not just guardians of consensus but also bearers of other vital responsibilities. Let’s delve deeper into the functions, prerequisites, and economic incentives that drive Autonity validators to uphold the highest operational standards.
Autonity, a decentralized network, relies on crucial components known as validators to maintain consensus and ensure the integrity of its system status. In this article, we will explore the role of validators, their prerequisites, identity management, lifecycle, and the economic incentives driving correct behavior.
Validator Role:
Validators in Autonity are full nodes with bonded stakes, qualifying them for selection into the network’s consensus committee. Their primary function is to secure the system’s status by participating in consensus calculations. This involves proposing, voting, and validating new blocks, reporting violations, and contributing to oracle protocol voting rounds.
Validator Responsibilities:
Validators play a central role in maintaining system health. They propose blocks, validate state transitions, vote in consensus rounds, and ensure network security through bonded stakes. Additionally, they actively participate in the accountability and fault detection protocol and contribute to the oracle network by submitting and voting on price data.
Validator Prerequisites:
To operate as a validator, the operator must run Autonity server software alongside full node software. Prerequisites include the validator’s enode URL, an oracle server configured for off-chain data, and a treasury account for managing validator-related transactions.
Identity Management:
Validators use different accounts and key pairs for various purposes, such as the P2P node key for network communication, enode URL for networking, validator identifier for on-chain identity, and treasury account for transaction management.
Validator Lifecycle:
The validator’s lifecycle involves crucial steps like joining the network, configuring the oracle server, registering as a validator, bonding stake, participating in the consensus committee, facing potential prison penalties for violations, pausing, and reactivating.
Eligibility for Consensus Committee:
A validator becomes eligible for selection into the consensus committee when registered, active, and possessing non-zero bonded stakes. Committee selection occurs at the end of each epoch, ensuring a dynamic and participatory consensus process.
Jailing and Exclusion from Consensus Committee:
Validators may face jail time if found guilty of violating consensus rules while serving on the consensus committee. During the jail period, validators are excluded from committee selection, suffer stake slashing, and lose stake rewards. Reactivation is required to return to an active state.
Stake Bonding and Delegation:
Validators are staked with Autonity’s Newton stake token. A self-bonded stake is slashed before delegated stake, promoting honest operations. Liquid staking allows delegated stake to earn rewards.
Validator Economics:
Validator economic returns depend on bonded stakes, participation in the consensus committee, commission rates, and potential slashing penalties. Staking reward revenue, commission fees, and slashing rewards contribute to the overall economic incentives for validators.
Validator Registration:
Validators register either at genesis or post-genesis. Genesis registration involves specific parameters, while post-genesis registration allows validators to register with initially zero bonded stakes.
Jailing and Reactivation of Validators:
Validators can voluntarily pause or be forcefully put into a pausing or jailed status. Reactivation is crucial to resume active participation in the committee, allowing validators to regain eligibility. Link for more information
Change in Validator Commission Rate:
Validator operators can modify their validator commission rate from the global default rate set at registration by submitting a commission rate change request to the Autonity Network. Link for more information
The process is as follows:
- The validator operator entity submits a commission rate change request transaction to the Autonity Protocol Public APIs, calling the changeCommissionRate() function, submitting the transaction from the account used to register the validator (validator treasury account), and including the validator identifier address and the new commission rate in basis points (bps).
- The transaction is processed and committed to state:
- The commission rate change request is tracked in memory, and the unbonding period lock constraint begins.
- The rate change is applied at the end of the epoch in which the unbonding period expires as the last block of the epoch is finalized.
- A CommissionRateChange event is emitted detailing: validator identifier address, new rate value.
Note:
A stake delegator can use the CommissionRateChange event to listen for upcoming commission rate changes. The effective block of the commission rate change can then be calculated from data points: the changeCommissionRate transaction commit block number, and the network unbondingPeriod and epochPeriod values.
As key players in the Autonity world, validators have a pivotal role in ensuring the integrity of the system. From their complex responsibilities to the economic incentives that drive operational integrity, Autonity validators form a solid foundation. Thus, we realize that the ongoing evolution of validators is a cornerstone for the success of Autonity as a reliable and secure decentralized ecosystem.