Blockchain data transaction structure
blockchain is a new application mode of distributed data storage, point-to-point transmission, consensus mechanism, encryption algorithm and other computer technologies. Blockchain is an important concept of bitcoin,
in essence, it is a decentralized database. At the same time, as the underlying technology of bitcoin, it is a series of data blocks generated by using cryptographic methods. Each data block contains a batch of information of bitcoin network transactions, Used to verify the validity of its information (anti-counterfeiting) and generate the next block
extended data
most blockchain public chains are limited by scalability. The biggest feature of blockchain technology is decentralization, which requires that all accounts in the network need to deal with the accounting process. Distributed accounting has high security, low misoperation rate, political neutrality and correctness
however, blockchain technology embraces these features at the same time, sacrificing scalability, unable to meet the personalized supervision, and slightly insufficient in protecting data privacy. Moreover, with the increase of the number of ledger, the interaction delay will increase exponentially, that is to say, the more ledger in the blockchain network, the higher the delay
If you want to understand the application of blockchain, you can refer to many books and opinions, such as illustrated blockchain, blockchain: reshaping the economy and the world, blueprint and guide of new economy, and articles of coin'an community, including a detailed understanding of the platform of coin'an community, with great strength
As the name suggests, blockchain is composed of block and chain. It is a new application mode of computer technology such as distributed data storage, point-to-point transmission, consensus mechanism, encryption algorithm and so on. It is a kind of chain data structure that combines data blocks in order according to the time sequence, and it is a secure and reliable distributed account book that can not be tampered with and forged by means of cryptographyin 2008, in his paper bitcoin: a peer-to-peer e-cash system published by Nakamoto, he first proposed the idea of blockchain and encrypted digital currency. Starting from bitcoin, blockchain has become the underlying technology of various digital currencies
Second, the working principle of blockchain:1. The basic concepts include: (1) transaction: one operation will change the account status once, such as adding a record 2) Block: records the transaction and status data within a specified time, which is a consensus and preservation of the current account status 3) Chain: it is composed of a series of blocks in chronological order, which is the log record of the whole state change. If you understand the working concept of blockchain, it is not difficult to understand its working principle. Suppose there is a distributed data logbook, which can only be added, not deleted or changed. Its structure is a linear chain formed by a series of "blocks" (which is also the source of the name of "blockchain"), and new data must be put into a new block to be added, The maintenance node can propose a new block, but it must go through a certain consensus mechanism to reach an agreement on the final selected block
2. Take bitcoin as an example to see the working principle of blockchain
the block of bitcoin is divided into block head and block body
Core advantages and characteristics of blockchain1. The verification, accounting, storage, maintenance and transmission of decentralized blockchain data are all based on distributed system structure. There is no centralized hardware or management organization, and the rights and obligations of any node are equal, The data blocks in the system are jointly maintained by the nodes with maintenance function in the whole system. 2. The open and transparent 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. Anyone can query the blockchain data and develop related applications through the open interface, so the information of the whole system is highly transparent. 3. Security blockchain uses 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. 4. Information cannot be tampered with. Once the information is verified and added to the blockchain, it will be stored permanently. Unless more than 51% (almost impossible) nodes in the system can be controlled at the same time, the modification of the database on a single node is invalid. Therefore, the data stability and reliability of the blockchain are extremely high. 5. Anonymity because the exchange between nodes follows a fixed algorithm, and its data interaction does not need trust (the program rules in the blockchain will judge whether the activity is effective or not). Therefore, the counterparties do not need to let the counterparties generate their own trust by disclosing their identities, which is very helpful for credit accumulation
At present, the most popular classification of blockchain is to divide blockchain into public blockchain, private blockchain and consortium blockchain according to different participants1. Public chain: anyone can participate in the use and maintenance, and can obtain the effective confirmation of the blockchain. Public chain is the earliest blockchain and the most widely used blockchain at present, such as bitcoin blockchain. The information is completely public
if the licensing mechanism is introced, it includes private chain and alliance chain. 2. Private chain: a company or indivial only uses the blockchain technology, enjoys the exclusive write permission of the blockchain, and does not disclose the information. At present, conservative giants (traditional finance) want to experiment with private blockchain, and the application procts of private blockchain are still groping. 3. Alliance chain: it is a blockchain between the public chain and the existing chain, which is jointly controlled by multiple organizations. The use of the chain is managed with authority, which can be controlled by the manager, and also open to others according to the manager's wishes. In addition, according to the different use scenarios and purposes of blockchain, it can be divided into currency chain for the purpose of digital currency, property chain for the purpose of recording property rights, and crowdfunding chain for the purpose of crowdfunding
On May 28, Ma Huateng, CEO of Tencent, proposed the anti-counterfeiting method based on cloud integrated blockchain technology, which is far more efficient than traditional anti-counterfeiting methods. The future anti-counterfeiting verification scenario may only require users to use their mobile phones for simple scanning, and a large number of complete information based on different dimensions can be obtainedtake Maotai liquor as an example:
distillery address, proction workshop, operation staff, inspector, delivery time, transportation vehicle information and driver information,
liquor year, raw material source, raw material supplier, storage warehouse number, raw material transportation vehicle and driver information,
all information can be accurately traced, permanently recorded and tampered with
the above information can be easily verified
2. Food safety issues as early as last November, Wal Mart has cooperated with IBM to track the source of food by using blockchain technology, so as to ensure the safety of food and increase the circulation of food to rece costs. For Wal Mart and other large supermarkets, it took a few days to investigate the source of problem food, After using this technology, only one item of proct information is needed to achieve accurate traceability, and important information such as food origin, inspector, supplier, logistics and transportation can quickly find problems in a few minutes. Currently, procts tracked by blockchain include packaging procts from the United States and pork from China
3. Information security
blockchain technology is promoting an information security technology revolution. (1) identity protection PKI is a common public key encryption technology in e-mail, message application, website and other communication applications. However, since the implementation of most PKI, the centralized trusted third party certification authority (CA) is used to issue, activate and store user certificates. Hackers can attack PKI to fake user identity or crack encrypted information
certcoin is the first PKI implementation of blockchain, which comes from MIT, removes the centralized authentication center, and uses blockchain as a distributed ledger for domain name and public key
pomcor company: blockchain PKI implementation path: keep the authentication center, and use blockchain to store the hash value of issued and activated certificates. Users can verify the authenticity of certificates through decentralized and transparent sources, and can also improve the network access performance through local authentication of secret key and signature based on blockchain
(2) data integrity protection
guardtime developed a secret key free signature architecture (Ksi) based on blockchain technology to replace the secret key based data authentication technology. Ksi stores the hash table of the original data and files on the blockchain, runs the hash algorithm to verify other copies, and compares the results with the data stored in the blockchain. Any data tampering will be found quickly because the original hash table is stored in millions of nodes
(3) key infrastructure protection
the "Achilles heel" of the Internet, DDoS has entered the TB era, DDoS is still the simplest weapon for hackers to bring down the big target with low cost, DNS service is the primary target for hackers to carry out large-scale destruction, but blockchain technology is expected to fundamentally solve the problem
The distributed storage ofblockchain makes hacker attacks lose focus. Nebulis is developing a distributed DNS system, which uses Ethereum blockchain and interstellar Internet file system (IPFs, the distributed substitute of HTTP) to register and resolve domain names. The biggest weakness of DNS is caching, which makes DDoS attacks possible. It is also the bane of the centralized government's censorship of social networks and manipulation of DNS registration. A highly transparent and distributed DNS system can effectively prevent any entity, including the government, from arbitrarily manipulating records
(1) digital currency: improve the convenience of currency issuance and use, such as bitcoin and Ethernet in foreign countries, and guorenbao in Chinafrom the use of physical transactions, to physical currency and credit currency, and then to the rise of bitcoin network, more and more people are aware of the distributed ledger blockchain technology behind it, and graally apply it in many scenarios other than digital currency
(2) cross border payment and settlement: realize point-to-point transaction, rece intermediate fees
transfer and payment. At present, the most mature application of blockchain technology is payment and transfer. Blockchain technology can avoid complicated systems, save the process of inter-bank reconciliation and review, and accelerate the settlement speed; Virtual currency can rece transaction costs without the intervention of clearing house. Different countries have different clearing proceres. It takes two or three days for a single remittance to arrive, which is inefficient and accounts for a large proportion of funds in transit. No longer through the third party, through the blockchain technology to form point-to-point payment. By eliminating the link of the third-party institutions, we can make full day payment, real-time payment, withdraw cash quickly and rece the hidden cost, which helps to avoid the capital risk. It is timely and convenient
(3) bills and supply chain financial business: rece human intervention, rece costs and operational risksvalue transfer between point-to-point, control and verify physical bills or central system; Intermediaries will be eliminated and human intervention reced. With the improvement of efficiency, financing channels are more unblocked, risks are lower, and multiple parties benefit
(4) securities issuance and Trading: realize quasi real-time asset transfer, accelerate the speed of transaction clearing
the application of blockchain technology can make the process of securities trading more concise, transparent and fast, rece the plication of IT system, and improve the efficiency of market operation. For stocks, blockchain can eliminate paper and pen or electronic form records, rece human errors in trading, and improve the transparency and traceability of trading platform. Citigroup and Nasdaq cooperate to promote blockchain applications
(5) customer credit investigation and anti fraud: rece the cost of legal compliance, prevent financial crimes
the customer information and transaction records recorded in the blockchain help banks identify abnormal transactions and effectively prevent fraud. The technical characteristics of blockchain can change the existing credit reference system, and store the data of customers with bad records in the blockchain when the bank concts "know your customer" (KYC)
equity crowdfunding:
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
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.
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.
in a narrow sense, blockchain is a kind of chained data structure, which is composed of data blocks connected in sequence according to the time sequence, and is a distributed account that can not be tampered with and forged by cryptography. In a broad sense, 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
blockchain and big blockchain are not the same concept. Big blockchain should be the name of a company. Bitcoin, Ethereum and decent are all successful cases of blockchain technology.
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.