One of the core themes of the Internet of Things, or IoT for short, is this idea of cheap sensors collecting data about our devices and the world around us and making that data available to us over the internet. Over time, the number of IoT sensors streaming data to the internet will eventually number in the trillions.
IOTA was designed with this in mind.
First, some terminology. “IOTA” is both an organization as well as a cryptocurrency. “Tangle” is the distributed ledger and protocol on which data and transactions are stored immutably and cryptographically. IOTA transactions are stored on the Tangle. Sensor data is stored on the Tangle. Y al cryptocurrency, or do things like buy access to sensor data that is stored on the Tangle. More on that last part in a bit.
Tangle has some unique characteristics, but the first thing to understand about it is that is it not a blockchain in the traditional sense. When most people think about traditional blockchain, they think about blocks of transactions, stored sequentially, spaced out in time, with each block building on and referring to the previous block:
Tangle “looks” quite different:
What you’re seeing here is called a directed, asynchronous graph (DAG) representing each individual transaction. You’ll notice that each transaction references exactly two other transactions to the left.
The topic of how and why this works is the subject of another blog post. However, it’s important to understand that these fundamental structural differences between blockchains and the Tangle are what drive its pros and cons.
Transaction fees: There are none, sort of. The cost of writing to the Tangle is performing proof-of-work on two other transactions. There is no “gas” cost or needing to “tip” miners in order to get your transaction faster. In fact, “mining” isn’t even a thing for the Tangle. There isn’t a need for it.
Extremely small transactions: Because there are no transaction fees of any kind, you could efficiently send a little as one IOTA, currently worth $0.0000016 to somebody else (a MIOTA is one million IOTA, worth $1.62). This is not at all the case with most other blockchains, which at various times can have rather high transaction fees. For example, late last year, if you wanted your Bitcoin transaction to go through within 24 hours it would cost over $20 worth of transaction fees at times of peak load. This brings us to the next point.
Scalability: The fundamental bottleneck of normal blockchains like Bitcoin or Ethereum is the time it takes to achieve consensus by creating new blocks. The Bitcoin blockchain can only handle 3-4 transactions per second. Ethereum, around 15-20. To date, Tangle has seen transaction spikes well into the hundreds of transactions per second. However, it theoretically scales infinitely as larger and larger numbers of devices are writing data.
Lightweight: The core idea behind Tangle is that even devices with very low computing power, like a toaster, can write data to the Tangle, and therefore perform proof-of-work in a reasonable amount of time. How this is achieved gets into “snapshotting”, which is the subject of another blog post.
Data Marketplace: IOTA gives you the ability to sell your data by giving people the ability to subscribe to your data for very small amounts of money. This is a powerful concept, given that one the biggest limiting factors for machine learning and AI applications is access to quality data.
“Quantum-secure”: A common criticism of blockchains, in general, is that quantum computers will be billions of times more capable of performing hashing algorithms than classical computers. This means that it will be trivially easy for a quantum computer to achieve a 51% attack against a typical blockchain network. IOTA claims to be “quantum resistant” because it uses "trinary," or balanced ternary computations instead of the standard binary computations performed by classical computers.
Smart Contracts: These don’t yet exist for IOTA/Tangle, and it’s a gigantic drawback for developers. In fact, the lack of smart contracts will be a showstopper if you want to build any sort of Decentralized Application or “DApp” with IOTA. However, the IOTA Foundation is actively working on building a smart contracts layer on top of IOTA core, which is slated to become available at the end of 2018. Here’s hoping!
Vulnerability: While there have been no publicly documented successful attacks against the Tangle, a common criticism is that it’s mathematically easier for malicious nodes to attack it. For example, it only requires 34% of the total hashing power to successfully attack the Tangle, versus 51% for Bitcoin or Ethereum, etc.
Given that Very specializes in data science, IoT, and blockchain — IOTA and the Tangle are fascinating to me. Extrapolating out into the future, I can imagine a world in which hundreds of billions of sensors are streaming data continuously to the Tangle, and we could subscribe to all of the relevant data streams necessary to develop excellent machine learning models based on very large data sets, even for brand new AI startup clients who don’t yet own any data. IOTA could potential enable us to leverage all three of our specialties at once for any given project!
Today, the Tangle is a great tool for storing sensor data and making it publicly visible, and we will be experimenting with it over the coming weeks and months. However, for most DApp developers who really need smart contracts in order to execute their vision, IOTA isn’t quite the tool for the job, at least at this point in time.