Blockchain Technology is Moving Forward with Hyperledger
There are currently two main types of blockchain applications - one is for cryprocurrency networks (Bitcoin etc.) which is mostly public and Business to Consumer(B2C) and the other is for private Business to Business(B2B) networks mostly used for tracking goods between independent parties.
There are also many hybrid opportunities such as Facebook’s Libra coin intended for transfer of money via its applications and mainly targeted at those without bank accounts. It is unlike Bitcoin as it is pegged to existing currencies and while Bitcoin’s blockchain is distributed among everyone who uses it, Libra is managed by the Libra Association.
In the area of business implementation of blockchain, we see significant development and adoption. One example from a recent HBR article Platforms and Blockchain will Transform Logistics describes the Maersk and IBM TradeLens blockchain-based platform for managing global shipments involving multiple stakeholders as well as Singapore’s Transport Integrated Platform (TRIP) which connects distinct logistics stakeholders.
In Is Blockchain the new internet? we noted that blockchain technology is not ready for widespread adoption because of major concerns with the leading platform Ethereum, which is an open source distributed public blockchain network that allows building decentralized apps with the help of Smart Contract functionality. The concerns were focused around scalability, interoperability and overall usability.
The scalability issue with Ethereum is that in their blockchain networks every peer needs to validate each and every transaction and run consensus at the same time. In addition, transactions with a measure of confidentiality and privacy attached to them cannot be executed on public blockchains due to the exhaustive measures that are taken to ensure the integrity of a transaction.
This makes it unfit for enterprise applications which brought about the introduction of Hyperledger, an open source collaborative project hosted by The Linux Foundation, supported by IBM, Intel and other companies. It was founded in December 2015 but is only now coming out with some of the initial working frameworks.
What is Hyperledger? It is neither a tool nor a platform like Ethereum. It is an umbrella strategy with multiple platforms for developing enterprise solutions. Therefore the main difference between Hyperledger and Ethereum focuses on their different purpose which is mainly B2B versus B2C.
This entails focus on different aspects of blockchain implementation:
- The main one is that Hyperledger is confidential with a private and permissioned network while Ethereum is transparent with public/private and permissionless (anyone can join) network and a built-in cryptocurrency called Ether.
- The underlying consensus mechanism is different: Hyperledger provides pluggable consensus algorithms with no mining required. Ethereum uses Proof of Work where consensus is reached by mining.
- They also use different programming languages - Chaincode written in Golang for Hyperledger and Smart Contracts written in Solidity for Ethereum.
Hyperledger skirts the scalability issues of Ethereum with faster and easier ways to reach consensus and built in privacy options. The two organizations are also working together to allow for interoperability and other collaboration through the Enterprise Ethereum Alliance and Hyperledger to Advance the Global Blockchain Business Ecosystem
But as far as business standards there seem to be competing Hyperledger frameworks introduced by IBM (Fabric) and Intel (Sawtooth).
Hyperledger Fabric is is a blockchain framework intended as a foundation for developing applications or solutions with a modular architecture. Fabric allows components, such as consensus and membership services, to be plug-and-play. Fabric leverages container technology to host smart contracts called “chaincode” that comprise the application logic of the system. Fabric was initially contributed by Digital Asset and IBM. Walmart was the first company to test this out with two case studies one tracing mangos sold in Walmart’s US stores and the other to trace pork sold in its China stores. It is the basis for IBM's Food Trust network.
Hyperledger Sawtooth is a modular platform for building, deploying, and running distributed ledgers. Distributed ledgers provide a digital record (such as asset ownership) that is maintained without a central authority or implementation. One case study shows how it is used to trace seafood. It is also rumored that Retail Giant Target Is Quietly Working on a Blockchain for Supply Chains using Sawtooth which was originally contributed by Intel.
What is the difference between Fabric and Sawtooth?
- Permission: Sawtooth supports both permissioned and permissionless blockchain implementations whereas Fabric supports only permissioned blockchain implementations.
- Privacy: Fabric allows you to keep a subset of data private to a subset of participants while SawTooth allows peers access to all the data.
- Consensus algorithms: Sawtooth uses Proof of Elapsed Time (PoET) based on Intel's Software Guard Extensions (SGX) to elect leaders to cut blocks based on random wait times, a more energy efficient approach than the traditional Proof of Work, which enables scaling to very large networks. Fabric supports pluggable consensus algorithms to order transactions into blocks, with Kafka support available since version v1.0, and Raft and BFT implementations in development.
- Transaction flow: Sawtooth supports the traditional blockchain flow of Order-Execute-Commit. Fabric supports a unique endorsement model where transactions are initially executed on a set of peers and follows the Execute-Order-Commit model. The set of required endorsers can be defined at the contract level or at the data level. This approach improves scalability, prevents non determinism in contract code, and enables transactions to be executed in private between a set of transactors as mentioned above.
There are a few other Hyperledger projects in various stages of development including:
- Burrow, which is being used to run Ethereum smart contracts in a Hyperledger network
- Iroha, finds usage in mobile application optimization with the help of blockchain
- Indy, is being used as a decentralized identity database service for businesses
Blockchain use is rapidly expanding for both business and consumer applications. Many companies and developers are working on the infrastructure required to deploy it and contributing to open source communities such as Hyperledger (for B2B) and Ethereum (for B2C). This provides some of the groundwork needed to make this technology more acceptable by providing scalable solutions that are interoperable and provide the tools for companies and developers to start adopting this technology for the applications that are a good fit.