What is ERC-1155?
ERC-1155 is a set of rules created to make the process of trading cryptocurrencies, NFTs, and tokens more efficient on the Ethereum blockchain.
The Long Definition
ERC stands for Ethereum Request for Comments. The Ethereum blockchain is a diverse project with many applications.
When someone wants to write a new program on Ethereum, they use the ERC format to create a reusable ruleset for similar, future projects. Because Ethereum is so popular, there are hundreds, if not thousands, of these ERC rulesets.
ERC-1155 is a multi-token standard. This means it defines the rules for creating different types of tokens: fungible, non-fungible, and semi-fungible. To do this, it combines the other two popular token standards on Ethereum; ERC-20 and ERC-721.
ERC-1155 was created to enable the efficient transfer of fungible and non-fungible tokens. It works by letting developers wrap multiple tokens in the same smart contract. That way, the different types of tokens can be transferred in a single transaction.
History of ERC-1155
ERC-1155 was created by Enjin. While building their product, the team realized that existing token standards, ERC-20 and ERC-721, are inefficient for the deployment of large databases of diverse tokens. This is because they require a separate smart contract for every token.
To solve this problem, the team, led by Witek Radomski, created a new standard. This was proposed in June 2018 as Ethereum Request for Comments 1155. The proposal went through the standard Ethereum Improvement Proposal (EIP) process before being officially passed in 2019.
Why is ERC-1155 Important?
Before ERC-1155, developers had two main token standards to work with, ERC-20 and ERC-721.
ERC-20 vs. ERC 721
ERC-20 is a standard for fungible tokens on the Ethereum blockchain. Fungible means they are exactly the same as other tokens. Cryptocurrencies like BNB or ether are good examples of fungible tokens. There are millions of them and one BNB is exactly the same as another bitcoin.
They are not unique. Therefore, you can swap a fungible token for another token of the same kind without making a difference. It’s like when you exchange a dollar for another – the value remains the same.
ERC-721, on the other hand, is the standard for non-fungible tokens (NFTs). NFTs are unique representations of assets on a blockchain. Therefore, they are not directly interchangeable with each other. They’re also not divisible into smaller units.
Most people think of NFTs as digital art, but they can be many other things. A concert ticket, a person’s medical records, or a deed to a house could all be expressed as an NFT. In these cases, NFTs act as digital proofs of ownership of the underlying asset.
Problems with ERC-20 and ERC-721
ERC-20 and ERC-721 token standards work well for most products. The problem, however, is that they require a smart contract for every token.
This presents a huge problem in certain applications; like blockchain-based gaming. Writing a smart contract (i.e. computer program) for every token in the game would be nearly impossible.
A blockchain video game can have any number of items, both fungible and non-fungible. If the developer uses ERC-20 and ERC-721, they will have to create an equal number of smart contracts. So, if their game has 10,000 items, that means coding 10,000 smart contracts.
This is obviously a lot of work. Also, ERC-20 tokens of the same kind typically have similar codes with only a few differences between individual tokens. So, having a smart contract for each fills the blockchain with redundant code. This is unnecessarily inefficient and costly, especially when you consider that data storage on Ethereum is expensive.
It also means that transactions are inefficient. When a player wants to trade, say, a fungible and non-fungible token from their inventory, they have to initiate a transaction for each item. This is a highly inefficient and expensive way of doing this.
ERC-1155 As the Solution
ERC-1155 is a multi-token standard that allows an infinite number of tokens to be handled by a single smart contract. It was originally created to streamline token creation and transactions in blockchain games.
To do this, the token standard combines elements of ERC-20 and ERC-721. This allows developers to use a single smart contract to govern an infinite number of both fungible and non-fungible tokens.
There are several key benefits to this approach. For one, there is less work for developers. They no longer have to create a smart contract for every item. In fact, since the standard allows for an infinite number of tokens, they can have only one smart contract with all tokens.
It also allows for more efficient use of storage space. Fewer smart contracts deployed means less space occupied on a blockchain. This has the added benefit of making deployment cheap.
Lastly, it makes for more efficient transactions. ERC-1155 allows for batch transfers – sending multiple tokens as a single transaction. Therefore, the blockchain no longer needs to approve individual contracts separately for transfer. This reduces the waiting time for transactions and makes them cheaper.
Other Potential Uses
ERC-1155 supports another class of assets known as semi-fungible tokens. These tokens start as fungible and end up as non-fungible after an event such as a concert. A few good examples include blockchain-based tickets and coupons.
Before a concert, a ticket can be traded and swapped freely. But after the show, it loses its value and becomes a collectible. It is a souvenir for the holder, something that shows they attended the concert. In that regard, it is converted into a non-fungible token.
The same can be said for a coupon, like the kind you would use at a clothing store. Before it is redeemed, it is freely tradable and interchangeable with other similar coupons. But once you redeem it, it becomes a non-fungible collectible.
Other Token Standards
Other token standards on the Ethereum blockchain include;
- ERC-777: This is a token standard from fungible tokens. It is designed to improve on the existing ERC-20 standard for trading on decentralized exchanges.
- ERC-4626: This is a token standard for tokenized vaults. Tokenized vaults are smart contracts that take token deposits and provide the depositor with rewards as yield.
Want to join the Dypto journey? Follow our socials!