Blockchain and Ethereum
I love this stuff — bitcoin, ethereum, blockchain technology — and what the future holds.
~Abigail Johnson, an American billionaire businesswoman
We have elected to put our money and faith in a mathematical framework that is free of politics and human error.
~Tyler Winkelvoss, Rower & Entrepreneur
Blockchain is the biggest opportunity set we can think of over the next decade or so.
~Bob Greifeld, Nasdaq Chief Executive
Blockchain has truly become famous these days, given the virtues of decentralization. Blockchain technology and Decentralized applications (Dapps) have become the apple of everyone’s eye!
In this blog, we will be emphasizing on the concepts related to Ethereum. Below is a Wikipedia definition of Ethereum, which is difficult to understand. Let’s break it down to understand each concept one by one.
Ethereum
Ethereum is a decentralized, open-source blockchain with smart contract functionality. Ether (ETH or Ξ) is the native cryptocurrency of the platform. Amongst cryptocurrencies, Ether is second only to Bitcoin in market capitalization.
1. Blockchain
Fundamentally, a blockchain is a data structure. It is a continuously growing list of records called blocks, which are linked and secured using cryptography.
Understanding a block:
Generally, a block is divided into two parts, header and data.
Header:
It contains block number, hash of the previous block, hash of the current block, nonce and timestamp, which helps in identifying a particular block in the blockchain.
Data:
Data can be anything, including plain text, numbers, bank details. Data may consist of a list of transactions, which may or may not be encrypted.
In the case of cryptocurrencies, a set of crypto transactions can be stored as data.
Any transaction would be encrypted before adding it to the block. Each block contains the hash of the current transactions plus the hash of the previous block.
If there was only one central computer controlling the entire blockchain, then it would not be truly “Decentralized”. There are many “nodes” that contain the copy of the same blockchain (node can be considered as an individual PC), thus forming a network known as peer to peer network. The key innovation that blockchain has given us: a protocol for how blocks are added to the chain without any central authority. Whenever a block is pushed onto the blockchain, it is updated on each and every node in the network, by following this protocol called consensus protocol. This provides security from malicious transactions. Every node is a self-sufficient, independent entity, and there’s no center of the network.
Consensus protocol:
Creating a block is a difficult task. To validate addition of a block to the network requires a hard mathematical problem to be solved. Solving this problem requires immense computational power. Some people known as miners participate in the process of addition of the block by providing computational power, thus joining the p2p network as a node. They are financially incentivized to do so via receiving a “block reward”, usually paid in “that” blockchain’s native cryptocurrency.
Well, there goes one concept from the Ethereum definition. Let’s learn about
2. Smart contracts
While developing a web app or an android app, we decide which framework to use for frontend and backend. We also decide which database to use. For example, React is popular for designing user interfaces and for backend Node.js can be used. Similarly, in case of decentralized applications(dApps), we can choose any traditional frontend framework. Blockchain acts as a database and the backend is in the form of smart contracts.
Smart contract is the brain of dApps.
A smart contract is a self-executing contract with the terms of the agreement between buyer and seller being directly written into lines of code.
~Investopedia
In the case of Ethereum, smart contracts are generally written in Solidity (a programming language). Of course, there are more languages for writing the smart contracts, but Solidity is widely used.
Contracts in Solidity are organized in an object-oriented style similar to the Java programming language. In object-oriented parlance, a contract is really a class, or a collection of state variables and functions.
Smart contracts are first compiled and converted into bytecode when the contract is deployed. This bytecode is then stored on the blockchain, and an address is assigned to it.
Smart contracts are primarily deployed and tested using Ethereum Remix IDE; that is an open-source browser-based IDE for Ethereum smart contracts.
You can read more about smart contracts here:
There are many use cases of Ethereum and smart contracts that you can find here.
3. Cryptocurrencies and Ether
A cryptocurrency is a digital or virtual currency that is secured by cryptography, which makes it nearly impossible to counterfeit or double-spend.
~Investopedia
This is a simple definition of a cryptocurrency. It is a type of digital currency which is decentralized and can be used as a mode of payment for normal transactions (to buy goods and services). Each and every transaction of these cryptocurrencies is stored in the blocks of blockchain. These transactions are secured by cryptography.
Double spending is when the same coin is used twice or more. Counterfeit is the phenomenon of creating multiple instances of a same coin.
Ether is the native cryptocurrency of Ethereum Blockchain.
Though the main purpose of Ethereum blockchain was to develop secure, decentralized applications (dApps), it is also used for generating passive income by trading ether with fiat money. Similar to other stocks, the ETH/USD pair can be bought cheaper and sold for higher prices, thus making profit. And believe me, people are making millions through this kind of trading. Okay, trading is a different thing, let’s not digress from our topic much.
Another use of this currency is to pay block miners to validate and push blocks in the blockchain. Much like the US dollar, Ether is divisible, though to much smaller fractions than a cent. The smallest unit of ether is called a wei, which is a quintillionth of an Ether.
The Ether on the public Ethereum network is known as ETH and it has real-world value. The public Ethereum network is referred to as “mainnet” by developers. There are also public test networks or “testnets” that the community uses as staging environments. These test networks typically have “faucets,” or mechanisms to give developers free ether in order to test their smart contracts.
Now that we have understood all the concepts from the definition of Ethereum, we can now comprehend that definition.
As a final thought, Ethereum is still a new and emerging technology. There are many aspects of blockchain yet to be explored, like NFTs. Many decentralized alternatives for popular apps are being developed, for example: https://odysee.com/ is a decentralized alternative for YouTube, built in LBRY blockchain. A lot of research is being and will continue to be done regarding the stability, security and other advantages of Ethereum. Maybe everything will be running on blockchain in the coming future (sorry banks!) :).
Websites and books I referred: