What is hyperledger fabric
In order to meet the needs of modern business, IBM cooperated with other companies to develop an open-source business blockchain framework called hyperledger fabric, which can be put into production immediately ™ , which is one of eight hyperledger? Projects hosted by the Linux foundation.
Hyperledger fabric is widely used to support distributed ledger solutions on access networks. Its modular architecture maximizes the confidentiality, flexibility and flexibility of blockchain solutions.
Hyperledger fabric is a framework for accessing networks in which all participants have known identities. When considering the access network, you should consider whether your blockchain use case needs to comply with data protection regulations. Many use cases (especially in the financial sector and healthcare) are subject to data protection laws that require understanding who members of the network are and who is accessing specific data.
Consider, for example, a private equity firm. By definition, private equity is not publicly traded on the stock exchange, and its investors are usually venture capital firms, private equity firms or angel investors. In order to invest and participate in the blockchain, the participants of the network must be known and have credibility in terms of capital.
2. Performance, scalability and trust level
Hyperledger fabric is based on a modular architecture, which divides transaction processing into three stages: distributed logic processing and protocol (“chain code”), transaction sequencing, and transaction verification and commitment. This separation has many advantages: less trust and authentication levels are required across node types, and network scalability and performance are optimized.
To illustrate this, let’s take a look at the transaction flow in hyperledger fabric v1.0, as shown in the following figure.
From the left side of the figure:
1) The transaction proposal is submitted by the application to the endorsing peer node.
2) The endorsement policy outlines how many endorsers and / or which combination of endorsers are required to sign the proposal. Endorser executes chain code to simulate proposals in network peers, creating a read / write set.
3) The endorsing peer node then sends the signed proposal response (Endorsement) back to the application.
4) The application submits the transaction and signature to the order service
5) Create a batch or group of transactions and deliver them to the submission peer node.
6) When the commit peer node receives a batch of transactions
7) Verify that the endorsement policy is met and check the read / write set to detect conflicting transactions. If both checks pass, the block is committed to the ledger and the status update for each transaction is reflected in the status database.
Because of the new v1. X architecture, only the signature and read / write sets are sent over the network, so the scalability and performance are optimized. In addition, since only the endorser and the author can really see the transaction, fewer trust levels are required in different parts of the blockchain system, thus providing higher security.
For example, in the capital market, with the trading of equity backed securities or bonds, the trading volume increases due to the increase of participants. The increased transactions require improved scalability and performance, which is provided by hyperledger fabric v1. X, in part due to the splitting of chain code execution.
Split chain code execution can also make the network grow dynamically. In hyperledger fabric v1. X, peers can be added dynamically and programmatically, rather than statically, as in v0.6. For example, suppose a company managing foreign exchange rates has a new bank to add to the network. With hyperledger fabric v1. X, they can do this programmatically.
3 data to understand
Due to the provisions of competitiveness, protection law and personal data confidentiality, enterprises need to protect the privacy of some data elements, which can be achieved by data partition on the blockchain. Hyperledger fabric supports channels that allow data to be passed only to those who need to know.
For example, many financial entities are concerned that competitors even see the number of transactions being processed. Some financial institutions consider encryption “insufficient” to protect their data. As it takes 10 years or more for some financial instruments to realize their value, the risk of password cracking may make private information public as time goes by. Channel help provides data partition function. Only those who need to know the data can see the number of transactions and the data itself.
4. Complex query through immutable distributed ledger
Distributed ledger is a sequential record of the state transition of blockchain applications. Each transaction generates a set of asset key value pairs, which are submitted to the ledger when they are created, updated or deleted. Peer supports two storage formats: leveldb and CouchDB.
By default, leveldb key value database supports key query, compound key query and key range query. If you also need complex rich queries, you can use CouchDB, which supports the basic functions of leveldb and adds complete data complex queries. The content of this document database (such as CouchDB) is in JSON format and supports complex queries. The data model is compatible with the existing key / value programming model.
This JSON format helps minimize the effort required to generate simple reports and perform auditing functions. For example, in a supply chain scenario, you can use JSON document styles to help outline specific data for goods and shipping entities. You can easily generate asset reports for different locations and transport entities to the final destination.
5. Support modular architecture of plug-in components
The modularity of the hyperledger fabric architecture allows network designers to plug in their preferred component implementations, which is an advantage. One of the most modularized areas is “using your own authentication system.”. Many companies already have their own identity management and want to reuse rather than rebuild.
Other components of the pluggable architecture include consensus or encryption, allowing the use of their own encryption standards.
6 protect digital keys and sensitive data
HSM (hardware security module) provides advanced protection for digital keys. For the scheme involving identity management, HSM can better protect the key and sensitive data.
For more tutorials, please refer to flydean’s blog