English
 找回密码
 立即注册

【Chain Circle Knowledge】Ethereum (Ethereum)

Vitalik 2025-9-28 03:51 7751人围观 ETH

Ethereum (Ethereum) is a platform and a programming language that enables developers to build and release the next generation of distributed applications. On the basis of inheriting the Bitcoin network framework, Ethereum mainly proposes the concept of pr
Ethereum (Ethereum) is a platform and a programming language that enables developers to build and release the next generation of distributed applications. On the basis of inheriting the Bitcoin network framework, Ethereum mainly proposes the concept of programmable "smart contracts" - a system that automatically transfers digital assets according to rules arbitrarily formulated in advance.

        In Ethereum, smart contracts can be written in Solinity, an Ethereum-specific programming language, and then uploaded to a block and made permanent. Because the blockchain is secure and immutable, Ethereum’s smart contracts can be fully trusted to perform as expected. The enforceability of the code makes repudiation and breach of contract impossible.

  Vitalik Buterin explains smart contracts in Ethereum’s white paper:

  “Smart contracts should not be regarded as obligations that should be performed or adhered to. They are more like robots that live in the EVM, automatically executing specific code and modifying the balance or other information of the relevant address when external conditions (messages or transactions) are received. ”

        Ethereum almost monopolizes the entire blockchain smart contract market.

        Ethereum applications expand the types of transactions that the blockchain can handle. The main scenarios are applied to financial fields other than currency: decentralization, guaranteeing and trading anything, voting, domain names, financial exchanges, crowdfunding, company management, contracts and most agreements, intellectual property, and smart assets that benefit from hardware integration.



  The blockchain technology represented by Ethereum is called the 2.0 era.

  Ether, Merkle-tree, on-chain Metacoins-protocol, improved ghost protocol, identity and reputation system, decentralized storage, decentralized autonomous organization (DAO), and fee specification mechanism are all important innovations of Ethereum.

  Ethereum adopted the POW consensus mechanism in the early days to protect the network from attacks, and later transformed it into a POS consensus mechanism through forks. This kind of design mainly considers the security of the entire system in the early stage. In July 2016, the Ethereum development team modified the code of the Ethereum software and forcibly transferred all funds of The DAO and its sub-DAOs to a specific refund contract address in block 1,920,000, thus "recapturing" the coins of the DAO contract controlled by hackers. Thus, two chains are formed, one is the original chain (ETC) and the other is the new forked chain (ETH), each representing different community consensus and values.

The history of Ethereum

In December 2013, Buterin released the Ethereum white paper.

In January 2014, Ethereum was officially announced.

In April 2014, Ethereum released the third version of the test network.

In April 2014, Ethereum released the Yellow Paper.

In July 2014, the first Ethereum Foundation was established.

In July 2014, Ethereum released the fifth version of the test network.

In July 2014, Ethereum began raising tokens, totaling $18.43 million.

In July 2015, the Ethereum mainnet was officially launched.

Basic elements of Ethereum

       What is an Ethereum account?

  Ethereum accounts are divided into two categories:

  ◆ Externally owned account (EOA), also known as ordinary account

  ◆ Contract account

  Ordinary account

  The so-called ordinary account is the account where we store Ethereum. It can be generated at will. It has the following characteristics:

  ◆ A balance that has an Ethereum balance (where Ethereum is stored, which is different from Bitcoin's UTXO model).

  ◆ A counter (nonce) used to determine that each transaction can only be processed once.

  ◆ Send transaction (Ethereum transfer, publish contract, call smart contract)

  ◆ Control via private key

  ◆ No associated code

  Contract account

  The contract account is also the most exciting concept and underlying code implementation. It is a collection of functions and data that exists at a specific address in Ethereum (the address where smart contracts are published) and has the following characteristics:

  ◆Have an Ethereum balance

  ◆There are associated codes

  ◆Triggered by transactions or message calls and interpreted and executed by the Ethereum Virtual Machine (EVM)

  When executed:

  ◆Runs at random complexity (Turing completeness)

  ◆Can only operate the specific storage it owns, for example, it can own its permanent state

  ◆Can call other contracts

  All operations on the Ethereum blockchain are initiated by transactions initiated by each account. When the smart contract account receives a transaction, the parameters of the transaction will become the input parameters of the code. The contract code will be run by the Ethereum Virtual Machine (EVM) on every node participating in the network as a verification of their new blocks.

  

      transactions and messages

  trade

  “In layman's terms, the term "transaction" is the process of sending a signed message packet from one account to another account, and the blockchain will record and store the corresponding data. By extension, calling a smart contract to change the data status of a contract account is also a transaction and also requires a handling fee.

  Transactions include:

  ◆sender of message

  ◆Receiver of the message

  ◆Signature information used to prove that the sender intends to send a message to the recipient through the blockchain

  ◆Value field, the amount of ether transferred from the sender to the recipient

  ◆Optional data field used to store smart contracts or code that calls smart contracts

  ◆GasLimit, the upper limit of Gas used when executing this transaction

  ◆GasPrice, the price of gas fees that the transaction sender is willing to pay. One unit of Gas represents the execution of a basic instruction, such as a calculation step.

  

        information

  Contracts have the ability to send "messages" to other contracts. A message is a virtual object that is never serialized and exists only within the Ethereum execution environment. They can be understood as function calls. Someone once asked whether smart contracts can call Bitcoin transfers, and the explanation here has given a clear answer.

  The message includes:

  message sender

  ◆ Receiver of the message

  ◆ Optional data field, the actual input data of the contract

  ◆ GasLimit, same as transaction.

  Generally speaking, a message is a transaction, except that it is not generated by an external account, but by a contract account. When the call or delegatecall commands are run in the code being executed by the contract, a message will be generated. News is sometimes called "insider trading." Similar to a transaction, a message directs the receiving account to run its code. Therefore, contract accounts can relate to other contract accounts.

  

       What is Gas

  Computers (nodes) in the Bitcoin network maintain and update the blockchain. In Ethereum, these nodes run the Ethereum Virtual Machine (EVM). The Ethereum Virtual Machine is a supercomputer that combines the computing power of all nodes in the network. This computing power is used to run user-submitted code (smart contracts) on the blockchain. In order to execute smart contracts, EVM charges a very small transaction fee in exchange for the computing power required by the smart contract. This fee is called "Gas". This fee is calculated in Gas, which is commonly known as fuel.

  Gas and Gas consumed by transactions

  Each transaction contains Gas limit and Gas price. Miners can selectively package these transactions and charge these fees. Gasprice will affect the time it takes for the transaction to be packaged. If the amount of Gas used by the transaction operation is less than or equal to the set Gas limit, the transaction will be processed. However, if the total gas consumption exceeds the gas limit, all operations will be reset, but handling fees will still be charged. The blockchain will show that the transaction was attempted, but insufficient gas was provided, causing all contract commands to be reinstated. After the transaction is completed, the unused Gas will be returned to the initiator in the form of Ether. Gas consumption is only an estimate, so many users will overpay for gas to ensure that their transactions will be accepted.

  Estimated transaction cost

  The transaction fee consists of two parts:

  GasUsed: The total amount of Gas consumed by this transaction

  GasPrice: The price of gas per unit in this transaction (calculated in Ethereum)

  Transaction fee = GasUsed * GasPrice

  GasUsed

  Each command in the EVM is set with a corresponding Gas consumption value. GasUsed is the sum of Gas consumption values ​​of all executed commands. If you want to estimate GasUsed, you can web3.eth.estimateGas.

  GasPrice

  GasPrice price that users can set by themselves. This price will change dynamically due to network congestion and other conditions, and can be roughly estimated based on the number of transaction bytes and the average value packed in the current block.

  

        “DoS” attacks on the Ethereum network

  CryptoKitties debuted on the Ethereum blockchain on November 28, 2017. It is a virtual cat-raising game. It has caused congestion on the Ethereum network. The process of slowing down the Ethereum network is called a "DoS" attack on the Ethereum network. A so-called DoS situation occurs when full blocks continue to appear on the Ethereum network and there are a large number of transactions pending on the network. At the same time, miners have the right to choose which transactions to package based on transaction fees. If there are thousands of transactions in the queue (in the transaction pool) waiting to be packaged, it may cause abnormal transaction delays of several hours. DDoS may be malicious or non-malicious.

The current situation of Ethereum faces several important bottlenecks:

  1. The speed of block generation and calculation is not fast enough to carry enough Dapps.

  2. Currently, ETH is the verification mechanism of POW. The uneven computing power of mining pools has slightly reduced the dominance of the Ethereum Foundation.

  3. Users who want to use DAPP must have ETH in their wallet, otherwise they cannot run the program.

Buterin’s sharding expansion plan

        Buterin posted on Twitter that "sharding is coming," and he also shared a brand new code repository documenting some of the proof-of-concept for the so-called "fork selection rules." The code shows how Ethereum shards interact with the main blockchain. Buterin's tweet also launched a 12-shard simulation image.

  In June 2018, Vitalik Buterin released a new proof-of-concept that demonstrated how to "tether" the sharding scaling solution to the Ethereum main chain, aiming to significantly improve the transaction throughput and scalability of the Ethereum blockchain. Ethereum processes less than 10 transactions per second and cannot meet current throughput needs.

  However, the industry believes that Ethereum’s current sharding technology will have to wait at least 3 months to come out.

        As early as 2014, Jingtong Technology’s blockchain underlying layering technology has been implemented, leading the market for 4 years. At the same time, with the help of layered architecture design, Jingtong Technology's brother enterprise project Moke has also implemented its sharding technology without the need for hard forks.

  The underlying layered architecture design of Jingtong blockchain technology divides the trust stack into five layers, network layer, block layer, data layer, value layer and contract layer, to realize business scenarios at different levels of the blockchain.

  The development and maturity of blockchain is also multi-level and is not a single maturity path. A blockchain based on hierarchical design can launch corresponding blockchain products according to different levels of maturity.

  Jingtong blockchain technology is based on layered cross-chain technology, which simplifies the use process of smart contracts and facilitates actual operations.; It also provides hierarchical ledger functions on the basis of this architecture. It is the first underlying technology in the world to implement hierarchical architecture.



        Think of sharding as a blockchain with hundreds of different vortexes. Each vortex is an independent account space. A contract can be generated and initiated on different vortexes, or a transaction can be initiated between multiple vortexes, and this transaction will only affect the involved vortexes.

精彩评论0
我有话说......
TA还没有介绍自己。