A Quick Overview of Ethereum

Intro to Ethereum

  • Blockchain

    A database that is updated and shared across many nodes in a network.

  • ETH

    Ether is the native cryptocurrency of the Ethereum platform. It is used to facilitate transactions on the network, compensate miners for securing the network, and as a "gas" for executing smart contracts and transactions.

  • EVM

    The Ethereum Virtual Machine is the global virtual computer whose state every participant on the Ethereum network stores and agrees on. Any participant can request the execution of arbitrary code on the EVM; code execution changes the state of the EVM

  • Nodes

    The real-life machines which are storing the EVM state. Nodes communicate with each other to propagate information about the EVM state and new state changes. Any user can also request the execution of code by broadcasting a code execution request from a node. The Ethereum network itself is the aggregate of all Ethereum nodes and their communications.

  • Accounts

    Where ETH is stored. Users can initialize accounts, deposit ETH into the accounts, and transfer ETH from their accounts to other users. Accounts and account balances are stored in a big table in the EVM; they are a part of the overall EVM state.

  • Transactions

    A "transaction request" is the formal term for a request for code execution on the EVM, and a "transaction" is a fulfilled transaction request and the associated change in the EVM state. Any user can broadcast a transaction request to the network from a node. For the transaction request to affect the agreed-upon EVM state, it must be validated, executed, and "committed to the network" by another node. Execution of any code causes a state change in the EVM; upon commitment, this state change is broadcast to all nodes in the network. Some examples of transactions:

    • Send X ETH from my account to Alice's account.

    • Publish some smart contract code into EVM state.

    • Execute the code of the smart contract at address X in the EVM, with arguments Y.

  • Blocks

    The volume of transactions is very high, so transactions are "committed" in batches, or blocks. Blocks generally contain dozens to hundreds of transactions.

  • Smart contracts

    A reusable snippet of code (a program) which a developer publishes into EVM state. Anyone can request that the smart contract code be executed by making a transaction request. Because developers can write arbitrary executable applications into the EVM (games, marketplaces, financial instruments, etc.) by publishing smart contracts, these are often also called dapps, or Decentralized Apps.

WHAT IS ETHEREUM?

It is a Blockchain which has a foundation for building applications and organizations in a decentralized, permissionless, censorship-resistant way.

In Ethereum there is EVM(Ethereum Virtual Machine) which state the consensus of every node on a network. Every Ethereum Node keeps a copy of the state of the EVM. the state Changes whenever a transactions is broadcasted.

Additionally any node can broadcast a transaction request on the EVM to perform computation. and when a request is broadcasted other nodes on the network verify, validate and execute the computation. this process cause a change in a state on the EVM.

once transactions are verified as a valid transactions they are added to the blockchain, then the transactions can't be change. once a transaction is added to blockchain it can't be tampered later.

Each transaction and present state of EVM gets stored on the blockchain, which in turn is stored and agreed upon by all nodes.

WHAT IS ETHER?

Ether (ETH) is the native cryptocurrency of Ethereum. The purpose of ETH is to allow for a market for computation. Such a market provides an economic incentive for participants to verify and execute transaction requests and provide computational resources to the network.

Any participant who broadcasts a transaction request must also offer some amount of ETH to the network as a bounty. The network will award this bounty to whoever eventually does the work of verifying the transaction, executing it, committing it to the blockchain, and broadcasting it to the network.

The amount of ETH paid corresponds to the resources required to do the computation. These bounties also prevent malicious participants from intentionally clogging the network by requesting the execution of infinite computation or other resource-intensive scripts, as these participants must pay for computation resources.

ETH is also used to provide crypto-economic security to the network in three main ways: 1) it is used as a means to reward validators who propose blocks or call out dishonest behavior by other validators; 2) It is staked by validators, acting as collateral against dishonest behavior—if validators attempt to misbehave their ETH can be destroyed; 3) it is used to weigh 'votes' for newly proposed blocks, feeding into the fork-choice part of the consensus mechanism.

WHAT ARE SMART CONTRACTS?

In practice, participants don't write new code every time they want to request a computation on the EVM. Rather, application developers upload programs (reusable snippets of code) into EVM state, and users make requests to execute these code snippets with varying parameters. We call the programs uploaded to and executed by the network smart contracts.

At a very basic level, you can think of a smart contract like a sort of vending machine: a script that, when called with certain parameters, performs some actions or computation if certain conditions are satisfied. For example, a simple vendor smart contract could create and assign ownership of a digital asset if the caller sends ETH to a specific recipient.

Any developer can create a smart contract and make it public to the network, using the blockchain as its data layer, for a fee paid to the network. Any user can then call the smart contract to execute its code, again for a fee paid to the network.

Thus, with smart contracts, developers can build and deploy arbitrarily complex user-facing apps and services such as: marketplaces, financial instruments, games, etc.