fabric区块链就是公有链的典型代表,fabric区块链是啥
请查看相关英文文档
『一』A brief analysis of Fabric Peer nodes
Hyperledger Fabric, also known as Hyperledger, was initiated by IBM and later became the blockchain in the Linux Foundation Hyperledger One of the projects.
Fabric is a platform that provides distributed ledger solutions. The underlying ledger data storage uses blockchain. Blockchain platforms can usually be divided into public chains, alliance chains and private chains. Typical representatives of public chains are public blockchain networks such as Bitcoin, and anyone can join this network. The alliance chain has an access mechanism and cannot be added to the network at will. A typical example of the alliance chain is Fabric.
Fabric does not need to issue coins to motivate participants, nor does it require mining to prevent people from doing evil, so Fabric has better performance. In the Fabric network, there are also many different types of nodes to form the network. Among them, Peer nodes carry ledgers and smart contracts and are the foundation of the entire blockchain network. In this article, the structure of Peer and how it operates will be analyzed in detail.
In this article, it is assumed that readers already understand concepts such as blockchain and smart contracts.
This article is based on Fabric1.4 LTS.
The blockchain network is a distributed network, and so is Fabric. Since Fabric is a consortium chain and requires an access mechanism, the network structure will be much more complicated. Here is a simplified Fabric network:
The meaning of each element is as follows:
For the Fabric network, external users need to access the network through the client application, that is, A1, A2 or A3 in the figure. The client application You need to identify yourself through the CA certificate so that you can access the authorized parts of the Fabric network.
In the above network, there are four organizations, R1, R2, R3 and R4. Among them, R4 is the creator of the entire Fabric network, and the network is configured according to NC4.
In the Fabric network, different organizations can form alliances, and data between different alliances are isolated through Channels. The data in the Channel can only be accessed by organizations in the alliance. Each new Channel can be considered as a new chain. Unlike other blockchain networks that usually only have one chain, Fabric can quickly build a new blockchain in the network through Channel.
onFaces R1 and R2 form an alliance and trade on C1. R2 also formed another alliance with R3 to trade on C2. When R1 and R2 trade on C1, they are invisible to R3. When R2 and R3 trade on C2, they are invisible to R1. The Channel mechanism provides good privacy protection capabilities.
The Orderer node is common to the entire Fabric network and is used to sort and package all transactions. For example, the O4 node in the above network. This article will not explain the Orderer node in detail. This function can be understood as the mining process in the Bitcoin network.
Peer node represents a node in the network. Usually a Peer represents an organization. Peer is the foundation of the entire blockchain network and the carrier of smart contracts and ledgers. Peer is also the focus of this article.
A Peer node can host multiple sets of ledgers and smart contracts. For example, the P2 node maintains not only C1's ledgers and smart contracts, but also C2's ledgers and smart contracts.
In order to have a deeper understanding of the role of Peer nodes, first understand the overall transaction process of Fabric. The overall transaction flow chart is as follows:
Peer nodes can be divided into endorsement nodes and accounting nodes according to their functions.
The client will submit a transaction request to the endorsement node, and the endorsement node will start to simulate the execution of the transaction. After the simulation execution, the endorsement node will not update the ledger data, but will encrypt and sign the transaction, and then Returned to the client.
After receiving this response, the client will submit the response to the Orderer node. The Orderer node will sort these transactions, package them into blocks, and then distribute them to the accounting node. The accounting node will Verify the transaction. After the verification is completed, the transaction will be recorded in the ledger.
Whether a transaction can succeed is specified based on the endorsement strategy. Each smart contract will specify an endorsement strategy.
Peer nodes represent various organizations in the alliance chain. The blockchain network is also composed of Peer nodes and is also the carrier of ledgers and smart contracts.
From the understanding of the above transaction process, we can know that the Peer node is the main participant. If users want to access ledger resources, they must interact with peer nodes. In a Peer node, multiple ledgers can be maintained at the same time, and these ledgers belong to different Channels. Each Peer node will maintainMaintain a redundant set of ledgers to avoid single points of failure.
Peer nodes can be divided into endorsement nodes (Endorser) and accounting nodes (Committer) according to their different roles in transactions. The endorsement node will simulate the execution of the transaction, and the accounting node will actually store the data. into the ledger.
The ledger can be divided into two parts, one is the blockchain and the other is the Current State, also called the World State.
Only appends can be made to the blockchain, past data cannot be modified. The chain also contains two parts of information, one part is the channel configuration information, and the other part is an unmodifiable, serialized record. Each block records the information of the previous block and then connects it into a chain, as shown in the figure below:
The first block is called the genesis block, which does not store transaction information. Each block can be divided into block header, block data and block metadata. The block header stores the block number of the current block, the hash value of the current block and the hash value of the previous block, so that all blocks can be connected. Block data contains transaction data. Block metadata includes the time when the block was written, the person who wrote it, and the signature.
The structure of each transaction is as follows. The Header contains the name and version information of the ChainCode. Signature is the signature of the user who initiated the transaction. Proposal mainly contains some parameters. Response contains the result of smart contract execution. Endorsements are the results returned by the endorsement results.
WorldState maintains the current status of the ledger. The data is stored in the form of Key-Value and can be quickly queried and modified. Every modification to WorldState will be recorded in the blockchain. The data in WorldState needs to rely on external storage, usually using LevelDB or CouchDB.
Blockchain and WorldState form a complete ledger. WorldState ensures flexible changes in business data, while blockchain ensures that all modifications are traceable and non-tamperable.
After the transaction is completed and the data has been written to the ledger, the data needs to be synchronized to other Peers for use in Fabric.is the Gossip protocol. Gossip is also Channel-isolated and will only broadcast and synchronize ledger data among Peers in the Channel.
Smart contracts need to be installed on the Peer node. Smart contracts are the only way to access the ledger. Smart contracts can be written in languages such as Go and Java.
After the smart contract is written, it needs to be packaged into ChainCode. Each ChainCode can contain multiple smart contracts. ChainCode needs to be installed, and ChainCode needs to be installed on the Peer node. After installation, ChainCode needs to be instantiated on the Channel, and the endorsement policy needs to be specified when instantiating.
After the smart contract is instantiated, it can be used to interact with the ledger. The flow chart is as follows:
After the user writes and deploys the instantiated smart contract, it can use the client application Program to submit a request to the smart contract, and the smart contract will get, put or delete the data in WorldState. The get operation directly reads the current status information of the transaction object from WorldState, and does not write information to the blockchain. However, the put and delete operations not only modify WorldState, but also write a transaction information to the blockchain, and Transaction information cannot be modified.
Information on the blockchain can be accessed through smart contracts or directly through APIs in client applications.
Event is a way for the client application to interact with the Fabric network. The client application can subscribe to the event. When the event occurs, the client application will receive the message.
There are two types of event sources, one is Events issued by smart contracts, and the other is Events triggered by changes in the ledger. Users can obtain transaction information from Event, such as block height and other information.
In this article, we first introduce the overall network architecture of Fabric, discuss the role of peer nodes in transactions through the analysis of Fabric transaction process, and then analyze in detail the ledger maintained by peer nodes. and smart contracts, and analyzed the process of peer nodes maintaining ledgers and peer nodes executing smart contracts.
Text / Rayjun
[1]https://hyperledger-fabric.readthedocs.io/zh_CN/release-1.4/whatis.html
[2] https://developer.ibm.com/zh/technologies/blockchain/series/os -academy-hyperledger-fabric/
[3] https://en.wikipedia.org/wiki/Gossip_protocol
『二』 Blockchain Alliance Chain (3) Understanding Fabric
Fabric is the core blockchain framework launched by the Hyperledger Alliance. It is suitable for building alliance chains within complex enterprises and between enterprises. According to the goals of the Hyperledger Alliance, Fabric is built as a modular basic alliance chain framework that supports pluggable components. ;
Unlike Ethereum-based Quorum, Fabric only considered inter-enterprise applications from the beginning. Its unique channel concept connects enterprises in different subnets according to different business purposes. Each subnet corresponds to a channel, and each channel has its own independent blockchain. Quorum obviously has only one public network (all enterprise nodes join it), and private business between enterprises is completed through Private Manager.
The simplest way to understand channel is to analogize it to a Topic provided by a message service. In fact, Fabic was first implemented based on Kafka's distributed message service.
In the Fabric network, an enterprise can have one or more nodes join the entire alliance chain; an enterprise can join 1 or more Channels (subnets); a node can join 1 or more channel. Each channel forms a subnet, so Fabric is a network composed of subnets.
So how does Fabric implement the execution of smart contracts and complete business uploading (recording transaction results in the blockchain)?
Unlike other frameworks, Fabric divides the entire process into three stages:
Business endorsement stage: the endorsement node where the customer's request is sent,Complete the business calculation through smart contracts (but do not update the status), and complete the endorsement; the endorsement result is returned to the client.
Business sorting phase: The client sends the endorsement results to the ordering node (orderer) through the Channel. The ordering node completes the sorting of transactions, packages them into blocks, and finally distributes them to all connected The node of the channel.
Business verification and writing to the ledger stage: Through the Gossip network, all Channel nodes will receive the new block. The nodes will verify each transaction in the block to determine whether it is valid: valid will be followed by In the new world state, invalid ones will be marked as "invalid" and the world state will not be updated, but the entire block will be completely added to the ledger (including invalid transactions).
Based on the above description, Fabric nodes can actually be divided into , ordinary nodes and Order nodes:
Peer, ordinary nodes, complete endorsement (including execution of contracts only) and Verification.
orderer, sorting node, completes sorting.
The Fabric network that joins the orderer node can be described as follows:
Each Channel defines all nodes belonging to the channel, but it is not necessary that all nodes are connected to the Orderer Nodes (private data or transactions can be spread between nodes through gossip protocol communication).
In the blockchain, consensus is the basis of the blockchain. Different from the public chain, the consensus of the alliance chain requires that all transactions added to the ledger are deterministic and final, that is, there cannot be forks, the order between blocks is certain, and there is only one chain. In Fabric, this objective requirement is realized by sorting. All transactions will be submitted to the orderer node to obtain a determined order, and finally packaged into blocks and entered into the ledger. Fabric supports the implementation of ordering services based on Raft starting from 1.4.1, which can be considered as the implementation of consensus based on Raft.
The RAFT-based sorting service has better distribution and simpler configuration than the early Kafka. It is a commonly used consensus algorithm in alliance chains. Quorum uses RAFT as the consensus by default. layer. Simply put, RAFT is a leader and follower model. All nodes joining the RAFT network have a leader at any time. Only this leader has the right to decide the order of transactions and package them into blocks. Other nodes can only submit transactions and synchronize blocks as followers.
Based on the FAFT network, each enterprise can have one or more nodes participating in the Orderer. In Frabric, the network connection between enterprises can be changed into the following form:
Users of blockchain are called EOA (External of Account) in Ethereum, and the carrier of EOA is a wallet. Let's use this concept to see how Fabric implements users and initiates transactions. EOA in Fabric is a certificate (x.509) issued by the CA center. A Certificate represents an Identity (this is still very different from Ethereum. An EOA in Ethereum is actually a hash address). The channels that EOA can participate in And the authorized operations are determined by the MSP (Membership Service Provider) of the channel (as shown below).
Note: Certificate is a common method of verifying identity in cryptography; certificate contains personal information, public key and signature of the CA that issued the certificate. The verifier only needs to have the CA's certificate (including the CA's public key) to verify whether the signature is correct and whether the content of the certificate has been tampered with. Simply put, through CA and Certificate, we can obtain a verifiable identity and trust chain.
As shown in the picture above, fabric Zhongtong uses Wallet as the carrier of EOA. A Wallet can contain multiple Identities (x.509 certificate). Identity verifies correctness through the chain of trust provided by the CA.
After verifying the identity, Fabric uses MSP to resolve in the blockchain network whether the identity represents a member of the organization and what role it has within the organization. For example, channel will first verify whether the current user Identity is a valid identity, and then check its location through MSPThe enterprise and the role it has, ultimately determine whether the user has permission to perform the action.
It can be said that Fabric access control is completed through MSP. An MSP needs to be defined every time access control is required. For example, each channel defines an MSP, which specifies the access rights to resources within the channel range. MSP is an obscure concept in Fabric, and it is also the basis for providing secure access between enterprises.
As mentioned earlier, Fabric divides business processing and Internet access into three parts: endorsement, sorting, and adding to the ledger after verification.
Endorsement is the stage in which Fabric executes smart contracts. In Ethereum, smart contracts are executed in the EVM and are supported in multiple languages. In Fabric, smart contracts are called chaincode: A chaincode can be understood as a container of smart contracts, which can contain one or more smart contracts. It is not used in EVM. Chaincode is executed in JVM or NodeJS.
Client applications access the ledger through smart contracts. Each accessible smart contract is installed on a node accessible to the client and is defined in the channel. (Nodes with smart contracts are called endorsement nodes, nodes without smart contracts are called unsubmitted nodes, and submitting nodes only maintain ledgers)
The client application submits a transaction request, and the request reaches the endorsement node , the endorsement node will first verify the customer's signature to ensure that the customer's identity has the right to execute this transaction, then execute the smart contract (chaincode) mentioned in the transaction, and generate an endorsement response (or transaction proposal, trans-proposal). This endorsement response usually contains the world state's read set, write set, and the node's signature for this transaction. The main difference here from the Ethereum alliance chain is that the endorsement phase only simulates transactions and does not actually update the transaction results. The real update transaction is completed in the third phase. The endorsement node finally sends the generated endorsement response fanhui to the client, and the execution of the smart contract part ends.
Usually the execution of a transaction requires the signatures of multiple parties, so the client needs to send a transaction to multiple endorsement nodes, and the selection of these endorsement nodes needs to meet the requirements of the endorsement policy.
The following figure is a network diagram including customers, endorsement nodes, and submission nodes.
According to Fabric’s official reference document, the positive result process of customer transactions can be usedPictured below.
As shown in the figure above, from 1 to 3, it is the endorsement stage, 4 is the sorting stage, and 4.1, 4, 2, 5 are the verification and submission stages. Refer to Frabic's node concept to learn more about the concept of transaction details.
Generally speaking, Fabric is more focused on inter-enterprise. Through the above, everyone can have a general understanding of the basic composition and concepts of Fabric. Fabric itself is not mysterious. It uses existing inter-enterprise technologies. For a better understanding, it is recommended to read Support for Distributed Messaging Systems and Enterprise Security Infrastructure (CA related). Compared with the Ethereum-based alliance chain implementation, Fabric's subnet concept is more adaptable to complex inter-enterprise applications, but its complex security considerations make operating costs very high. In addition, Fabric uses Certificate as user identity, which has great The limitations of Fabric will be changed in the new 2.0.
In the next article, we will take a look at Sawtooth, a blockchain framework provided by Inter.
Blockchain Alliance Chain (1) Understanding Ethereum
Blockchain Alliance Chain (2) Understanding Quotum
Blockchain Alliance Chain of Blockchain (3) Understanding Fabric
Alliance Chain of Blockchain (4) Understanding Sawtooth
『三』 Hyperledger - Fabric
There are currently 5 parallel projects under Hyperledger, and Fabric is one of the more mature ones. The project was developed by 159 engineers from 28 different organizations.
In Fabric’s blockchain network, there are four types of nodes: MSP, Ordering Node, Endorsing Peer, Commtting Peer
MSP (Membership Service Provider), this type of node Responsible for the authorization, admission, and expulsion of other nodes in the blockchain network. By issuing certificates to different nodes, different types of nodes are granted corresponding permissions.
It can be called a sorting node in Chinese. There are usually at least one or more sorting nodes in a network. Such nodes are responsible for sorting transactions according to specified algorithms and returning them to the Committing Peer. It doesn't care about the specific details of the transaction.
This type of node is mainly responsible for receiving transaction requests, verifying the transaction, and making some preparations.After processing, the signed data is returned to the client.
This type of node is a full node in the blockchain network. They need to record complete block information, verify the correctness of each transaction, and ultimately package the transaction into the blockchain. node.
Combined with the following diagram, let’s take a look at the on-chain process of a transaction:
1. First, initiate a transaction from the client and submit it to the Endorsing Peer for preprocessing. .
2. After passing the preprocessing, the signature data is returned to the client.
3. The client initiates a request and passes the received signature data to the Ordering Node.
4. The Ordering Node sorts the transactions and then passes them to the Committing Peer.
5. The Committing Peer verifies and packages the sorted transactions, and reaches an agreement through the specified consensus algorithm to form a new block.
6. Finally, the transaction result is returned to the client.
6. Each step of the intermediate process is accompanied by permission verification. The judgment will be made based on the certificate issued by MSP.
『四』 First introduction to Hyperledger Fabric
Fabric is a consortium chain. Peer represents a series of organizations. Peers are the basis of the entire blockchain network because it is the basis of ledgers and smart contracts. carrier. Through smart contracts, the ledger records the entire transaction process in an immutable way.
For companies that cannot, there are different businesses, and different businesses are associated with different companies. Multiple alliance chains need to be created, so multiple channels need to be created. How many channels are there? A private network established between specific members for the purpose of confidential transactions. A peer can join multiple channels. Each channel maintains its own ledger. The ledger is isolated from the ledger. Each channelAnnel can maintain one or more ledgers. Therefore, in order to meet complex transaction requirements, different smart contracts can be installed on each peer. When the peer transaction is completed, an event will be sent to notify the Client. There is also a Local MSP (Member Service Provider) service on the peer, which provides functions such as identity authentication and cryptographic signatures.
WorldState maintains the current information of the current ledger in the form of key-value.
Smart Contract is the core of the blockchain, defining business specifications between different organizations, creating transactions and recording them in the ledger. Multiple smart contracts can be packaged into one chaincode. Smart contracts can only be used by applications after the chaincode is deployed.
Unlike ordinary chain codes that run in an independent container, system chain codes run on the peer process and implement some system behaviors.
In order to optimize network performance, improve security and scalability, Fabric divides each transaction into three parts: Endorsing Peer, Ording-Service and Committting Peer, which requires a secure, trusted and scalable data transfer protocol - Gossip Protocol. The Gossip transmission protocol spreads information into the network in a random manner and mainly performs three functions:
『五』How to create your own fabric blockchain
This requires the help of platform to create.
The SuperVessel platform developed by IBM China Research Institute provides a blockchain development and testing environment for blockchain enthusiasts and developers. Through this platform, users can create multi-node blockchains based on Hyperledger Fabric for free and super quickly, and play with smart contracts on their own chains.
Of course, the foreign decentralized content sharing platform DECENT can also be created.
『Lu』 uses AWS blockchain template to build Hyperledger Fabric
AThe WS Blockchain template claims to be able to create and deploy a blockchain network in just a few minutes.
Two types of blockchain networks can be built using AWS Blockchain Templates:
For specific construction steps, please refer to the AWS Blockchain Templates Developer Guide, which has details on building Ethereum. Steps, the "prerequisites" setting items in the document are used to build the Ethereum network and are not applicable to the Fabric network, so here we talk about building the Fabric of Hyperledger.
Before using the template to quickly create a stack, be sure to set the relevant content in advance:
Note:
The above five prerequisites are set correctly. We can use the blockchain template to create the Fabric network. Let’s talk about the two more difficult configurations with red boxes:
Setting steps:
Click " Review Policy", set the name (myFabricPolicy) and description (...) of this permission policy file, and finally click "Create Policy":
The settings are as follows:
AWS console— —Services—VPC—Click the blue button "Launch VPC Wizard" in the VPC control panel and select a VPC with a single public subnet:
Set the VPC name, subnet name, and other values is the default value.
Click the launch link in the Hyperledger Fabric section of the AWS Blockchain Templates Developer Guide:
The setting reference is as follows:
After creation, drink a cup of coffee☕️and wait a while... p>
Wait until the status is displayed as "CREATE_COMPLETE" and it will be OK. 🎉🎉🎉
『撒』 What is blockchain
Let’s talk about some basic concepts first.
The network said that blockchain is a new usage model of computer technologies such as distributed data storage, point-to-point transmission, consensus mechanisms, and encryption algorithms. It is essentially a decentralized database, and as the underlying technology of Bitcoin, it is a series of data blocks generated by cryptography.
We try to translate "what is blockchain" into "human language".
The definition refers to the "decentralized database" nature of blockchain3354. This is very different from the traditional "centralized database" in storage, update and operation.
A centralized database can be thought of as having this shape:
For example, if I want to use Alipay to pay a Taobao seller, all data requests from when I make money to when he receives the money will be centrally processed by Alipay. The advantage of this data structure is that as long as Alipay is responsible for the efficient and safe operation of the system, others can unconditionally believe it without worrying; the disadvantage is that if there is a problem with Alipay, such as being hacked, the server being burned, a traitor appearing, and the company running away (Of course, the possibility of the above is extremely low), the balance details and other information in our Alipay will be confused.
Then some people think that this kind of low-probability event can use any technical means to avoid individual risks, and not only hand over the data to a centralized organization. For example, everyone can store and process data.
The database structure may look like this:
This picture is a schematic structural diagram of a "distributed database". Each point is a server, they all have equal rights to record and calculate data, and information is spread point-to-point. At first glance, it seems that it can indeed resist the risk caused by the crash of a certain node, but it is also very confusing and inefficient intuitively. Who will handle my information, and who has the final say on the outcome?
At this time, the "consensus mechanism" in the definition of blockchain comes into play. The consensus mechanism mainly "stipulates" the following things: who will handle a data request (what qualifications are required); who will verify the result (to see if he has handled it well); how to preventCollusion between processors and inspectors, etc.
Some people may like to be questioned when a "rule" is made. In order to form a stronger consensus, in addition to making the rules more reasonable, they must also be more attractive so that people are interested and motivated to participate in data processing. This involves the incentive mechanism of the public chain. We will start again later when we discuss the classification of blockchain and the role of digital currencies.
When we hand over a transaction to a distributed network, there is also a "psychological threshold": there are so many nodes that can process information, and I don't know any of them (unlike Alipay, if it hurts me, I can go and file a lawsuit against it). They all have my data, why should I trust them?
At this time, encryption algorithm (the last descriptive word in the definition of blockchain) comes on stage.
In the blockchain network, the data requests we send will be encrypted according to cryptographic principles into a string of characters that the recipient cannot understand at all. Behind this encryption method is the support of a hash algorithm.
Hash algorithms can quickly convert any type of data into hash values. This change is one-way irreversible, deterministic, random, and anti-collision. Because of these characteristics, the person handling my data request could record the information for me, but they had no idea who I was or what I was doing.
So far, the working principle of the decentralized network has been introduced. But we seem to have overlooked one detail. The previous diagram is a net. Where are the pulleys and chains? Why do we call it blockchain?
To understand this matter, we need to clarify a few knowledge points first:
The previous picture is actually a "macro" database perspective, showing the basic rules and processes of the blockchain system for processing information. . And specifically at the "micro" data log level, we will find that the ledger is packaged, compressed, stored in blocks, and strung together in chronological order to form a "chain structure", like this:
Figure Each ring in can be regarded as a building block, and many links are linked together to form a blockchain. Blocks store data, unlike ordinary data storage: on a blockchain, the data in a later block contains the data in the previous block.
In order to academically explain the fields of each part of the data in the block, we tried to use a book metaphor to describe what a blockchain data structure is.
Usually, when we read a book, we read the first page, then the second and third pages. The spine is a physical existence that fixes the order of each page. Even if the book is scattered, the order of each numbered page can be determined.
Inside the blockchain, each block is labeled with a page number, the second page contains the first page's content, the third page's content contains the first and second page's content. The tenth page contains the previous Nine pages of content.
It is such a nested chain that can be traced back to the original data.
This brings up an important attribute of blockchain: traceability.
When the data in the blockchain needs to be updated, that is when new blocks are generated in sequence, the "consensus algorithm" comes into play again. This algorithm stipulates that a new block can only beIt can only be formed when it is recognized by more than 51% of the nodes in the entire network. To put it bluntly, it is a matter of voting, and it can be elected if more than half of the people agree. This makes the data on the blockchain difficult to tamper with. If I were to force a change, there would be too many people to bribe and the cost would be too high to be worth it.
This is what people often call the "non-tamperable" feature of blockchain.
Another reason why blockchain gives people a sense of trust is because of "smart contracts."
Smart contracts are commitment agreements defined and automatically executed by computer programs. It is a set of transaction rules executed by code, similar to the current automatic repayment function of credit cards. If you turn on this function, you don’t have to worry about anything. The bank will automatically deduct the money you owe when it is due.
When your friend borrows money from you but doesn't remember to pay it back, or makes excuses not to pay it back, smart contracts can prevent breach of contract. Once the terms in the contract are triggered, such as when it is time to repay the money, or there is a limit in his account, the code will automatically execute, and the money he owes you will be automatically transferred back whether he wants it or not.
Let’s briefly summarize. Blockchain technology is mainly decentralized, difficult to tamper with, and traceable, which represents more security and trustlessness. But it also brings new problems: redundancy and inefficiency, which requires many nodes to agree with the rules and actively participate.
This concludes the "drying" section. Next, let’s talk about unofficial history and the official history of blockchain.
A new technology is often used to serve a certain task.
Or goals. So where was blockchain first used, and who came up with it first?
Let’s go back to 2008.
On September 21, Wall Street investment banks collapsed one after another. The Federal Reserve announced that it would convert the only two remaining investment banks (Goldman Sachs Group and Morgan Stanley) into commercial banks; it hoped to survive the financial crisis by absorbing savings. On October 3, the Bush administration signed a $700 billion financial rescue package.
Twenty-eight days later, on November 1, 2008, a new post appeared in a cryptography mailing group: "I am developing a new electronic currency system that is completely peer-to-peer and does not require a third party. Three-party trust institution." The text of the post is a paper titled "Bitcoin: A Peer-to-Peer Electronic Cash System", signed by Satoshi Nakamoto.
The paper explains the design of this peer-to-peer electronic cash system with a more rigorous logic. It first discusses the problem that financial institutions are subject to "trust based" (based on credit), and then explains step by step how to achieve "no third-party agency" , and cleverly solved the technical problems left by the predecessors.
Two months later, Satoshi Nakamoto released the first version of the open source Bitcoin client and mined 50 Bitcoins for the first time. The block that generated the first batch of Bitcoins is called the "Genesis block". The genesis block was compiled into block 0 and was not uploaded to the chain. It took Satoshi Nakamoto 6 days to mine this block. This is also discussed on bitcointalkDiscussions arose in the forum, and Bitcoin "believers" thought of the Bible, "God created the heavens and the earth in six days, and then rested on the seventh day."
Although concepts such as decentralized, token, and economy did not appear in the paper, Satoshi Nakamoto explained in detail the role of blocks and chains in the network. working principle. So, there is Block Chain.
This paper later became the "Bible" of the "Bit Cult", technology became the cornerstone of faith, and developer documentation became the "Code of Hammurabi".
After that, Bitcoin realized the first real-life payment by exchanging pizza, WikiLeaks, whose account was blocked by the US government, miraculously survived by relying on Bitcoin, Satoshi Nakamoto's "decentralization" and retirement, and the appearance of the real and the fake A series of legends such as and refutation of rumors, combined with the expectations, imagination and speculation of later generations, became "Bible stories".
There are also people who are not satisfied with the world described in the "Old Testament" and start new sects, write the doctrines into white papers, and tell the story of their faith in the ten years after Bitcoin. Just like the writing of the 66 books of the Bible spanned 1,500 years, and after 2,000 years of interpretation, Christianity has divided into 33,000 branches.
CoinMarketCap shows that there are more than 4,900 types of digital currencies, and the overall digital currency market size is nearly 140 million yuan. Bitcoin still leads the entire digital currency market with a market share of 66%, and the recent price has been hovering around US$7,200 per coin.
So many currencies have different functions and are divided into different categories: digital currencies represented by Bitcoin are positioned as "digital gold" and have certain value storage and hedging characteristics; Ethereum The digital currency represented by Bitcoin has become the "operational fuel" in its network system; the stable currency represented by USDT and Libra has good payment properties due to its low volatility; the digital currency issued by the central bank represented by DCEP will definitely To a certain extent, it replaces M0, allowing commercial institutions and ordinary people to receive and pay without delay when they are out of cash and disconnected from the Internet.
It can be seen that after 10 years of development of blockchain technology, the first and largest application is digital currency.
Digital currency has also become an attractive reward for participants to maintain the public chain.
So besides digital currency, where else can blockchain technology be used?
Let us recall what the essence of blockchain is—a decentralized database, and its corresponding characteristics: traceability, publicity, anonymity, and tamper-proofing. In theory, you can try to use blockchain to transform traditional scenarios that use centralized databases to see if they are suitable.
Next, let’s talk about several industries and scenarios where blockchain has been successfully implemented:
Blockchain can prove the existence of a certain file or digital content at a specific time through hash timestamps, providing judicial authentication, Identity certification, property rights protection, anti-counterfeiting traceability, etc. provide perfect solutions
In the field of anti-counterfeiting traceability, through the supply chain tracking areaBlockchain technology can be widely used in various fields such as food and medicine, agricultural products, alcohol, and luxury goods.
Give two examples.
Blockchain can allow government data to be run, greatly streamlining service processes
The distributed technology of blockchain can allow government departments to be centralized on one chain, and all service processes are delivered to smart contracts, and the workers only need to be in one department Through identity authentication and electronic signature, smart contracts can be automatically processed and transferred, and all subsequent approvals and signatures can be completed in sequence.
Blockchain invoices are the earliest use of blockchain technology in China. The tax department launched the "Tax Chain" platform for blockchain electronic invoices. The tax department, the issuer, and the payee join the "Tax Chain" network through unique digital identities, truly realizing "instant invoicing for transactions" and "instant reimbursement after invoicing" - in seconds Level invoicing and minute-level reimbursement accounting greatly reduce tax collection and management costs, and effectively solve problems such as data tampering, over-reporting of one ticket, and tax evasion.
Poverty alleviation is another practical application of blockchain technology. Utilize the characteristics of openness, transparency, traceability, and non-tampering of blockchain technology to achieve transparent use, precise investment, and efficient management of poverty alleviation funds.
Give two examples as well.
The eID network identity operation agency guided by the Third Research Institute of the Ministry of Public Security is jointly developing a "digital identity chain" with Gongyilian, which will be issued to Chinese citizens based on the citizen's identity number as the root and cryptographic algorithm. Since it was put into operation, the eID digital identity system has served the full life cycle management of 100 million eIDs, effectively alleviating the problems of personal identity information being fraudulently used, abused and privacy leaked.
Odaily Planet Daily compiled 5 identity chain projects registered with the Cyberspace Administration of China
Blockchain technology naturally has financial attributes
In terms of payment and settlement, under the blockchain distributed ledger system, there are many markets Participants jointly maintain and synchronize a "general ledger" in real time. In just a few minutes, they can complete payment, clearing, and settlement tasks that currently take two or three days to complete, reducing the complexity and cost of cross-bank and cross-border transactions. At the same time, the underlying encryption technology of the blockchain ensures that participants cannot tamper with the ledger, ensuring that transaction records are transparent and safe. Regulators can easily track on-chain transactions and quickly locate high-risk capital flows.
In terms of securities issuance transactions, the traditional stock issuance process is long, costly and complex. Blockchain technology can weaken the role of underwriting institutions and help all parties establish a fast and accurate information exchange and sharing channel. The issuer can handle the issuance on its own through smart contracts. , regulatory authorities conduct unified review and verification, and investors can also bypass intermediaries for direct operations.
In terms of digital bills and supply chain finance, blockchain technology can effectively solve the financing difficulties of small and medium-sized enterprises. It is difficult for current supply chain finance to benefit small and medium-sized enterprises in the upper reaches of the industrial chain, because they often do not have direct trade relations with core enterprises, and it is difficult for financial institutions to evaluate their credit qualifications. Based on blockchain technology, we can establish a consortium chain network covering core enterprises, upstream and downstream suppliers, financial institutions, etc. The core enterprises issue accounts receivable vouchers to their suppliers. After the bills are digitized and uploaded to the chain, they can be uploaded to the supplier flow betweenThrough the transfer, each level of supplier can realize the corresponding amount of financing with the digital bill certificate.
Give me an example.
The China Enterprise Cloud Chain, jointly launched by ICBC, Postal Savings Bank of China, 11 central enterprises, etc., has covered 48,000 companies since its establishment in 2017, with the amount of rights confirmed on the chain reaching 100 billion yuan, and factoring financing of 57 billion yuan. , cumulative transactions reached 300 billion yuan. After receiving the loan application, financial institutions can verify the authenticity of the contract on the chain and whether the contract has been verified multiple times (multiple loans); the smart contract automatically clears and settles, reducing costs and increasing efficiency; at the same time, the accounts payable of core enterprises can have The corresponding vouchers will be split by the first-level suppliers and handed over to the second- and third-level suppliers in the chain to help them with financing; core enterprises can also use this to understand whether the entire chain is operating normally and avoid emergencies. Redemption pressure.
Blockchain technology will greatly optimize the existing use of big data and play a huge role in data circulation and sharing
The aforementioned areas are areas that we are relatively familiar with. As more new technologies develop, blockchain may be able to be combined with them and play a role in unexpected cross-fields and new scenarios that are currently unforeseen.
In the future, the Internet, artificial intelligence, and the Internet of Things will generate massive amounts of data. The existing centralized data storage (computing model) will face huge challenges. Edge storage (computing) based on blockchain technology is expected to become a future solution. Furthermore, the non-tampering and traceability mechanism of blockchain ensures the authenticity and high quality of data, which becomes the basis for the use of all data such as big data, deep learning, and artificial intelligence.
Finally, blockchain can realize multi-party collaborative data calculations while protecting data privacy, and is expected to solve the problems of "data monopoly" and "data islands" and realize the value of data circulation.
In response to the current blockchain development stage, in order to meet the blockchain development and use needs of general business users, many traditional cloud service providers have begun to deploy their own BaaS ("Blockchain as a Service") solutions. The combination of blockchain and cloud computing will effectively reduce enterprise blockchain deployment costs and promote the implementation of blockchain usage scenarios. In the future, blockchain technology will also play an important role in many fields such as charity, insurance, energy, logistics, and the Internet of Things.
During this trial process from traditional technology to blockchain, we found that when certain scenarios have stronger demands for traceability, tamper-proofing, and decentralization, they also have problems with the weaknesses of blockchain (such as performance). , the requirements are not high, and this field is quite suitable for combining blockchain.
At the same time, in the process of blockchain evolution, it has also developed from a highly decentralized public chain accessible to everyone to a consortium chain with different permissions and maintained by multiple centers. Balances the advantages and disadvantages of the two systems.
Typical examples of alliance chains include: FISCO BCOS jointly developed by WeBank and the Golden Alliance Open Source Working Group, Fabric, a major contribution from IBM, and Ant Alliance Chain led by Ant Blockchain, etc.
These trustless systems represent more secure data authentication and storage mechanisms, where data is effectively authenticated and protected.Businesses or individuals can exchange or enter into contracts digitally, where these contracts are embedded in code and stored in transparent, shared databases where they cannot be deleted, tampered with, or revised.
It is boldly predicted that in the future, contracts, audits, tasks, and payments will all be digitized with unique and secure signatures. Digital signatures will be permanently identified, authenticated, legalized, and stored, and cannot be tampered with. There is no need for an intermediary to guarantee each of your transactions. You can conduct transactions without knowing the basic information of the other party. While improving information security, it effectively reduces transaction costs and improves transaction efficiency.
Generally speaking, there has been a lot of progress in the implementation of blockchain compared to two years ago.
Many improvements are at the bottom of the system, and users cannot directly see that blockchain is used, but they have actually benefited from it; some applications are still in pilot mode, and users have not yet been able to experience it. In the future, blockchain is expected to be used on a large scale and become one of the Internet infrastructure.
I hope that after reading this, you have a general understanding of what blockchain is and what blockchain can do.
Related Q&A: What is blockchain
Blockchain is actually equivalent to a disintermediated database, which is composed of a series of data blocks. Each of its data blocks contains information about a Bitcoin network transaction, which is used to verify the validity of the information and generate the next block.
In a narrow sense, blockchain is a chain data structure that combines data blocks in a sequential manner in chronological order, and is cryptographically guaranteed to be non-tamperable and non-forgeable. distributed ledger.
In a broad sense, blockchain is actually a distributed infrastructure and computing method, which is used to ensure the security of data transmission and access.
Blockchain infrastructure:
Blockchain is composed of six infrastructures: data layer, network layer, consensus layer, incentive layer, contract layer and usage layer.
『8』 Blockchain has officially entered the 3.0 era, and real estate, supply chain, etc. will become key areas of application
With the continuous development of blockchain, the scope of blockchain application coverage More and more widely, with the improvement of scalability and efficiency, the application scope of blockchain will go beyond finance and expand to fields such as logistics, real estate and the Internet of Things, becoming a bottom-level protocol in the future society, which means The blockchain will enter the 3.0 era.
The blockchain 1.0 era is represented by BTC (decentralized concept), which plays more of a distributed accounting role, such as BTC, Ripple, BCH, Litecoin, Dogecoin, etc. It is more used for digital currency accounting. Of course, the development in the first stage is not perfect. Bitcoin still has many problems that need to be solved, such as expansion, lightning payments, hard forks, etc.
With further completion, the blockchain has entered the 2.0 era, represented by ETH (smart contract), entering the contract stage.part.
Blockchain 2.0 represented by ETH is a great progress, but there are still many problems, such as channel congestion, slow transaction speed, and fork risk. High handling fees and so on. For example, after the popular CryptoKitties were launched on the Ethereum platform, they occupied about 25% of the Ethereum network at its peak, causing congestion on the entire Ethereum network and seriously affecting the experience of other Ethereum users. . The current development is a transition process from the first stage to the second stage.
After bidding farewell to the 1.0 and 2.0 eras, thanks to the continuous development of technology, blockchain has become more practical. This also means that the blockchain will completely break away from the financial attributes of the start-up period and enter practical application scenarios in all walks of life with its decentralization and other characteristics.
This also means that the blockchain has officially opened its 3.0 era - the era of comprehensive application. The blockchain industry structure in the 3.0 era is also more complex. Today I will give you a brief analysis.
The blockchain industry in the 3.0 era is divided into three levels: basic layer, service layer and application layer.
(1), Basic layer
The corresponding upstream, middle and downstream of the industrial chain include: upstream underlying technology and infrastructure (core technology, equipment, underlying platform deployment method), the midstream service layer mainly provides developers with applications based on blockchain technology; the downstream application layer includes finance, supply chain management, intelligent manufacturing, government enterprises, services, social applications, etc.
Hardware, technology and infrastructure manufacturers mainly provide chips, mining machines, mining pools, hard drives, routers and other infrastructure necessary for blockchain applications.
The underlying platform deployment methods can be divided into public chain, alliance chain, and private chain.
The underlying technology includes core basic components, protocols and algorithms. Based on the underlying core technology components, it provides different functions for different application scenarios, including smart contracts, programmable assets, incentive mechanisms, member management, etc.
The base layer provides the underlying blockchain or distributed ledger technology framework, mainly including Ethereum, Hyperledger Fabric, R3 Corda, FISCO BCOS, etc.
(2) Service layer
The service layer refers to the BaaS (Blockchain as a Service) platform. The main domestic BaaS platforms are Ant Blockchain BaaS platform, Tencent Cloud TBaaS, Ping An Yi Lian BaaS platform, etc.
It mainly provides developers with applications based on blockchain technology, and provides smart contracts, information security, data services and other products based on the underlying technology. services to improve the convenience and scalability of developers developing applications at the platform layer.
Application and service vendors are responsible for the research and development of general blockchain technology and technology expansion platforms, the construction of digital currency education and storage platforms, and provide technology for the industry application layer. support.
(3) Application layer
The application layer is represented by core application components, including smart contracts, programmable assets, incentive mechanisms, member management, etc.
Refers to the end user or service provider of blockchain. The main application scenarios of blockchain now include cross-border payment, anti-counterfeiting traceability, and supply chain. Finance, trade finance, electronic bills, ABS, etc.
Service objects are divided into two categories: B-side (initial stage): blockchain + (finance, supply chain management, copyright protection, education); C-side (first to land): blockchain+ (sharing economy, pan-entertainment).
The downstream blockchain application field is the combination of blockchain technology and existing industries. Now, Many industries have begun the application era of blockchain 3.0.
(1) Blockchain + supply chain
Blockchain + supply chain enables full-process traceability of product information. The traceability and anti-counterfeiting system of the traditional supply chain has shortcomings such as opaque information, easy data tampering, poor security and relative closure. However, using blockchain technology and Internet of Things technology, the information on the raw material purchasing process, production process and circulation process of goods can be processed. Integration and traceability can truly realize the full-process authentic traceability across brands, channels, retailers, and consumers, down to each item and code, significantly improving user trust experience.
(2), Blockchain + Internet of Things
Build an information exchange network in the era of Internet of Everything. As the number of devices in the Internet of Things grows, the distributed nature of the blockchain provides a way for self-governance of the Internet of Things, which can help devices in the Internet of Things understand each other and understand the correlation between different devices, thereby realizing the distribution of the Internet of Things. type control.
(3), Blockchain + Medical
Ensure the safe sharing of medical data. Application areaBlockchain technology mathematically encrypts medical data, which can effectively prevent risks such as malicious modification of medical data. The medical data sharing and exchange system developed using blockchain technology uploads encrypted medical data, allowing data to be shared and circulated quickly, efficiently and securely between patients and medical institutions, effectively simplifying the management of medical data. Call process to provide data guarantee for accurate diagnosis of illness.
(4) Blockchain + Real Estate
There are many potential application scenarios of blockchain in the real estate industry. Common ones include: Real estate transactions. Pain points in the process of buying and selling property include: lack of transparency during and after the transaction, reams of paperwork, potential for fraud, errors in public records, and that’s just to name a few. Blockchain provides a way to achieve the need for paperless and fast transactions. In addition, real estate blockchain applications can help record, trace and transfer title deeds, deeds, liens, etc., and also provide a platform for financial companies, title companies and mortgage companies. Blockchain technology strives to securely preserve files while enhancing transparency and reducing costs. In addition, blockchain is also applied in the field of construction engineering, and many companies are applying this technology in the current urban renewal boom. For example, Shenzhen's Lanfang Chain has proposed a package of solutions including blockchain + urban renewal/construction engineering/real estate development based on blockchain, which comprehensively serves many fields in the real estate industry. Currently, its official website and mobile applications are online.
In addition, blockchain has already had many applications in supply chain finance, stock trading, banking, etc., so I won’t go into details here.
As one of the important contents of my country’s 14th Five-Year Plan, officials have long proposed to accelerate the promotion of blockchain Technological and industrial innovation and development, and actively promote the integrated development of blockchain and economy and society.
The key to achieving the above two developments lies in the following two points:
1. Breakthrough in the core technology of blockchain technology.
Blockchain technology is currently the technology with the smallest gap between my country and Europe and the United States. Officials particularly emphasize that in this emerging field, my country must be at the forefront of theory, occupy the commanding heights of innovation, and gain new industrial advantages. It is necessary to promote collaborative research, accelerate breakthroughs in core technologies, and provide safe and controllable technical support for the development of blockchain applications.
At present, most of the blockchain technology is still in the conceptual hype stage, and many business scenarios use blockchain purely for the sake of blockchain. So far, no one in our country can solve core technical dilemmas such as the three-dimensional paradox on a global scale, so we must return to the basics.Only through long-term and painstaking research on basic theories and core technologies can major breakthroughs be achieved.
In fact, the official has put forward very high requirements for the theoretical technology and subsequent application development of blockchain technology. Do a good job in basic theoretical research on blockchain, Focusing on conquering a number of key core technologies and truly shouldering the burden of technology research and development is the key to the current development of blockchain.
2. Enhance international voice and rule-making power.
Different from previous information technologies, blockchain technology is highly scalable, or aggressive. Its rules or right to speak determine its scope of influence, because every business on the chain is Individuals or institutions must obey the rules set by the blockchain, whether at home or abroad. For example, when using the Windows system, everyone must obey the rules of Windows, but Windows only stipulates the rules for information interaction for users, which is acceptable to us, while the blockchain stipulates industry governance rules. With its distributed characteristics, the governance rules of the blockchain can quickly transcend national borders and geographical restrictions.
In order to achieve the above two points, we must strengthen the construction of the talent team, establish and improve the talent training system, create various forms of high-level talent training platforms, and cultivate a A group of leading figures and a high-level innovation team.
Blockchain, as an architectural innovation technology, has a huge demand for comprehensive talents, requiring practitioners to master a variety of professional and technical knowledge involving cryptography, information science, basic mathematics, etc. To develop blockchain, we must strengthen the construction of a talent team with deep cross-integration of disciplines, and establish a talent cultivation system in a forward-looking and systematic manner from the aspects of basic research, applied research and development, and industrial integration.
Blockchain technology is an important part of the future digital economy and has rich advantages for all walks of life. Although we have entered the 3.0 era, the vertical application of blockchain in various industries has just begun.
What do you think of the future of blockchain?
『九』What are the mainstream blockchain technologies?
This article attempts to provide an overview of blockchain-related technology schools and mainstream platforms as a guide for learning the blockchain technology system. , intended to inspire discussion and promote consensus in the blockchain development community. The schools of blockchain technology plan ahead of the battle. If you want to invest in the field of blockchain development, you must at least find out who the current players are and what their respective opinions and strengths are. There are no certain rules for dividing blockchain technology schools. As far as I can see, there may be the following four ways: The first is to divide it into public chain, private chain and alliance chain according to the node access rules. The representatives of the public chain are naturally Bitcoin and Ethereum, and the private chainR3 Corda is the most famous, and the representative work of the alliance chain is Fabric under the name of Hyperledger. Public chains focus on anonymity and decentralization, while private chains and consortium chains focus on high efficiency, and often set entry barriers. These differences between public chains, private chains and alliance chains are all reflected in technology. For example, private chains and alliance chains assume that the number of nodes is not large, and the PBFT algorithm can be used to form a consensus. The public chain assumes a large and dynamically changing node network. Using PBFT is too inefficient, and only a lottery-like algorithm can be used to determine opinion leaders. This means that it is difficult for private chains and alliance chains to become public chains, and although it is easy to use public chains to make alliance chains or private chains, it is not plug-and-play. Scholars cannot ignore this difference. The second is that according to the sharing goal, it is divided into two groups: shared ledger and shared state machine. Bitcoin is a typical shared ledger, and Chain and BigchainDB should also fall into this category. These blockchain systems share a general ledger between various nodes, so it is more convenient to connect with financial applications. In another large type of blockchain system, each node shares a state machine that can complete Turing complete calculations, such as Ethereum and Fabric. They all change the state of the shared state machine by executing smart contracts, thereby achieving various complex functions. . The third is to divide the blockchain system into three generations: 1.0, 2.0 and 3.0 according to the intergenerational evolution described by Melanie Swann. Among them, 1.0 supports decentralized trading and payment systems, 2.0 supports industry applications through smart contracts, and 3.0 supports decentralized social systems. Bitcoin and Chain should belong to the blockchain 1.0 system, while Ethereum and Fabric are blockchain 2.0 systems. There is currently no successful blockchain 3.0 system, but there is one unsuccessful attempt, which is the famous The DAO . The fourth is that according to the core data structure, it is divided into two factions: blockchain and distributed ledger. The blockchain school really implements a chain of blocks as the core data structure in the system, while the distributed ledger school only absorbs the spirit of the blockchain and does not really use a blockchain as the core data structure. , or although it is temporarily used, it is stated that the Zhuangwu blockchain is intended to be a distributed ledger. If time and opportunity come together, it may not be impossible to replace it. Mainstream blockchain technology platforms understand the division of schools, but they can still only be used to point out the country and brag. To start, there must be an entry point. It is said that there are thousands of blockchain currencies, but there are only dozens of technology platforms worth paying attention to. If you want to enter the field of blockchain development, lay a good foundation, practice good skills, and get a few good ones. offer, there are only a handful of platforms worthy of in-depth study and study. The first, of course, is Bitcoin. As the first and most successful and important model project of the blockchain, Bitcoin has been online for more than eight years without any serious security and operation and maintenance incidents. Its stability and power can be called contemporary software. System model. BitcoinBitcoin Core is an open source software with high code quality and good documentation. From the perspective of learning blockchain principles and mastering core technologies, Bitcoin Core is the best entry point to learn authentic blockchain technology. Of course, Bitcoin Core is written in C++, and uses some C++11 and Boost library mechanisms, which puts higher requirements on learners' C++ level. Another advantage of learning Bitcoin platform development is that you can connect with the prosperous Bitcoin technology community. There are currently many people working on improving and upgrading Bitcoin. The more people there are, the more power there is. Newer ideas and technologies such as Segregated Verification, Lightning Network, and Sidechains have all taken the lead in being implemented in the Bitcoin community. For example, Blockstream, the main leader of sidechain technology, is led by cryptocurrency veteran Adam Back, and Blockstream is one of the largest contributors to Bitcoin Core, so some sidechain-related technologies are the most discussed in the Bitcoin community. However, there is great controversy as to whether Bitcoin, as a typical blockchain 1.0 system, is the best technical platform to support other types of blockchain applications. In addition, not everyone has the ability and necessity to be proficient in the underlying technology of blockchain. So for those who are eager to rush into the blockchain field to do (quān) things (qián), the more straightforward learning goals may be Ethereum and Hyperledger Fabric. Smart contract development using Solidity on Ethereum is the easiest way to get into blockchain development, bar none. Ethereum's ideals are very grand. Because it is equipped with a powerful Turing-complete smart contract virtual machine, it can become the mother platform of all blockchain projects and is the big turtle that carries the entire blockchain world. Developing a cryptocurrency similar to Bitcoin on Ethereum is an out-and-out small goal. Generally, experienced developers can get started with the guidance of the documentation in half a day to a day. The question is, what happens after you get started? Can you conquer the world just by writing Solidity? This is highly doubtful. We can also say the other way around, if Ethereum + Solidity is the ultimate solution for blockchain, then why are there so many blockchain technology schools? In particular, Ethereum does not seem to have left a way for giant centralized organizations in the real world to survive. This completely uncompromising revolutionary attitude may also become an obstacle to the promotion of Ethereum. The current development of the Ethereum project is not going well. A more prominent problem is that there are too many projects and power is dispersed, resulting in uneven project quality. But despite this, compared with other blockchain 2.0 platforms, the development environment provided by Ethereum is the simplest and most complete. It is absolutely necessary for people who are new to blockchain to learn Ethereum to establish the most "authentic" understanding of blockchain and smart contracts. The third branch of the mainstream blockchain technology platform is Fabric, which is Hyperledger’s first and most well-known incubation project. Fabric is the earliestFrom IBM's Open Blockchain project, by November 2015, IBM handed over the 44,000 lines of Go language code that had been developed at that time to the Linux Foundation and incorporated it into the Hyperledger project. During a hackathon in March 2016, Blockstream and DAH merged their respective codes into Open Blockchain, which was later renamed Fabric. So far, Fabric and Sawtooth Lake provided by Intel are listed as the first-level incubation projects of Hyperledger, but the former has received far more attention than the latter. From a technical perspective, Fabric has a good idea, and its focus is to meet the commercial needs of enterprises, such as solving transaction volume issues. As we all know, Bitcoin’s biggest shortcoming is its upper limit of 7 transactions per second, which is completely unable to meet practical needs. Fabric's goal is to achieve 100,000 transactions per second. This volume is close to the instantaneous peak of the Double Eleven transaction volume that just passed, and can fully meet industry-level applications under normal conditions. Fabric is developed in Go language and also provides APIs in multiple languages. It is particularly worth mentioning that Fabric makes full use of container technology. For example, its smart contracts run in containers. This is also a benefit that Go language brings to Fabric, because the static compilation and deployment characteristics of Go language are very suitable for developing programs in containers. Fabric also has some features, such as its membership service that can set up node access review, which is a typical alliance chain feature. Another example is that its consensus algorithm is customizable. The shortcoming of Fabric is that the system is relatively complex. Although it has documentation, it is difficult for developers who lack experience to learn it. However, because of its clear positioning and catering to the mentality of many companies, many institutions are already secretly developing alliance chain projects in the industry based on Fabric.
『Shi』Is hyperledgerfabric a public chain?
Hyper ledger fabric is not a public chain. It is a permissioned commercial-based blockchain architecture that mainly solves commercial blockchain needs. . Hyperledger Fabric is an open source, enterprise-grade, permissioned distributed ledger platform. It was originally designed for enterprise-level applications. For other popular distributed ledger systems or blockchain platforms on the market, Hyperledger Fabric has many different features and application areas.
Extended information:
1. About Blockchain
1. Blockchain is essentially a decentralized database. As the underlying technology of Bitcoin, it is A series of data blocks generated using cryptographic methods. Each data block contains information about a Bitcoin network transaction, which is used to verify the validity (anti-counterfeiting) and production of its information.into the next block. The concept of blockchain was first proposed by a person named Satoshi Nakamoto in 2008.
2. The reason why blockchain comes into being is that in traditional business networks, when each company interacts with data or does business, each company will provide an interface to another company for access through its own database. In this way, a problem will arise, and there is no guarantee that the data of each company is the same. Moreover, fetching data from someone else's central database cannot guarantee the authenticity of the data. There is a trust problem. The distributed ledger model of blockchain can solve this problem very well.
3. Blockchain has several obvious characteristics, namely: decentralization, non-forgery, non-tampering, openness and transparency, consistent ledgers, and anonymity. Blockchain is divided into public chain, private chain and alliance chain. Public chain refers to a blockchain in which anyone in the world can read and send transactions, and the transactions can be effectively confirmed, and can also participate in the consensus process. The biggest difference with a private chain is that it is only open to individual individuals or entities. Therefore, the writing permission of a private blockchain is only in the hands of one organization. Read permissions are either open to the public or arbitrarily restricted. The characteristic of the private chain is that the transaction speed is very fast, providing better protection for privacy, and can significantly reduce transaction costs, or even make the cost zero. The alliance chain is only for members of a specific group and limited third parties. It designates multiple pre-selected nodes as bookkeepers, and the generation of each block is jointly decided by all pre-selected nodes.
2. About Hyperledger Fabric
Hyperledger Fabric is a permissioned commercial-based blockchain infrastructure. Mainly solves commercial blockchain needs. First of all, all nodes will have a shared ledger, which will encapsulate commercial contracts and contracts, put them in the ledger, and automatically trigger information based on conditions. There are no human steps to ensure fairness and impartiality. Secondly, privacy. The alliance chain has different roles with different permissions. Different roles operate different data. The privacy function can protect the data in a timely manner. Third, the trust mechanism is better. Trust relationships can be established between nodes without identity confirmation.
- 上一篇: 区块链广发银行是干嘛的,广发证券区块链
- 下一篇: 区块链算法系统,区块链算法有哪些