I understand the interface of the ERC721 contract but I would like to know:

  • Does one ERC721 contract is like whole exchang? OpenSea for example is only one ERC721 contract?
  • What makes NFT unique? If I mint a NFT that points to a an existing tokenURI or similar, how it’s being forced?

2 Answers 2


NFTs don't exist. They're figments of the imaginations of contracts that implement ERC-721.

ERC-721 is the protocol for asking a contract about the NFTs in its imagination. Just like ERC-20 lets you ask a contract about the FTs in its imagination.

ERC-20 has commands like "how many tokens does [an address] have?" and "please send [how many] tokens from me to [another address]".

ERC-721 is pretty much the same but instead of "how many?" it's "which one?". That's all non-fungibility means. The commands are like "who has [a token]?" and "please send [which token] from me to [another address]".

You could deploy an ERC-721 contract that only "imagines" one NFT, but contract deployment is kinda expensive, so you usually put many NFTs in a single contract, such as all of the BAYC apes.

Second question: Yes, you can mint an NFT (or NFT contract) that impersonates another NFT (or contract). Its address will be different, but maybe some people aren't paying attention and you can get them to buy your scam NFT.

The picture isn't the NFT. It's basically just the sticky label of the NFT so people can tell which one it is. The NFT is actually identified by a contract address and a token number.

It would be equivalent to creating a new ERC-20 token, calling it "Bitcoin", minting 21,000,000 "Bitcoins" to yourself, then trying to sell them.

  • What’s all NFT of its kind? Minting is an action inside a token and making new token is deploying a contract. This answer doesn’t quite address my points
    – matank001
    Commented Oct 10, 2022 at 16:03
  • @matank001 are you broadly familiar with ERC-20 tokens (FTs)? Commented Oct 10, 2022 at 16:05
  • I do, and I understand it’s a contract that allows transferring tokens. Here I ask if ERC721 there is one contract of this kind to openSea? and How do you prove possession?
    – matank001
    Commented Oct 10, 2022 at 16:15
  • @matank001 I guess you are not really since ERC20 isn't really a contract that allows transferring tokens, but rather, the contract is the token. E.g. How do you know someone's SHIBA INU balance? You ask the SHIBA INU ERC20 contract. How do you send SHIBA INU to someone else? You tell the SHIBA INU ERC20 contract to do it, and the contract edits the balances. The token is, like, in the "imagination" of the contract. It's the same for NFTs. Commented Oct 10, 2022 at 16:23
  • @matank001 I edited the answer. Commented Oct 10, 2022 at 16:39
  1. ERC721 (a standard) is not like the whole exchange. OpenSea (a NFT marketplace) contains a huge collection of NFTs, with each NFT created from implementing the ERC721 standard.

  2. Each token has a unique token ID to represent its uniqueness among all of the ERC721 tokens minted from the same contract. NFT platforms like OpenSea, Rarible, and Mintable look for metadata that contain the tokenURIs to render the corresponding NFT on their platforms.

See: https://www.freecodecamp.org/news/how-to-make-an-nft-and-render-on-opensea-marketplace/

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.