Byte code of Ethereum virtual machine
just like bitcoin, Ethereum is neither controlled nor owned by anyone - it is an open source project created by many people around the world. Different from bitcoin protocol, Ethereum's design is very flexible and adaptable. It is very easy to create new applications on the Ethereum platform. With the release of homestead, anyone can use the applications on this platform safely
Ethereum is a programmable blockchain. It does not give users a series of preset operations, but allows users to create complex operations according to their own wishes. In this way, it can be used as a platform for many types of decentralized blockchain applications
in a narrow sense, Ethereum refers to a series of protocols that define a decentralized application platform. The core of Ethereum is Ethereum virtual machine (EVM), which can encode any complex algorithm. In computer science terminology, Ethereum is "Turing complete.". Developers can use the existing JavaScript and python as the model of other friendly programming languages to create applications running on the Ethereum simulator.
Ethereum is a new and open blockchain platform, which allows anyone to build and use decentralized applications running through blockchain technology in the platform. Like bitcoin, Ethereum is neither controlled nor owned by anyone - it's an open source project created by many people around the world
Different from bitcoin protocol, Ethereum is very flexible and adaptable. It's very easy to create new applications on the Ethereum platform. Anyone can use the applications on the platform safely
Ethereum is a programmable blockchain. It does not give users a series of preset operations (such as bitcoin trading), but allows users to create complex operations according to their own wishes. In this way, it can be used as a platform for many types of decentralized blockchain applications, including but not limited to cryptocurrency
in a narrow sense, Ethereum refers to a series of protocols that define a decentralized application platform. The core of Ethereum is Ethereum virtual machine (EVM), which can encode any complex algorithm. In computer science terminology, Ethereum is "Turing complete.". Developers can use the existing JavaScript and python as the model of other friendly programming languages to create applications running on the Ethereum simulator
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"
this massive parallel operation throughout the Ethernet network is not to make the operation more efficient. In fact, this process makes computing on Ethereum slower and more expensive than on traditional computers. However, each Ethereum node runs Ethereum virtual machine in order to maintain the consistency of the whole blockchain. The consistency of decentralization makes Ethereum have high fault tolerance, zero downtime, and can keep the data stored on the blockchain unchanged and anti censorship
Ethereum platform has no characteristics and value. Like programming languages, it's up to entrepreneurs and developers to decide what to use. However, it is clear that some application types benefit more from the functions of Ethereum than others. Ethereum is especially suitable for those applications that automatically interact directly between points or promote group coordination activities across networks
for example, coordinate the application of point-to-point market, or the automation of complex financial contracts. Bitcoin enables indivials to exchange money without the help of financial institutions, banks or governments. The impact of Ethereum may be more profound
in theory, any complex financial activities or transactions can be automatically and reliably carried out on Ethereum with coding. In addition to financial applications, any application scenario with high requirements for trust, security and persistence, such as asset registration, voting, management and Internet of things, will be affected by Ethereum platform on a large scale
a brief history of etheric Classics (etc)
etheric classics began with an unfortunate event
in May 2016, the decentralized autonomous organization (DAO) held a token sale with the goal of establishing a blockchain based venture capital to fund future decentralized applications (dapps) in the Ethereum ecosystem
basically, Dao is a complex smart contract that operates in a decentralized way - computer code that automatically performs tasks between multiple parties when conditions are met
despite its ambitious goals and successful token sales, Dao's code has a major vulnerability that allows attackers to steal eth from decentralized organizations
the attacker took advantage of this vulnerability in June 2016, triggering the infamous Dao hacking event, and maliciously stole eth worth about US $50 million
there is no doubt that Dao hacking has shocked Ethereum community and made eth price drop from $20 to $13
after the Dao hacking, the Ethereum community has to choose from three options
< UL >do nothing and try to bear the consequences of the attack; Or
start soft bifurcation to recover funds; Or
deploy a hard fork to recover the lost eth
both soft and hard bifurcations are significant network upgrades. However, soft fork allows users who are not upgraded to communicate with upgraded users, while hard fork is not backward compatible with previous versions
as developers realize that deploying soft forks will expose the network to distributed denial of service (DDoS) attacks, Ethereum community decides to initiate hard forks to recover the funds lost in Dao hacking attacks
although this scheme is supported by most people, a small number of people in Ethereum community oppose it. They think that "code is the law" and blockchain network should be unchangeable
the failure of both sides to reach an agreement on the solution eventually led to the fragmentation of Ethereum blockchain
those who tried to recover the lost eth chose the hard fork and opened the Ethereum (ETH) blockchain as we know it today, while another group stayed on the original Ethereum classic (etc) chain
what problems does ethereal classic solve
Ethernet classic (etc) is a blockchain platform that allows developers to deploy smart contracts and dapps
although this function is the same as Ethereum (ETH), etc blockchain has two main differences
first of all, Ethereum classic community opposes tampering with distributed ledger and supports the view that "blockchain network cannot and should not be modified"
secondly, although there is no rigid upper limit on the total supply of eth, it is allowed to create 230 million etc at most by adopting the monetary policy of constant supply
as a bonus item, ethereal classic launched Atlantis hard bifurcation last year to increase the interaction with Ethereum and improve the privacy protection of transactions through ZK snarks
the trading platforms recommended by etc
hot money, okex, AAX, etc
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
what is Ethereum
Ethereum is often compared with bitcoin, but the situation is different. Bitcoin is a kind of cryptocurrency and distributed payment network, which allows bitcoin to be transferred between users
related: what is bitcoin? How does it work
Ethereum has a bigger goal. As Ethereum says, "Ethereum is a distributed platform running smart contracts.". These smart contracts run on "Ethereum virtual machine", a distributed computing network composed of all devices running Ethernet nodes
"distributed platform" means that anyone can set up and run an Ethereum node just as anyone can run a bitcoin node. Anyone who wants to run "smart contracts" on nodes must pay the operators of these nodes in ether, which is a cryptocurrency related to Ethereum. Therefore, the person running the Ethernet node provides computing power and gets paid in the Ethernet, which is similar to the way that the person running the bitcoin node provides hash power and pays in bitcoin
in other words, although bitcoin is only a blockchain and payment network, Ethereum is a distributed computing network, and its blockchain can be used for many other things. Details are provided in the Ethereum white paper
what is ether
Ethernet is a digital token (or cryptocurrency) related to Ethereum blockchain. In other words, Ethereum is the token and Ethereum is the platform. But now people often use these terms alternately. For example, coinbase allows you to buy Ethereum, which stands for Ethereum
this is technically "altcoin", which actually means a non bitcoin cryptocurrency. Like bitcoin, ether is supported by distributed blockchain - in this case, Ethereum blockchain
developers who want to create applications or Ethereum smart contracts on Ethereum blockchain need Ethernet token to pay for nodes to host it, while users of Ethereum based applications may need Ethernet to pay for services in these applications. People can also sell services outside the Ethereum network and accept Ethernet payments, or they can sell Ethernet tokens in cash - just like bitcoin
first, smart contracts are so good that they are not useless
smart contracts. As the name suggests, smart contracts refer to contracts that can be executed automatically by computer code; Ethereum virtual machine is used to execute smart contract; Smart account is the carrier that smart contract can be executed. In other words, smart account, this "account" can be controlled by Ethereum virtual machine. According to what control, according to smart contract
there is no free lunch in the world. The smart contract function is so good that it's not useless. When you trade in Ethereum, you have to pay the miner's handling charge. So what's the handling charge you have to pay on Ethereum system, and what's the relationship between
gas and handling charge
2. What's the matter with Ethereum gas
Ethereum gas is similar to automobile fuel. It needs Ethereum gas to drive smart contract. Gas is an English word, Chinese meaning: gas, gasoline, this thing in daily life, is a consumable. Why does Ethereum proce fuel
what is the meaning of gas in Ethereum? In fact, Ethereum's gas is closely related to transaction costs. Ethereum transaction needs service charge. This gas is the calculation mode of service charge of Ethereum
in the setting of Ethereum, the transaction fee is similar to an encrypted fuel, namely gas, which can drive the movement of smart contracts. When Ethereum executes transactions on the blockchain, the fuel will be graally consumed according to the rules of the characteristics
from this point of view, gas is really the same as its original intention, like automobile fuel. If you want to start a car, you must need fuel
What is the difference between the transaction fees of Ethereum gas and bitcoin When it comes to handling charges, you may be familiar with them. There is no free lunch in the world. Both Ethereum and bitcoin need service charge, but the service charge mode of the two is different. Bitcoin is used to pay bitcoin as a transfer fee directly, but Ethereum is not In essence, Ethereum is a virtual machine, which is decentralized and controlled by people all over the world, forming a "world-class computing network". When you send a token, execute a contract, transfer Ethereum, or do other things on the block, the computer needs to calculate when processing the transaction, which consumes network resources. In this way, you have to pay the "gas" to get the computer to work for you and the miners to process the transaction for yougenerally, the higher the gas price the sender is willing to pay, the greater the value the miners get from the transaction, and the more likely the miners are to choose the transaction. In this way, miners are free to choose to trade. In order to set the gas price for the sender as a reference, miners can directly put forward the lowest gas price they need to execute the transaction
How to calculate the gas consumption of Ethereumwhen Ethereum virtual machine processes transactions, Virtual Opportunities process one by one according to the operation instructions determined in the transaction, and each operation instruction has a specified gas consumption
Ethereum system stipulates two accounts: one is normal account and the other is smart account
for ordinary transfer transaction, that is to call "normal account", the required gas is fixed 21000
when calling "smart account", because the complexity of smart contract is different, the required gas is also different. The more resources (computation, memory, etc.) used to process transactions, the more gas will be needed. For example, an addition operation will consume 3gas. If more complex operations are performed, the more gas will be consumed
then you may ask a question: when a user's transaction involves a malicious smart contract, the contract is extremely complex, and the execution of the contract will consume unlimited fuel, what should we do? The solution of Ethereum system is: in order to avoid unlimited gas consumption caused by malicious
smart contract, the user needs to set the maximum allowable fuel consumption when sending the transaction, namely
gaslimit. In this way, even if there is a malicious smart contract, the worst case is only within the fuel consumption range specified by gaslimit
What is the relationship between Ethereum gas and transaction feeson Ethereum, the service charge you pay is equal to gasprice times gasused
you can understand gasprice as the unit price of fuel and gasused as how many liters of fuel the car needs
for a car, if you say 20 yuan per liter of gasoline, 10000 liters of gasoline is 200000 yuan. For Ethereum, each
gas is 20 gigabytes (gigabytes is the unit of quantity of Ethereum currency), and 10000 gas is: 20 times 10000 equals 200000 gigabytes, 20000 gigabytes equals 0.0002 Ethereum, that is to say, the transaction procere is 0.0002 Ethereum
the specific exchange value is shown in the following table:
for specific exchange rate query, you can check the following website:
for details https://jin10086.github.io/etherconVerter/
both gas price and ether price are freely regulated by the market, but they are different in that the price of ether fluctuates according to the market situation, while the price of gas is determined by miners, If the price of fuel falls below the miners' minimum requirements, the miners refuse to process the deal. The separation of gas and Ethereum can protect the system from the possible fluctuation with the rapid change of Ethereum price
generally speaking, most miners will choose to give priority to their interests. When dealing with the transaction, they will arrange according to the gas price from high to low, and give priority to those with high gas price. If you are in a hurry to trade, you need to raise the gas price so that the miners can see you earlier; If you are not in a hurry, you just need to set a gas price, which is above the bottom line of gas price set by miners
How is gas obtainedin fact, gas is the ether coin purchased from the miner. The ether coin in the user's own account can purchase gas from the miner, and the Ethereum client will automatically purchase gas with Ethereum according to the specified maximum transaction expenditure limit
Where did gas go in the endfor each transaction, the initiator of the transaction must set the gas limit and gas price. Different operations will proce different gas costs. When the gas is used up, the miner will stop executing, and the gas used will be used as a reward to the miner. This will involve several situations:
the first situation is that if there is a surplus gas, the miner will stop executing, Then the remaining gas will be returned to the transaction initiator or the creator of the smart contract. For example, if I send an Ethereum to Yiyi, the gas limit I set is 50000, and the gas normally consumed is 21000, then the remaining 29000 that has not been consumed will be returned to me
in the second case, if the gas limit I set is too low, or the Ethereum in my account is not enough to pay for my gas consumption, then the transaction will be cancelled e to insufficient gas, and the gas used for calculation will not be returned to my account
in the third case, if the transaction fails, I have to pay the handling charge for the occupied computing resources
How to set a reasonable gas pricebefore each transaction, you can query this website to confirm the gas price to be set: https://ethGasstation.info/ To sum up, in this article, we mainly introce the gas and service charge of Ethereum: gas is equivalent to fuel oil. When you process transactions on Ethereum virtual machine, you will consume computing resources, that is, gas. On Ethereum, the service charge you pay is equal to gasprice multiplied by gasused, that is, the unit price of gas multiplied by the total amount of gas consumed. The complexity of the operation is different, and the cost of gas is also different. When the gas is used up, the miner will stop executing, and the gas used will be used as a reward to the miner. The miner will give priority to the trader with higher gas price
eth0 to awk for processing
where - F & # 39;:|< br />+'
this is a separator defined by awk and then matched with "BCAST & quot;, Take the content of the fourth column
since your command is not universal, you can't output the result here, but you should intercept the broadcast address
