0% found this document useful (0 votes)
27 views25 pages

Ethereum

Ethereum is a blockchain platform that allows users to build and run decentralized applications (dapps) using smart contracts. It has its own cryptocurrency called Ether that can be used to pay for transactions on the Ethereum network. Ethereum also has its own programming language called Solidity that is used to write smart contracts which run on the Ethereum Virtual Machine.

Uploaded by

prabusankar
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
27 views25 pages

Ethereum

Ethereum is a blockchain platform that allows users to build and run decentralized applications (dapps) using smart contracts. It has its own cryptocurrency called Ether that can be used to pay for transactions on the Ethereum network. Ethereum also has its own programming language called Solidity that is used to write smart contracts which run on the Ethereum Virtual Machine.

Uploaded by

prabusankar
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
You are on page 1/ 25

Ethereum

Ethereum is a blockchain platform with its own cryptocurrency, called


Ether (ETH) or Ethereum, and its own programming language, called
Solidity.
As a blockchain network, Ethereum is a decentralized public ledger for
verifying and recording transactions. The network's users can create,
publish, monetize, and use applications on the platform, and use its Ether
cryptocurrency as payment. Insiders call the decentralized applications
on the network "dapps."
.
• Ethereum is the second most valuable cryptocurrency
• ● It is the brainchild of Vitalik Buterin who wrote the white paper
• ● Ethereum also uses PoW (migrating to Casper soon)
• ● Ethereum can also store and run small computer programs
called smart contracts
• ● The Ethereum Protocol is maintained by the Ethereum
Foundation
• ● Unlike Bitcoin, Ethereum has two kinds of addresses -
• ○ Externally Owned Accounts (EOA)
• ○ Contract Accounts
Ethereum clients and releases

• Various Ethereum clients have been developed using different


languages and currently most popular are go- Ethereum and parity.
• The first release of Ethereum was known as Frontier, and the current
release of Ethereum is called homestead release.
• The next version is named metropolis and it focuses on protocol
simplification and performance improvement.
• The final release is named serenity, which is envisaged to have a Proof
of Stake algorithm (Casper) implemented with it.
Ethereum Virtual Machine (EVM)

• Provides a layer of abstraction between the code and the


• machine
• ● Also makes the code portable across different machines
• ● The EVM has 140 opcodes which allow it to be Turing complete
• ● Each opcode takes 1 byte of storage space.
• ● The EVM also uses a 256 bit register stack which holds 1024
• items.
• ● It also has a contract memory (non-persistent) for
• complicated operations
• ● For storing data indefinitely, storage is used.
• ● Reading from storage is free, but writing to storage is extremely
expensive.
The Ethereum stack

The Ethereum stack showing various components


Ethereum blockchain

Ethereum State transition function


Currency (ETH and ETC)

Forks
Gas
consensus mechanism
The Ethereum network

MainNet
TestNet
Private net(s)
Solidity

• Solidity is the most popular programming language for


• Ethereum Smart Contracts
• ● It is similar to Javascript and C++
• ● Other experimental languages like Vyper and Bamboo are not
• much in use
• ● Solidity Compiler (solc) converts the source code to EVM
• bytecode
Ether and Gas

• Ether is the native cryptocurrency of the Ethereum Network


• ● Gas is a unit to measure the computational work done.
• ○ Introduced as it would have been unfair to base the
• transaction fees on just the transaction length or keep it
• constant
• ○ Each operation has a gas cost
• ○ Every transaction mentions the gas price
• ○ The two together give the transaction fees in Ether
• ○ Two new scenarios -
• ■ Transaction running out of gas
• ■ Gas price too low/high
Ethereum Mining VS Bitcoin Mining

Bitcoin Ethereum

Time is taken to mine a block An average of 10 minutes An average of 12-15 seconds

Reward 12.5 BTC 3 ETH

Hashing Algorithm SHA-256 Ethash


Supporting protocols
• WHISPER
• SWARM

Diagrams shows blockchain, whisper and Swarm


Introducing solidity
• Types
• Solidity has two categories of data types: value types and reference
types.
VALUE TYPES
Boolean
• This data type has two possible values, true or false.
Integers
• This data type represents integers.which shows various keywords
used to declare integer data types.
Call functions

• Array value types (fixed size and dynamically sized byte arrays)
LITERALS
• These are used to represent a fixed value.
• Integer literals
• String literals
• Hexadecimal literals
• ENUMS
• FUNCTION TYPES
Internal functions
• These can be used only within the context of the current contract.
External functions
• External functions can be called via external function calls.
REFERENCE TYPES
• Arrays
• Structs
• Data location
CONTROL STRUCTURES
• Events
• Inheritance
• Libraries
• Functions
Ethereum virtual machine (EVM)
EXECUTION ENVIRONMENT
The iterator function

Machine state tuple


Block
block header
The transactions list
The list of headers of Ommers or Uncles
Fee schedule
• An Overview of Smart Contract: Architecture, Applications, andFuture
Trends (2018)
Life Cycle of Smart ContractsPaper

You might also like