What is Ethereum?
Ethereum, a distributed open blockchain network was conceptualized by Vitalik Buterin in November 2013. The development of a Turing-complete language that allows the development of smart contracts for blockchain and decentralized applications unlike Bitcoin which is non-turing. The “Ether” is the cryptocurrency of Ethereum.
Comparing Wei & Ether:
|Kwei (babbage)||1e3 wei||1,000|
|Mwei (lovelace)||1e6 wei||1,000,000|
|Gwei (shannon)||1e9 wei||1,000,000,000|
|microether (szabo)||1e12 wei||1,000,000,000,000|
|milliether (finney)||1e15 wei||1,000,000,000,000,000|
Smart contracts :
The fundamental blocks of programs composed for the ethereum platform are called “smart contracts”. A triggering event is hit and the contract(program) is executed.
Transactions in Ethereum :
A transaction in an Ethereum is considered as the data package which is signed and contains the information which is to be sent from an external block account to another account of any other block which is in a different network.
Ethereum blocks contain both a transaction list and the most recent “state” of the ledger of these transactions. The miners have to approve and validate the transaction. The miners are rewarded in case they generate the correct block and it is currently 5 Ether for successful mining.
Consensus in Ethereum :
Consensus is a mechanism by which the entire network is in same agreement about the supply and division of tokens. Proof-of-work protocal called Ethash is used in Ethereum network, with the mining same as Bitoin to find a nonce that once hashed the result in a predetermined difficulty level. Ethereum uses SHA-3 for encryption.
Ethash makes Ethereum resistant to the high-powered mining chips, and easily accessible to “light” client implementations that allow users without downloading the Ethereum blockchain to their device. However light clients download headers of the blocks for reference.
Clients of Ethereum :
There are multiple client implementations across a range of different operating systems and programming languages. This client diversity is important for the long-term health of the Ethereum network. Ethereum clients are like softwares that allow users to:
- Approves transactions/blocks
- Create/manage accounts
- Send/receive transactions from/to your Ethereum accounts
- Deploy smart contracts onto the blockchain
- “Mine” Ether on the Ethereum Blockchain
Few clients of Ethereum are Go-Ethereum, Parity, Cpp-Ethereum, Ruby-ethereum etc..
The version pragma is “pragma solidity ^0.4.0;”
MetaMask is a type of digital Ethereum wallet which helps to run Ethereum dApps right in your browser. Setting an account in MetaMask allows to send and receive Ether and it also allows to deploy Smart Contracts. To receive an Ether you should have an Ethereum account or an Ethereum wallet to send and receive Ether.
Gas transaction :
Once a contract is executed, Ethereum consumes ‘gas’, these are like tokens to run the computations. A transaction fee imposed for miners is charged as some amount of Ether and is taken from the account balance of the transaction originator. The higher the fee, the higher are the chances that the transactions will be picked up by the miners for inclusion in the block. Providing too little gas will result in failed transaction.