From the day the conceptualization of internet has begun there have been lots of thought put together on how data has to be spread across the network. I see this as network evolution and today we are here finishing one full circle of where it all started.
Distributed data in a network – > Centralized network -> De-Centralized network -> Distributed network
However, there is a lot of difference between the distributed network of those days with the distributed network that is being placed ahead of us. There are many enhancements like improved security, low latency data access, highly impossible data breach, etc.
In the modern day distributed networks, copy of data is distributed and resides at every single node which are participating to be a member in this network. This helps in 2 important things –
1-> Highly impossible for any missing data unlike centralized systems where all the data are stored in a single data center
2-> Reduction in the cost of scaling up memory at a single site to store all data
These modern day distributing model lead to architect ‘Blockchain’
So, What is a blockchain?
Blockchain are blocks of data connected through a chain. Blockchain can easily be compared to singly back-linked list where each node in the list has reference to the previous node but not the next node in the list. Every node in the list has pointers to the previous node and this chain is growing and continuous. This is the simple theory behind blockchain.
Blocks contain 3 parts to it –
-> Data – These are transactions or useful information that are hard to be tampered
-> Hash – Reference address of the current block
-> Previous Hash – Reference to the address of the previous block
Blockchain structure –
The first node in the blockchain is called genesis block and this do not have any reference to the previous block. In the process of adding blocks to blockchain there may arise a ‘blockchain fork’ situation where 2 or more blocks try to extend the block at the same time. This situation may be solved by re-converging the network on a new longest chain.
PoW vs PoS –
To add a block to blockchain you will be presented with a challenge/puzzle and this has to be solved. proof of work demands lots of energy to solve the puzzle. Proof of stake is an alternative to the Proof of work problem. Here the blocks are chosen in a deterministic way depending on the wealth of the bock or also called as stake.
There are many alternatives to the above mentioned ‘proof algorithms’ like
1-> Proof of capacity
2-> Proof of authority
3-> Proof of elapsed time
Smart Contracts –
Smart contracts are small programs that reside within each block. These contracts are auto triggered based on IF-THEN situations. This eliminates middleman in any transactions. This also enhances trust as everyone else are watching the transaction in the network
Various industries are already trying to adopt blockchain
How can IoT take advantage of Blockchain?
-> Achieve Edge Network –
Decentralized network of IoT devices using blockchain. Decentralization helps in delegating business logic from cloud towards edge network.
-> Achieve Low Latency –
No centralized location to handle device communications. This will reduce latency.
-> Achieve device management and monitoring –
No gateways to monitor IoT devices in the network. The devices in the network can monitor another peer device in the network.
Having all the advantages that blockchain might add to the IoT network still some of the below things in my opinion needs to be addressed –
51% attack problem – Blockchain works through consensus and if the 51% of the nodes in the network conclude to change a transaction in a block, that change will be accepted and is valid. A home or small private IoT network is not widely physically distributed. This can be easy for an intruder to hack the network by winning the 51% consensus.
Higher computational capability – Generally blockchain proof of work takes higher computational processing to add data to the block. This kind of higher processing might not be possible with the IoT devices which are mostly low powered sensors.
It might be too early trying to fit blockchain for IoT. Both the digital concepts are still not in full scope and yet to be matured to be adopted completely.