Blockchain has a good competitor – Tangle, there I said it!
The world has been very busy with bitcoins, cryptocurrencies and the technology that drives them all – blockchain. I find there are blockchain start-ups coming up, there are research papers being published, and organizations doing proof-of-concepts or POCs to use the technology to drive their business growth and transparency, to make systems better than what they are.
Demerits/Issues with Blockchain
So before I dive into what a Tangle is and what IOTA does, let me point out some of the demerits of the blockchain. Once you know the limitations, it will be easier to appreciate the Tangle and the technology that drives it.
Miners are a very important stakeholder when it comes to blockchain. Miners are responsible to verify transactions and create new blocks. Without them, the blockchain system fails.
The more the miners, the secure is the system and thus, more better!
But miners come at a cost. There are multiple blocks of transactions that need to verified at a given time. At the time of writing this post, there are more than ten thousand (10000) unconfirmed transactions on the bitcoin network.
You might be wondering why? While some of these unconfirmed transactions will be verified, there will be others that may not ever get verified. You must be wondering why. So here’s a short recap to help you understand.
Miners do a lot of hard work to verify a given transaction as valid or invalid. A lot of power is consumed in the process. To compensate for this, every block carries a price, also called “gas”. Miners who successfully validate a block are paid in cryptocurrency (in this case bitcoins).
To earn profit out of this hard work, most miners select blocks that provide a higher transaction fee. So naturally blocks that have a lower transaction fee are not selected by the miners and remain in the system as unconfirmed transactions.
So what you need to remember here is that to transact on the blockchain, you need a fee to be paid. To put it more accurately, you need to pay a comparatively higher transaction fee to get your block verified on the blockchain.
One of the major problems that is plaguing the blockchain system right now is scalability.
Right now, the number of transactions possible through bitcoin per second is between 3 and 6. If you consider Ethereum, it is between 15-20 per second.
Paypal processes close to 200 transactions per second, while VISA does more than 1500 transactions per second.
As you can clearly see from the data provided above, scalability is a short-coming in the blockchain system right now. For a technology that wishes to operate in a transaction and data driven world, blockchain would need to at least match the transaction volume per second of VISA, if not exceed it.
Go Back to Contents
IOTA Tangle Explained
What is IOTA?
IOTA was developed to address these very two demerits of the current blockchain ecosystem. IOTA went live in July, 2016 and follows the distributed ledger technology and ensures decentralization.
IOTA enables micropayments through which fraction of money can be transferred over the network faster, securely and without any additional fees.
It is efficient, secure and light-weight, open-sourced, decentralized and is specifically designed for Internet of Things.
The cryptocurrency used in IOTA is MIOTA. MIOTA stands for Millions of IOTA.
All IOTA tokens are premined and, as no mining is needed, no new coins are added to the system.
In order to effectively enable micro-payments, 2779530283277761 IOTA were created. This enables transactions with minimal amounts of value.
What is Tangle?
Tangle is the technology behind IOTA that depends on DAG. DAG is Direct Acyclic Graph.
DAG has two major components – sites and edges. Sites are the blocks the hold information, and edges are links between two sites/blocks.
“Direct” means that the edges have a direction, they are directed. “Acyclic” means that you cannot create a loop within the structure, which makes them non-circular.
The below diagram shows a simple tangle or DAG as used in IOTA.
Each site contains details of transaction which includes details of the sender, receiver and the amount of coins being transferred. In the above diagram they are represented as blocks in blue, green and brown.
Two incoming edges make a site valid. In other words it means that the transaction represented by the site is correct. All sites colored green are confirmed and valid.
For the diagram above, site B is confirmed by G and F, while site A is confirmed by site C and site D and site C is confirmed by site D and site E.
Near the end of the Tangle, you will find few transactions that do not have two or more incoming edges. These are unconfirmed transactions and are also called tips of the Tangle. All sites colored brown are unconfirmed.
Go Back to Contents
How Tangle Works in IOTA?
Now that you know how a Tangle looks like and what are various components in it, let me briefly explain how the Tangle works in IOTA.
Whenever a new transaction is requested and is passed to the network, it has to validate two tips. If you remember, as I just discussed, tips are unconfirmed transactions or sites.
Since there would be many tips at a given moment, an algorithm is followed to select two tips. The algorithm followed is called Markov Chain Monte Carlo.
Markov Chain Monte Carlo is a technique to solve the problem of sampling from a complicated distribution.
The validation of these two tips are done through Hashcash Lite, which is a lighter version of Hashcash used in bitcoin and other cryptocurrencies.
If one of the tips is a fake transaction, it is ignored and a new tip is selected.
For every transaction added, two other transactions are validated. This makes it scalable and ensure that the network does not slow down. It actually speeds up the network meaning the more number of transactions, the faster is the validation.
In IOTA, every user is the miner helping to validate two other transactions in order to validate his own.
Go Back to Contents
How can you know that you can trust a transaction in IOTA?
In traditional blockchains, people use the number of confirmations to check whether or not a block should be trusted.
Along with the transaction details, a site also contains a weight and a cumulative weight in IOTA.
The weight decides the amount of work done that needs to be done for the transaction. The higher the weight, the more work or time required to validate the transaction.
Cumulative weight is the addition of the given site’s own weight and sum of weights of all the transactions that approve this transaction.
Take a look at the diagram above. For the site in pink, the weight is 1 (same as that of the other sites in the Tangle). The cumulative weight is 6 as shown by the green edges and sites above.
For the entire Tangle, the cumulative weights would be as shown in the picture below
IOTA’s Hashcash Lite
Proof of work is important to prevent spamming attacks. It works by using Hashcash which includes solving a simple puzzle. The computer has to guess an alphanumeric code called the Nonce. Hashing power defines how quick and how well a puzzle is solved. For faster processing, more computing power is required.
In IOTA’s case, a lighter version of Hashcash is used. This is called Hashcash Lite. This makes it possible for all sorts of devices to use IOTA’s platform.
Tangle vs Blockchain
Let me now compare the Tangle and the Blockchain.
Both the Tangle and the Blockchain are based on a peer-to-peer (P2P) network and validation mechanism.
Both are decentralized ledger and have no centralized authority. This means data is present on every participant’s device.
Differences between Tangle and IOTA – Benefits of IOTA
The following are the difference between the two.
Blocks and Chains
In blockchain, you have blocks and each block is connected to another through a chain. The structure is linear.
In IOTA, the blocks and chains are replaced with sites and edges forming a Tangle.
One of the most important participant in the blockchain is the miner. The miner is responsible for validating transactions bringing in security to the network. The miners are compensated through transaction fees as I have discussed previously.
However, in IOTA there are no miners. It merges the user and validator with the same identity. Whenever a user (or a device) makes a transaction, and broadcasts it to the network it has to validate two previously made unconfirmed transactions.
This is an inherent protocol in IOTA. Since you are already helping validate two previously made unconfirmed transactions, you do not have to pay any fees. IOTA comes at zero cost.
IOTA is insanely scalable unlike the blockchain. The more the number of transactions, the more secure and faster the system is.
In a blockchain, the scalability reduces with more participants. However, in blockchain the more the number of users, the faster and better it is.
In a Blockchain you would need to download a full copy of the chain before you can start adding new transactions.
The current size of the bitcoin is more than 156000 MB which comes to more than 152 GB of data. Not every device is capable of download this huge chain of data. Also the time required to download it would be huge.
IOTA does away with this need. To make a transaction on the IOTA, you would not need to download the full Tangle. Only a small part of the Tangle needs to be downloaded to create and validate transactions.
This makes IOTA much more future proof.
Hard Fork and Soft Fork
Blockchain has hard fork and soft fork capabilities which IOTA does not have.
I have already pointed out before that IOTA does not require you to download the entire Tangle to create a new transaction. It just needs to download a sub-Tangle.
These sub-Tangles can reattach to the main Tangle when the node comes online. This property offers a good promise to applications in different industries that where the nodes do not need to be online 24×7.
Applications and Use Cases of IOTA
IOTA will find major application in IoT which is the future.
IoT (Internet of Things)
IoT is the inner networking of machines and software that use network connectivity to enable these devices to communicate among themselves and exchange data.
IOTA is considerably light-weight as compared to Blockchain. This makes it possible for devices to connect to the IOTA network and perform transactions, micro-payments, etc.
Imagine a car with its own wallet that can automatically pay for parking space using the IOTA system.
Cities and municipalities will adopt IoT technology to make life more convenient, energy and cost efficient.
For example, the municipality of Harleem partnered with Xurux and ICTU to develop a Proof-of-concept to verify legal documents within public registers using the IOTA.
IOTA in hotel industry is an interesting use case. For example, there are working terminals working on the IOTA layer.
These terminals are called the IOTA Hotel Point of Sale and Reservation Terminal which includes a wallet, and provides reservations and loyalty points.
Other Use Case
Imagine a desktop computer that is lying idle and so sells its hard disk space or CPU processing power on the IOTA layer and earns MIOTAs.
Go Back to Contents
IOTA for Developers
If you are a blockchain enthusiast and is eager to learn how to develop on the IOTA platform, you can use the IOTA Sandbox.
The IOTA Sandbox is here for developers and provides them tools, utilities and environment for “just code” and all these is entirely free.
You don’t need to download anything, or set up your PC or app. You can just code.
The Sandbox is important because IOTA is open source, so anyone can participate on development. IOTA needs more developers who build core and apps to grow the ecosystem and make it world-wide.
Other libraries include the ones for Java, Go and C#.
Go Back to Contents
Current Issues with IOTA
IOTA has several advantages over Blockchain, however it has several issues in its current form:
Lack of Smart Contracts
IOTA does not have smart contracts. In a blockchain, smart contracts are transparent and can be audited/verified by any one in the network since it is immutable.
Smart contracts, in case of IOTA can be made centralized. This can be the case when the application is in-house in nature and does not require immutability.
In case of bitcoin, if 51% systems fail, the network can become corrupt. With IOTA, it’s easier.
If one-third of the nodes in the IOTA fail, the system can be compromised when some one with a mass of systems take over the network.
To prevent this from happening, IOTA has what it calls “Coordinator”. As I have already discussed previously, the more the number of transactions, the more secure the IOTA system is. Since currently, the number of transactions are not that huge, the Coordinator is in place to ensure that the network does not stop working or it is not compromised.
The presence of Coordinator brings a certain degree of centralization to the system, but IOTA has plans to put it off in 2018 which many experts doubt.
IOTA’s philosophy is clear – provide a light weight, decentralized and zero transaction fee platform that is capable on running on any devices.
This is more than just another cryptocurrency and aims to establish a whole new type of economy based on sensor-related information thus providing access to a huge amount of data.
IOTA is warming up for becoming the base-protocol for a trillion-dollar industry.
IOTA is still a very young platform when compared to leading cryptocurrencies and platforms like Bitcoin and Ethereum. The platform requires more kinks to work out and the owners, volunteers and team at IOTA is working hard to work them out.