Cryptocurrencies and NFTs are taking the internet world by storm.
Cryptocurrencies like Bitcoin and Ethereum are raking in billions of dollars in daily transactions. Bloomberg reported last November 2021 that the total market cap of all cryptocurrencies was $3 trillion. That significantly exceeds the market cap of gold.
NFTs, which are newer to the market, have a market cap of $35 billion, as reported by investment bank Jefferies in a CoinDesk article. Behind all the success of cryptocurrencies such as Bitcoin and Ethereum along with NFTs is a technology called blockchain.
Blockchain is not just about cryptocurrencies or NFTs. Its applications are far wider. Business Insider's growing list of applications is already 24 entries long, covering finance, real estate, insurance, healthcare, government and numerous other industries. New applications are popping up on a weekly basis. But what exactly is blockchain and how does it work? Why are there so many flavors of blockchain and how are they differentiated? Where did the idea originate? These are some of the questions we will answer in this beginner's series on blockchain technology.
What is Blockchain?
Of all definitions around the internet, I personally like the explanation provided by Ethereum.org:
A blockchain is a public database that is updated and shared across many computers in a network. "Block" refers to data and state being stored in consecutive groups known as "blocks". If you send cryptocurrency to someone else, the transaction data needs to be added to a block to be successful.
"Chain" refers to the fact that each block cryptographically references its parent. In other words, blocks get chained together. The data in a block cannot change without changing all subsequent blocks, which would require the consensus of the entire network.
In simple terms, a blockchain is a public digital ledger that is stored on a network for redundancy. This data is then stored in blocks. These blocks can only hold a small amount of information which are encrypted strings of text and numbers. The storage size of a block depends on the blockchain. When the block storage size is exceeded, another block is automatically created and "chained" to the parent (previous) block. Thus the term "blockchain".
Modifying a distributed blockchain requires consensus of all nodes on the network which is nigh impossible due to the vastness of the network. For all intensive purposes the state of the block chain is immutable. The data cannot be changed or deleted. If you modify any block it invalidates all the subsequent blocks in the chain.
Blockchain's purpose is to provide a secure and tamper-proof way of storing data via redundancy and encryption.
How Does Blockchain Work?
Blockchain technology was in development years before it was successfully used for Bitcoin.
Bitcoin was developed by an anonymous person or group of people known as Satoshi Nakamoto in 2008. The concept was to create a system where transactions can be securely and verifiably transferred without the need for a third party such as banks or government institutions. Blockchain, which enabled all of these features, was at the core of Bitcoin.
The high level flow of blockchain is as follows:
Information or data is hashed.
The hashed data is stored in blocks via a consensus system.
When a block is added, all nodes in the blockchain network are updated.
Let's discuss these steps one by one.
1. Data is hashed.
A hash is a code produced by a hashing algorithm that is unique to the data it represents. The input data can be anything from text to a binary file or a description of a transaction. The hash function ensures the same input will always produce the same hash as output. If someone changes a single letter or bit in the data, it will change the hash. Hashes provide IDs that blockchains use to verify data.
2. The hashed data is stored in blocks through a consensus mechanism.
In a consensus mechanism, all the nodes (computers in the blockchain network) agree to the hashed data. Once a consensus is reached, the hashed data is added to a block. There are many consensus systems but the most used are Proof of Work and Proof of Stake.
3. When data is added to a block the update is mirrored to all nodes in the blockchain network, making it decentralized and effectively immutable. It is nigh impossible to change any information once it is shared with all nodes. This network of nodes assures that there is no central server or database that holds all information.
Let's take a deeper dive into how the hashed data is validated through the consensus mechanism using either Proof of Work or Proof of Stake.
Proof of Work
In a Proof of Work consensus, there is a group of digital miners who compete to be the first to validate a block of transactions. They do this by solving complex mathematical problems. The first miner to solve the problem gets to create the block and is given a block reward. The block reward is a set amount of cryptocurrency that is given to the miner as an incentive to validate blocks.
Once a block is validated, it is added to the blockchain and can not be changed or deleted. This creates a permanent record of all transactions.
Proof of Stake
Proof of Stake is an alternative to Proof of Work. In a Proof of Stake consensus, there are validators rather than miners. Validators are rewarded when they create a proposed block and it has been added to the blockchain.
In the Ethereum blockchain, to be considered as a validator, one has to stake 32 ETH. A validator is then chosen algorithmically and a committee, consisting of 128 validators, will attest to the block created by the validator. Only 2/3 of the committee validators agreeing is needed to have the block finalized and included in the blockchain. Once the block has been added, the validator gets rewarded.
It is to be noted that as of today, Ethereum is running in the Proof of Work consensus. It will move to Proof of Stake later this year, and is already being tested on the Beacon Chain.
Blockchain Technology
Satoshi Nakamoto is generally considered to be the father of modern blockchain technology. He is certainly the one that popularized it via Bitcoin.
Nakamoto conceptualized the use of blockchain for crypto currency way back in 2008 when he introduced Bitcoin. However, Satoshi was not the first to utilize the core concepts. Blockchain technology development started almost 20 years before Satoshi used it for Bitcoin.
It was in the late 1980s that Stuart Haber, a cryptographer, and Scott Stornetta, a physicist, developed the time-stamping structure that is now associated with blockchain. They used the technology as a distributed ledger for the publication of scientific papers. Haber and Stornetta had the technology patented under their company, Surety, in 2003. For unknown reasons, they lapsed on the patent license when they failed to pay the maintenance fee in 2004.
Because it was no longer encumbered by a patent, we can now have blockchain technology as it should be: decentralized and free from a central authority. The two most famous examples are Bitcoin and the Ethereum platform. Although public decentralized blockchains are the most common, some blockchains, such as private or permissioned, hybrid, and consortium blockchains, do have central authority.
The most basic application of blockchain today is a Peer-to-Peer network or PPN. A PPN consists of a network of computer nodes utilized for sharing data. These nodes can be your personal computer, laptop, servers, and even mobile phones. PPNs can be public or private.
Over the years, blockchain technology has evolved and expanded to meet the need of a growing set of applications. The most popular ones are Bitcoin, Ethereum, Polygon, Solana and Cardano. Let's discuss some of the more popular blockchains and learn how they differ.
Bitcoin
Bitcoin is the first and most popular blockchain. It was created in 2009 by an anonymous person or group of people known as Satoshi Nakamoto. Bitcoin is a public, permissionless blockchain which means anyone can join the network and start mining. The main purpose Bitcoin was created was to solve the problems of double-spending, reversibility, and centralization.
Double spending happens when two transactions are duplicated. This problem easily occurs in digital transactions. To solve this, third parties instituted barriers in place to prevent double-spending. These third parties are central authorities like banks, payment processors and clearing houses, and government controlled financial institutions.
Reversibility, on the other hand, can also happen when the transactions are reverted back by the parties themselves or by the central authorities.
To solve the hurdles of reliance on centralized authorities, double-spend and reversibility, Satoshi created the Bitcoin blockchain. The blockchain consists of a network of computers, or peers, that process transactions. Satoshi employed cryptographic measures to secure transactions, which are then uploaded to a distributed public ledger hosted by all peers in the network.
Ethereum
Ethereum, the second largest cryptocurrency by popularity and market cap, was created in 2015 by Vitalik Buterin. It is a public blockchain that anyone can join. The main purpose of Ethereum is to be a decentralized platform that runs smart contracts. A smart contract is a digital contract that is self-executing and self-enforcing.
Vitalik saw the constraints of the Bitcoin blockchain, which is limited to simple transactions like buying, selling, and transfer. He compared bitcoin and the early blockchain to a simple pocket calculator. Ethereum is different. It is a feature rich programmable blockchain that hosts both its own crypto currency and many others. Smart contracts can be developed, uploaded and executed on top of the Ethereum blockchain.
Smart contracts are just applications created on top of the Ethereum blockchain. They contain code that will automatically perform actions, such as transferring funds, when a set of conditions are met. ERC-721, a standard API for NFTs, utilizes smart contracts. This standard facilitates the creation of images, files, text, music NFTs (Non-Fungible Token).
To run these smart contracts, the Ethereum blockchain uses its own cryptocurrency called Ether. Ether is used to pay for transaction fees. The main challenge of Ethereum transactions, however, is their high gas fees.
Polygon
Another blockchain worth mentioning is Polygon. It is a layer 2 solution, meaning it works in parallel with layer 1 which in this case is Ethereum. Polygon aims to solve the high gas fee of Ethereum by taking off the transaction from Ethereum and running it on Polygon while maintaining all other functions of the contract in Ethereum.
Polygon was created in 2017 by three Indian entrepreneurs - Sandeep Nailwal, Anurag Arjun, and Dilip Rao. It is a public blockchain but it provides the ability to require permissions for certain transactions. This means that not everyone can join the blockchain and start validating transactions. Only those who are approved by Polygon can become a validator.
Polygon uses a Proof of Stake consensus algorithm which is still in the testing phase for Ethereum. See the Proof of Work and Proof of Stake sections above for details.
Solana
The Solana blockchain was created in 2017 by Anatoly Yakovenko. It is a public blockchain which means that anyone can join and start validating transactions. The main purpose of Solana is to be faster, more scalable, and more secure than the established blockchains.
One of the unique features of Solana is its hybrid consensus mechanism which uses Proof of Stake and Proof of History consensus algorithms. These algorithms are used to timestamp and link transactions. Another unique feature of Solana is its use of WebAssembly or WASM. WASM is a low-level programming language for the web that allows blockchain developers to code in any programming language that provides a WASM target. Examples include Rust, C++ and TypeScript. This feature makes it easier for programmers to develop on Solana.
Cardano
The Cardano blockchain was created in 2015 by Charles Hoskinson. It is a public blockchain anyone can join and start validating transactions. Hoskinson intended Cardano to be a platform for smart contracts and decentralized applications much like Ethereum.
Cardano uses a Proof-of-Stake consensus algorithm called Ouroboros. Ouroboros is different from other Proof-of-Stake algorithms because it does not require a fixed set of validators.
Another unique feature of Cardano is its use of Haskell programming language. Haskell is a functional programming language that is known for its safety and security.
Conclusion
Thanks to their popularity, there are many blockchains being developed. However, these are the most popular and noteworthy among them. Bitcoin started everything, and from its basic blockchain sprung many others aiming to improve on its functionality.
These blockchains have improvements and new capabilities that expand their application well beyond simply storing and validating data. Blockchain technology is often closely associated with cryptocurrency, but it is increasingly being used in other fields.
As always, we welcome comments and questions in the discussion area below.
Comments