• Bipul Sinha

Ethereum 101: Part 3 - ETH, ERC20, NFTs and other tokens



In this article, I will go into details on ETH and other types of tokens - ERC20, NFTs etc - that exist on Ethereum blockchain.


Ether:


Ether (ETH) is the native token or asset of the Ethereum blockchain. Note that Ethereum is the name of the blockchain while “ether” is the name of the native asset on this blockchain. Many people use ether and Ethereum interchangeably but ether is the accurate name when referring to the asset. Similarly Bitcoin (with capital “B”) is the name of the blockchain while bitcoin (with small “b”) is the name of the native asset on Bitcoin.


I alluded to ETH in the first part of this series:


Ethereum is Turing complete. It means that any program of any complexity can be computed by Ethereum. This brings some security and resource management challenges. Ethereum can't predict if a smart contract will terminate or how long it will run without actually running it. Whether by accident or on purpose, a smart contract can be created such that it runs forever when a node attempts to validate it. This property can be used by attackers to attack/hijack the Ethereum system by flooding it with “complex” and compute intensive transactions to take down the system (similar to a DDoS attack). To address this, Ethereum introduced a metering mechanism called gas. This ensures that every user has to pay an appropriate price for consuming the system’s resources and makes the cost of attack very high for a malicious attacker

Therefore, to ensure that Ethereum users use the blockchain in a judicious manner, Ethereum introduced the concept of gas so that every user has to expend some resource (gas in this case) to perform a transaction. Users pay gas in a cryptocurrency known as ETH. Just like how fuel/energy is required to run a car, ETH is needed to perform any computation on the Ethereum blockchain.


Overview of ETH issuance:

First, let's look at the issuance model for Bitcoin. Bitcoin is designed in a way that there will only be 21 million bitcoin in existence. New bitcoins can be created only by “mining” i.e. by computers that mine and add blocks to the Bitcoin blockchain. Miners keep the network secure by doing this. A miner gets X bitcoin for every successfully mined block added to the blockchain. At the time of writing (i.e. 2022), the bitcoin mining reward is 6.25 BTC i.e. a miner gets 6.25 BTC for every successful block added to the blockchain. This reward decreases over time in a process known as Bitcoin halving. At every Bitcoin halving event, the amount of BTC mining reward is halved. The next Bitcoin halving will occur in 2024 and will reduce the block reward to 6.25/2 = 3.125. This halving will continue to occur over the next few decades till all the 21 million bitcoin is mined. After that time, miners will not be rewarded in the form of mining rewards. However, miners will still have an incentive to mine blocks because they also get “transaction fees” for including a transaction in the block. Transaction fees are expected to make up the deficit introduced from the halving of mining rewards.



Bitcoin decided to implement such a structure as its goal is to be a store of value. Bitcoin’s code guarantees that there will only be 21 million BTC in existence. Therefore, there will be a fixed supply of BTC and it can serve as an effective store of value. For e.g. a user can convert their life savings into BTC. They can assume that the total supply of BTC will never go beyond 21 million BTC. Therefore, their savings (expressed in BTC) will not be diluted due to new BTC being created. This is not the case for savings in fiat money (like USD) as the purchase value of fiat money gets eroded over time due to inflation.


ETH was made available to the public as part of an initial Coin Offering (ICO) in 2014. An ICO is somewhat similar to an Initial Public offering (IPO). A private company can release their shares to the public as part of an IPO. Similarly, a project can give ownership to the public, users, community members via an ICO.


At the time of Ethereum ICO, users could buy ETH by sending Bitcoin to the Bitcoin wallet address of the Ethereum foundation. 60M ETH were sold to users in this ICO. The ICO also had a stipulation that (2 x 0.099 = 0.198) times the crowdsale amount will be allocated to the early contributors for the project i.e. the core Ethereum developers/foundation will get this fund. This amounted = 0.198 x 60M = ~12M ETH. Therefore, at the time of crowdsale, a total of 60M + 12M ETH was created and allocated to users.


Current supply of ETH can be seen in this chart: https://etherscan.io/stat/supply and in exhibit 2.



Exhibit 3 shows the growth in ETH supply over the last few years.



Blog post announcing the ETH ICO can be found here: https://blog.ethereum.org/2014/07/22/launching-the-ether-sale


Is ETH a security?


The blog post announcing ETH sale made it very clear that ETH is a token or a product and is not a security. Regulations to do a crowdsale of a security are much onerous. Therefore, the Ethereum founding team clarified that ETH was not a security.


The following passage describes the thinking of the founding team and their legal team. The passage has been taken from the The Infinite Machine book by Camila Russo:


In a supporting document listing the firm’s facts and assumptions, the lawyers wrote that they expected that the Ethereum Foundation “will promote the exchange of ether in a manner consistent with the distribution of a product, and not as a speculative investment,” and that it won’t make any commitments to potential presale participants to continue developing or maintaining the Ethereum platform after the creation of the genesis block.
The legality of Ethereum’s Genesis Sale would be a matter of debate for years to come. Those arguing that the sale constituted a securities offering in the United States often point to the famous Howey Test, created by the Supreme Court to settle a case back in 1946. The test says that an investment contract “is a transaction or scheme whereby a person invests his money in a common enterprise and is led to expect profits solely from the efforts of the promoter or a third party.” In the case of Ethereum, buyers of ether were expecting to profit from the increase in value of the digital token as demand to use the platform grew, thanks to the efforts of developers and others working for the project.
Those arguing that ether is not a security maintain that the cryptocurrency wasn’t designed to represent value in a company or enterprise, but to be used to run applications built on the platform and reward those maintaining the network. There is no common enterprise supporting Ethereum, they contend, but rather it is developed and run thanks to a decentralized group of people writing code for the platform, building applications, and maintaining the computers used to validate transactions and computation steps. They’ll argue that even if the Ethereum Foundation disappeared, Ethereum would continue running.

Exhibit 4 shows the clarification that the founding team provided in the launch blog post:




How is ETH added/removed from circulation?

As shown in exhibit 2, new ETH can be added to the circulation via the following means:


[1] Mining reward: Miners get rewarded with ETH for mining and adding a block to the Ethereum blockchain. This is similar to the BTC rewards that BTC miners get. This reward was 5 ETH/block in the initial days of Ethereum and was reduced to 2 ETH/block just before the “Merge”. Exhibit 5 shows the reduction in block reward from 5 ETH to 2 ETH. Ethereum moved from a POW (Proof of Work) consensus mechanism to a Proof of Stake (POS) consensus mechanism in September 2022. This event is known as the “Merge”. Since the Merge, the block reward has reduced to zero.




[2] Uncle reward: Uncle rewards are given for blocks that nearly get into the blockchain but don't quite make it, and exist primarily in order to improve decentralization. This is a nuance of the Ethereum blockchain and we will not go into this in detail.


[3] ETH2 staking reward: With migration from POW to POS consensus mechanism, blockchain “miners” (technically known as validators) have to stake ETH and they receive staking rewards for staking and validating blocks. As per this model, a validator has to stake 32 ETH i.e. lock 32 ETH into the Ethereum protocol. Locking this ETH gives an opportunity to the validator to propose a block and add it to the Ethereum blockchain. In return for staking the 32 ETH + doing the computation required for adding a block, the validators get staking reward (similar to mining reward that Ethereum miners received in the POW era). Ethereum launched a “beacon chain” in Dec 2020. This beacon chain allowed the developers to test POS consensus before fully transitioning the main blockchain to POS as part of the Merge. With the launch of beacon chain, users/validators could start staking their ETH on this beacon chain (you can think of it as a parallel chain to the main Ethereum chain and the main Ethereum chain + beacon chain were merged into a single one as part of the “Merge”). Therefore, exhibit 3 shows that staking rewards started accumulating/delivered in Dec 2020.


Unlike bitcoin, ETH can also be “burnt” or taken out of circulation. On August 5, 2021, Ethereum introduced a change called EIP 1559. This changed the way miners (and later validators) were compensated for mining/validating blocks. As part of this proposal, a portion of transaction fees collected from the user was burnt i.e. destroyed or taken out of the circulation. Reasoning behind this is out of scope for this article. But due to this change, some ETH started getting burnt and taken out of circulation. This is unlike Bitcoin as bitcoins cannot be destroyed. Users may lose access to the private keys that are required for accessing their bitcoins but the bitcoins still remain on the blockchain and are not destroyed. However, in the case of Ethereum, a portion of transaction fees are actually destroyed. Exhibit 6 shows the portion of the fees that is burnt on etherscan.



Exhibit 7 shows that in the month of October, ~57K ETH was burnt or destroyed



Therefore, summarizing some key callouts about ETH issuance:

[1] There is no upper bound on how many ETH can be in circulation. This is unlike Bitcoin in which only 21 million bitcoin can be in circulation at any time. At the time of writing, 120M ETH is in circulation. This can be tracked at any time at this link.


ETH has a different use case compared to Bitcoin. Its goal was to not serve as a store of value but to facilitate and meter transactions on the Ethereum blockchain. Therefore, there is no upper bound on how many ETH can be in circulation


[2] ETH was originally added to circulation by means of block reward. However, after ETH’s migration from Proof of Work to Proof of Stake consensus, ETH can only be added via staking rewards


[3] ETH can be deflationary: Unlike Bitcoin, ETH can be burnt/destroyed. If the rate of burning ETH exceeds the rate of new ETH issuance then ETH can become deflationary i.e. ETH supply can decrease. Exhibit 8 shows the current projection for ETH issuance and burn and the projection is that ETH will become deflationary.



ERC-20 tokens:


As per Vitalik:


Although Ethereum allows developers to create absolutely any kind of application without restriction to specific feature types, and prides itself on its "lack of features", there is nevertheless a need to standardize certain very common use cases in order to allow users and applications to more easily interact with each other

Source: https://github.com/ethereum/wiki/wiki/Standardized_Contract_APIs/499c882f3ec123537fc2fccd57eaa29e6032fe4a


ERC20 standard emerged from the above need. ERC20 is an interface to implement a token. As covered in this article, an interface acts like a blueprint or shape that a contract should follow. Therefore, ERC20 is an interface that defines what a standard token on Ethereum should look like. This standardization helps as other applications - wallets, exchanges etc - can plan around what to expect from a new token if it follows the ERC20 token standard. Exhibit 9 shows the interface for an ERC20 token.



Any developer can create an ERC20 token by deploying a smart contract that adheres to the following interface. There are thousands of ERC20 tokens and exhibit 10 shows a list of the top ERC20 tokens.



ERC20 tokens are named after the process that is followed for introducing a change to Ethereum. In Ethereum, a developer/user has to propose an “Ethereum request for comment” document (or ERC) to propose a change/standard. The 20th such proposal was for a standardized token. Therefore, the tokens that follow the standard named in the proposal, are referred to as ERC20 tokens. BAT (Basic Attention Token) is an ERC20 token and its smart contract can be found at this link. Exhibit 11 shows that the BAT smart contract follows the guidance of the ERC20 interface and defines the functions/events that are needed for a token to be called an ERC20 token.



NFTs:


Both ETH and ERC20 tokens are fungible tokens. This means that 1 unit of ETH can be exchanged for another ETH and 1 unit of BAT can be exchanged for another unit of BAT. There is no difference between these tokens and, therefore, they are fungible. NFTs stand for non fungible tokens. This means that every token will be unique. NFTs are used to represent digital art, collectibles, in-game items etc.


The most common token standard for NFTs is the ERC721 standard. Just like how ERC20 is a common standard for fungible tokens, ERC721 is a common standard for non fungible tokens. A developer can deploy a NFT smart contract using the ERC721 interface. Within this smart contract, the developer can specify a token ID for various tokens. Each (token_id, contract address) pair is unique. For e.g. BAYC is one of the most popular NFT projects and consists of 10K unique bored apes. As shown in exhibit 12, the project has a single contract address and each token in the project has a unique token_id. We will cover NFTs in detail in a later article.



Wrapped tokens:


wETH:


ERC20 introduced a standard for tokens on Ethereum. However, ETH - the native asset on the blockchain - did not conform to the standard itself. Therefore, wrapped ETH or wETH is an ERC20 compliant version of ETH. Many applications (or dapps) on Ethereum are designed to accept only ERC20 tokens. Therefore, converting or wrapping ETH to wETH can help users to interact with those dapps.


wETH represents a smart contract on the blockchain. Users can send ETH to this contract and can lock the ETH in the contract. In return, they get an equivalent amount of wETH in a 1:1 ratio. This wETH can be used as any other ERC20 token. Users can always go back to the unwrapped ETH or normal ETH by sending their wETH to the contract and getting their ETH back. Exhibit 13 shows the ETH balance in the wETH contract over time. The amount of wETH in circulation is equal to the amount of ETH locked in the contract as wETH is given to the user in a 1:1 ratio.



wBTC:


Just like how users can wrap their existing ETH asset to a wrapped ETH asset, users can also wrap their bitcoin holdings into a wrapped version of bitcoin. The challenge with such a wrapped bitcoin is that while ETH exists on the same blockchain as other ERC20 tokens, BTC exists on a completely separate blockchain. This introduces the need of some centralized parties so that users can exchange their BTC asset to wBTC asset.


The sequence of events for a user are as follows:

  1. User visits a merchant’s website and completes some KYC process + sends their bitcoin to the merchant. A list of merchants can be found here

  2. The merchant initiates a “mint” request to generate wBTC tokens

  3. The merchant also send the BTC that they received from the user to a custodian

  4. Only the custodian can actually mint the wBTC token after they have verified that the BTC has been received by them

  5. The wBTC tokens that are generated are given to the merchant, who then sends the wBTC token to the users


In reality, most of these steps are abstracted away. For e.g. a user can just go to a decentralized exchange (like Uniswap) can convert their ETH (or other ERC20 token) into wBTC without worrying about all the above steps. Exhibit 14 shows the UX for using Uniswap to swap USDC into wBTC.



As mentioned above, the process introduces certain centralized players like a custodian. The custodian holds or custodies the BTC of the user and issues wBTC. The custodian can fraudulently mint more wBTC tokens than the BTC assets that they possess in custody. Therefore, a custodian typically publishes proof that they do hold/custody the BTC that they claim to have in custody. For e.g. wBTC custodian publishes the wallet address of BTC wallets in which they hold the BTC that they claim to hold. Exhibit 15 shows this. Anyone can go through the wallet address and verify that the custodian is not releasing more (or less) wBTC tokens than they have in custody.


At the time of writing, ~$5B of wBTC token was in circulation. There are other kinds of wrapped bitcoins that exist as well. renBTC is another kind of wrapped BTC. As shown in this link, there is ~$100M of renBTC token in circulation. Therefore, it is much less popular compared to wBTC.

8 views0 comments