Just say the word “blockchain” and you’re likely to get mixed reactions from all kinds of people. Understanding blockchain and how it works at a conceptual level is key to understanding what uses it has and why one would want to use it.
A blockchain is a fundamentally a ledger – that is a list of records arranged in chronological order. Data in the list is stored in “blocks”of data. Each block in the list is inextricably linked or “chained” to theprevious records such that modifying any record in the list will corrupt the entire list. Naturally, the chained blocks are where the name blockchain comes from. This has a few implications. Data on the blockchain cannot only be created and read. It cannot be deleted or updated as with other forms of data storage. Technically, data can be “changed” by creating a new data that supersedes the old data but does not modify or remove the old data.
Blockchains are also distributed, meaning that the data is not centrally stored. In a manner of speaking, all the data on the block chain is communally owned by the participants of the blockchain. Each participant in the system is a node on the network. New data is added to the blockchain and i tgoes through a consensus algorithm that are used to achieve agreement among the nodes on the network about new data addition. There are numerous consensus algorithms which different tradeoffs but they all fundamentally have the same responsibility. Blockchains are sometimes referred to as “distributed ledgers”as it captures both how that storage is shared and the storage mechanism.
Immutable, distributed data is what makes perhaps the biggest motivators for using blockchains possible: eliminating the middle man. By enabling two parties to share exchange data directly rather than involve a trusted third party to broker the relationship. If data can be shared in a way that doesn’t require the third party, then blockchains might work. The beauty of blockchains too is that they by design ensure that agreement is reached among all involved parties agree about what new data is added to the blockchain.
Blockchains are being used for all kinds of applications from the original use case of cryptocurrencies to some more niche use cases like real estate and supply chain management. These solutions all take advantage of the nature of the immutable, distributed ledger to make things happen. For a given use case, choosing to use or not use a blockchain is not always clear. Moreover, a blockchain is rarely, if ever, the only data store that is used for a given application. Rather, it is often used alongside other data stores like traditional RDMS’s.
Choosing a whether to use a blockchain though is not as hard as it may seem. Fundamentally, it comes down to do you need to share data with another party without the need or want for a trusted third party and then handling some possible show stoppers like the flow chart below.
Suppose a real estate consortium composed of brokers, agents, lenders, lawyers, and government agencies wanted to create a blockchain to handle real estate transactions. Such a blockchain would provide a convenient way to share data among all the involved parties without the need for a centralized system to manage it all. Moreover, the nature of the blockchain can store contract states and signage of documents as a transaction progresses from listing, negotiations, contracts, deed transfers, and finally to final sales.
According to the flow chart, the real estate consortium would satisfy the first two decisions with a need to share data and no need for a centralized third party. In fact, the consortium would probably prefer not to have such a controlling faction yet be able to validate transactions at every point in the transactions. Per the third decision, real estate transactions are subject to compliance. Though, the kind of data that is stored on a blockchain would be the same sort of data that would be part of public records. Other more private data should be tokenized and stored on private data systems. The last decision though, the data does not need constant updates but constantly needs new data. This makes real estate ideal for use.
Another common use case would be electronic voting. In such a system, the idea of using a blockchain lends itself well to voting: no one party controls the data, it’s immutable, it’s verifiable, and it’s shared. Voting quickly satisfies the first two decisions. Compliance is an issue with voting to keep voting anonymous. To that end, blockchain does not provide a good solution for ID so this would have to be handled externally. However, because the data is anonymous on the blockchain, then it makes sense to use a blockchain in this case. Lastly, once a vote is cast, it doesn’t change, so moreover voting becomes a real-world application for using blockchain.
To that end, blockchain makes a lot of sense in some cases, but it is not a silver bullet as it is often sold. Before one dives into head first, one would do well to understand the problem he or she is trying to solve, how blockchain works, and whether blockchain is the right technology choice for that matter.
About the Author:
Blaize has been interested in software computers since childhood. He wrote his first program in second grade in second grade and built his first LAN in third grade. Blaize’s career started in high school where he wrote his first commercial software.
Since that time, Blaize has been in may roles in both operations and development, and brings a unique perspective of “having done it all” to projects, whether it be building infrastructure, architecting apps, or getting down in the weeds with wires and code.
Blaize loves photography, reading, writing, and cycling but most he loves his two daughters and wife.
Stewart, B. (2018). To use or not to use blockchain. Available at: https://www.blaize.net/2018/12/to-use-or-not-use-blockchain/ [Accessed: 14th February 2019].