Blockchain and Distributed Ledger Technology solutions are popular – for simplicity, we shall refer to them as blockchains. Every day, new projects are being announced and new organizations turn to blockchains to improve their processes. The range of applications is astonishing, but also raises scepticism with regard to the nature of some of the projects. There are ongoing debates about what constitutes a true blockchain solution, as opposed to one in name only.
These debates are healthy. Firstly, there is a need to converge on common semantics to allow for more informed reasoning and development. Secondly, there it is important to differentiate serious, goal-oriented projects from outright scams, which are causing economic loss and are undermining openness to innovation. We believe a solid understanding of the fundamental function of blockchains can alleviate some of the tensions in these debates and hopefully contribute to more productive collaborations.
We will first outline our view on the fundamental function of blockchains, briefly discuss consensus and finally take a brief look at a few example applications of blockchains before concluding.
When thinking about complex systems, it is often helpful to zero in on their fundamental function: what is the most important goal being achieved by the system?
The fundamental function of the internet is enabling efficient, automised and reliable means of exchanging data between remote entities. Using the internet, anyone can serve and access data. This has opened up a host of new possibilities and is still doing so today. It allows applications to source input data from anyone serving them. Clearly, exchanging data between remote entities was possible before the advent of the internet. However, the internet introduced a new level of availability and robustness, on which a hitherto unimaginable ecosystem was and still is being built.
The fundamental function of blockchains is enabling efficient, automised and reliable means of agreeing on data. Using a consensus system, a set of computers can reliably share a single ground truth. This is opening up new possibilities that are currently being explored in a variety of fields. It allows applications to coordinate data amongst all participants and thereby ensuring they draw upon identical data, both in terms of current state and in terms of revision history. Clearly, agreeing on data was possible before the advent of blockchains. However, blockchains introduce a new level of fault tolerance, automatisation and safety, on which future ecosystems are being built.
Every experienced programmer will – usually upon only the slightest of encouragements – sing the praise of revision control systems, e.g. Git. Such systems efficiently allow for agreement on the state and the complete history of source code across multiple machines and multiple programmers. However, they typically require manual updating of the local copy, manual conflict resolution and manual rebasing in case of failures. In the case of code, this is a feature. Merging other programmers updates is done only when instigated, and what version prevails in case of conflict requires case-by-case resolution. Consensus algorithms automise updates and conflict resolution, enabling a range of new use cases. Furthermore, they provide guarantees in the face of certain failures – e.g. a server crash.
We are witnessing the power of a consensus system enabling a novel application with Bitcoin. Satoshi Nakamoto introduced an elegant Byzantine fault-tolerant consensus algorithm: combining resistance to sybil-attacks through proof-of-work, with a simple incentivised majority vote. It is now known as Nakamoto Consensus and for over 10 years has proven to be able to maintain public agreement on the possibly most contentious and adversarially challenged data – a record of ownership. And Bitcoin is its most prominent application: hard money. A range of other novel and relevant applications unlocked by Nakamoto Consensus have become fruitful subjects of research and development.
There are many more systems for which consensus can be beneficial. For the most part, in far less adversarial environments. For instance, record keeping across multiple parties. Typically, this is done redundantly: every party keeps a separate copy. In case these records don’t match, expensive and hazardous errors in coordination can occur, requiring costly, contentious and lengthy conflict resolution. Consensus allows to maintain agreement on a shared record of transactions, what is often referred to as a distributed ledger. Every party then draws upon identical records, thereby avoiding conflicts.
Supply chains require multiple parties working together in an organised manner, e.g. suppliers of raw materials and intermediate/final products, shipping and trucking companies, people handling cargo, customs officials, redistributors and retailers. Not only are supply chains typically complex, they are heavily optimised to maximise efficiency, while needing to be robust in the face of unexpected calamities. This requires constant reorganisation through new or renegotiated arrangements and contracts, be it with regards to logistics, sales or insurance. Furthermore, events need to be documented in a reliable way, e.g. inspections, hand overs and certifications.
Clearly, supply chains operated by a single legal entity or by a long-standing consortium can involve a level of trust sufficient for a single, centralised record. However, in most cases, the parties involved prefer keeping their own records. While these different records are referring to the same ground truth, they can be inconsistent, e.g. due to miscommunication or input errors. This leads to friction in the system: important records need to be compared on a regular basis, the different parties can’t rely on real-time agreement, inconsistent records can lead to expensive mistakes and finally, settling disputes can be time-consuming and costly.
A solution to this problem is using a consensus system. Different parties can keep their own record – i.e. they don’t have to trust a central records keeper – but consensus ensures they all have identical copies of the same record, thus introducing a distributed and accessible ground truth. Once a new contract or event is recorded, every party involved sees the identical record in real-time and can proceed, confident that there is agreement.
Integrating devices capable of monitoring, communicating and decision taking is key to modernising and improving many systems. Systems upgraded in such a manner are referred to as smart. The range of possible upgrades span from improving the flow of traffic in congested cities, to scheduling charging of an electric vehicle e.g. to coincide with peaks of wind-energy production. The number of devices and the amount of data involved is increasing. Taking informed decisions that depend on the data from multiple sources interacting with each other requires automisation. Blockchains can play a central role in unlocking those improvements, allowing devices to rely on agreement among all relevant actors. Thus, decisions can span multiple parties and ensure that all relevant data are factored in. For example, countering power surges in a smart grid by reducing production or increasing consumption. However, not everyone should act: there needs to be system-wide agreement in real-time on who should act, when and to what extent. This can be achieved by a carefully crafted consensus system.
Governments are handling a large variety and large quantities of data. Among other things they take surveys on, monitor and keep records of citizens, organisations, society and the environment. Some of this data needs to be restricted access, some – especially aggregated statical data – is supposed to be open. Also, governments should be accountable to the public, necessitating transparency for and auditability by the public with regards to what data has been generated and changed, how and by whom. Blockchains with revision control offer a good basis to work from. They allow keeping accessible and tamper-evident records, thereby facilitating data sharing and oversight. Referring to a single ground truth furthermore allows to eliminate duplicates, avoiding potential inconsistencies. Finally, they make it straight-forward to grant specific access rights, e.g. to allow citizens to audit and update data concerning themselves, without having to rely on government employees.
Blockchains can bring new levels of functionality and efficiency to multiple fields and we have taken a high-level look at three examples. Given the right circumstances, their capabilities are unparalleled by other systems. However, ensuring consensus – i.e. multiple parties being in agreement on data – is costly, limits performance and introduces a range of complex challenges with regards to design, development and deployment. Therefore, it is both crucial to meet these challenges and wise to reserve the use of blockchains for problems requiring their capabilities. For this, keeping in mind their fundamental function is important: enabling efficient, automised and reliable means of agreeing on data.
We are happy to assist you in determining the merits of blockchains for complex use cases you may consider and facing any intricate challenges you may encounter.