Blockchain Revolution: Part Six
Blockchain Revolution: Part Six
Ethereum Blockchain 101
Ethereum is a distributed public blockchain similar to Bitcoin. But why do we need another blockchain network, if Bitcoin blockchain network already exists? The answer lies in the purpose and the capabilities offered by the blockchain networks. And that is what we will discuss in our sixth post of the series ‘Blockchain Revolution’. In case you missed our previous posts, follow these links:
Back to Bitcoin blockchain — it was designed to be a ‘Peer-to-Peer Electronic Cash System’. Bitcoin blockchain is used to track ownership of the digital currency and the transactions that occur over the blockchain. But over a period of time, people around the world started realizing the true capabilities of a blockchain network. In late 2013, Vitalik Buterin proposed the idea of a single blockchain that could be reprogrammed to perform any complex computation. And that’s how Ethereum was born.
What is Ethereum?
Ethereum is a programmable blockchain. It allows Distributed Apps (DApps) to be built on top of Ethereum network. Ethereum has its own cryptocurrency built on top of it called Ether and has its own programming language called Solidity which enables developers to build distributed applications. And this is one of the advantages of Ethereum network over the Bitcoin network. Solidity is used for writing Smart Contracts
Instead of building a new blockchain for each new application, Ethereum allows developing all applications on a single platform. Ethereum is Turing Complete, which means, given enough time and resources, any arbitrary complex problem can be solved. But this has its own limitations which will be discussed later. Ethereum offers a feature called ‘Rich Statefulness’,that you won’t find in bitcoin blockchain. The term statefulness refers to the ability of the system to remember things at blockchain level, whereas bitcoin blockchain is stateless. To better understand Ethereum let’s look at some of key advantages this network has over Bitcoin network:
- Block generation time: In Bitcoin blockchain, it takes about 10 min to validate and generate a block, compared to Ethereum where it takes approximately 15 seconds.
- Block confirmation:Finality is the guarantee that past transactions cannot change. Finality measures how long it takes to guarantee that transactions in blockchain are irreversible. With Bitcoin blockchain, 6 block confirmations are required while Ethereum requires 12 confirmations.
- Scalability: Bitcoin blockchain offers on 3 Tx/s while Ethereum offers 15 Tx/sec.
- Governance: The Ethereum blockchain is strongly backed by developers and is continuously being developed compared to the Bitcoin blockchain.
How does Ethereum work?
While Bitcoin considers everything as list of transactions, Ethereum considers and works with account. Ethereum keeps track of the state of every account, and transfer of value and information between accounts causes the state of account to change. There are two types of accounts including:
- Externally Owned Account (EOAs): Each user on the network creates an account. Each account has a public key and a private key. Only the user can access the account, through the private key.
- Contract Accounts: Contract accounts are controlled by their contract code (Smart Contracts) and can only be activated by an EOA. They are programmed to be controlled by an EOA with a certain address. So, the user who holds private keys for the EOA, controls the Contract Account.
Contract accounts can only perform an operation if they are instructed by EOA. Users have to pay a small transaction fee to the network for each step of the program they activated including computation and memory storage. The fee is paid in the form of Gas. It is the execution fee that senders of transactions need to pay for every operation made on an Ethereum blockchain. Think of it this way, for running vehicles we need fuel. Similarly, ‘Gas’ here is the fuel running the EVM. Gas is purchased from Ether.
These transaction fees are for the nodes (also known as miners) which validate transactions and add a transaction to the block. Every node participating in the network runs the EVM as part of block verification protocol. The block contains the validated transactions and updated state of accounts. Ethereum uses Proof-of-Work consensus mechanism to validate the transactions on the block. The nodes then compete to add the block to the blockchain. Whichever node adds the block to blockchain first, receives the transaction fees as the reward.
What can Ethereum be used for?
Ethereum can be used for developing Decentralized Applications (DApps). These DApps are built on top of Ethereum protocol with Smart Contracts. Examples of successful Ethereum based DApps are Golem, Augur. Some of the DApps may introduce their own currency called token. These tokens must follow a programming standard set for all tokens, called ERC20 standards.
Ethereum can also be used for building Decentralized Autonomous Organizations (DAO). DAO is a decentralized organization with no single ledger. DAO are run by a collection of smart contracts written and deployed on Ethereum blockchain network. These smart contract codes are designed to replace the structure of the organization, eliminating the need for a centralized control.
How is Ethereum likely to unfold?
As you can see Ethereum has proven to be more resilient, but it is still at a nascent stage with only a few popular Dapps to show for. Ethereum’s value and potential is still quite speculative. While it steers clear from typical pitfalls, it has its own limitations that needs work in order to reach its full potential.
One of the reasons that public blockchains have high level of security is because the transactions are validated by all the nodes on the network. While this ensures that transactions are validated, it takes a long time to get the result. This negatively impacts scalability. Ethereum can handle only about 15 transactions per second. Although developers are working on it and one of solutions is sharding that helps scale Ethereum.Energy efficiency is another challenge as Ethereum uses PoW protocol which is consumes a lot of energy for validating the block. Ethereum is trying to migrate from PoW to PoS to address this issue.
Having said that, its stability and reliability compared to other networks has inspired confidence amongst developers and in its future use and application.