Ethereum Request for Comment (ERC) is a set of technical documents with guidelines for creating tokens or smart contracts to run applications on the Ethereum network. These can be assets, name registries, decentralized exchanges, and more.
While everyone can create a token or a smart contract, each script must be followed accordingly to implement the ERC successfully. In other words, if you can’t play by the ERC rules, you can’t play with Ethereum.
Each ERC standard specifically outlines various functions; for example, ERC-20 is for fungible tokens such as DAI Stablecoin, Shiba INU, Ether, and ERC-721 is for non-fungible tokens (NFTs) such as a single Bored Ape Yacht Club NFT.
This article will help you understand the difference between ERC standards, such as ERC-20, ERC-1155, and ERC-721, and a few lesser-known standards, like ERC-1337 and ERC-884.
Understanding ERC Standards
Before diving in, we must understand that all developers must go through an Ethereum Improvement Proposal (EIP) before creating an ERC.
An EIP describes the functionalities and specific protocols of the ERC. Once submitted, Ethereum developers will review the proposal and, if deemed valuable, it’s accepted and implemented.
ERC-20, The Dominant Token Standard
ERC-20 is the most famous token standard for fungible tokens, which means they are interchangeable units of value like Ether or USDT. This standard was proposed by developer Fabian Vogelsteller in November 2015.
Almost all of the tokens created in the Ethereum blockchain use the ERC-20 standard, such as Basic Attention Token (BAT), Chainlink (LINK), and Tether USD (USDT). These tokens must adhere to a set of functions, mainly:
- totalSupply: provide the total supply of the token
- balanceOf: total account balance of the owner’s account
- transfer: sending a number of tokens to an address
- transferFrom: the transfer of a number of tokens from an address
- approve: allows a spender to withdraw a number of tokens from a specific account
- allowance: allow external addresses to send tokens from a certain balance
Other functions are optional but should be considered to improve usability, like symbol: the symbol of the token (e.g., token: Polygon, symbol: MATIC).
Source: Ethereum.org
As seen in the image above, these functions lead to two events: transfer event, whenever a transfer takes place in the blockchain, and approval, whenever approval is required.
However, each ERC-20 token is limited since it can only be managed by its respective ERC-20 smart contract, whereas the ERC-1155 standard —which we’ll explain below— is designed to support the management of different types of tokens, allowing them to alleviate processing overhead for blockchain applications.
In simpler terms, ERC-20 is like a stamp for tokens that says: this token can only be exchanged with other ERC-20 units of value, like USDT, using only a specific type of smart contract designed for it. The same way you can interchange a 50 dollar bill for another 50 dollar bill, but you can’t swap a unique artwork for another one.
ERC-1155 and ERC-721: Non-Fungible Tokens
ERC-1155 and ERC-721 are token standards for building Non-Fungible Tokens (NFT).
Non-fungible tokens, as the name suggests, are tokens with a specific type of metadata embedded in them, so they are not mutually exchangeable. They are mostly used to represent ownership and provenance for physical assets, digital collectibles, in-game assets, event tickets, domain names, etc.
And what sets them apart? In ERC-721, only a single smart contract can process a single type of token, whereas ERC-1155 allows one smart contract to support an infinite number of tokens and functions.
In layman’s terms; ERC-721 only supports NFTs, and each NFT can only be transferred in a single transaction, which can cause network congestion and elevated gas fees. On the other hand, ERC-1155 supports the conversion of fungible tokens (like ERC-20) into non-fungible tokens and vice versa. Multiple transactions can be sent in a whole batch, making ERC-115more efficient and cost-effective.
To clarify, an application that works with blockchain games will most likely use ERC-1155 due to its versatility. For example, Axie Infinity’s Runes and Charms are used as ERC-115 standards.
ERC-1337
The ERC-1337 standard is designed as an interface for replicating today’s subscription-based payments but for blockchain applications/businesses. While the proposal has potential, it hasn’t seen much development and remains a half-baked standard.
ERC-1337 essentially seeks to bring a replica of Software-as-a-Service (SaaS) models, such as monthly subscriptions used by streaming platforms and cloud storage, into Web3, all while allowing content creators and developers to remain decentralized and customers anonymous.
In other words, ERC-1337 contracts would eliminate third-party payment processors and allow Ethereum wallets like MetaMask to automatically pay yearly subscriptions directly, for example, to blockchain applications. Users would “sign” recurrent transactions for dApps in a whole batch, and these merchants, so to speak, would record everything on the blockchain.
ERC-884: Tokenizing Stocks
ERC-884 seeks to tokenize stocks from firms or institutions, allowing them to raise funds via Initial Public Offering (IPO) or through a private equity sale without needing a custom share registry, traditional stock exchanges, or transfer agents.
ERC-884 was accepted as a draft in the Ethereum community after the Delaware State Legislature passed a bill that allows Delaware public and private corporations to issue shares represented as ERC-20 tokens.
However, ERC-884 must be compliant with certain regulations, to name a few:
- Full verification of token holders and whitelist theme
- Shareholders can be prepared by a specified corporation
- Tokens can’t have fractional value but the whole value
- If investors lose their private keys, they must obtain a new address
- An off-chain database to implement Know Your Customer (KYC) checks.
Final Thoughts: The Future Ethereum Token Standards & You
ERC are technical guidelines for developers to create different types of tokens that suit their needs. Without them, Ethereum smart contracts would have limited capabilities outside of the network itself.
A protocol that wants to issue a fungible token on the Ethereum network will use the ERC-20 standard, and NFT projects will opt for ERC-721 or most likely ERC-1155. Each ERC standards has its own approach towards different subjects and use cases, like the tokenization of traditional assets or adding more functions to the ERC-20 standard.
However, a lot of ERC are half-baked, abandoned by their developers:
ERC-223: This standard proposed adding a recovery functionally called tokenFallback, allowing ERC-223 smart contracts to identify incoming transactions with incompatible addresses. Ethereum developers have not implemented this standard, and it’s pretty much forgotten. Instead, ERC-777 has been chosen to address the issues ERC-233 was trying to solve.
ERC-777 is a token standard that intends to improve the capabilities of the ERC-20 tokenization platform. This standard adds several functions. One of them is the ability to send “hooks” which essentially inform smart contracts and addresses of an upcoming transaction and accept or reject certain types of tokens.
ERC-777 is backward compatible with ERC-20, and it’s not meant to overtake its position but rather improve its functionalities.
The post What Are the Different Types of ERC Token Standard?: ERC-20, ERC-1155, and More appeared first on CoinCentral.