The universal standard ERC-20, which works with smart contracts, has become a real turning point in the world of cryptocurrency. The ERC-20 tokens are currently used by most Cryptocurrencies as they connect cryptocurrencies to each other and to third-party services. However, there are other types of tokens as well. The main difference between the ERC-20 and the ERC-721 standard is that the latter is not fungible. This feature determines the range of possible implementations of the standard. Apparently, unique, fungible tokens are best suited for the tokenization of unique assets.
Much of the functionality of the ERC-721 standard incorporates the same features as the ERC-20 standard, and this continuity is necessary at least for simplicity purposes in the daily use of the coins, since they must be stored in ordinary wallets and traded on exchanges.
However, the unique properties require the introduction of new smart contract features. Since each token is unique, it is necessary to record the ownership of a particular token in the block and track its movements. When you buy a part of the ERC-20 token, your ownership rights are specified in the smart contract. It contains the data on how many tokens each address will have after the deal. As a matter of fact, it doesn’t matter which specific token it was, because they are fungible and they are all the same.
However, the value of one ERC-721 token does not match another ERC-721 token, because they are not fungible and unique. So it is not enough to add an address and balance to the contract. Each token is unique and we need to know which one of them was traded. For this reason, in the ERC-721 standard, ownership is determined by a list of token identification numbers stored at your address. Ethereum’s popularity means that the most commonly used token standards include ERC-721 and ERC-1155. Similar to an ERC-20 address, an ERC-721 address has 42 hexadecimal characters derived from the last 20 bytes of the public key controlling the account with 0x appended in front.
For the first time, CryptoKitties became synonymous with ERC-721. However, the standard of a non-fungible token was invented by Dieter Shirley. He published a draft on September 20, 2017. In December, CryptoKitties blew up the world of Ethereum. Nevertheless, this game was the first real implementation of the ERC-721 token on a large scale. As a reminder – you can buy one of the unique CryptoKitties, some of them are very rare and, of course, very expensive. Then you can sell, modify or present them.
After CryptoKitties there were CryptoPuppies with virtual puppies and CryptoPets, where you can choose any animal to breed. For fans of alternative pixel art, the CryptoPunks application was developed, where you can collect and exchange punk heads. Even CryptoCelebrities was created – for trading celebrities, where Ethereum founder Vitalik Buterin has the most expensive card. This is just the beginning of the implementation of the ERC-721 standard, and we will definitely see many new products.
Summary
The most obvious difference between these two types of tokens is their fungibility.
-
ERC-20 tokens are fungible. This is the “money-like” standard. Each ERC-20 token is completely the same and has the same value as others. It is like dollars – each $100 bill has a value of $100 USD.
-
ERC-721 tokens are not fungible. This is the “things-like” standard. Each ERC-721 token is different from others – it has different properties. As cryptokitties, where each of them is unique.
References:
- https://eips.ethereum.org/EIPS/eip-721
- http://erc721.org/
- https://academy.binance.com/en/glossary/erc-721
- https://coinmarketcap.com/alexandria/glossary/erc-721
- https://ethereum.org/en/developers/docs/standards/tokens/erc-721/
- https://medium.com/crypto-currently/the-anatomy-of-erc721-e9db77abfc24