Hello IoTeX community! We are quickly approaching the IoTeX Mainnet launch and Delegates election. To get you familiar with the voting process, we will have another blog post coming soon with step-by-step instructions for voters! But first, we explain the design and rationale of IoTeX’s staking and voting process in this blog post.

The Grand Design of the IoTeX Network

While we are extremely focused on launching the Mainnet and IoTeX root chain, we are always thinking ahead about the bigger picture of IoTeX Network for the next 5–10 years. Our long-term design employs Separation of Powers, a term coined by Charles-Louis de Secondat, which states that political authority should be divided into legislative, executive and judicial powers. Inspired by this concept, the grand vision for IoTeX utilizes four layers with unique roles.

IoTeX Architecture Layers

Governance layer, instantiated by the Gravity Chain (i.e., no one can see it but it governs everything in the universe), is the layer that acts as a decentralized government for the IoTeX network. It uses a liveness-oriented consensus scheme (e.g., PoS variant) to facilitate tasks such as staking, voting, slashing, protocol-related proposals, and more. It is a critical component required to ensure high reliability, throughput, and transparency, and will be launched in Q3/Q4 2019.

instantiated by the (i.e., no one can see it but it governs everything in the universe), is the layer that acts as a decentralized government for the IoTeX network. It uses a liveness-oriented consensus scheme (e.g., PoS variant) to facilitate tasks such as staking, voting, slashing, protocol-related proposals, and more. It is a critical component required to ensure high reliability, throughput, and transparency, and will be launched in Q3/Q4 2019. Orchestration layer , instantiated by the Root Chain, is the general manager and coordinator for all subchains. It is powered by our safety-oriented Roll-DPoS consensus mechanism and aims for high throughput and reliability. This orchestration layer (i.e., the root chain) will be launched in Q1 2019 (i.e., Mainnet Alpha) .

, instantiated by the is the general manager and coordinator for all subchains. It is powered by our safety-oriented Roll-DPoS consensus mechanism and aims for high throughput and reliability. This orchestration layer (i.e., the root chain) will be . Operational layer , instantiated by various subchains , is the concrete unit that handles business logic related to specific use cases/applications. (e.g., supply chain, smart city, data exchanges) In IoTeX’s design, subchains share the same pool of Delegates as the root chain, so anyone can spin up a subchain as effortlessly and securely as spinning up an EC2 instance on AWS Cloud. The first IoTeX subchain (codename: Avo Chain) is expected to be launched in Q2/Q3 2019, which will be focused on privacy.

, instantiated by , is the concrete unit that handles business logic related to specific use cases/applications. (e.g., supply chain, smart city, data exchanges) In IoTeX’s design, subchains share the same pool of Delegates as the root chain, so anyone can spin up a subchain as effortlessly and securely as spinning up an EC2 instance on AWS Cloud. The first IoTeX subchain (codename: is expected to be launched in Q2/Q3 2019, which will be focused on privacy. Execution layer, is an optional layer for specific subchains. For example, Avo Chain Delegates (i.e., block producers) will have to offload privacy-preserving computation tasks to certain devices for execution.

Staking/Voting on DPoS Blockchains is Risky

Many DPoS blockchains (e.g., EOS, Lisk) manage staking/voting on its core operational layer blockchain, which is somewhat risky. Staking/voting is a special type of governance task, which we believe should not be grouped with operational tasks. For example, elected Delegates, as a vested interest group, may disregard staking/voting transactions in the block production process to mitigate being de-elected (i.e., conflict of interest). Furthermore, elected Delegates may enforce protocol upgrades (by upgrading their software without consent from other users) that are not favorable to the rest of the ecosystem.

IoTeX believes deeply in decentralized governance; therefore, tasks such as staking/voting should happen outside of the operational layer. But what are we gonna do before our governance layer (Gravity Chain) is ready? The answer is simple — use Ethereum as the governance layer for now, as our circulating IOTX token (ERC20) is already compatible with Ethereum!

Staking/Voting on Ethereum

Ethereum is a liveness-oriented blockchain that has moderate performance and high reliability, which is suitable for playing the role of the governance layer until the gravity chain is ready. After a few months, the staking/voting and other governance processes will be fully migrated to our Gravity Chain. So, how will the interaction between IoTeX and Ethereum work essentially?