Businesses are now undergoing rapid development as there is a complete transformation taking place in the way data and assets are exchanged and tracked across industries. Standards are now being created for a cross-industry distributed ledger which has the potential to revolutionize the way we conduct our businesses. Distributed ledgers will help increase transparency, accountability, and trust and also aid in streamlining business processes. Enterprises nowadays prefer to use blockchain technology as they help create cost-effective business networks without the need for a centralized point of control. For this purpose, various blockchain platforms such as Ethereum, Hyperledger, Corda, Ripple, and Quorum have come into the picture as enterprises have now started realizing the promise of blockchain as a technology.
Before we discuss the features and differences of hyperledger fabric and hyperledger sawtooth, let us first understand what hyperledger, hyperledger sawtooth, and hyperledger fabric are.
What is Hyperledger?
Hyperledger is open source, global collaboration hosted by the Linux Foundation. It helps create and develop enterprise-grade, distributed ledger frameworks to support business transactions. Hyperledger was launched in the year 2016 with an organizational and technical governance structure and 30 founding corporate members. It uses a modular approach to build blockchains and this helps companies develop what works best for them. It has attracted big companies such as J.P.Morgan, IBM, Intel, and Samsung.
What is Hyperledger Sawtooth?
It is an enterprise blockchain platform which operates on the design philosophy of making smart contracts safe and keeping ledgers distributed, especially for use by enterprises. Its core design allows applications to choose consensus algorithms, permissioning, and transaction rules to suit and support the needs of each business as it is entirely unique. There is no need for application developers to know the underlying design of the core system. They can use the language of their choice and can specify the rules which are appropriate for their applications.
What is Hyperledger Fabric?
Hyperledger Fabric is hosted under the umbrella of The Linux Foundation. It is a blockchain framework implementation which helps develop applications or solutions with a modular architecture. It supports the plug-and-play version of membership services and consensus. It leverages container technology called ‘chaincode’ to host smart contracts.
Let us understand the difference between Hyperledger Fabric and Sawtooth based on the nature of the blockchain network.
Hyperledger Fabric chooses fine-grained governance over participation in the network by Membership Service Providers (MSP). It identifies the certificate authorities which can be trusted to define a member of an organization. Hyperledger Fabric supports only a permissioned network and not a permissionless one. A permissioned network is one where the network owner decides the participants of the network and allows only a few members to verify blocks. Permissionless networks refer to one where anyone can join the network and start verifying the blocks.
Hyperledger Sawtooth provides a Distributed Ledger Technology (DLT) network which can be either permissionless or permissioned. Sawtooth defines roles and permissions which make it more flexible than hyperledger fabric and the authentication is handled by a large number of validators in the network.
This significant difference gives rise to other distinctions such as:
- Hyperledger Fabric uses the Kafka consensus mechanism, whereas sawtooth uses the Proof-of-Elapsed Time (PoET) algorithm.
- Hyperledger fabric is restricted in terms of participation, whereas sawtooth is flexible as it is a blockchain network which is open to join.
- Hyperledger Fabric has a better and tighter governance framework as it uses MSPs (Membership Service Provider) and CAs (Certificate Authority).
- Hyperledger Fabric offers the unique concept of channels. It provides fine-grained privacy control over transactions. It supports B2B scenarios and many others where it can be applied.
- Hyperledger fabric supports chaincodes which can be written in Java, JS, and Go languages. These behave in a manner that is similar to an asset-based contract. Sawtooth has transaction families which can be written in any language in which the developer is comfortable. Using these, smart contracts can be simulated in those languages. Sawtooth provides some out-of-the-box transaction families and opens up avenues for developing many more.
- Due to its Seth framework, sawtooth supports Ethereum solidity-based smart contracts. Hyperledger Fabric does not support this.
- All the transactions are either processed together or are not at all processed in a hyperledger sawtooth framework. In fabric, all transactions are processed in batches of Kafka blocks. After all the batches are ready, the transactions in that block are sent to the committing peers to be committed in a ledger.
There is no doubt that the Hyperledger project is right now at its peak as IBM and other major technology giants are contributing to this project. It is experiencing faster development cycles currently than ever before. According to reports in 2018, the Hyperledger community has surpassed the mark of 250 members and is a multi-project, multi-stakeholder effort which holds more than ten business blockchain and distributed ledger technologies.
Hyperledger is a platform which is open to contribution and participation from various entities. The decision to use Hyperledger Sawtooth or Fabric depends purely on the use-case. If you are looking to build a private blockchain network which will hold a sensitive smart contract and highly sensitive data, Hyperledger Sawtooth would be the best option to consider. Hyperledger certainly has the potential to reduce the cost and complexity of doing things in the real world.