Position: Home page » Ethereum » Ethereum consensus algorithm

Ethereum consensus algorithm

Publish: 2021-04-12 21:44:23
1.

what is Ethereum:

Ethereum is an innovation based on the application of technologies and concepts in bitcoin to computers. Ethereum itself imitates a lot of bitcoin technology to maintain the computer platform. blockchain technology is one of them
Ethereum platform can safely run any program users want

advantages of Ethereum over other competitive currencies before Ethereum appeared, some digital currencies imitated bitcoin. However, these projects have their own shortcomings, they can only support one or several specific applications at the same time< However, the reason why Ethereum can surpass the limitations of these projects in the past is because of the core idea of Ethereum

what Ethereum wants to implement is a blockchain protocol with built-in programming language. Since it supports programming language, in theory, any blockchain application can be defined with this language, and then run on Ethereum's blockchain protocol as an application

The design of Ethereum is very flexible and adaptable

Ethereum target sets the advantages of blockchain technology, in order to add the advantages of blockchain, such as decentralization, openness and security, to almost all computing fields

blockchain applications of Ethereum

Ethereum has many blockchain applications, such as digital applications of gold and stocks, financial derivatives applications, DNS and digital authentication, etc

Ethereum has achieved more than 100 blockchain applications by many start-ups

Ethereum has also been closely watched by some financial institutions, banking consortia (such as R3), as well as large companies like Samsung, Deloitte, RWE and IBM. As a result, a number of blockchain applications such as simplified and automated financial transactions, merchant loyalty index tracking, and gift cards designed to achieve decentralization of electronic transactions have emerged

the relationship between Ethereum and blockchain:

Ethereum is a programmable blockchain

Ethereum does not give users a series of preset operations (such as bitcoin transaction), but allows users to create complex operations according to their own wishes

in this way, Ethereum can be used as a platform for various types of decentralized blockchain applications, including but not limited to cryptocurrency

like other blockchains, Ethereum also has a peer-to-peer network protocol. Ethereum blockchain database is maintained and updated by many nodes connected to the network. Each network node runs the Ethereum simulator and executes the same instructions. Therefore, people sometimes call Ethereum "world computer"

2. Go full stack + blockchain course:
a total of 22 weeks, divided into five stages,
the first stage is 4 weeks, go language foundation and network concurrency, learning the introctory go language,
the second stage is 4 weeks, go language practical web development, crawler development, cryptography, consensus algorithm, realizing lightweight public chain, learning the website and crawler that can develop golang, Achieve lightweight blockchain
stage 3, 4-week Ethereum source code analysis and smart contract DAPP development, master Ethereum core and smart contract development, as well as blockchain,
stage 4, 4-week super ledger, bitcoin EOS, source code analysis and smart contract practice, master super ledger development, cat bitcoin, bifurcated EOS after learning, As well as DAPP development of smart contract
phase 5, 6-week project practice, five enterprise level projects, and one year of blockchain project experience after learning
from the characteristics of the language itself, go is a very efficient language, which highly supports concurrency. Go language itself pays more attention to distributed system, and concurrency processing is relatively good, such as advertising and search, That kind of high concurrency server
go language advantages:
excellent performance, can be directly compiled into machine code, does not rely on other libraries, go is extremely fast. Its performance is similar to Java or C + +
concurrency is supported at the language level, which is the biggest feature of go. It is born to support concurrency, and go is the concurrency supported in gene, which can make full use of multi-core and make it easy to use concurrency
the built-in runtime supports garbage collection, which is one of the features of dynamic language. Although GC is not perfect at present, it is enough to cope with most of the situations we can encounter, especially GC after go1.1
it's easy to learn. The authors of go language all have the gene of C, so go naturally has the gene of C. There are 25 go keywords, but the expressive ability is very strong. It almost supports most of the features you've seen in other languages: inheritance, overloading, object, etc
rich standard libraries, go has built a large number of libraries, especially the network library, which is also my favorite part< As like as two peas, br / > built-in powerful tools, Go language is built with many tools chain, the best should be gofmt tools, automatic formatting code, make team review become so simple, code format is exactly the same, it is very difficult to think differently.
cross platform compilation and fast compilation. Compared with the sluggish compilation speed of Java and C + +, the fast compilation time of go is a major efficiency advantage
disadvantages of go language:
package management: package management of go language is absolutely not perfect. By default, it has no way to make a specific version of the dependency library, nor can it create replicable builds. In contrast, python, node and Ruby all have better package management systems. However, with the right tools, the package management of go language can also perform well
lack of development framework: go language does not have a major framework, such as Ruby's rails framework, Python's Django framework or PHP's laravel. This is a heated discussion in the go language community, because many people think that we should not start with using frameworks. This is true in many cases, but if you just want to build a simple crud API, it's much easier to use Django / djrf, rails laravel, or Phoenix
exception handling: go language can help developers deal with compilation errors by simply returning errors (or call stack) through functions and expected calling codes. Although this method is effective, it is easy to lose the scope of the error, so it is difficult to provide meaningful error information to users. Error package can solve this problem by allowing us to add context and stack trace to return error
another problem is that we may forget to handle errors. Static analysis tools such as errcheck and megacheck can avoid these errors. Although these solutions are very effective, they may not be the right way.
3. At the top of Ethereum is DAPP. It exchanges with the smart contract layer through Web3. JS. All smart contracts run on EVM (Ethereum virtual machine) and use RPC calls. Below EVM and RPC are the four core contents of Ethereum, including: blockchain, consensus algorithm, mining and network layer. Except DAPP, all other parts are in the Ethereum client. The most popular Ethereum client is geth (go Ethereum)
4. 1. What is the ether classic<

etc (Ethereum Classic) is a bifurcated currency that Ethereum hard bifurcates after 1920000 blocks, and its function is very similar to Ethereum. Etc adheres to the concept of decentralization and supports the consensus mechanism of blockchain guarantee. Etc firmly believes that once the blockchain starts to run, its development direction will not be controlled by any central team, but will be determined by the consensus of the people participating in the whole network and the consensus of the computing power of the whole network

the Ethereum blockchain hard branching in July 2016 aims to transfer the Dao funds stolen by hackers to an account controlled by investors, and let the old transaction records be forgotten by history. Most Ethereum developers are involved in the reversal, as are exchanges, startups and other members of the ecosystem. A few days later, the project returned to normal. But not everyone wants to forget the old record. As a result, a small number of miners continued to use the original blockchain as a protest. They described the hard fork as a capital withdrawal for the abandoned project of the Dao. So Ethereum classic (etc) was born

2. Detailed parameters

Chinese Name: Ethereum classic English Name: Ethereum classic English abbreviation: etc

developer: Ethereum Classic team core algorithm: ethash consensus proof: POW

release date: 2016 / 7 / 20 block time: About 15-17 seconds / block

total currency: fixed at 210 million, up to 230 million, Every 5 million blocks decelerate by 20%, and the first proction rection is expected to be in December 2017

main features: independent cryptocurrency
5. Ethereum focuses on smart contract and Turing. EOS is based on blockchain operating system. Ethereum and EOS are two top blockchains. At present, there are bottlenecks in blockchain technology and narrow application fields.? LF cluster + cloud server is the most advanced blockchain 3.0 at present. Focusing on different blockchain projects such as public chain, storage chain, Im chain, asset chain and application chain, the advantage lies in resource isolation: each smart contract has its own blockchain, and the governance and development of proxy voting system of token holders has the most development prospect.
6. 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.
7. There are many consensus mechanisms in the blockchain. The advantage of the pow consensus mechanism behind bitcoin, the most influential one, is that it is secure and can not be tampered with. The disadvantage is that it is too slow to process only seven transactions a second
8. The bifurcation of Ethereum Constantinople is about to begin. Many people are curious about this bifurcation and are not sure whether they need to be prepared in advance
to put it simply: if you are only the holder of eth, you don't need to make any preparation for this upgrade.
9. POW: proof of work (POW), a simple explanation is a proof to confirm that you have done a certain amount of work. Because the whole process of monitoring work is usually extremely inefficient, and it is a very efficient way to prove that the corresponding workload has been completed through the certification of the work results. For example, in real life, graation certificate, driver's license and so on, are obtained by means of test results. That is to say, how much money you get depends on your effective contribution to mining. Simply understand, the better your computer performance, the more revenue you will get. This is to allocate money according to your workload. Most digital currencies, such as bitcoin, lightcoin, etc., are virtual currencies based on POW mode (the higher the computing power, the longer the mining time, the more coins you get)
pos: POS is a consensus algorithm in the public chain, which can be used as a replacement of pow algorithm. POW is a mechanism to ensure the security of bitcoin, Ethereum and many other blockchains, but POW algorithm is criticized for destroying the environment and wasting power in the process of mining. POS tries to solve these problems by replacing the concept of mining with a different mechanism
POS mechanism can be described as a kind of virtual mining. POS mainly relies on the token in the blockchain itself. In pow, a user may buy a computer for 1000 dollars, join the network to mine and proce new blocks, and get a reward. In POS, users can buy tokens of equal value with us $1000 and put them into the POS mechanism as deposit, so that users have the opportunity to generate new blocks and get rewards. In pow, if users spend $2000 on hardware equipment, they will of course get twice the computing power to mine, thus getting twice the reward. Similarly, if you invest twice as much token as the deposit in the POS mechanism, you have twice as much chance to get the right to generate new blocks.
10. Generally speaking, the competition of blockchain public chain is fierce now, because the public chain project is the foundation of blockchain ecology, and the public chain is a super project with huge system, extremely complex and extremely difficult. At present, the overall market situation is similar to that in the early days of the computer system, which started with the development of technology; Linux operating system and UNIX (Younis) are changing, but in the end, windows dominates and apple OS coexists for a long time< br /> 
at present, Ethereum and EOS are the most popular public chains. However, the market value of EOS has plummeted after its epic loophole recently, which has been downplayed by many media. Often the most promising at the beginning may not win in the end. Recently, because of their innovative consensus algorithm, they proposed quite innovative CPOs and focused on a new public chain project

their name is gaiaworld public chain, and their CPOs consensus algorithm is their core technology. Specific technical details can go to the official website to see the white paper, in short, TPS speed has reached a new height, faster than Ethereum, and can support the layout of large projects< br /> 
at the same time, they have innovated two other technologies. Parallel chain technology can make it easier for other developers to release side chains, and then aegis protocol, which is a specific smart contract protocol&# 160;< br /> 
now there are so many air projects, it's really hard to distinguish the good from the bad, but I think the technology platform is the future
hope to adopt
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