IOTA is an open-source, distributed ledger technology (DLT) protocol built on a DAG (directed acyclic graph) called the Tangle. Unlike a blockchain that stores transactions in blocks, a DAG uses vertices - more on this in a bit. What is important to keep in mind is that this means IOTA is not built on blockchain. And while DAG-based platforms offer both faster and free transactions, they concurrently compromise on the decentralization that blockchain provides.
IOTA was introduced in 2015 by the founders of an earlier project called Jinn (JINN token holders were able to exchange their tokens for IOTA). After an Initial Coin Offering (ICO), the mainnet was launched in July of 2016. At the time of writing, the protocol’s native token MIOTA (equal to 1M iotas) sits 39th by market cap on CoinJab and is the largest DAG by market cap.
With the intention of building a network optimized for the Internet of Things (IoT), IOTA prioritises low computational costs, scalability, and connectivity. Let’s take a closer look!
IOTA’s Unique Architecture
IOTA has a distinct structure, composed of three main elements: clients, nodes, and the Tangle. As on a blockchain, clients make and send transactions while nodes validate and add them to the ledger. However, the manner in which transactions on IOTA are validated is considerably different. This is primarily due to the Tangle.
What Is The Tangle?
We’ve already mentioned that DAGs do not use blocks, which means they do not have miners either. Instead, to add a new transaction to the network, network nodes must reference two unconfirmed transactions using a minor Proof-of-Work (PoW). Unconfirmed transactions are also known as Tips. Once a tip is referenced, it becomes confirmed and the new transaction waits in turn to be referenced.
As a result of this structure, every IOTA transaction is connected to two others. References are either direct or indirect. A transaction Y (child) can connect directly to transaction X (parent), or indirectly connect to transaction Z (grandparent) through transaction X. This history of transactions helps form a lineage of references.
The structural difference between blockchain and DAGs is what allows the latter to avoid the blockchain bottleneck - the time lag that occurs because blocks must be added linearly and one-by-one. The Tangle can accommodate much faster confirmation times, as new transactions can be added in multiple places as vertices on a graph.
There are two transaction types: zero-value and value transactions. The first is only concerned with data transfer, while the second involves the transfer of value in IOTA tokens (and requires additional checks).
However - and this is where it gets interesting - the IOTA network also relies on a specialized client called the Coordinator. The Coordinator is a node run by the IOTA Foundation, the Berlin-based non-profit organization that supports and develops the network.
The Coordinator is tasked with sending special transactions, known as milestones, at regular intervals. These milestone transactions are trusted by nodes, and used to decide which transactions to confirm. In other words, all transactions in the network must be either directly or indirectly referenced by a validated milestone transaction in order to be confirmed.
This creates a tighter web of transactions, which helps prevent forking and double-spends. Milestones are sent out frequently so that more transactions can be confirmed. IOTA nodes can recognize which transactions are milestones, thanks to the Merkle root address of the Coordinator. When validating milestones, they cross-reference their own Merkle root with the Coordinator’s to ensure that they match.
IOTA nodes also make use of a tip selection algorithm to help them choose which two transactions to reference. The algorithm essentially ranks tips based on their age and proximity to newer milestones. This is important, as it helps optimize confirmation rate and protect against attacks.
While there are no transaction fees or decentralized governance in place on IOTA (yet), the MIOTA token still has value. A total supply of 2,779,530,283 MIOTA means it is not inflationary, and it is also needed for value transfer on the network.
Despite its innovations, IOTA also has some drawbacks worth mentioning, including a number of security breaches on-chain. You may also be wondering at this point whether IOTA is really decentralized. The centralization of the network due to the Coordinator has been a persistent cause for concern, as it also represents a single point of failure.
The IOTA team has however made it clear that the Coordinator is a temporary framework, and the recently released IOTA 2.0 Devnet (Nectar) has eliminated the Coordinator altogether. This long-awaited development is known as Coordicide.
Coordicide And IOTA 2.0 Devnet
As its name rather grimly suggests, Coordicide is the “killing” of the Coordinator and the implementation of a truly decentralized IOTA. IOTA 2.0 was therefore designed with the goal of providing one of the largest and most decentralized distributed ledger platforms out there. By doing this, it aims to solve the crypto trilemma - the equal prioritising of security, scalability, and decentralization.
IOTA 2.0 introduces a number of new features in the form of 8 modules to achieve this. They include a new consensus model, low computational Sybil resistance, an autopeering system, timestamps, and a new tip selection mechanism among others. This will improve communication between nodes, maximize network security, and boost efficiency and finality.
Consensus, specifically, will be reached by implementing a new protocol known as the Fast Probabilistic Consensus (FPC). FPC will allow nodes to vote on transactions by querying a random selection of other nodes to find and assume the majority opinion. Only when all honest nodes have agreed do they reach consensus. Votes are also weighted by mana.
Mana is a tool that is used across several IOTA 2.0 modules. When a value transaction is made, a certain amount of mana is “pledged” by a token holder to a specific node ID. The pledged amount is linked to the amount of IOTA in the transaction, and stored on the ledger. Token holders pledge both consensus mana (to nodes that want to validate the network), and access mana (to nodes wanting to join the network).
Successfully launched in June of 2021, IOTA 2.0 Devnet has a number of upcoming goals including an incentivized testnet to the eventual launch of IOTA 2.0 on the mainnet.
IOTA has, unfortunately, experienced a few notable hacks - a relatively minor one in 2017 and a more serious one in 2020. In this February 2020 hack, around 2M USD worth of MIOTA was stolen from IOTA’s official Trinity Wallet (currently being replaced by Firefly). The entire network was shut down for around a month by the Coordinator, which helped avoid further losses. While this safety mechanism came in handy, it remains to be seen whether a fully decentralized IOTA can better secure itself against future exploits.
Future With IOTA
As IoT becomes increasingly relevant to and integrated in our daily lives, DLT platforms like IOTA will find greater use cases. The feeless, fast, permissionless, and scalable nature of IOTA has a lot of potential; the DAG network’s move to decentralization will, in some ways, be the ultimate test.
In other news, the IOTA Foundation was selected as one of seven projects to help build an EU-wide DLT platform. Working with the EBSI (European Blockchain Services Infrastructure), these seven contractors will help research and build a network meant to facilitate cross-border services across the continent.