Basic structure of blockchain Technology
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 dataso 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
2-The distributed database is the physical carrier of the blockchain, and the blockchain is the logical carrier of the transaction. All core nodes should contain the full of the blockchain data
3-The blockchain serializes the blocks according to time, and the blockchain is the only body of the whole network transaction data
4-The blockchain is only effective for adding, Invalid for other operations
5-public-private key verification based on asymmetric encryption
6-accounting node requires that Byzantine general problem can be solved / avoided
7-consensus progress is evolutionarily stable, that is, it will not collapse in the face of a certain amount of contradictory data of different nodes
8-consensus process can solve the problem of double spending
five characteristics of blockchain:
decentralized
e to the use of Distributed Accounting and storage, there is no centralized hardware or management organization, the rights and obligations of any node are equal, and the data blocks in the system are jointly maintained by the nodes with maintenance function in the whole system
thanks to the decentralization of blockchain, bitcoin also has the characteristics of decentralization [6]
openness
the system is open, in addition to the private information of all parties to the transaction is encrypted, the data of the blockchain is open to all, and anyone can query the blockchain data and develop related applications through the open interface, so the information of the whole system is highly transparent
autonomy
blockchain adopts consensus based specifications and Protocols (such as a set of open and transparent algorithms) to enable all nodes in the whole system to exchange data freely and safely in a de trusted environment, so that the trust in "people" is changed into the trust in machines, and any human intervention does not work
information cannot be tampered with
once the information is verified and added to the blockchain, it will be stored permanently. Unless more than 51% of the nodes in the system can be controlled at the same time, the modification of the database on a single node is invalid, so the data stability and reliability of the blockchain are extremely high<
anonymity
since the exchange between nodes follows a fixed algorithm, their data interaction does not need trust (the program rules in the blockchain will judge whether the activity is effective by themselves), so the counterparties do not need to let the counterparties generate their own trust by disclosing their identities, which is very helpful for credit accumulation.
distributed structure means that the blockchain system adopts open source and decentralized protocol to ensure complete data recording and storage
each transaction information in the blockchain is sent to all nodes in the whole network by the current node. Therefore, the information interceptor cannot successfully intercept the information through a certain information propagation path, because each node receives the information.
1.
Lianzhuang data block structure based on blocks
2.
network wide shared ledger
3.
asymmetric encryption
4.
source code open source
the technical basis of blockchain 2.0 era is as follows:
1.
smart contract; It is an application in the blockchain system. It is a business logic that can run automatically by coding. It usually has its own token and special development language<
2
3.
virtual machine: it is used to execute the compiled code of smart contract. Virtual machine is Turing complete
with the application and deepening of blockchain technology, the era of blockchain 3.0 has come. The mode of blockchain cooperation can be seen from behind the operation of all walks of life. Therefore, blockchain will change the way of human life widely and profoundly, so the whole life service will enter the era of blockchain. In the process of Internet development, blockchain + physical instry, blockchain e-commerce and blockchain community operation can be applied to blockchain technology
of course, 3.0 came into being with the development of modern cryptography. Today's applied cryptography is the result of cryptography 20 years ago. Therefore, in order to apply blockchain technology to more participation scenarios, especially in Internet economy and other aspects, more verification is needed to verify whether the existing encryption technology can meet the demand, and more in-depth integration of cryptographic frontier technology and continuous innovation are needed.
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.
to practice guitar: most of them are basswood panels, some even basswood back panels, which are less than 300 yuan, also known as firesticks (because they are made of the same material as firewood, and the intonation is poor)
entry guitar: most of them are spruce panels, rosewood finger boards, and the back panels are not necessarily. The price is about 1000 yuan, and most of them are 500 yuan or 600 yuan, About 1000 yuan, there are also some elementary Miandan Qin
medium Guitar: most of them are spruce panel, rosewood fingerboard, back side panel, mahogany and fire rosewood. Generally, they are middle end single piano of various series, and some of them are full single (very few), with the price around 3000
high end: all single guitars and spruce veneers are the most popular. The price is four or five thousand or more. There is no upper limit. There are tens of thousands of them, but most people don't need them
tips on guitar selection: http://www.jitatang.com/guitar It is recommended to refer to
no matter where you buy it, you should know some experience to avoid being trapped. Generally, you will be trapped when you go to a piano shop for the first time. The most important two points (you can't hear the timbre and so on):
1. Look at the appearance and choose the log color or black directly Sunset color (the classic three color system), never white, Pink Guitar, that is the above said practice piano grade
2. Check the handle. When the guitar is tuned to the standard pitch, the distance between the string and the fingerboard should be about 3mm (that is, the thickness of a coin) at the 12th point. If you press the string too high, you will feel tired, otherwise it will cause the phenomenon of playing. A good hand feeling is that you can easily press any tone with your left finger without any proct or noise, and you don't feel any effort when you press it horizontally
3. Performance (in fact, you can't see it. You can get what you pay for. It's right to choose the most expensive one in your budget.)
secondly, in most cases, once a new block is added to the end of the blockchain, the data records of the block can no longer be changed or deleted. This feature ensures the rigor of the database, that is, it cannot be tampered with.
network layer: blockchain network is essentially a P2P (peer-to-peer) network. The resources and services in the network are distributed on all nodes, and the information transmission and service implementation are directly carried out between nodes, without the intervention of intermediate links and servers. Each node not only receives information, but also generates information. Nodes synchronize information by maintaining a common blockchain. When a node creates a new block, it notifies other nodes in the form of broadcast. After receiving the information, other nodes verify the block and create a new block on the basis of the block, So as to achieve the role of the whole network to jointly maintain a bottom ledger. Therefore, the network layer will involve the design of P2P network, propagation mechanism and verification mechanism. Obviously, these designs can affect the confirmation speed of block information. The network layer can be used as a research direction in the scalable scheme of blockchain technology
data layer: the underlying data of blockchain is a data structure of block + linked list, which includes data block, chain structure, timestamp, hash function, Merkle tree, asymmetric encryption, etc. Among them, data block and chain structure can be used as the improvement direction of data layer research in the extensible scheme of blockchain technology
consensus layer: it is the basis for highly dispersed nodes to reach a fast consensus on the effectiveness of block data. The main consensus mechanisms include pow (proof of work), POS (proof of stake), dpos (delegated proof of stake) and pbft (Practical Byzantine fault tolerance), They have always been the highlight of the scalable solution of blockchain technology
incentive layer: it is a common mining mechanism, which is used to design certain economic incentive model and encourage nodes to participate in the security verification of blockchain, including the design of issuance mechanism and allocation mechanism. Improvements at this level do not seem to be directly related to blockchain scalability
Contract layer: mainly refers to various script codes, algorithm mechanisms and smart contracts. Strictly speaking, this layer of the first generation blockchain is missing, so they can only trade, and can not be used in other fields or other logical processing. The emergence of the contract layer makes it a reality to use blockchain in other fields. This part of Ethereum includes EVM (Ethereum virtual machine) and smart contract. The improvement of this level seems to provide a potential new direction for the scalability of the blockchain, but it does not seem to be directly related to the application layer in terms of structure
it is the display layer of the blockchain, including various application scenarios and cases. For example, Ethereum uses truffle and Web3 JS. The application layer of blockchain can be mobile terminal, Web terminal, or integrated into the existing server, taking the current business server as the application layer. The improvement of this level also seems to provide a potential new direction for the expansion of blockchain, but structurally, it doesn't seem to be directly related
the Xueshuo innovation blockchain Technology Workstation of Lianqiao ecation online is the only approved "blockchain Technology Specialty" pilot workstation of "smart learning workshop 2020 Xueshuo innovation workstation" launched by the school planning, construction and development center of the Ministry of ecation of China. Based on providing diversified growth paths for students, the professional station promotes the reform of the training mode of the combination of professional degree research, proction, learning and research, and constructs the applied and compound talent training system.