To see the advantages of IOTA’s distributed ledger technology over the classic blockchain, we first need to understand how the blockchain works in broad terms and why the currently existing disadvantages, disqualify the blockchain for the future IoT.
What problem does the blockchain solve?
This question is best illustrated with the trust problem of the Byzantine generals. In a fictional story, there is a king in a castle defended by 1000 soldiers. This castle is attacked simultaneously by five armies of 500 men each, each army has taken up its own camp in the surrounding terrain and is commanded by its own general. In order to agree on an attack strategy, the generals must communicate with each other, however, the generals do not trust each other because they suspect that some of the generals are traitors.
If at the time of the attack the situations change and a strategy adjustment is needed, a message must be sent by messenger from one camp to another, then the disloyal generals could easily change this message and pass false information to the next camp. Sending a simple message this way is not safe because written text is easily changed. Misinformation could lead to the traitors winning the battle because the different camps attack at the wrong time or not at all.
Nowadays, a conference call or news service could replace the messenger, but the problem still exists. How can you be sure that the message is authentic and not manipulated? Phone calls or emails can be spoofed, for example, interlocutors on the phone could pretend to be someone else and the content of an email could be read, deleted and manipulated.
How does blockchain solve the problem of Byzantine generals?
Greatly simplified, the blockchain can be viewed like a decentralized cash ledger. As soon as a transaction takes place between a sender and a recipient, it is entered into the cash book as a new transaction. There are thousands of copies of this cashbook on computers around the globe, as soon as a new transaction is entered into one of these cashbooks, this transaction also appears in all other cashbooks and is authenticated by the computers on which the cashbooks are stored. A transaction, is not valid and immutable stored in the cashbook until it has been confirmed as valid by the so-called miners (explanation follows).
Blockchains are databases that manage transaction data without a central controlling authority, without the need for mutual trust and with complete transparency, and they do so in a tamper-proof manner. In other words, with the blockchain, you can make transactions directly to another person without relying on the help of an intermediary (bank, company). So, you no longer have to trust a third party that their transaction will actually be carried out.
To illustrate figuratively: Tom pushes money into Mary’s hand, with several hundred people watching. These people confirm that Tom really gave the money to Mary and also how much the amount of money was. The control over this transaction is now in the hands of many and not as before in the hands of one actor, for example a bank. However, only the control over the transaction, who Tom and Mary are, nobody sees, because every transaction participant is anonymous – unless he wants to be recognized.
Projected onto the blockchain, in fact, Tom does not directly press the money into Mary’s hand, but deposits it in Mary’s electronic mailbox, which is also called her “wallet.” A wallet address cannot automatically be assigned to a specific individual. In addition, anyone can have multiple wallets, there is no restriction for wallet addresses.
The classic blockchain roughly consists of the users, the full nodes and the miners.
Full nodes maintain the network, they are computers connected to the blockchain network via a client, they have the task of verifying and forwarding transactions. Each full-node receives a copy of the entire blockchain, which is automatically downloaded when it joins the network.
Since the overall state in a decentralized blockchain is no longer managed by centralized entities, it takes the miners to do it for us. This keeps the whole thing decentralized. The more miners there are, the more stable a blockchain network is and the less vulnerable it is to a 51% attack and thus the takeover of the blockchain.
Miners thus keep the blockchain in an identical “overall state”, they verify whether new transactions comply with the protocol and confirm them. They are responsible for ensuring that no one makes a double-spending transaction or violates any other rules of the blockchain protocol. These activities must be recorded and managed so that they can later be traced by any user.
For this purpose, all transactions that have taken place at a certain time period are summarized within the network in a block (a kind of list) with a fixed size. When a block reaches its capacity limit, it is closed and attached to the blockchain for all eternity. Validation of transactions is done through consensus mechanisms, in the case of Bitcoin it is “Proof of Work”, in order to validate at PoW transaction, miners solve a heavy mathematical problem using computing power.
This leads to the use of enormous energy. The idea behind PoW is to create the longest chain, the chain that 50% of miners are working on is continued. PoW becomes more difficult over time as the computational power required to solve a block increases. The difficulty remains to ensure a constant block time of about 10 minutes.
For these computationally intensive calculations, miners are paid a reward consisting of the transaction fees charged and the block rewards received when a valid block is found and attached to the blockchain. (For bitcoin, it is currently 12.5 BTC every 10 minutes, as of 2019, approximately every four years the block reward halves.)
To ensure the security of the blockchain, the transfer to the blockchain takes place only after the block has been encrypted in the form of a hash (string of letters and numbers), this hash cannot be cracked with today’s computer technology and is currently considered secure. The hash value of a block is a kind of signature that identifies the block as valid. Each newly found block uses parts of the hash from the previously found block. Any retroactive manipulation of transactions already entered in a block would be immediately noticed by the change in the hash value and rejected as invalid.
Upsides of the Bitcoin Blockchain
Transparency: every user in a classic blockchain network can track all transactions. It is a completely transparent system.
Instant transactions: Blockchain transactions take much less time than transactions that require some sort of middleman because they are self-validating.
Decentralization: No single person or entity is in charge over the data network, every participant has the same rights as the others.
The problem of possible Double spending is solved by Blockchain technology: Since a digital form of money is just a computer file, it would usually be easy to counterfeit through copy and paste. Without Blockchain, banks simply track people’s money in their bank accounts, so it is not possible to “double spend” or spend the exact same money more than once. But this is all subject to the control of banks as authority institutions. However, Blockchain solves this issue in another way and even far more efficiently: The blockchain shows all accounts and transactions publicly, so it would be obvious when the same money would be used twice.
Tamper-proof: It has its own authorization and validation mechanisms across all the network. Tamper-proof mathematical hashing makes the data which is locked-in the blockchain absolutely trustworthy. Thousands of nodes take care for validation of every single blockchain transaction, ensuring integrity. There is only this one “source of truth.” The accuracy of the network is ensured as any unauthorized date change gets directly disclosed.
Blockchain technology is a good approach, but….
The idea of decentralized networks enabling peer-to-peer transactions without intermediaries has not been fully implemented, or thought through to completion, to date. There are some shortcomings in the implementation.
For example, Bitcoin Blockchain adoption has been steadily increasing over the past few years, and users were faced with slow transaction times and skyrocketing fees during the boom times (2017 hype). The battle for financial rewards for validating transactions and block rewards evolved into a race for the biggest hash power. This can only be increased with an ever-growing accumulation of computing power.
In order to find blocks, mathematically intensive calculations must be performed; the greater the hash power, the greater the probability of finding or generating a block. In order to remain competitive, or to get a higher chance of block rewards, some players have joined together to form so-called mining pools. These powerful pools have centralized in China because the price of electricity for the required energy is very cheap there.
Other disadvantages of the classic blockchain, using Bitcoin as an example.
- Transaction costs (volatile and sometimes very high, in the boom phase at the end of 2017 over $30).
- High electricity costs for the computationally intensive mining, in Germany the electricity costs (per BTC) are estimated at just under $14,000 (per 1 cent for 1 kWh you have to reckon with about $500), this is also the reason why many miners are located in countries with very low electricity costs.
- Increasing transaction times, meanwhile a transaction takes several minutes (without Lightning).
- High storage requirements, it needs to store the entire blockchain (210GB, April 2019), unless you use Light clients, but they trust another client that has stored the entire blockchain.
- Gigantic mining pools threaten decentralization (3 pools combined have over 51% hash power, Dec 2018).
- Decreasing throughput, with ever increasing blockchain size.
The classic blockchain is currently completely unsuitable for the Internet of Things due to the disadvantages listed. Only time will tell what this will look like in the future, because development will not stand still here either. The industry is already relying heavily on private, centralized blockchains, such as Hyperledger. These blockchains are currently used predominantly for internal workflows and function without a coin. Due to the centrality, significantly faster transaction times are achieved and, from the industry’s point of view, it is important to always maintain control over internal workflows, even if you have to trust a provider (Hyperledger, IBM-Linux).