Blockchain: function and disadvantages
In order to understand the advantages of IOTA’s distributed ledger technology over the classic blockchain, we first need to understand how the blockchain works in general and why the current disadvantages disqualify the blockchain for use in future IoT.
Which problem does blockchain solve?
This question can best be 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 its own camp in the surrounding area and is commanded by its own general. To agree on an attack strategy the generals have to communicate with each other, but 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 situation changes and a strategy adjustment is necessary, a message has to be sent by messenger from one camp to another, then the disloyal generals could easily change this message and pass wrong information on to the next camp. Sending a simple message in this way is not safe because written text is easy to change. Misinformation could lead to the traitors winning the battle because the different camps attack at the wrong time or not at all.
Nowadays a telephone conference or a 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 faked, for example, people on the phone might pretend to be someone else and the content of an email could be read, deleted and manipulated.
How does the Blockchain solve the problem of the Byzantine generals?
In simple terms, the blockchain can be considered a decentralized cash book. 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 cash book on computers around the world. As soon as a new transaction is entered into one of these cash books, this transaction appears in all other cash books and is authenticated by the computers on which the cash books are stored. A transaction is only valid and immutable in the cash book when it has been validated by the so-called miners.
Blockchains are databases that manage transaction data without a central control instance, without the need for mutual trust and with complete transparency, and are therefore forgery-proof. In other words, with the blockchain you can directly carry out transactions to another person without having to rely on the help of an intermediary (bank, company). You no longer need to trust a third party to make sure that your transaction is executed.
To illustrate it visually: Frank puts money in Katja’s hand and several hundred people watch. These people confirm the exact amount and that Frank really gave the money to Katja. The control over this transaction is now in the hands of many and not, as before, in the hands of one actor, such as a bank. However, they only have control over the transaction. Nobody can see who Frank and Katja really are, because every participant in the transaction is pseudonymous – unless they want to be recognized.
Projected onto the blockchain, Frank does not give the money directly into Katja’s hand, but places it in Katja’s electronic mailbox, her “wallet”. The address of this wallet cannot simply be associated with one person and everyone can maintain several wallets.
The classic blockchain basically consists of the users, the full nodes and the miners.
Full nodes maintain the network. They are computers that are connected to the blockchain network via a client. They have the task of checking and forwarding transactions. Each full node receives a copy of the entire blockchain, which is automatically downloaded when joining the network.
Since the overall state in a decentralized blockchain is no longer managed by centralized units, we need the miners to do this for us. So the whole thing remains decentralized. The more miners there are, the more stable the blockchain network is and the less vulnerable it is to a 51% attack and thus the takeover of the blockchain.
Miners therefore 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 nobody makes a double spending transaction or violates other rules of the blockchain protocol. These activities must be recorded and managed so that they can later be traced by every user. For this purpose, all transactions within the network that have taken place during a certain period of time are summarized in a block (a kind of list) with a defined size. When a block has reached its capacity limit, it is closed and attached to the blockchain for all eternities. Confirmation of transactions is done by consensus mechanisms, in the case of Bitcoin it is “Proof of Work”. To validate transactions at PoW, miners solve a difficult 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 at least 50% of the miners work on is continued. PoW becomes more and more difficult over time as the computing power needed to solve a block increases.The determined difficulty remains to ensure a constant block time of about 10 minutes.
For these computation-intensive calculations, miners receive a reward, consisting of the transaction fees charged and the block rewards received when a valid block is found and attached to the blockchain. (Bitcoin currently charges 6.25 BTC every 10 minutes, as of 2020. The blockward is halved approximately every four years)
In order to guarantee the security of the blockchain, the addition of a new block only takes place after an encryption of the block in the form of a hash (stringing together 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 kind of a signature that identifies the block as valid. Each newly generated block uses parts of the hash from the previously generated block. A retroactive manipulation of transactions already entered in a block would be immediately noticed by the change of the hash value and would be rejected as invalid.
Advantages of the 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 validate themselves.
Decentralized: There is no centralized manager over the network, all participants are equal
The double spending problem is solved: One of the main advantages of blockchain technology is that it solves the double spending problem. Explanation: Since digital money is just a computer file, it is easy to forge by simply copying and pasting. Without blockchain, banks keep track of everyone’s money in their accounts, so no one can spend the same money twice. Blockchain solves this problem differently and more efficiently than banks: it makes all transactions and accounts public, so it is obvious when money is used twice.
Tamper-proof: There are separate validation and authorization mechanisms across the entire network. Forgery-proof mathematical hash methods make the data in the blockchain trustworthy. Integrity is assured as thousands of nodes validate each blockchain transaction. There is also only one single “source of truth”. Every unauthorized change in the network is directly disclosed, so you can be absolutely sure of its accuracy.
The blockchain technology is a good approach, but…
The idea of decentralized networks, which enable peer-to-peer transactions without intermediaries, has not yet been fully implemented or thought through to the end. The implementation has some shortcomings.
For example, the acceptance of Bitcoin has increased steadily in recent years and users were confronted with slow transaction times and exploding fees during the boom period (Hype 2017). The battle for block rewards developed into a race for the biggest hash power. This can only be increased with an ever increasing accumulation of computing power. In order to find blocks, mathematically intensive calculations have to 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 getting the block rewards some players have joined together to form so-called mining pools. These powerful pools have become concentrated in China because the price of energy there is very favorable.
Further disadvantages of the classic blockchain, using Bitcoin as an example
- Transaction costs (volatile and in some cases very high, in the boom phase at the end of 2017 over 30$)
- High electricity costs for the computation-intensive mining, in Germany the electricity costs (per BTC) are estimated at about 14,000 dollars (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.
- Longer transaction times, currently a transaction takes several minutes (without Lightning).
- High memory requirements, it has to store the whole blockchain (210GB, April 2019), unless you use Light-Clients. Light-Clients trust another client, which has stored the whole blockchain.
- Gigantic mining pools endanger decentralization (3 pools have together over 51% hash power, Dec 2018)
- Decreasing throughput with steadily increasing blockchain size.
The traditional blockchain is currently completely unsuitable for the Internet of Things because of the disadvantages listed above. How it will turn out in the future will be shown by time, because the development does not stop here either. The industry already relies heavily on private, centralized block chains, such as hyperledgers. These blockchains are currently mainly used for internal workflows and work 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 keep control over internal workflows, even if you have to trust a provider (Hyperledger, IBM-Linux).
Last Updated on 4. March 2021