Bitcoin – it is everywhere. Last year was the tenth anniversary of the famous Bitcoin whitepaper by “Satoshi Nakamoto”, but the future of cryptocurrencies remains uncertain as it is shrouded in skepticism and a lack of familiarity outside of the tech community. However, Bitcoin’s underpinning technology, blockchain, has a rather more optimistic outlook.
In a nutshell, the growing number of people and devices in our world has created a need for automation and self-management of the “systems” by which we live. This includes personal systems (e.g. medical records, finances, smart homes), supply and delivery systems (e.g. Amazon, emergency response, National Grid), the data collection systems (e.g. voting, animal population tracking, sensor networks), and so on. The automation of information collection, processing and response in each of these systems is the motivation behind the Internet of Things (IoT). However, in order to provide accountability and security to IoT, we need a suitable security framework – i.e., blockchain. In this article, we explore why blockchain technology could potentially enable hundreds of IoT applications across many industries. Secondly, we take a look at how blockchain works and, finally, an insight to the technical obstacles being faced by blockchain systems and why it may not live up to its hype anytime soon.
“The Future is Blockchain”?
Agriculture, medicine, and renewable energy are a few of the industries where blockchain is expected to make a difference. The vast majority of proposed applications work by using a blockchain network to provide security to an IoT application that would otherwise not be practical or scalable. There’s a growing need for food supply, energy supply, personal data management etc. in the world and we must rely on some level of electronic automation in order to keep up. This automation can be achieved using IoT: which is the idea that devices should be interconnected in such a way that they work together to achieve a common goal without human intervention. Often, IoT networks use sensor devices which communicate over a distributed, wireless network to collect data, process it and respond as appropriate. For example, an e-Agriculture network could monitor the moisture and atmosphere in a farm’s various greenhouses and adjust the irrigation automatically.
Let’s take a ‘blockchain for IoT’ example. Electronic health records became common only around a decade ago in the UK. With blockchain-based electronic health records, it would be possible to set up a private blockchain network between each patient and their GP containing time-stamped and validated medical records. Outside access would be granted by the patient in a strictly controlled and time-limited manner using the blockchain tool ‘smart contracts’. These are software-based, self-executing agreements which automatically check that both parties involved in a transaction have completed their end of a deal. Through these private networks, the patient would have full access to their own medical records at all times and each medical data storage server would no longer a vulnerable point-of-failure for a large number of heath records. If one central server fails, it doesn’t matter because all the patients have their own data.
Blockchain for IoT in a nutshell
Having no single point-of-failure is the main motivation for blockchain systems. Centralised networks have a single ‘hub’ which is , vulnerable to attack or may not be able to keep up in large, dense networks. In a distributed system such as IoT, on the other hand, the devices are free to speak directly with any other device in the network that they can reach. However, without management by a central authority, nodes in distributed networks can make mistakes (e.g. lose data or store incorrect information) and behave maliciously (e.g. by tampering with data or obstructing the general function of the IoT network). Thus, we need a distributed security framework which can support these distributed IoT networks – and that’s exactly what blockchain is: a distributed security framework in the form of an electronic ‘permanent record’.
The idea behind blockchain for IoT is that the blockchain framework adds accountability to an otherwise unregulated IoT network.
Consider the way in which a bank validates its transactions and stores these in a financial ledger to prevent fraud. Similarly, a blockchain is essentially a grouped, chronological list of every interaction between devices in a network. Every network participant stores a copy of the whole chain that they can also read, and the blocks are hashed in such a way that all entries in this list are permanent and interlinked – if someone tries to cheat by altering an old entry, it would have a knock-on effect on later transactions and the change would inevitably be noticed. This results in a scalable network with intrinsic immutability and no single point-of-failure.
When, say, Abbie wants to send her friend Bob 0.0016BTC (= £10), she submits this request to the blockchain network. Abbie’s wallet then signs, pseudomises and submits the transaction. The especially powerful devices in the network, ‘miners’, package transactions into blockchain blocks. Each miner groups Abbie’s transaction with others into a block, and all the miners make a group decision (called consensus) to decide whose version of the block should be chosen and added to the chain. All nodes in the network, including Abbie and Bob, get a copy of the updated block and they then know that their transaction went through.
This process can easily be adapted for IoT applications by, instead of storing monetary transactions, instead storing scientific readings, product details, order history, and so on.
Foreseeable Obstacles to Blockchain for IoT
Despite the optimism, big questions about the practicality and manageability of the applications in the absence of a central authority remain. These questions mainly revolve around how to adapt blockchain, a system which was not designed with IoT applications in mind, to work within the constraints of IoT.
IoT devices tend to be limited in their storage capabilities, processing power and available energy. They are not always reliable – they can fail due to low power or become inaccessible due to channel noise. Furthermore, they rely heavily on the collection and processing of real-time data. With each node storing a copy of the full blockchain, and the blockchain storing a record of every network interaction, this can result in an extremely large storage requirement. Managing the blockchain also creates a significant energy overhead in the network and the ‘Proof of Work’ consensus algorithm that is used in Bitcoin results in a 10-minute latency between a transaction request and the transaction going through. Naturally, where real-time data is required, this is unacceptable.
Prof. Justin P Coon’s group within the Oxford Communications Research Group is doing research on the technical limitations of blockchain in order to identify its scope for IoT. Their recent work looks at how blockchain technology, a computationally complex and demanding infrastructure, can be adapted to run on the lower capability devices available for IoT applications, such as smartphones and wireless sensors. Meanwhile, University College Oxford recently established a Blockchain Research Centre dedicated to better understanding and utilising blockchain.
The Future of Blockchain?
Undoubtedly, the many potential applications of blockchain for IoT would have a positive impact on data security, personal lifestyle, the environment, etc. Meanwhile, the researchers are working towards adapting its framework and protocols such that it can be supported by IoT devices. Moving forward, the success of blockchain technology will rely on a careful intersection between the applications and research, and we will then start seeing blockchain-based systems embedded in our everyday lives.