Replacing the Coordinator with a Validator Committee
A Leap Towards Decentralization and Enhanced Uptime on IOTA
TL;DR:
The IOTA Mainnet Coordinator will be upgraded to a decentralized, permissioned Validator Committee, consisting of multiple trusted validators that run on different host providers and locations. Not only does this increase network uptime and stability but also censorship resistance, by having external entities be part of the Validator Committee.
The current IOTA Coordinator serves as a kind of referee within the IOTA network, responsible for verifying transaction validity in periodic batches. It achieves this by issuing milestones, which nodes accept as confirmation for the transactions they've checked.
While this approach offers additional security to network participants, it also means that the Coordinator has the potential to block transactions if it sets milestones in specific ways. Additionally, if the Coordinator becomes unavailable, the commonly accepted confirmation of transactions is absent and the network ceases to process value transactions. The network would become unusable until the Coordinator resumes its operations.
To address these issues, we are upgrading the current Coordinator to a decentralized Validator Committee. This change means that the placement of milestones will no longer rely solely on a single Coordinator managed by the IOTA Foundation. Instead, multiple validators form a committee together using an off-chain Byzantine Fault Tolerant (BFT) consensus mechanism to determine the placement of the next milestone, by having each validator propose the parents to be referenced in the milestone.
The benefits of this upgrade are obvious. It ensures censorship resistance due to no single entity/machine checking the validity of transactions in the network and it improves uptime because the committee can still produce milestones even if a couple of validators go offline for reasons such as network outage or misbehavior.
The deployment process for the Validator Committee followed our standard, comprehensive approach:
- We began by running the Validator Committee on internal test networks, allowing our development teams to conduct an in-depth examination in a controlled environment. This phase was crucial for identifying potential issues and fine-tuning the software's performance.
- Next, we deployed the software on the Public Testnet, providing a more diverse and realistic testing environment. This step was essential for validating the software's robustness under a wider range of scenarios.
- Since early spring, the Validator Committee has been operating on Shimmer, our pre-production environment that acts as a staging network for the IOTA Mainnet. This uninterrupted operation has reinforced our confidence in the software's stability and readiness for the final stage: production deployment on the IOTA Mainnet.
As mentioned earlier, the Validator Committee is formed by several entities. We have reached out to several universities and companies over the past months and are now in the process of forming the first decentralized Validator Committee.
Out of 10 validators, five are run by the IOTA Foundation and five by individual, external entities. The names of the external entities will be published as soon as they have gone through their internal processes of giving us permission to do so.
With the Validator Committee in place, the network will continue to process transactions as long as seven (at a committee size of 10) / over two-thirds of all validators are active.
We are not currently planning to expand the committee through additional members, as the Validator Committee is only a temporary measure. It will be replaced by IOTA 2.0, where committee formation will be permissionless and based on token stake. Additionally, the BFT consensus algorithm in the Validator Committee will be replaced by IOTA 2.0's unique On-Tangle voting mechanism, which also eliminates the need for milestones.
The formation of a Validator Committee is an intermediate step to increase the networks’ resilience and to further decentralize the network until full decentralization with IOTA 2.0 is established. Stay tuned for more information on it, or join us on our Discord.