In this blog post we will go through several differences between two of the most powerful blockchains, Bitcoin and Ethereum. This should bring some light about what constraints exist when it comes to each of the two networks and what can be implemented on each of them.
Bitcoin represents the first blockchain. It first came to light through a whitepaper (“Bitcoin: A Peer-to-Peer Electronic Cash System”) published in 2008 by someone under the pseudonym of Satoshi Nakamoto. Ethereum blockchain was described for the first time in a white paper by Vitalik Buterin, a young Russian-Canadian programmer, in 2013.
2 Native Currency
The native currency of Bitcoin Blockchain is represented by Bitcoin. A Bitcoin can be further divided into subdivisions the smallest one is Satoshi (1 Bitcoin = 10 8 Satoshi).
On the Ethereum Blockchain, the native currency is Ether. An Ether can be further divided into subdivisions where the smallest one is Wei (1 Ether = 10 18Wei).
3 Consensus Mechanism
One of the main pillars of a blockchain is represented by its consensus mechanism. The consensus mechanism allows the nodes of the network to reach an agreement regarding the current state of the system, and it helps prevent certain economic attacks. Bitcoin blockchain uses PoW (Proof of Work) as a consensus mechanism, whereas Ethereum is expected to migrate from PoW to PoS (Proof of Stake) somewhere in late 2021, or 2022. This migration is part of the scaling strategy of the Ethereum network.
PoW is performed by miners who compete to create new blocks with verified transactions. The winner proposes the new block with the rest of the network and is rewarded with some new-minted coins. To create a new block, the miner has to solve a cryptographic puzzle that is expensive in terms of computational power.
PoS is performed by validators who have staked coins in the network to become validators, thus having an economic incentive to act in the best interest of the network, otherwise, they lose their invested stake. A validator is chosen randomly to create a new block and gets rewarded with new-minted coins.
4 Number of Transactions per Second
Bitcoin can support about 7 transactions per second. Ethereum 1.0 (based on PoW) supports around 30 transactions per second. It is expected that once the migration to Ethereum 2.0 happens (based on PoS), this number will be able to increase up to 100 000 transactions per second using shards. As a comparison, Visa handles on average around 1700 transactions per second.
5 Total Number of Coins
In the case of Bitcoin, there is a maximum number of Bitcoins that can ever be mined, 21 million. This offers BTC scarcity making it suitable as a store of value and offering it resistance against inflation. Because of this, one can think of Bitcoin as digital gold. It is also important to note that a percentage of the coins are always lost over time because of carelessness, or because some people die and fail to pass to anyone their private keys before their death, etc. Given this, we can conclude that there will never be 21 million of bitcoins in circulation, but less than that.
In the case of Ethereum, even though it has a permanent linear supply growth model, this still tends towards zero over time. The percentage of ETH that gets lost can be modeled as a percentage of the total supply per year. Over time, the total currency supply will eventually stabilize when reaching a value equal to the annual issuance divided by the loss rate.
6 General Design
Bitcoin has a limited scripting language (a true/false evaluation of spending conditions), whereas Ethereum has the advantage of being a general-purpose programmable blockchain that runs a virtual machine (you can think of it as a universal computer running across all the nodes of the network). This makes Ethereum suitable to execute more complex code using smart contracts (a self-executing computer program where the logic and the conditions of execution are incorporated into lines of code). Considering this, Bitcoin is primarily designed to offer a digital currency, whereas Ethereum is designed to offer a utility currency. A utility currency enables users to pay for the use of the platform, in this case, the Ethereum network, on top of which innumerable applications can be built.
On Bitcoin blockchain, transactions can only be created externally (by other wallets), whereas, on Ethereum blockchain, transactions can be created both externally (by other wallets), or internally (by another smart contract). This makes it possible for smart contracts to create other contracts, opening a large spectrum of use cases for contracts such as decentralized computation, decentralized prediction markets, or decentralized file storage among others.