Introduction to ethereum.
Ethereum is a decentralized, open-source blockchain platform that enables the creation of decentralized applications (dApps) and smart contracts. It uses a cryptocurrency called Ether (ETH) to facilitate transactions and incentivize network participants.
What is blockchain?
Blockchain is a public database that is updated and shared among many computers on a network. “Block” refers to data and state stored in sequential groups known as “blocks”. When you send ETH to someone else, transaction data needs to be added to the block for it to work. “Chain” refers to the fact that each block cryptographically references its parent. In other words, the blocks are connected to each other. The data in one block cannot be changed without changing all subsequent blocks, which requires consensus across the network.
Every computer on the network must approve each new unit and the circuit as a whole. These computers are referred to as “nodes”. The nodes ensure that everyone interacting with the blockchain has the same data. To achieve this distributed agreement, blockchain requires a consensus mechanism. Ethereum currently uses a consensus mechanism to prove it works. So if you want to add a new block to a circuit, you have to solve a complex puzzle that requires a lot of computing power. Solve riddles “prove” that you do “work” using computing resources. This is called digging. Digging is usually brute force, trial and error, but manages to add blocks rewarded in ETH.
New blocks are broadcast to nodes on the network, checked and verified, updating blockchain status for everyone. So in summary, when you send ETH to someone, the transaction needs to be dug up and put in a new block. The updated status is then shared with the rest of the network.
Watch Austin walk you through blockchain:
If you want to see how the blockchain hashed data and then the previous block references all the previous blocks, be sure to check out this demo by Anders Brownworth and watch the related video below.
Watch Anders explain blockchain hashes:
What is Ethereum?
There is one canonical computer in the Ethereum universe (called the Ethereum Virtual Machine or EVM) that everyone on the Ethereum network agrees to. Everyone who participates in the Ethereum network (every Ethereum node) keeps a copy of the state of that computer. In addition, each participant can submit a request to this computer to perform random calculations. Each time the request is sent, another participant in the network verifies, confirms and performs (“performs”) a calculation. This implementation causes an EVM state change that propagates throughout the network and intervenes.
A calculation request is called a transaction request; Records of all transactions and the current state of the EVM are stored on the blockchain, which in turn is stored and coordinated by all nodes. Cryptographic mechanisms ensure that once transactions have been confirmed as valid and added to the blockchain, they cannot be forged later. The same mechanism also ensures that all transactions are signed and executed with the appropriate “permissions” (no one can send digital assets from Alice’s account except Alice herself).
What is Ether?
Ether (ETH) is Ethereum’s native cryptocurrency. The purpose of ether is to allow the market for calculations. Such a marketplace provides an economic incentive for participants to verify and execute transaction requests and allocate computing resources to the network. Each participant who sends a transaction request must also offer a certain amount of ether on the network as a gift. This award goes to anyone who finally verifies, executes, locks the blockchain and sends transactions online. The amount of Ether paid corresponds to the time it takes to perform the calculations. This reward also prevents malicious participants from clogging the network by demanding endless computations or other resource-intensive scripts, as these participants have to pay for computation time.
WHAT IS A SMART CONTRACT?
In practice, participants do not write new code every time they want to request an EVM computation. Instead, the application developer uploads the program (reusable code snippet) to the EVM state, and the user requests the execution of this code snippet with different parameters. We call the programs uploaded and executed by the Smart Contract network.
Very simply, smart contracts can be thought of as vending machines: scripts that, when called with certain parameters, perform certain actions or calculations when certain conditions are met. For example, a simple smart provider contract can create ownership of a digital asset when a caller sends ether to a specific recipient. For a fee paid to the network, any developer can create a smart contract and publish it on the internet, using the blockchain as their own data layer. Each user can then request a smart contract to run their code, again for a fee paid to the network. In this way, developers can use smart contracts to build and deploy arbitrary and complex consumer-facing applications and services such as marketplaces, financial instruments, games, etc.
The order of all blocks is passed to the Ethereum network in the history of the network. It is so named because each block contains a reference to the previous block, which helps us to keep all blocks organized (and therefore historically accurate).
Ethereum native cryptocurrency. Users pay other users in the air to fulfill their code execution needs.
The Ethereum Virtual Machine is a global virtual machine, whose state is stored and approved by every participant in the Ethereum network. Any participant can request execution of any EVM code; Code execution changes the EVM state.
Real machines save EVM state. The nodes communicate with each other to disseminate information about the state of the EVM and new state changes. Each user can also request code execution by broadcasting a code execution request from a node. The Ethereum network itself is the sum total of all Ethereum nodes and their communications.
Where is the ether stored. Users can initialize accounts, deposit ether into their accounts, and transfer ether from their accounts to other users. Accounts and balances are stored in EVM in one big table; they are part of the overall state of the EVM.
“Transaction request” is the formal term for a request to execute EVM code, and “transaction” is a completed transaction request and associated EVM state change. Any user can send transaction requests to the network from a node. For a transaction request to affect an agreed EVM state, it must be validated, executed, and “linked” by another node. Execution of each code causes a change in EVM state; in the case of a promise, this state change is transmitted to all nodes in the network. Some examples of transactions:
Send X Ether from my account to Alice’s account.
Publish smart contract code in EVM state.
Run the smart contract code at address X in the EVM with argument Y.
The volume of transactions is very high, so transactions are “engaged” in packages or blocks. Blocks usually contain tens to hundreds of transactions.
Developer-published reusable code snippets (programs) in EVM state. Anyone can request execution of smart contract code by requesting a transaction. Since developers can store any executable application (games, markets, financial instruments, etc.) in the EVM by issuing smart contracts, they are also often referred to as dapps or decentralized applications.
With trading volume exceeding $1.2 billion, PIXEL has swiftl...
The UK government plans to fast-track the enactment of fresh...
Reports suggest that the government has considered this move...
As part of the acquisition, Yuga Labs plans to integrate Moo...
At the core of this initiative is the affordable JamboPhone,...
The collaboration will kick off with implementing the SIM SW...