A Commoners Guide to Ethereum: Part 1
Ethereum’s goal is to make a decentralized internet. And it has a very good shot at becoming “the new internet,” literally. It could one day replace a lot of technology and ways that we host and execute code online — Brian D Evans, inc.com, May 22, 2017
Blockchain, in my humble opinion, is a revolutionary technology that has the potential to create the internet of the future in addition to transforming the financial services landscape. It has myriad applications. One such application is Ethereum.
If you are reading this, you are quite possibly a newbie when it comes to Ethereum as I was and to some extent I still am. At the end of this article, you will have an understanding of Ethereum, Ether and related concepts. While I have attempted to simplify and in some cases over simplify concepts, it is because my audience can potentially have different levels of understanding. In sum, I am trying to explain Ethereum to my Mom and a techie at the same time.
Before I discuss other terms, let me begin with the Basics
2. Basic Building Blocks
(Techies May Skip This Part)
‘Mainframe’ computers are large computers (think towers of computers) serving thousands of user computers (sub-frames) using batch processing. Batch processing is the execution of batch of inputs into output without manual intervention. From the 1950's to 1970's, IBM and seven other companies manufactured Mainframes.
A Personal Computer (PC)or a cell phone today is a ‘micro computer’ enabled by a microprocessor. The invention of the microprocessor allowed IBM to create a PC. Typically, PC’s used to run Microsoft Windows.
3. Network Architecture
A simple network architecture consists of a server and a client. The server is a computer running an operating system such as Windows NT and it may host applications, web pages or other content that a client machine (a personal computer) can access using network cables and network protocols. Network protocols are rules and conventions that allow computers to communicate with each other.
‘Thin Clients’ were dumb computers with zero or less processors. They could also not have a hard disk drive and could rely on the server for computations.
So, let’s say you want to run a simple mathematical calculation, the thin client would send the request to the server using network protocols and display the result sent by the server on its monitor.
4. The Internet
The Internet was a global ‘network of network’ that uses a protocol known as TCP/IP or a ‘packet switching’ protocol. Internet Protocol (IP) is responsible for sending ‘packets’ of data to the right address (called the IP address which is an octet or eight digit address (e.g. 126.96.36.199) ) i.e. -IP is responsible for correct delivery.
Transmission Control Protocol (TCP) is responsible for making sure all the packets are delivered I.e. Completeness
Within the Internet, let’s say Sam’s PC requests for a website i.e. Google.com. This request goes to an Internet Service Provider (‘an intermediary’) which then routes the request to Google’s server which in turn returns the webpage to Sam’s browser using TCP/IP.
Now Google’s server depending on the request will access the right ‘database’ and return the right data.
5. Centralized, Decentralized and Distributed Databases
A database is a repository where data is stored in rows and columns and the data is indexed for easy retrieval like a library.
In a centralized database, the server is in the middle and a lot of clients access apps or web pages from the centralized server. If the server crashes or is hacked, all the data in the database can be destroyed or compromised.
In a decentralized database, parts of the same database are split into different parts.
In case of both the centralized and decentralized databases, there is a database administrator that organizes data and provides access to users on a need to know basis.
A distributed database is a database in which storage devices are not all attached to a common processors. It may be stored in multiple computers, located in the same physical location; or may be dispersed over a network of interconnected computers (source: wiki)
A diagrammatic representation of the 3 network types is below. Each dot is an ‘node’ or a PC and can also be a mobile phone:
A distributed database can be homogenous where the computers have uniform hardware, operating systems etc. whereas a heterogenous distributed database is the exact opposite.
The advantages of distributed databases are many. For instance, since the data is spread across different computing devices and in some cases the same data exists on different machines, if one node or computer is compromised, it doesn’t affect availability of data. It’s reliable, more secure and economical.
Also, today’s PC’s and mobile phones are so powerful that they can handle business applications easily. Even then, their capacity is not completely utilized. So, if a distributed database is created by joining the computing devices in a network, it can harness the excess capacity lying in these machines.
Imagine, if all of us logged our devices(nodes) on to a common network using common network protocols, we harness the processing power of our devices to create one giant network with a distributed database without intermediaries (such as an ISP or a database administrator).
This distributed database also called a distributed ‘ledger’ is what we call a Blockchain. A ledger is an accounting record in which all financial transactions are recorded. For instance, if sally transfers money to Raul, Sally’s bank account (asset) is reduced/credited and Raul’s bank account (asset) is increased/debuted as an asset in their respective ledgers . See illustration of a general ledger below:
The distributed database system eliminates intermediaries from the process such as banks, clearing houses, database administrator or in case of a ledger -accountants.
6. The Block Chain
Having understood all these concepts, you are ready to understand the Blockchain:
A blockchain, originally block chain, is a distributed database that maintains a continuously growing list of records, called blocks, secured from tampering and revision.
Each block contains a timestamp and a link to a previous block. By design, blockchains are inherently resistant to modification of the data — once recorded, the data in a block cannot be altered retroactively. Through the use of a peer-to-peer network and a distributed timestamping server, a blockchain database is managed autonomously.
Blockchains are “an open, distributed ledger that can record transactions between two parties efficiently and in a verifiable and permanent way. The ledger itself can also be programmed to trigger transactions automatically.
The first blockchain was conceptualised by Satoshi Nakamoto in 2008 and implemented the following year as a core component of the digital currency bitcoin, where it serves as the public ledger for all transactions (source:wiki)
PwC’s primer on Blockchain explains the concept in detail below:
7. The Bitcoin
If you loan out the processing power of your computing device, you want a payment. That payment is made, not in dollars, but in a digital currency that does not exist physically but only digitally. Therefore, it is a pure cryptocurrency.
On 22nd May 2010, Laszlo Hanyecz bought a pizza for 10000 Bitcoins and created history by buying a pizza using cryptocurrency.
Today, The Bitcoin you have earned for loaning out your computing device can be traded on a ‘Bitcoin Exchange’ such as GDAX using digital wallets such as Coinbase. In other words, Bitcoin can be exchanged for Fiat currency. The price of Bitcoin just like any other asset such as stocks, currency is based on the demand and supply of the currency. Today, Bitcoin can be bought or sold for $2330 on a Bitcoin exchange.
Bitcoins have three useful qualities in a currency, according to The Economist in January 2015: they are “hard to earn, limited in supply and easy to verify”.
Peter Thiel’s VC fund — Founders Fund invests in Bitcoin based merchants that enable Bitcoin based transactions.
Each transaction in a Bitcoin Blockchain is tagged with a unique identifier called the ‘Nonce’ .
Also, each transaction is encrypted using a private key and a public key.
The beauty of the Bitcoin Blockchain is that everyone can see the ledger or database but not everyone can tamper or edit it.
8. Introduction to Ethereum
Ethereum is an open-source, public, blockchain-based distributed computing platform featuring smart contract (scripting) functionality. It provides a decentralized Turing-complete virtual machine, the Ethereum Virtual Machine (EVM), which can execute scripts using an international network of public nodes. Ethereum also provides a cryptocurrency token called “ether”, which can be transferred between accounts and used to compensate participant nodes for computations performed. Gas, an internal transaction pricing mechanism, is used to prevent spam and allocate resources on the network
Ethereum was proposed in late 2013 by Vitalik Buterin, a cryptocurrency researcher and programmer. Development was funded by an online crowdsale during July — August 2014. The system went live on 30 July 2015, with 11.9 million coins “premined” for the crowdsale (source : wiki)
Therefore, Ether is actually a token and not a currency like Bitcoin. But, like Bitcoin, it is compensation to you for loaning out your computing device and can be traded on Ethereum exchanges such as GDAX using digital wallets such as Coinbase.
The Market Capitalization (i.e. Total Volume in circulation x price) of Bitcoin is roughly $ 38 billion and of Ether is roughly $19 billion.
The difference between Bitcoin and Ether is that there is a limit on the number of Bitcoin that can be mined which is 21 million bitcoins. Every 4 years, the number of Bitcoins will halve and ultimately become zero by 2140 AD.
Today, there are more than 200 different types of cryptocurrencies:
CryptoCurrency Market Capitalizations
CryptoCurrency market cap rankings, charts, and more
Ethereum is a world computer running on 7693+ computer nodes distributed worldwide. The Ethereum network runs on a blockchain secured by miners executing a Proof of Work consensus algorithm, with plans to move to a Proof of Stake consensus algorithm.
Small programs called smart contracts are run in exactly the same way on each of these nodes.
(source: Ethereum wiki)
In the next part, I will include Decentralized Apps (dApps), Phases in Ethereum’s Evolution and a discussion on the Enterprise Ethereum Alliance.