Position: Home page » Blockchain » Blockchain core layer

Blockchain core layer

Publish: 2021-04-13 16:54:43
1. First of all, we can take a look at the official website explanation of blockchain technology. In a narrow sense, blockchain is a kind of chain data structure that combines data blocks in a sequential way according to the time sequence, and it is a distributed account book that can not be tampered with and forged by means of cryptography
broadly speaking, blockchain technology is a new distributed infrastructure and computing paradigm, which uses blockchain data structure to verify and store data, uses distributed node consensus algorithm to generate and update data, uses cryptography to ensure the security of data transmission and access, and uses intelligent contract composed of automated script code to program and operate data
as we all know, blockchain technology is an independent underlying architecture from bitcoin system. From the perspective of architecture model, it is a set of distributed ledger, which is naturally used for bookkeeping
in the blockchain technology, if you want to generate accounting records, you need to have the transaction and flow of funds. Therefore, in the initial blockchain technology, the cryptocurrency corresponding to the main network is used as circulation goods, and the circulation transaction records of cryptocurrency between the accounts of the main network of the blockchain will be recorded on the main network
different from other transaction record databases, transaction records on the main network of blockchain technology will be recorded on all block nodes (i.e. all data blocks) in the main network, which is the so-called decentralization principle. That is to say, in blockchain technology, there is no central database to store all records, Every block on the chain has the transaction data of the whole chain, that is to say, every data block is the center
another feature of blockchain technology is that it can't be tampered with, because every transaction on the blockchain will be recorded in all blocks on the chain, so no single data block can change the record. Even if you change it, all other data blocks will also record real data, and each group of data can be traced back to the first time
because of these characteristics of blockchain technology, after the advent of bitcoin, blockchain has also attracted a lot of attention, and many people also began to want to use blockchain technology to make a centerless, traceable and unchangeable data, so as to ensure the credibility of the data
however, blockchain technology also faces many problems, such as single application scenario, non modifiable original error data, non recoverable currency stolen by hackers, etc.
2.

From the perspective of technology and architecture, I will tell you my understanding of blockchain in common language

what is blockchain? In a word, blockchain is a storage system. To be more specific, blockchain is a distributed storage system without an administrator and each node has all the data

What are the common storage systems like

first, how to ensure high availability

the common storage system usually uses "rendancy" to solve the problem of high availability. As shown in the figure above, if the data can be copied into several copies and rendant to multiple places, high availability can be guaranteed. The data in one place is hung, and there is data in other places. For example, the master-slave cluster of MySQL is the same principle, and the raid of disk is also the same principle

two points need to be emphasized in this place are: data rendancy often leads to consistency problems

1. For example, in the master-slave cluster of MySQL, there is actually a delay in reading and writing, which means there is a inconsistency in reading and writing in a short period of time. This is a side effect of data rendancy

The second point is that data rendancy often reces the efficiency of writing, because data synchronization also consumes resources. If you add two slave libraries, the write efficiency will be affected. The common storage system is to use rendancy to ensure the high availability of data

so the second question, ordinary storage system, can write more

the answer is yes, for example, take this graph as an example:

in fact, MySQL can do a master-slave synchronization of al masters, master-slave synchronization of al masters, two nodes can be written at the same time. If you want to do a multi room multi live data center, in fact, multi room multi live data synchronization. What we should emphasize here is that multi-point writing often leads to the consistency problem of writing conflicts. Take MySQL as an example, suppose that the attribute of a table is self incrementing ID, then the data in the database is 1234 now. If one of the nodes writes and inserts a piece of data, it may become 5, and then these 5 pieces of data are synchronized to another master node, Before synchronization, if another write node inserts a piece of data, a piece of data with self incrementing ID of 5 will be generated. Then, after the generation, synchronize to another node, and the synchronized data will conflict with the two local 5's after it arrives, which will lead to synchronization failure and write consistency conflict. This problem will occur in the case of multi-point writing

how to ensure consistency in multi-point writing

the reform "Swan class" gives you more technical work

3. Introction to seven core technologies of blockchain operation on January 15, 2018
1. Blockchain links
as the name suggests, blockchain is a chain composed of blocks. Each block is divided into block head and block body (including transaction data). The block head includes the prevhash value (also known as hash value) of the previous block used to realize the block link and the random number (nonce) used to calculate the mining difficulty. The hash value of the previous block is actually the hash value of the head of the previous block, and the random number calculation rule determines which miner can obtain the right to record the block
2. Consensus mechanism
blockchain is accompanied by the birth of bitcoin, which is the basic technology architecture of bitcoin. Blockchain can be understood as an Internet-based decentralized accounting system. A decentralized digital currency system like bitcoin requires the consistency of accounting of honest nodes without a central node, which needs blockchain to complete. Therefore, the core of blockchain technology is a consensus mechanism to reach a consensus on the legitimacy of transactions between indivials without mutual trust without central control
there are four main types of consensus mechanisms in blockchain: pow, POS, dpos and distributed consistency algorithm
3. Unlocking script
script is an important technology to realize automatic verification and contract execution on blockchain. Every output of every transaction does not point to an address in the strict sense, but to a script. A script is like a set of rules that constrain how the receiver can spend the asset locked on the output
the validation of transactions also depends on scripts. At present, it depends on two kinds of scripts: Lock script and unlock script. Locking script is a condition added to the output transaction, which is realized by a script language and located in the output of the transaction. The unlocking script corresponds to the locking script. Only when the conditions required by the locking script are met can the assets corresponding to the script be spent, which is located in the input of the transaction. Many flexible conditions can be expressed by script language. Interpretation script is similar to the "virtual machine" in our programming field, which runs in every node of the blockchain network in a distributed way
4. Transaction rules
blockchain transaction is not only the basic unit of a block, but also the actual effective content recorded by the blockchain. A blockchain transaction can be a transfer, or the deployment of smart contracts and other transactions
as far as bitcoin is concerned, a transaction refers to a single payment transfer. The transaction rules are as follows:
1) the input and output of the transaction cannot be empty
2) for each input of a transaction, if its corresponding utxo output can be found in the current transaction pool, the transaction will be rejected. Because the current transaction pool is the transaction not recorded in the blockchain, and each input of the transaction should come from the confirmed utxo. If it is found in the current trading pool, it is Shuanghua trading
3) for each input in a transaction, the corresponding output must be utxo
4) each input unlocking script must verify the compliance of the transaction together with the corresponding output locking script
5. Transaction priority
the priority of blockchain transaction is determined by the blockchain protocol rules. For bitcoin, the priority of a transaction to be included in a block is determined by the time when the transaction is broadcast to the network and the amount of the transaction. With the increase of transaction broadcast time on the network and the increase of transaction chain age, the priority of transaction will be improved and eventually be included by the block. For Ethereum, the priority of the transaction is also related to the transaction fee that the publisher is willing to pay. The higher the transaction fee that the publisher is willing to pay, the higher the priority that the transaction is included in the block
6. Merkle proof
the original application of Merkle proof is bitcoin, which was described and created by Satoshi Nakamoto in 2009. Bitcoin blockchain uses Merkle proof to store transactions in each block. So that the transaction can not be tampered with, but also easy to verify whether the transaction is included in a specific block
7. RLP
RLP (recursive length prefix) is one of the main encoding methods of object serialization in Ethereum. Its purpose is to encode the sequence of arbitrary nested binary data.
4. There are six hierarchical structures in the blockchain, which are from bottom to top: data layer, network layer, consensus layer, incentive layer, contract layer and application layer
1. Data layer
the data layer is the lowest layer in the six hierarchies of the blockchain. We can understand the data layer as a database, but for the blockchain, this database is a tamperable and distributed database, which is what we call "distributed ledger"
in the data layer, that is, the "distributed ledger", the data information on the blockchain is stored, and the blockchain structure, asymmetric encryption technology, hash algorithm and other technical means of the block are encapsulated to ensure the security of the data in the case of the whole network being open. The specific method is:
in the blockchain network, nodes use consensus algorithm to maintain the consistency of data layer (that is, the distributed database), and use asymmetric encryption and hash algorithm in cryptography to ensure the non usurpation and traceability of the distributed database
This constitutes the bottom data structure of blockchain technology. However, it is not enough to have a distributed database. We also need to let the data information in the database be shared and exchanged. Next, we will introce the upper layer of the data layer - the network layer
Second, network layer
the network system of blockchain is essentially a P2P (point-to-point) network. Point to point means that there is no need for an intermediate link or centralized server to control the system. All resources and services in the network are distributed in the hands of each node, and the transmission of information is also a direct communication between the two nodes. However, it should be noted that P2P
(peer-to-peer) was not invented by Nakamoto, and the blockchain only integrates this technology
therefore, the network layer of blockchain is actually a particularly powerful point-to-point network system. In this system, each node can not only proce information, but also receive information, just like sending e-mail. You can write your own e-mail, and you can also receive the e-mail sent to you by others
in the blockchain network, nodes need to jointly maintain the blockchain system. Every time a node creates a new block, it needs to notify other nodes in the form of broadcast. After receiving the information, other nodes verify the block, and then create a new block on the basis of the block. In this way, the whole network can jointly maintain and update the general ledger of the blockchain system
however, what rules should the whole network follow to maintain and update the general ledger of the blockchain system? This involves the so-called "laws and regulations" (rules), which we will introce next: the consensus layer
Third, consensus layer
in the world of blockchain, consensus simply means that the whole network should maintain and update the general ledger of blockchain system according to a unified and agreed rule, which is similar to the rule of updating data. It is one of the core technologies of blockchain and the governance mechanism of blockchain community to let highly dispersed nodes reach consensus efficiently in the decentralized blockchain network
at present, the mainstream consensus mechanism algorithms include: proof of work of bitcoin (POW), proof of rights and interests of Ethereum (POS), proof of rights and interests of EOS (dpos), etc
we now introce the data layer, network layer and consensus layer. These three layers ensure that there are data, networks and rules for updating data on the network. However, there is no free lunch in the world. How can nodes actively participate in the maintenance of the blockchain system? Here is the incentive layer, which we will introce next: incentive layer< 4. Incentive layer
incentive layer is the so-called mining mechanism, which can be understood as incentive mechanism: you can get as much reward as you contribute to the blockchain system. With this incentive mechanism, the whole network nodes can be encouraged to participate in the data recording and maintenance on the blockchain
mining mechanism and consensus mechanism are actually the same truth. Consensus mechanism can be understood as the company's general rules and regulations, while mining mechanism can be understood as the reward rules for what you do well in the general rules and regulations
just like the consensus mechanism POW of bitcoin, it stipulates that more work pays more. Whoever can find the correct hash value first can get a certain amount of bitcoin reward
and Ethereum's POS stipulates that the older the holder is, the more likely he or she will be rewarded
it should be noted that the incentive layer is generally only available for the public chain, because the public chain must rely on the nodes of the whole network to jointly maintain data, so there must be a set of incentive mechanism to encourage the nodes of the whole network to participate in the construction and maintenance of the blockchain system, so as to ensure the security and reliability of the blockchain system
the blockchain is safe and reliable, and it is not intelligent enough, right? The contract layer we will introce next can make the blockchain system more intelligent
v. contract layer
Contract layer mainly includes various scripts, codes, algorithm mechanisms and smart contracts, which is the basis of block chain programming. What we call "smart contract" is at the contract level
if the bitcoin system is not intelligent enough, the "smart contract" proposed by Ethereum can meet many application scenarios. The principle of the contract layer is to embed the code into the blockchain system, in this way to realize the smart contract that can be customized. In this way, on the blockchain system, once the terms of the smart contract are triggered, the system can automatically execute commands< Finally, the application layer. The application layer is very simple. As the name suggests, it is a variety of application scenarios and cases of blockchain. What we now call "blockchain +" is the so-called application layer. At present, the blockchain applications that have been implemented are mainly various blockchain applications built on
eth, EOS and other public chains. There are more applications of gambling and games, and the real practical applications have not yet appeared.
5. Generally speaking, blockchain system consists of data layer, network layer, consensus layer, incentive layer, contract layer and application layer
among them, the data layer encapsulates the underlying data block and related data encryption and timestamp technologies; The network layer includes distributed networking mechanism, data transmission mechanism and data verification mechanism; The consensus layer mainly encapsulates all kinds of consensus algorithms of network nodes; The incentive layer integrates economic factors into the blockchain technology system, mainly including the issuance mechanism and distribution mechanism of economic incentives; The contract layer mainly encapsulates all kinds of scripts, algorithms and smart contracts, which is the basis of the programmable characteristics of blockchain; The application layer encapsulates various application scenarios and cases of blockchain. In this model, chain block structure based on timestamp, consensus mechanism of distributed nodes, economic incentive based on consensus computing power and flexible and programmable smart contract are the most representative innovations of blockchain technology.
6. The hierarchical structure of blockchain
1, data layer / data layer
the data layer mainly describes the physical form of blockchain, which is a chain structure starting from Genesis block on blockchain, including block data, chain structure, random number, time stamp, public and private key data on blockchain, and is the lowest level data structure in the whole blockchain technology
2. Network layer / network layer
the network layer mainly realizes the mechanism of distributed network through P2P technology, and the network layer includes P2P networking mechanism, data dissemination mechanism and data verification mechanism. Therefore, blockchain is essentially a P2P network with automatic networking mechanism, and the communication between nodes is maintained by maintaining a common blockchain structure
3. Consensus layer / consensus layer
consensus layer mainly includes consensus algorithm and consensus mechanism, which enables highly dispersed nodes to reach consensus on the effectiveness of block data efficiently in the decentralized blockchain network. It is one of the core technologies of blockchain and also the governance mechanism of blockchain community. At present, there are at least dozens of consensus mechanism algorithms, including workload proof, rights and interests proof, rights and interests authorization proof, burning proof, importance proof and so on
data layer, network layer and consensus layer are the necessary elements of building blockchain technology. Without any layer, it can not be called a real blockchain technology
4. Incentive layer / activator layer
the incentive layer mainly includes the issuing system and distribution system of economic incentive. Its function is to provide certain incentive measures, encourage nodes to participate in the security verification work in the blockchain, incorporate economic factors into the blockchain technology system, encourage nodes that comply with rules to participate in bookkeeping, and punish nodes that do not comply with rules
5. Contract layer / contract layer
the contract layer mainly includes various scripts, codes, algorithm mechanisms and smart contracts, which is the basis of block chain programming. Embedding the code into the blockchain or token, realizing the smart contract that can be customized, and automatically executing without a third party when certain constraints are met, is the foundation of the blockchain's distrust
6. Application layer / application layer
the application layer of blockchain encapsulates various application scenarios and cases, which are similar to applications on computer operating system, portals on Internet browsers, search engines, e-malls or apps on mobile phones. The blockchain technology applications are deployed on Ethereum, EOS and qtum, and are implemented in real life scenarios. The future programmable finance and programmable society will also be built on the application layer
incentive layer, contract layer and application layer are not necessary factors for each blockchain application, and some blockchain applications do not completely include the three-tier structure.
7. Jinwowo network analysis: establishing appropriate consensus mechanism and good governance mechanism is the core of blockchain.
8. Mine pool refers to:
as the computing level of the whole bitcoin network continues to rise exponentially, a single device or a small amount of computing power can not get the block reward provided by bitcoin network
after the computing power of the whole network has been improved to a certain extent, the low probability of getting rewards has prompted some geeks on "bitcoin talk" to develop a method that can combine a small amount of computing power and operate jointly. The website established in this way is called "mine pool"
extended data:
the existence of the mine pool reces the difficulty of mining bitcoin and other virtual digital currencies, reces the threshold of mining, and truly realizes the concept of bitcoin mining that everyone can participate in
but its disadvantages are also very obvious, because computing power is connected to the mine pool. As a mine pool, it will have a huge amount of computing power resources. In the bitcoin world, computing power represents the bookkeeping right, and computing power is everything. If the computing power of a single mine pool reaches more than 50%, it will be easy to launch 51% attacks on bitcoin and other similar virtual digital currencies, The consequences are very terrible:
the mine pool can make the mine pool with 49% of the remaining computing power have no harvest, instantly quit the competition and go bankrupt. The mine pool's computing power exceeds 50%. If 51% attack is launched, it will easily occupy all the effective computing power of the whole network
source of reference: network mine pool
9. The hierarchical points of jinwowo network technology analysis blockchain are as follows:

the bottom layer is some common basic moles, such as basic encryption algorithm, network communication library, stream processing, thread encapsulation, message encapsulation and decoding, system time, etc

the middle layer is the core mole of blockchain, which generally includes the main logic of blockchain, such as P2P network protocol, consensus mole, transaction processing mole, transaction pool mole, simple contract or intelligent contract mole, embedded database processing mole, wallet mole, etc

the top layer is often based on the interaction mole of JSON standard RPC. Based on JSON RPC, we can also make a better UI interface or a web service.
Hot content
Inn digger Publish: 2021-05-29 20:04:36 Views: 341
Purchase of virtual currency in trust contract dispute Publish: 2021-05-29 20:04:33 Views: 942
Blockchain trust machine Publish: 2021-05-29 20:04:26 Views: 720
Brief introduction of ant mine Publish: 2021-05-29 20:04:25 Views: 848
Will digital currency open in November Publish: 2021-05-29 19:56:16 Views: 861
Global digital currency asset exchange Publish: 2021-05-29 19:54:29 Views: 603
Mining chip machine S11 Publish: 2021-05-29 19:54:26 Views: 945
Ethereum algorithm Sha3 Publish: 2021-05-29 19:52:40 Views: 643
Talking about blockchain is not reliable Publish: 2021-05-29 19:52:26 Views: 754
Mining machine node query Publish: 2021-05-29 19:36:37 Views: 750