Ethereum infrastructure
Ethereum is an implementation of blockchain. In Ethereum network, many nodes are connected with each other to form Ethereum network:
Ethereum node software provides two core functions: data storage and contract code execution
in each Ethereum node, complete blockchain data is stored. Ethereum not only saves the transaction data on the chain, but also saves the compiled contract code on the chain
At the same time, a virtual machine is provided to execute the contract code Ethereum virtual machine
Ethereum blockchain not only stores data and code, but also contains a virtual machine (EVM) in each node to execute contract code - it sounds like a computer operating system
in fact, this is the core difference between Ethereum and bitcoin: the existence of virtual machine has brought blockchain into the era of 2.0 and made blockchain a friendly platform for application developers for the first time
the above content comes from the introction course of Ethereum DAPP development
there is no central server in Ethereum. Instead, there are many equal nodes connected by P2P protocol, which store all the data in many nodes. When a user initiates a transaction, the transaction will be broadcast out through P2P protocol. The miner node verifies, packages and further broadcasts the transaction to the whole network. After confirmation in the blockchain, the operation is considered to be unchangeable
in the articles on blockchain on the Internet, the two words distributed and decentralized are mentioned, sometimes slightly different, sometimes mixed. The author thinks that if we want to distinguish accurately, the distributed system emphasizes that multiple components work together by sending messages, and the decentralized system emphasizes that there is no central node to control the operation of the whole system. Therefore, we think that Ethereum is both decentralized and distributed, or running a decentralized program on a distributed platform.
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
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.