As the market around blockchain continues to grow, a range of different distributed ledger technologies are becoming available for business users to apply blockchain. When analyzing your options, it is important to keep in mind that certain protocols are suitable for certain use cases, and that the valuation time can be accelerated by taking advantage of existing networks that already exist. In this blog, I will give you a series of questions to consider when selecting a distributed ledger technology.
Is the protocol open source and is it openly governed?
Simply posting a code on an open developer site is not enough; It is necessary that there is a governing body that keeps the code in line with the needs of the company. The Linux Foundation’s Hyperledger project exemplifies what it means to openly govern an open source code base, allowing any organization or contributor to send suggestions, updates and policies. Hyperledger openly validates entries through the Technical Steering Committee to ensure that innovations that strengthen Blockchain for business are supported.
The recent addition of zero knowledge tests and identity mixer to Hyperledger Fabric demonstrates Hyperledger’s willingness to support continuous innovation for the needs of the company.
Other protocols such as Ethereum and Corda are in the hands of a very small group of developers, often from a single organization. This means that they centrally control the roadmap of their technologies, ultimately at the expense of long-term innovation.
Who will be part of the network?
The next key question for an organization is; Who are the expected participants of the Blockchain network? Participants can include business partners, application providers, regulators or even competitors.
Most enterprise networks require that at least a central subset of network members, if not all, need to know each other. We call this a permission network. Hyperledger Fabric allows you to configure a common identity verification scheme for a network. This scheme can be configured for a small private network or for a more distributed public network. The key consideration is whether enough data will be known so that you can interact with enough confidence in who is on the other side.
Many other business protocols are based on individual organizations to act as gateways to approve participants and transactions. This model struggles to scale as the network grows.
What use case will generate transactions in the network?
Another key consideration when choosing a protocol is the types of transactions that will be sent to the network.
If the transactions are for an arbitrary asset type, as defined for the network and representing a physical or digital asset, a programming model such as Hyperledger Composer can be used to model the assets, participants and transactions. This can be implemented in a running instance of Hyperledger Fabric.
This is also when you should consider the privacy and security implications of your transactions. In many cases, you may need a protocol that allows you to keep transaction data private between participants.
The use case may also require the use of a reliable public network when dictated by a commercial need. Two main examples of this are for reliable identity and universal payments. For example, a ledger distributed as Stellar allows the transfer of cross-border payments, allowing the universal liquidation of assets.
Is the technology modular and easy to use?
Perhaps one of the most critical aspects of a distributed ledger technology for business use is the ability to configure technology for a business use case.
The key features such as consensus, permits and database should be modular to the needs of a specific use case. For example, a use case may require that each participant in the network endorse transactions before they are considered valid, while others may have less stringent requirements.
Many distributed accounting technologies struggle to support the necessary levels of modularity and, therefore, must rely on bulky consensus protocols such as the test of work to scale. Worse, making changes to these aspects of the network, even when used for a private network, may require the adaptation of complex development processes.
Corda, for example, is only configurable for private networks in the financial space, instead of being a modular technology that can be used for a range of use cases in all industries, integrating multiple additional technologies for IoT.
How does Blockchain meet the other key requirements of the company?
The questions above are an initial list of questions to determine the appropriate distributed accounting technology. Other considerations include:
- Scalability : Distributed accounting technologies should be able to scale as the network grows both in terms of transactions and participants. Things like centralized validation services and complex peer compilation processes have a high probability of limiting scale.
- Regulatory risk : one of the most important open questions in the blockchain space is the regulatory perspective of cryptocurrencies as an application of distributed accounting technology. Due consideration must be given to the likelihood of regulatory action in the protocols that support public cryptocurrencies.
- Availability of skills : the blockchain space has experienced a series of high profile data and asset infractions due to the immaturity of the new programming languages. Business users should take advantage of distributed accounting technologies that allow their developers to work with tools and programming languages with which they are already familiar.
- Support : Just like any business application, there must be an adequate level of support for the entire stack. Whether through open source communities or platform and solution providers, help is needed from the stages of creation to the production of the adoption.
Now that I have provided a series of questions to consider when choosing a distributed accounting technology, I will end with a key recommendation: start today.
Whether you perform concept tests on a range of technologies or simply try the basic development tools, getting the handshake directly with blockchain is the best first step to adopt the technology.