TLDR: ANYTHING you can build on a Blockchain, you can build on top of IOTA as well, with the additional features from the Tangle that make it better.
You might think that this is an extraordinary claim (which it is), so let me explain:
Let’s start with the assumptions that I believe must be met for IOTA to become the #1 Distributed Ledger Technology (DLT):
- People won’t care whether the application they use runs on L1 or L2, as long as L1 is secure and L2 is securely anchored in L1.
- The IOTA Foundation (or someone else) will provide developers with enough tools so that development on IOTA will not be significantly more difficult than on other protocols.
- We are early enough that a significantly better protocol will prevail over the current established protocols.
- The IOTA Foundation’s ideas work as intended, or at least there are no unsolvable problems.
I will base my arguments on these assumptions. So if you don’t think they are correct, it’s very likely that you will disagree with much of what I will say. I guess my last assumption is by far the most controversial. So if you can point me to any technical details as to why their ideas won’t work, I’d appreciate it. And if you disagree with any other assumption, I’d be interested in your reasoning as well. If you agree with my assumptions and yet disagree with my conclusions, please let me know what I’m missing.
My vision for IOTA
Most DLTs focus on one use case and try to be a little better than the others in that particular use case. They try to be a little bit faster, cheaper or memeier. IOTA took a fundamentally different approach. They first looked at the problems of Blockchains and found a way to solve them. Then they designed a new general-purpose DLT with maximum flexibility in mind.
The main problem of Blockchains is their serial transaction processing. This leads to the crypto trilemma, i.e. one can only choose two of the three options:
It also leads to the problem of having to somehow choose a leader who gets to issue the next block. Since this leader alone can decide what (and in what order) gets included in the next block, this aspect doesn’t really feel decentralized to me (and is also the reason for Miner Extractable Value).
IOTA solved these problems by introducing the Tangle as an underlying data structure that allows asynchronous transaction processing at the expense of a total order of transactions. The Tangle is a Directed Acyclic Graph (DAG). If you want to learn more about its basic functionality and how it differs from a Blockchain, you can check out this article. The asynchronous transaction processing makes Tangle scalable, as multiple nodes can add new transactions at the same time, meaning you no longer need to select a leader. Since there is no longer a competing selection process, the winner of that process doesn’t have to be rewarded either, which means you can get rid of transaction fees. This means that the base layer of IOTA (i.e. the Tangle) is scalable, decentralized, secure, feeless and energy efficient. With the new tokenization framework, you can also create and trade NFTs and native assets on IOTAs L1 at very low cost/deposit (depending on the dust protection). And you will even get this deposit back when you destroy the NFT or send them to L2. You’re basically only paying for the L1 storage as long as you use it and get your deposit back if you don’t want to use it anymore.
What about use cases that require a total order of transactions?
These use cases aren’t supported by the Tangle. For this reason, the Iota Smart Contract Protocol (ISCP) was developed. This protocol allows you to build Blockchains on top of the Tangle. On these Blockchains you can build all use cases that need a total order of transactions, such as fully Ethereum Virtual Machine (EVM) compatible smart contracts. As the issuer of a new Blockchain, you can decide the requirements of the validator nodes, what rewards they get and how many validators you want (as I said, maximum flexibility). Theoretically, you could build feeless smart contracts on these Blockchains. The state of these L2 Blockchains will be securely and immutably anchored in IOTAs L1. This means that smart contracts on top of IOTA can do everything ETH smart contracts can do, with the following additional benefits:
- With IOTAs tokenization framework, you can wrap assets and NFTs from the L2 Blockchains on the Tangle. This means that smart contracs are not only fully composable with other smart contracts on the same chain, but also with all other smart contracts of other Blockchains built on IOTAs L1. And all of that without the need of a trusted bridge. I.e. you have feeless and trustless interoperability of all smart contracts on IOTA. This is not possible with other Blockchains.
- This also solves the scalability problem of Blockchains. If a smart contract on an ISCP chain needs more TPS, you can simply create an additional chain and deploy your smart contract on that chain as well. That should keep the transaction fees low (if there are any).
- Since the requests to smart contracts also come from IOTAs L1, which is asynchronous, the validator nodes have to find a consensus on the order of these requests. The consensus mechanism uses some randomness in this process, which solves the problem of Miner Extractable Value (MEV, see chapter 7.3 of the ISCP whitepaper)
However, since the issuer of a new Blockchain can decide who gets to be a validator, this is a permissioned setup. Many use cases such as DEXes/DEFI applications need a permissionless setup to be trusted.
What about a permissionless smart contract setup?
This was the biggest question for me until the Iota Foundation announced Assembly. Assembly is basically a permissionless network of validator nodes for ISCP. You can set up your Blockchain on top of IOTA, configure your validator requirements and rewards, and request validator nodes from Assembly. Assembly then figures out which nodes meet the requirements and selects a random subset of those nodes as validators. These validators then receive a request to become validators of the chain, and the node owner can decide whether to accept or not. Assembly also takes care of the stake slashing and removal of malicious nodes etc. ISCP is designed in a way that you only need one honest validator node to ensure that your smart contract is secure. This works because everything withing a smart contract is deterministic, so one honest validator is enough to prove that the other validators didn’t follow the rules when they cheat. The honest node can report malicious behaviour to the root chain of Assembly, which acts like a supreme court and can slash the stakes of the malicious nodes. The validator nodes of the root chain consists of validators with the highest trust scores and the largest stakes and are updated periodically.
So Assembly enables you to set up a permissionless Blockchain on top of IOTA, with all the benefits I previously mentioned.
Why I think IOTA is superior to all other DLTs
As I explained above, the asynchronous nature of the Tangle enables use cases that synchronous Blockchains cannot provide. And all use cases where a Blockchain is beneficial can be built on IOTAs L2. If you like Bitcoin or Ethereum, you could build an identical chain on top of IOTA (or even 2 or 3). The same goes for every new use case that might be discovered by other Blockchains. You can always build exactly the same chain on IOTAs L2 and enjoy the additional benefits of the Tangle. This fact combined with my 4 assumptions I mentioned earlier make me believe that IOTA will become the undisputed #1 of all DLTs.