Top IoTeX dapps overview

Basic info

Top Dapps

What is IoTeX

Originally founded as an open-source platform in 2017, IoTeX aims to take the Internet of Things (IoT) to a new level by providing its users with a fast and highly-scalable blockchain, connecting real-world data and on-chain dApps. The network enables dApps to use trusted data from trusted devices by combining blockchain technology with secure hardware and confidential computing so that it can provide a privacy-focused user experience. 

The Internet of Things concept around which the project is built, refers to the numerous physical devices around the world, collecting and sharing data while connected to the Internet. Due to the advancement in technology allowing every device, with its unique features, to connect to a network, each of those devices can become part of the IoT concept.

IoTeX can connect various IoT devices and allows their owners to control and monetize their data, through its “blockchain-in-blockchain” mechanism, simply put – a single root chain having multiple sidechains connected to it. The network’s roll-delegated Proof-of-Stake (Roll-DPoS) consensus mechanism, provides it with the speed and scalability needed to connect IoT devices block by block.

How does IoTeX work

IoTeX believes that since different IoT applications require fundamentally different features from blockchains, it is not possible to have all IoT nodes connected to the same blockchain as that would result in its fast growth in size and computation, eventually making the network too heavy for many IoT devices. For this, IoTeX introduces a model in which numerous blockchains with different feature sets can be connected to one backbone type of network, allowing IoT nodes to exist in environments suitable for their needs, while also being able to connect to any other node part of the IoTeX ecosystem if needed.

IoTeX’s subchains are hierarchically arranged and can run concurrently with one another while retaining interoperability. This is achieved through the root blockchain tasked with managing all independent subchains. Subchains on the network can have varying properties depending on their needs, and even though they are connected to and are secured by the root chain, any problems faced by a subchain, for example, software bugs or malicious attacks, can not affect the root chain.

Subchains on the network use an account-based model, seen as better for tracking state transitions, that provides two types of accounts, similar to Ethereum, these are regular user accounts and smart contracts. In order to provide more efficient cross-chain communication to its users, IoTeX validates transactions on its subchains with the same consensus scheme as its root chain.

IoTeX’s root chain has three main purposes, relaying value and data across subchains, supervision of subchains – including penalizing bonded operators with bond confiscation, and finally – settlement and anchoring of payments and trust for subchains. Built around the UXTO model (unspent transaction output, or UTXO, refers to a protocol for distributing cryptocurrencies used by many networks including Bitcoin and Monero), the IoTeX root blockchain is composed of hash-linked blocks, composed of a header hash-linking each block to the previous one on the chain as, and a list of transactions. There are two types of transactions primarily allowed on the root chain, these are basic transactions including P2PKH, P2SH, Multisig, etc, as well as advanced transaction types enabling cross-chain operations such as BondedRegistration, Lock, ReLock, Reorg, and others.

Every validated transaction on the root chain is added into a block with dynamic size, with a maximum size of 8MB. The chain produces a new block each three seconds thanks to its consensus mechanism. According to the IoTeX whitepaper, the project’s root chain is designed to be non-Turing-complete with support of a stack-based script and a rich set of opcodes.

IoTeX also aims to provide its users with privacy by having a built-in privacy-preserving mechanism in all transactions. To do so, the project integrates stealth addresses in a lightweight scheme for receivers’ privacy, ring signatures with an improved, optimized size for senders’ privacy, and Pedersen Commitments for hiding transaction amounts.

To achieve a fast and efficient consensus process providing the network with instant block finality, the project combines the concepts behind Delegated Proof-of-Stake, Practical Byzantine Fault Tolerance, and Verifiable Random Functions (VRF), in a novel so-called Roll-Delegated Proof-of-Stake (Roll-DPoS) consensus mechanism. 

At its core, Roll-DPoS is similar to the DPoS consensus due to some of its advantages, such as allowing small token holders to pool their stakes and have a higher chance of participating in block proposing and voting, resource-constrained nodes being allowed to choose their delegates, which allows for not all nodes needing to be online when consensus is being reached, and finally – allowing nodes to be chosen dynamically and randomly, which provides for higher overall availability of nodes when reaching consensus. 

The Practical Byzantine Fault Tolerance algorithm (PBFT) is an efficient and attack-resistant algorithm for reaching agreements in a distributed asynchronous network, IoTeX uses it for its underlying voting algorithm due to its quick finality, among other advantages.

VRF represents a group of functions that is capable of producing publicly verifiable proofs regarding the correctness of their random outputs. VRF comes into play during different stages of the IoTeX Roll-DPoS consensus. 

The IoTeX network is divided into periodic checkpoints called epochs, to counteract the ever-growing size of the blockchain and allow light clients to run the network, just as proposed by Vitalik Buterin in Ethereum

At the beginning of each epoch, the network elects its validator candidates in a process available for participation to every node from the IoTeX ecosystem. Then, a random committee of 11 nodes is selected from the candidate pool to create blocks in the next 11 rounds, by utilizing the VRF concept. Each round lasts 3 seconds and sees every one of the 11 nodes from the committee producing a new block, however, only the one with the highest priority that has not been proposed in the same iteration advances forward, to become a candidate block. Finally, in the same round, all other nodes vote on the candidate block via PBFT, and as long as at least two-thirds of the nodes agree on a block’s validity it gets finalized and appended to the blockchain by everyone in the network.

How to use IoTeX

Being EVM compatible, IoTeX allows developers to port their Ethereum-based dApps and/or tokens to it, and due to its cross-chain compatibility IoTeX users can take advantage of its bridging capabilities. 

IoTeX’s native SDK is called Antenna, with it, developers can directly interact with both local and remote nodes using a gRPC connection. The SDK comes with support for JavaScript, Java, Go lang, iOS, and C. Although the network fully supports the Ethereum API, the IoTeX team notes that in order to take advantage of some of the more complex features of the project, developers need to use Antenna.

The team behind the project has developed an official IoTeX wallet, called ioPay, the app supports token transfers, contract calls, and staking. However, IoTeX users can also use any Web3 wallet to execute token transfers and contract calls, but they can not be used for staking. 

The IoTeX bridge is designed with the idea of supporting various blockchains and assets while being decentralized. The feature is called ioTube and is currently in its v5 beta version. Decentralization is achieved by having multiple off-chain witness nodes and a relayer node monitoring and triggering a set of on-chain contracts to provide for users’ requests.

Users can become delegates on the network and take part in securing it, in exchange for rewards denominated in IOTX tokens. However, in order to become one, users need to have at least 1,200,000 IOTX tokens self-stake and receive at least 2,000,000 total votes. Moreover, IoTeX also has minimum hardware requirements that include: primary and backup servers with Firewalls running IoTeX software, at least 8GB of RAM, but 16GB are preferred, and storage space of 100GB, preferably with an SDD, a 64-bit CPU, 2 cores processor with at least 2.5 GHz at each core, and finally a network connection of at least 100Mb/sec. The software required includes Debian Stretch Linux, Go lang not earlier than its 1.11.5 version, monitoring and alerting tools, and support Docker image deployment. Nodes are also required to monitor and provide on-call support, provide at least 99.9% server uptime, failover and data backup across geolocations, they should also provide preventative measures for security, and support periodic software updates.

IoTeX staking 

Staking is at the core of the IoTeX decentralized governance. Locking IOTX tokens generates voting power that can be delegated to community-voted Delegates who manage consensus on behalf of the entire network. By staking, any IOTX token holder can earn up to 10% annual interest on their stake. 

Although members are not required to set their stake duration, they are encouraged to do so as that generates bonus votes (otherwise 1 vote equals 1 IOTX). The time a stake lasts can be set to any duration up to 1050 days but different seven-day intervals provide different bonuses to IOTX stakers. Unstaking IOTX lasts three days.

The IOTX token

IOTX comes with a maximum supply of 10 billion tokens, and a total supply of 8.8 billion after planned burn events. 24% of the token’s allocation went to a private sale held in January 2018 where a total of $25 million was raised at a price of 1IOTX = 0.0000125 ETH and were fully distributed in 2018-2020. Another 18% was allocated for the project’s ecosystem fund, including strategic partners, developers, and marketing efforts to bootstrap the IoTeX ecosystem. 25% were reserved by the project’s Foundation to build and evolve the protocol and sustain its long-term growth. 15% were left for the team, where each member has a personal vesting period based on their start date at the company with a six-month cliff and a total length of four years. These funds are meant to last at least ten years and ensure the onboarding of new core members in the future. 12% of IOTX’s total supply was allocated for mining rewards that commenced in April 2019, and 6% were left for community rewards, unlocked gradually over the course of three years after the token issuance date.

IoTeX transaction fees are paid in IoTeX tokens and depend on the computational capacity required to process a transaction. Moreover, IOTX tokens can be used to secure the network by being staked, providing its holders with governance rights. Another utility of the token is the so-called burn-to-certify program. This allows the blockchain to connect machines and people while both can discover and be discoverable. Although this feature is not yet live, in the future device manufacturers will need to burn IOTX to obtain a “Powered by IoTeX” (PBI) Certificate. 

In order to ensure service providers deliver consistent and reliable services, they are required to stake IOTX to obtain the right to provide services on the network. Since they have to define their specific quality or quantity guarantees in service level agreements (SLAs), failing to meet those SLAs results in some or all of the stake being slashed.

Is IoTeX safe

Headquartered in Silicon Valley, the IoTeX team is backed by a global team of more than 30 engineers, research scientists, and operators with various experience in tech giants such as Google, and Facebook. The founding team includes Raullen Chain – Uber’s Head of Cryptography; Qevan Guo – Facebook’s Product Lead; Xinxin Fan – Senior Research Scientist at Bosh; and Jing Sun – Managing Partner at Sparkland Capital.

The IoTeX smart code was verified by CertiK in March 2019, and according to the report, there were no issues discovered.

Ecosystem & Partners 

The IoTeX Foundation, tasked with overseeing the development of IoTeX and its ecosystem, runs a grants program called Halo. It is meant to accelerate the growth of the ecosystem by helping developers launch various types of projects, including DeFi, NFT, GameFI, and MachineFi. The program is open for projects at any stage to join and apply for a grant, with the condition the project promotes the growth and adoption of the IoTeX technology and community. Further details can be found on IoTeX’s Forum.

Some of the latest participants in the Halo program include Ahoy – a decentralized weather data capturing solution for boats, enviroBLOQ – a MachineFi dApp connecting smart home devices and the IoTeX blockchain, and MistTrack – an anti-money laundering tracking tool, developed by popular security firm SlowMist. 

What's next

The IoTeX roadmap can be accessed through a website called machinefi, promoting the MachineFi ownership economy – simply put, this is the idea that users should be the sole owners of their data, privacy, and money, for which devices owned by the people are meant to serve the people. According to the platform, the rest of 2022 should see IoTeX developers release an updated machinefi marketplace, tokenomics, and monetization suite, as well as an interoperable cross-chain data bridge.


Latest News

Video Tutorials