After relaunching in March 2021, today IOTA is releasing a beta version of its smart contracts implementation, with a few notable features such as zero fees, Ethereum interoperability and compatibility.
Smart contracts are programs stored on a blockchain that run when predetermined conditions are met. You can think of them as code with crypto guarantees and security, and they power some of blockchain’s most advanced functionality, such as DAOs and DeFi.
We caught up with IOTA Foundation co-founder and CEO Dominik Schiener to discuss the rollout, as well as progress made since March 2021.
The new IOTA
Schiener described the transition to Chrysalis, IOTA’s network upgrade, as “a huge success”. IOTA now has a completely new protocol, implementation, and cryptography, but all token holders were on the old network. So an interoperability solution had to be developed to enable token holders to move from one network to another.
This is called a bridge, and Schiener said that so far more than 75% of the total IOTA supply was bridged from the legacy network to the Chrysalis. That’s over $3 billion worth of tokens, and successfully and securely migrating to the new network was no small feat. The new network is running smoothly, transactions are confirming in less than 10 seconds, and the Firefly wallet has been a big success too, said Schiener.
Having 75% of the total tokens in circulation transition to the new network in 6 months sounds good, but what about the rest? Schiener noted that if you think about it, a network currency like IOTA is deflationary, and users might lose access to their keys or otherwise lose access to their tokens.
According to Schiener’s estimation, a total of 85% of the tokens will transition to Chrysalis. For the rest, token holders will get to decide what happens. People will be able to vote, not just for this but for all governance decisions, via their Firefly wallet. One vote for one token, which is the simplest, fairest and most secure way to do this at the moment, as per Schiener.
Schiener added that Coordicide, i.e. the removal of the coordinator node in the network that helps in the validation of transactions, is also going well. A development network is running, and the insights gained from this are used to improve the implementation. The goal is to be able to present a path towards general availability to the community before the end of 2021, Schiener said.
The other major blocks of the new IOTA are also in good shape, Schiener reported. That is, rate control, i.e. determining which transactions among the ones issued are preferred via a token called Mana, and oracles, i.e. the ability to bring data from the outside world to IOTA.
Project Alvarium, which is a collaboration with Dell Schiener referred to as an IoT oracle, was just admitted as a Linux Foundation project. In addition, IOTA is working on another solution based on digital identity, which will be generally available by the end of 2021 too.
IOTA aims to address digital identity, Schiener said, as one of the big problems today is if you do digital entity on Ethereum for example, you have to pay transaction fees. Logging into a website or a service shouldn’t cost money, and IOTA hopes to address this, Schiener added.
Smart contracts with zero fees, Ethereum interoperability and compatibility
Progress seems to have been made on all fronts, but the main course is smart contracts. Schiener acknowledged that IOTA is late to the smart contracts market. Ethereum has had that since 2015, and so has Polkadot. IOTA has been focused on making the base layer, i.e. the ledger, work as efficiently as possible, including making it feeless:
“For the last two years, we’ve been working on this new approach to doing smart contracts on top of IOTA. So far, everybody realized that doing smart contracts with the DAG as a blockchain simply does not work because you need to have the transaction ordering, plus there is some timestamp complexity. So the smart contracts with blockchain are the most feasible way right now.
What we are actually doing with our smart contract solution is we are launching blockchain networks on top of IOTA. IOTA is this DAG, this directed acyclic graph. We now have blockchain networks on top that utilized to execute smart contracts, and they are leveraging the base layer, which is IOTA, for security,” said Schiener.
Schiener highlighted the interoperability aspect of IOTA’s smart contracts. This means that one smart contract is able to communicate with another smart contract by, for example, transferring assets from one blockchain network to another blockchain network. What IOTA does is it spins different networks on top of its base layer, using sharding, and the smart contracts that run on those networks can talk to each other.
That’s a very different approach to what Ethereum does, where everything runs in the same network. The way to think about this is that there will be different types of blockchain networks, Schiener said. For example, there might be one main open network where anybody can deploy a smart contract. But if you want to use another network with different characteristics or even spin out your own, that’s also possible.
That also includes the fees each network charges; each network is able to define its own fees. With Iota smart contracts, you can define how much you want to charge for transactions, potentially even making it feeless by providing the right incentives, Schiener said.
What is happening with other networks today, for example Cardano or Polkadot, is that there are validators are securing the smart contracts. Schiener believes validators there aren’t really incentivized enough to compete with each other. “What we want to do let you as a smart contract developer define the incentives that you will give to a validator”, he added.
Last but not least, IOTA’s smart contracts are compatible with Ethereum’s Virtual Machine (EVM). This is the current industry standard, and developers can write smart contracts using Solidity, Ethereum’s programming language for smart contracts, Rust, or Go.
Another feature of the IOTA Smart Contracts Beta is the Smart Contracts Schema tool, which helps automatically generate boilerplate code for many of the standard-form sections of a smart contract.
Schiener also emphasized scalability due to sharding and ease of use. In terms of applications, he mentioned there are already a few, mostly in gaming, and NFTs, with tokenization and DeFi as the next big goal. IOTA’s open source community has developed all existing applications.
Overall, IOTA’s approach to smart contracts looks promising. Schiener mentioned that IOTA’s strategy is not to directly compete with Ethereum, which is the market leader at this point, but rather to offer an onboarding path for people to try out IOTA’s smart contract features. It seems like a pragmatic approach, and the combination of zero fees, interoperability and compatibility makes this an interesting choice for developers.