The blockchain beyond bitcoin
Taking blockchain technology private for the enterprise.
Blockchain technologies have been made popular by the creation of bitcoin, but how exactly can a blockchain benefit an enterprise? A blockchain provides an immutable store of facts. This model delivers significant value in the face of regulatory oversight by providing irrevocable proof that transactions occurred. Some even refer to these uses of a blockchain as enterprise resource planning (ERP) 2.0.
The foundational pieces that comprise a blockchain model are already in place in one fashion or another within most enterprises. They have not, however, been pieced together with the required technology components to produce the benefits of a blockchain. There are three main components required to deliver these benefits: a shared distributed ledger, smart contracts, and consensus.
Shared distributed ledger
This is really as simple as it sounds. The key detail of the ledger is that you cannot go back and change a single item without having to rewrite the entire ledger. This proves useful when dealing with regulatory bodies, as the amount of work required to falsify information is immense—and with proper controls in place, it becomes essentially impossible. The distributed capability is critical to business processes in that it ensures high availability and redundancy for cases such as disaster recovery. The final piece is the shared aspect of the ledger. Consider a two-party agreement and a notary service. If each party has a copy of the contract, either could tamper with it and claim their copy is the correct copy, but with a notary having a third-party copy which cannot be changed, suddenly we have created a case of irrevocable proof. This is a fundamental feature of a blockchain.
The concept of smart contracts
While the initial blockchain implementation (bitcoin) wasn’t intended to deliver a smart contract platform, it inherently contained a mechanism for keeping track of ownership of bitcoins. The expansion of this concept within a blockchain was exposed by Ethereum. But what exactly is a smart contract? To put it as simply as possible, it is a mechanism for ensuring that software can be executed, audited, and prove what it did. Fundamentally, a smart contract can be created with nothing more than a microservice with a trigger event, otherwise known as function-as-a-service (FaaS) or a serverless model.
The concept of consensus
Blockchain implementations rely heavily on the concept of consensus, for this is the determining factor for who can write to the blockchain. For bitcoin, this must be done in a distributed manner so no single person can own the entire blockchain. Within the enterprise, consensus may look a lot like voting or a request for approval and a sign-off approving said request. It could also be a group vote where a quorum is required.
Piecing the components together for a private blockchain
These three components individually exist in some fashion in different parts of an organization, but they have not been assembled into something as well-packaged and overarching as a blockchain. Ledgers exist within accounting systems, smart contracts or FaaS exist within production software environments, and consensus algorithms exist in many places, including within expense reporting systems.
The key for an enterprise is to focus not just on the blockchain concept or isolated blockchain technology, but to understand how to integrate a blockchain’s key components into their environment. I’ll offer three ways to do this. First, focus on the data platform to persist, secure, and protect the important data. Second, leverage containers for flexibility and agility. Finally, integrate analytics to ensure the blockchain is not an isolated ledger, but an integrated and intelligent underpinning of business functions.
The underlying data platform in which a blockchain is built must apply security at the data level. To put this in a more precise context, a private enterprise owns its infrastructure, which means many of the concepts—like proof-of consensus implementations—that are in place in a public blockchain are not required for a private blockchain. The security model is an important and difficult piece of a private blockchain deployment, as it must not be able to be subverted. It is not sufficient to apply security only on read, or only on write—it must be on read and write. The deployment of a private blockchain must be fully auditable. Even the audit records of the system must exist within their own shared distributed ledger. The implementation of the shared distributed ledger must be able to scale and even replicate its information to an external location, such as that which can be managed by a notary service. A remote notary service provides a remote copy out of the purview of even the internal administrators. This notary service copy could be hosted privately or even via a managed notary service in a cloud environment.
A blockchain brings with it a tremendous amount of flexibility, which is critical because within any enterprise, there are normally a variety of disassociated use cases. Each use case would likely involve the use of its own blockchain, leading to a variety of consensus models and smart contracts. Architecturally, this is not complicated because the consensus services and smart contracts can be built and deployed via containers. Those containers can then be orchestrated with Kubernetes (k8s).
If a blockchain is going to impact the enterprise, it must support in-place analytics. If the data must be taken from the ledger and placed into a sidecar database for analysis, then the copy of the data is now in question because it does not have the same controls as the immutable ledger. This makes every report generated from the sidecar database less than perfectly trustworthy. It cannot be irrevocably proven to be truth. Performing analytics in place on the shared distributed ledger is a critical requirement. In addition, that data must be able to be joined with other blockchain applications or even external data sources in order to produce additional reports.
A private blockchain provides many potential benefits for most organizations. The combination of a shared distributed ledger, smart contracts, and consensus can drive business value across industries and application areas. Take a shipping company as an example. In their private blockchain, they keep track of their specialty packing containers. The act of transferring the goods has two points of consensus. The person with the container and the person receiving the container. Each time these containers change hands, both the provider and receiver provide their consent through an end-user application that triggers the execution of a smart contract behind the scenes to show that the packing container has changed possession. The blockchain is, therefore, private with publicly exposed endpoints for application integration. This is just one example of how a blockchain will go far beyond a distributed ledger and serve as an integrated and intelligent underpinning for businesses.