Smart Contacts : We all know that the Blockchain technology is the underlying platform for emergence of Bitcoin and crypto currencies. Because of it’s secured distributed database and associated philosophies like immutability makes blockchain a growing technology with the increased adoption by various verticals, especially finance, Governement .
However the industry finding the biggest use of Blockchain technologies in the form of Smart Contracts. Smart Contracts are software defined version of existing paper based contracts, in the sense that they are basically set of compiled code that runs inside a block chain network. By inheriting the qualities of blockchain like distributed leger, cryptographically signed, immutability etc.. , smart contracts enable enterprises to get into trust based legal agreements which reduces the cycle time of business operations and reduce the cost of executing them.
Consortium Blockchain Network: As evident blockchain technologies and smart contracts facilitate the execution of business agreements between two business entities, however in a typical business use case there are a set of players that involve as stake holders with respect to that transaction. Hence it makes sense that blockchain network is not just built with 2 members, but with a set of like minded organizations who are the stake holder in that particular transaction. Some of the examples being.
· Set of financial institutions manage common contracts like customer’s KYC details or manage inter bank transfers to prevent activities like money laundering.
· Health care providers, insurance agencies, Government Welfare bodies share patient treatment information to prevent fraud and to improve the quality of health care.
· Manufacturing, Logistics, Part OEMs share supply chain related smart contracts for best utilization of inventory management.
At its simplest form a consortium network is also a Private blockchain network, however considering the involvement of selected stake holders it is correct to use the term Consortium blockchain network.
Smart Contract Management Platform: As enterprises adopt Blockchain in to their landscape, especially with their participation in consortium networks, they require additional layer of management solution on top of the base blockchain layer. This layer is termed as “Smart Contract Management Platform” (SCMP). A SCMP is defied as a additional layer on top of the base underlying block chain network, which provides a business friendly features for enterprises to pilot,adopt, execute and expand their smart contract initiatives. SCMP also help enterprises to add additional features and usability aspects to smart contracts which are not available in the base technology itself.
The following are the key features of a SCMP which makes them useful from an enterprise context.
One Enterprise Part Of Many Private Consortium: Due to the very nature of consortium blockchain
network consists of interested stake holders, it is quite possible that one enterprise will be part of multiple private consortium networks. For example a health care provider may be part of a healthcare consortium to share the patient treatment and insurance claim information and at the same time the same enterprise can be part of a vendor network that supplies hospital equipment for better transparency. There is no need for these two set of information exists in the same blockchain network. However a SCMP can help a health care provider to manage both of these networks seamlessly. So that business users can submit transactions, view transactions, modify transactions from any of the networks that the organization is part of.
Multiple Blockchain Platforms In Place: Ethereum, Hyperledger, Monax,Ripple to name a few are currently available as blockchain platforms that implement smart contracts and this list can grow. There are no uniformity in the application interface and implementation of these platforms. Considering the point 1 above with respect to one enterprise being part of many private consortium, this can further be complicated by the fact that each of these consortium can be implemented using a different platform. SCMP can help enterprises to adopt and use multiple different platforms.
Smart Contracts are Inherently Complicated For Business Stake Holders : The primary stake holders of smart contracts are business people like CFO, Purchase Managers, Government Regulators, Auditors and more, however smart contracts in itself are basically a software code. And even in popular platforms like ethereum, implementing a smart contract involves bytecode, ABI, compilation and deploying them to network. Also to get to the handle of a existing contract, businesses need to get to the hexadecimal address for the same. This means that businesses cannot derive and understand the usage unless it is simplified. SCMP abstracts the technical complexities of smart contracts and provides a simple and easy to use interface for businesses to adopt.
More security controls needed in smart contract, beyond what is supported today : The programming languages and constructs for creating smart contracts like solidity are evolving, which means that there may be some limitations which businesses cannot afford to leave in their implementation. For example ethereum smart contracts have the concept of addresses, which means that we could restrict a smart contract to be created only by certain sender addresses. But how about the need to have further organizational controls like Only CFO within an organization can create certain financial contract. SCMP can help enterprises to provide these additional layers of security controls.
Off-chain meta data needed for efficient usage of smart contracts : As smart contract is a legal contract, it may not contain meaningful comments or tagging information which are useful to search and identify the smart contract itself. In blockchain terminology, off-chain refers to transactions and events that occur outside the blockchain network. By effectively utilizing the Off-chain concept a SCMP can store important information that can be useful in searching and other reporting operations on the block chain itself. As with the current implementation performing search operations directly in the blockchain platforms like ethereum are quite complicated and hence the meta data assisted search will simplify this process.
Security Challenges In the Current Block chain platforms : As an evolving technology, there are some inherent limitations in the platforms which may prevent its successful adoption. For example geth which is one of client implementations of Ethereum block chain, exposes a RPC end point which can be taken advantage by any one to access the network. Though the features like address level security can prevent certain things, it is not fully protected. SCMP can help the enterprises to over come these limitations with features like IP Based access security and avoidance of RPC protocol etc…
Changes to Smart Contract and Versioning : Due to current limitation, a smart contract which is basically a set of code, cannot be changed once it is deployed. However in practical scenarios there are always needs for change. While the new versions of smart contract can always be deployed, what about transactions executed on the old version of the code and how about the linking of those records. SCMP can provide options to upgrade a smart contract from version to a newer version.
Making Smart Contracts Really Smart : At this point, smart contracts don’t have intelligent beyond what is programmed in it. However IoT and Machine Learning can be integrated with smart contracts to make them truly smart. Imagine a situation of a Purchase Order payment contract is fulfilled at a warehouse as soon as the goods are received. SCMP facilitates integration of smart contract with other technologies like IoT and Machine Learning. Similarly currently self executing capabilities of smart contract are limited, however when coupled with machine learning smart contracts can think of next action and can update accordingly.
Dynamic User Interface For Smart Contracts : A private consortium network will keep evolving, which means that new contracts will be added, existing contracts may be renewed. Currently there are no options to provide dynamic user interface to contracts without redeploying the user interface code. However SCMP can attempt to provide dynamic user interface to smart contracts, so that addition of new contracts to the network will be seamless.
Infrastructure Operations On Blockchain Network : While the distributed nature of block chain relieves enterprises from traditional database management tasks. There are some tasks still needs to be performed, for example in ethereum block chain accounts need to the exported and imported to be available in new nodes. Also several network operations needs to be performed when adding a new member to the consortium. Azure Block Chain As a Service and similar cloud providers provide building blocks for automating the infrastructure management of block chain platform. SCMP can provide the automation and infrastructure management capabilities for smart contract consortium network.
The above are not the complete list of points that support the need for a SCMP, but definitely they provide a start.