Today’s CXO is often faced with making decisions before all the aspects of an emerging technology are known. Take for example Blockchain technologies, something that there is a lot of talk about, as well as perceived need, yet still shrouded in mystery. Add to that the intricacies of edge computing and CXOs start to tread in uncertain territories. The potential intersection of edge computing and blockchain deserves a much closer look before CXOs pull the trigger.
Not a Hammer for Everything
Blockchain, which is one in a broad category of distributed ledger technologies (DLT) continues to be the buzz in the tech universe. However, blockchain has its place and is fit for certain purposes. This is the best, basic principle of system design and technology selection that you should use when you consider blockchain as a data store technology.
No, everything will absolutely not be on a blockchain, so let’s kill that myth right here and now. In its current state and any foreseeable future state, blockchain is suitable for certain applications regardless of the types of clustered side-chain architectures you might consider to realize a blockchain of blockchains.
Let’s talk about what blockchain is good for. It is good as a distributed data store architecture that provides a redundant and resilient accounting of transactions across a network of databases. In essence, a blockchain is a network of databases collectively functioning as an uber, redundant ledger. It’s ideal for transactional system resiliency.
While we traditionally account for a transaction using double-entry bookkeeping between two parties and transactional databases that use two-phase commit protocols, blockchains use forms of cryptographic proofs such as proof of work (PoW) or proof of stake (PoS) to solve the Byzantine fault issue that plagues distributed systems. What does this mean? It means that blockchain applications can benefit from theoretical immutability, decentralized administration, and governance of the transactional system, improved security, improvements in security. Of course, all these benefits are realized through the design and nature of the deployment. They are not intrinsic to blockchain technology itself.
In Governance We Trust
One of the most highly proclaimed benefits is that you can trust it. I don’t agree with this notion. Trust is by design and instilled in a system through governance in its use and administration. That requires buy-in by participants of the transactional system in the system, not just the integrity of transactions and data.
Now, crypto pundits will argue that blockchain is self-governed by programs and algorithms. There is some merit to this argument but not enough. Blockchain is just a technology. The applications that are built upon a blockchain are what must be governed whether by a programmatic or societal construct. Again, governance design is essential to the quality of trustworthiness of any application, blockchain based or otherwise.
Let’s take Bitcoin as an example, which is the infamous crypto and widely considered the most successful blockchain application. A fraudulent transaction via a hacked wallet or an exchange will generate an immutable record of theft and fraud. Many crypto investors who have suffered theft have come to the realization that thanks to a decentralized system that is Bitcoin, there is no recourse if you get robbed due to its algorithmic governance. In other words, you can’t trust the system though the Bitcoin implementation of blockchain might be deemed more secure than traditional transactional applications.
On the other hand, your local bank provides fraud protection and central banks insure your deposits. One can argue that traditional payment and banking systems are more trustworthy. I know, a head trip if you take the time to question hypotheticals that may not be true.
Blockchain Applications at the Edge
Here is the thing about the Edge; it is hyper-localized. On-device, or in most on-premises scenarios, blockchain offers few differentiated benefits as a basis for a transactional system. For the most part, most edge applications that do not operate on the public network such as the Internet or a telcos network are typically single-party and don’t require the purported features of distributed ledger technologies such as blockchain. You will likely not deploy the number of nodes that make your blockchain application any more secure than if you used a transitional transactional system architecture.
If you do find yourself using blockchain for a distributed edge application, you are probably looking at permissioned (private) blockchain which are, in simple terms, blockchains that involve a closed network of participants and designated parties involved in consensus validation.
This contrasts with a permissIonless (trustless) blockchain which cryptocurrencies are based on, that is an open or public network that anyone can participate in and get involved in consensus validation (mining). Of course, the ultimate irony of it all is that cryptos have been characterized as more trustworthy though they are literally “trustless” blockchain applications.
So, what is an enterprise to do as it faces the hydra of hype that is blockchain? Here are some simple rules to consider as you contemplate the use of blockchain for your edge application:
- Transactional – Your application is transactional and needs a ledger function to record transactions. Some folks are trying to use blockchain to store content and large blobs of data. These are not ideal applications for blockchain. It might work well as an index for a library but not for storing the content of a book. Remember, blockchain is “ledger” technology.
- Multi-party – If you are the only one using the application or it is for internal use by your organization it is difficult to see why you would need blockchain. Blockchain makes sense if have multiple external trusted parties who you are transacting with.
- Resiliency is important – If the resiliency of your transactional system is important, blockchain presents some benefits over traditional transaction systems and data stores. However, resiliency benefits will highly depend on how your blockchain application is designed.
- Distributed architecture & decentralized data governance – If your application is distributed and it can benefit from decentralized data governance, it could be a more favorable fit for the use of blockchain for specific functions or features of your system or infrastructure such as a policy register, index for content, or access control.
As a systems architect, I would consider using blockchain for distributed edge applications if all four rules were met. Otherwise, the RDBMS continues to be a great database technology to build applications on. Despite many pilots and experiments with blockchain over the years, this is the sobering revelation for many system designers who were told that blockchain was a revolution.
Regardless of whether you use blockchain or not, if your application is business-critical, governance will always important element of trust design. It is a fallacy to think that technology fosters trust. This is simply not true. If trust is your biggest concern at the edge, blockchain is not the answer. It is just an option.
Want more CXO insights? Subscribe to the Future Office of the CXO channel: