Javier Castro - Fotolia
I have read many articles and generalized argle-barg on the topic of blockchain and cryptocurrencies, and a couple things stand out: Nobody has a great definition for either, and the two are often so thoroughly conflated that most attempts at cogent definitions are pointless..
Nobody seems to agree on what a blockchain is -- or isn't -- except in some loose, arm-flapping way. That lack of understanding represents one of the most significant challenges of blockchain. Cryptocurrencies are mostly understood in that "I'll know it when I see it" way, where we agree on a vague idea without understanding the core of the idea. If you ask the average person about blockchain or cryptocurrencies, and to the extent that she is aware of either, the answer you'll probably get is simple: bitcoin.
Conceptually, of course, the idea of a blockchain is like the idea of one of its main components: cryptography. Cryptography is understood as a monolithic thing in only the most abstracted macro sense possible, where different types of cryptography -- among them symmetrical, asymmetrical or public key -- are all implemented in vastly different manners.
Blockchains are the same: The bitcoin blockchain underpinning the popular currency bearing its name is not the same as the Ethereum blockchain upon which the cryptocurrency Ether sits. And this is where not having good definitions of what we're talking about hurts the larger conversation around how this technology can add value outside of currency applications.
What are the challenges of blockchain in an evolving marketplace?
At its core, a blockchain is a distributed system of recording and storing transaction records. Think of it as a superdatabase -- one where each participant maintains, calculates and updates new entries. More importantly, nodes work together to verify the information is truthful, thus providing security and a permanent audit trail.
So, with that concept in mind, we can broaden our understanding of the technology. Ethereum wasn't designed as a one-trick pony to run a monetary application like its bitcoin cousin; rather, it's more of an application platform, using virtual tokens in the place of cash. Instead of simply trading currency, one might trade cat videos, for instance.
And if those cat videos were traded on a blockchain platform, everyone would be able to verify who first introduced a particular video into the system and each person who modified that video or reintroduced a bad copy. You could have the most distributed and verifiable cat video platform ever created. Luckily, there are many more use cases for this technology than just a cat video distribution platform.
In world of medical records -- or, for argument's sake, network configuration changes -- we see a unique opportunity to improve many aspects of the use, transfer and security of those records.
What if we could guarantee the records introduced to the system are authentic? Note that I didn't say accurate, because you can easily authenticate bad data when it's introduced to a system. But let's say we introduce our records, and they are accurate.
We go to a new doctor who would normally need to have paperwork from us to authorize the retrieval of those records, and transferring the records often takes longer than would be ideal. Waiting for the requesting doctor to send the forms to the records' holder and get a response back can take significant effort. And even if the systems are the same, with easy access afforded to the requisite records, those records could have been tampered with or have errors and incomplete data.
The same thing could happen with a blockchain-based system, but there would be a distributed record of the tampering -- something that would be all but impossible to hide. In this way, your records could be made available to everyone with a reason to see them, with each view, change and movement recorded in a permanent and tamper-resistant system.
There are challenges even beyond the implementation of our hypothetical configuration system on top of blockchain. Disparate systems would have to be combined into a ubiquitous and fairly homogeneous platform. There would have to be standards applied to the introduction of data in the first place: Bad data in; bad data out. But, in this case, it would potentially become a permanent fixture. There are also challenges in the blockchain implementation itself -- the applications on top of it notwithstanding.
And those challenges are substantial.
Adding more nodes and records makes the ledger more complex
One of the challenges of blockchain is in its very nature: the distributed ledger. Because every endpoint has to have a copy of the entire blockchain, and that blockchain is constantly growing as more things are added, the system gets slower, taking up more space. If the same sort of system was implemented under a medical records system, you can see where it would become untenable very quickly.
Each blockchain implementation is different, but derivative, so this is a problem that is likely fixable. But it has to be accounted for in the beginning. Different implementations have already begun to solve this inherent weakness.
That brings us to another issue: Changing blockchains after the fact is not an easy task. Imagine a time where our network configuration data sits on a system in which a significant bug is found.
How does that system get patched? How does the blockchain adapt? And how do the requisite changes affect the integrity of the records' data sitting on the system? These are difficult problems to solve, and they're even harder to anticipate upfront. Most of the major blockchain implementations have gone through some amount of retrograde "shoulda-woulda-coulda," and it's likely we'll fail to anticipate every possible problem in the initial rollout of any system.
Networking and the challenges of blockchain: Can they be overcome?
Blockchain technology, as it applies to networking, is very much a work in progress. GlobalData analyst Mike Fratto rejected blockchain technology, saying the ledger is "untested, unproven and overly complex, making it unsuitable for networking."
While I disagree with Fratto's assessment in a broad sense, I have to agree that today's applicability of the technology to networking is just not there. Where I disagree, however, is in the assertion that there is no need for it, or that it cannot, or should not, ever be applied to the problem of network management.
I was prepared for the inevitable conclusion there are no viable production-ready blockchain implementations out in the wild. Had I come to that conclusion, however, I would have been almost entirely incorrect. I have talked with several large companies that are either developing or actively using blockchain technologies of one type or another -- most seem to be based on the Linux Foundation's Hyperledger platform, in close orbit with IBM. Most of the applications I was able to get information on are related to supply chain security in one way or another.
Tracking the ingredients used in a product from field to store shelf is one popular example. Securing critical manufacturing parts from creation through shipping and onto final build is another. These use cases are not from hyperbolic tech startups or boutique manufacturers; they are from large, established, blue-chip and Fortune 500 companies not given to flights of fancy in their supply chain. As these installations become more widespread, I imagine we will start to see more published case studies, leading to more installations. For now, however, a lot of these remain in the shadows, happily ensconced behind nondisclosure agreements.
The hype today may be all around the various cryptocurrencies that exist in the market, from the bitcoins and Ethers of the world to the nascent and opaque world of boutique vanity coins. The real excitement and potential lies not in the coins, however, but in the application of the underlying technology -- including overcoming the challenges of blockchain -- to everyday IT challenges.