ERC-721
Last Updated :
21 Aug, 2024
Blog Author :
N/A
Edited by :
Ashish Kumar Srivastav
Reviewed by :
Dheeraj Vaidya
Table Of Contents
What Is ERC-721?
ERC-721 refers to a template or guideline that all tokens based on Ethereum must follow. This standard is used to create a non-fungible token or NFT that is not interchangeable and one-of-a-kind. Moreover, it enables one to own and transfer such tokens securely.
ERC-721 offers a framework for developing decentralized applications or dApps that use NFTs for different purposes. All these tokens have a unique code and metadata, making them distinct from one another. The price of such tokens depends on multiple factors, such as hype and rarity. Some popular use cases for such tokens are for virtual worlds, gaming, and digital art.
Table of contents
- ERC-721 refers to a standard for non-fungible tokens on the Ethereum network. This standard allows users to transact using the tokens securely.
- A key difference between this standard and ERC-20 is that the latter is the standard for fungible tokens, not NFTs. That said, ERC-1155 is for creating fungible as well as non-fungible tokens.
- ERC-721 offers various benefits. For example, it enables creators to build additional functionalities into the tokens. Moreover, it offers cross-platform compatibility for NFTs.
- Some functions of this standard are name(), symbol(), and totalSupply().
ERC-721 Explained
ERC-721 refers to a widely used token standard developers use to create NFTs on the Ethereum blockchain. Such tokens can represent both intangible and tangible assets. This standard’s official authors are Dieter Shirley, Natassia Sachs, William Entriken, and Jacob Evens. Here, ERC stands for Ethereum Request for Comments.
These tokens consist of a smart contract that maintains the ownership record. This allows for the secure transfer of the tokens between users. A token’s creator enters unique information related to it, including the name, size, and owner of the collection, into the token’s base code.
Following the same standard to create tokens makes writing codes more straightforward. Moreover, the codes become reusable and more predictable. Such a standard is entirely voluntary. That said, considering this standard is widely used, it is compatible with many applications, including wallets and exchanges.
Functions & Features
Let us discuss some crucial functions and features of the ERC-721 standard.
Functions
Some functions of this standard are as follows:
- symbol(): This function provides compatibility with the ERC-20 standard.
- name(): It tells outside applications and contracts the token’s name.
- balanceOf(): This function helps find the total number of tokens owned by a certain address.
- totalSupply(): It returns the total number of coins one can find on the blockchain.
- ownerOf(): This function helps one know the address of a token’s owner. All tokens are referenced on the Ethereum blockchain through a unique ID. One can find out the owner using that ID.
- approve(): It grants an entity the right to transfer a particular token on behalf of the owner.
- takeOwnership(): This is similar to a 'withdraw' function. Users can utilize this function when they get approval to own a specific number of tokens and want to withdraw those tokens from the balance of another user.
Features
The features of this standard are as follows:
- This standard applies to the creation of Ethereum-based NFTs only.
- One cannot exchange such a token for any item having equal value as it is one-of-a-kind and represents a one-of-a-kind asset.
- Each of the tokens is linked with different owners. Moreover, all tokens have their metadata or token ID that makes them unique.
How To Create?
Before individuals start to create ERC-721 tokens, they need to upload the edited metadata to a secure platform that allows for secure NFT storage. For that, one can follow these steps:
- First, create a file and add the ‘.json’ extension after naming it.
- Ensure to save the file with the edited metadata.
- Upload the file to any platform that allows free NFT storage.
- After uploading the file, copy the InterPlanetary File System or IPFS URL of that metadata. Note that this URL acts as the token’s URL.
Once the file is uploaded, follow the steps below to create ERC-721 tokens.
- Download any software application that allows the development of smart contracts via its editor.
- Create a SOL file format.
- Paste the relevant code in the editor after copying it.
- Change the token symbol and name according to your choice.
- From the tab that has the compile option, compile the code. Then, select the deploy option.
- Post-deployment, expand the contract and copy its address.
- Return to the tab with the compile option and choose the relevant contract.
- Choose the ‘safeMint’ function.
- Enter the Ethereum address, the desired ID of the NFT, and the IPFS URL in the ‘to,’ ‘tokenID’, and the ‘uri’ fields, respectively.
- Lastly, select the relevant option, for example, ‘transact’, to mint the NFT.
Examples
Let us look at a few ERC-721 examples to understand the concept better.
Example #1
Coinbase reviews all ERC-721 and ERC-20 assets for security-related concerns prior to deciding if the asset should be listed. In fact, they review all functions within every token’s smart contract and give recommendations to their listing partners on the basis of their findings. Their framework concerning Ethereum token review offers security engineers several mitigations/risks along with a standardized security review procedure to get a clear idea regarding confidence in custodiability.
Example #2
In May 2023, the collaboration of Bitcoin Miladys and the Ordinals market created a new smart contract known as BRC-721E. It has a specific function – bridging ERC-271 tokens or the Ethereum-based NFTs to the Bitcoin network, after which they become Ordinals. The conversion process involves users sending ERC-721 NFTs to a wallet that is irretrievable, with the Ethereum gas fee already paid. In turn, the BRC-721E approves the Ordinal inscription request on the Bitcoin blockchain.
Importance
One can go through the following points to understand the importance of this standard.
- It allows users to securely transfer, own, and manage one-of-a-kind digital assets with verifiable and transparent ownership records.
- This standard allows creators to build extra functionalities into NFTs, such as in-game utilities and royalties for artists.
- It ensures that non-fungible tokens can interact with different marketplaces, dApps, and wallets on the Ethereum network straightforwardly. This improves their accessibility and utility.
- ERC-721 tokens establish digital scarcity. This can contribute to their value over the long term.
- This standard allows for the usage of NFTs across multiple applications and platforms, thus broadening the potential use cases.
ERC-721 vs ERC-1155 vs ERC-20
Individuals new to the cryptocurrency market are often unfamiliar with ERC-721, ERC-1155, and ERC-20 concepts. That said, understanding their distinct characteristics can help one clearly understand their meaning and purpose. So, let us look at them in the table below.
ERC-721 | ERC-1155 | ERC-20 |
---|---|---|
This standard is for non-fungible tokens. | The ERC-1155 standard is for creating SFTs or semi-fungible tokens. | This standard is for creating fungible tokens. |
It requires deploying a new smart contract for every token. | This standard supports unlimited tokens within a smart contract. | It does not require a unique smart contract for each token. |
The token production mechanism it offers is not scalable owing to the requirement of unique smart contracts. | It provides a scalable token production mechanism. | Similar to ERC-1151, it offers a scalable token production mechanism. |
Frequently Asked Questions (FAQs)
The key difference between the ERC721A and ERC-721 and ERC-721 is that the former is an updated version of the latter. It can track multiple NFTs’ ownership simultaneously, besides adding support for batch minting.
Individuals can redeem ERC tokens having a burn token set for a new edition of the standard as configured by a creator. That said, before they complete a burn, a screen will appear showing what they are burning and what they are redeeming.
The cost of such a contract depends on the current cost of gas on the Ethereum Network. Typically, the deployment cost of a smart contract can range from $400-$2000.
Individuals must remember that there is no allowance for this standard. This is because the non-fungible token is unique. The quantity is either one or none.
Recommended Articles
This article has been a guide to what is ERC-721. We compare it with ERC-20 and ERC-1155, explain its examples, functions, features, importance, and how to create it. You may also find some useful articles here -