Hyperledger Fabric is a modular blockchain framework under the Hyperledger umbrella project of Linux foundation. The Fabric platform is a permissioned distributed ledger platform which supports the following key features.
Consortium is created and managed by the operating organization. Different business parties can create their own organizations. The operating organization can then invite other business organizations to join the consortium and related channels. In this mode, the operation of the consortium is managed by the delegated operating organization, while the other organizations participate in the consortium.
Policies governs the rules of the permissioned Fabric network. There are three different levels of policies: (a) system channel configuration which defines the ordering service and the members of the network, as well as the consensus mechanism, (b) application channel configuration which governs the channel related configurations, (c) Access control lists and smart contract endorsement policies.
In a nutshell, a blockchain immutably records transactions which update states in a ledger. A ledger is composed of two parts: (a) a blockchain which immutably records the history of all transactions and (b) a world state that holds a cache of the current value of these states. Smart contracts can put, get and delete states in the world state, and can also query the immutable blockchain record of transactions.
Hyperledger Fabriic usese the terms smart contract and chaiincode interchangeably. In general, a smart contract defines the transaction logic that controls the lifecycle of a business object contained in the world state. It is then packaged into a chaincode which is them deployed to a blockchain network.
The ordering service contains a group of orderer nodes, which does the transaction ordering. Fabric separates the endorsement of chaincode execution from ordering service, to promote performance and scalability, as the execution and ordering are no longer performed by the same nodes.
A Blockchain network is comprised primarily of a set of peers. A peer hosts instances of ledgers and instances of chaincodes. An organiation can have one or more peers.
Hyperledger Fabric enables confidentiality through its channel architecture and private data feature.
Participants on a Fabric network may choose to establish a sub-network, called channel, where only members of this sub-network has visibility to transactions posted inside this channel. Thus, the smart contract (chaincode) and data transacted are kept confidential only to members of the channel, rather than the whole network. Channels should be used when entire transactions and ledgers must be kept confidential within a set of organizations that are members of the channel.
Private data allows collections between members on a channel, allowing much of the same protection as channels without the maintenance overhead of creating and maintaining a separate channel. Using this feature, the actual private data are sent peer-to-peer via gossip protocol to only the organizations authorized to see it. This data is stored in a private state database on the peers of authorized organizations, which can be accessed from chaincode on these authorized.
|Verofax BaaS - Hyperledger Frabic||Open source Hyperledger Frabic|
|Consortium||Dynamic & Flexible blockchain node and consortium management through BaaS console||Configuration-based manual operation required for node and consortium management|
|Isolation||Physical Isolation between different organizations (storage, VM, network, CA, SLB)||High-cost manual and complex deployment required for physical isolation|
|High-availability||HA provided by BaaS through iCloud tech-stacks (NAS, SLB, etc)||Depends on users to build and provide HA themselves|
|Heterogeneous connectivity||Nodes within the same consortium can be deployed across different regions (China, Hongkong, Singapore, Japan, Germany, US east and etc)||Cross-region connectivity is provided by users themselves|
|Cross-chain interoperability||Achieved through Verofax UDAG technology||Third-party software (relay)|
|Privacy & Security||Supports UI-based privacy configuration, SGX-based hardware key managemen, anti-DDos||Manual privacy configuration No hardware key management|
|Crypto||Supports chinese cipher algorithm||N/A|
|Performance||2300 tps write, 8000 tps read for single channel, 4 peers; little performance impact by history data with optimization.||1000+ tps and performance is greatly impacted by history data.|
|Dev||VS code plugin for smart contract development; Provides security scan and smart contract deployment and test utilities||No security-scan provided; deployment & testing of smart contract needs additional development work|
|Monitoring||UI-based blockchain explorer for monitoring blocks/transactions/smart contracts with little storage cost.||Open-source blockchain explorer has higher storage cost, yet without smart contract monitoring.|
|Maintenance||Technical experts with fast response||High maintenance cost, delayed community support.|