How to realize the decentralization of NFT metadata on OpenSea?

NFT is a unique token with decentralized ownership. The question of “who owns this token” is stored and tracked by multiple computers at the same time to prevent someone from tampering with the ownership without authorization.

However, NFT related media attachments and content (collectively referred to as ” NFT metadata “) have never been decentralized, because storing and modifying data directly in the smart contract will incur high gas costs. Without decentralization, collectors cannot believe that the metadata of a certain token is complete and unchanging.

Since its establishment in 2017, OpenSea has supported NFTs with decentralized metadata. Today, we are going to announce a good news: creators who issue NFTs on the OpenSea platform can use IPFS (Interplanetary File System) and Filecoin to achieve metadata decentralization! We also provide collectors with a way to see when the NFT metadata is frozen, and further enhance the toolkit that OpenSea collectors can use to evaluate NFTs.

Next, we will further explain how OpenSea achieves the decentralization of NFT metadata, and why this is so important. If you want to learn how to decentralize your NFT issued on OpenSea, please check our help center tutorial.

Decentralized metadata vs frozen metadata

If you don’t understand NFT metadata, you may wish to read our popular NFT Collection, and you can also read the technical explanation below.

As far as NFTs comply with the Ethereum standard, smart contracts that manage NFTs usually use functions to indicate the location of metadata:

  • ERC 721 standard: function tokenURI(uint256 _tokenId) external view returns (string memory)
  • ERC 1155 standard: function uri(uint256 _id) external view returns (string memory)

The return value of the function is usually the URI of Google Cloud, Amazon Cloud Service, or other centralized storage services that can be offline or modified by developers.

These centralized solutions are in sharp contrast to decentralized storage solutions such as IPFS, Filecoin, and Arweave, which store metadata in storage nodes in a decentralized network.

Centralized storage has two weaknesses:

  1. Impermanence : The server may go offline, making it difficult to find the image (unless an NFT index such as OpenSea has created a mirror for it).
  2. Variability : The developer can modify the picture against the will of the collector.

There are currently four types of NFT metadata storage:

The concept of “freezing” is different from decentralization. Even if the metadata is stored in a decentralized manner, it is still possible for creators to modify NFT metadata by sending on-chain transactions. We refer to NFTs whose metadata cannot be changed as ” frozen .”

If it is unclear whether the NFT has been frozen, collectors cannot know whether the collections they purchased are still the same after 1, 10, or even 100 years.

Not all NFTs have the same characteristics. Let us understand them through the following examples:

  1. Centralization : NFT most smart contract has a function to return its token identifier corresponding metadata. The return value is usually the URI on the cloud server run by the developer (for example, example.com/nft/2). If the content and media of an NFT are controlled by such a server, then the NFT is centralized, and there are problems of impermanence and variability.
  2. Centralized and verifiable : CryptoPunks issued by Larva Labs is the earliest NFT, and its pictures are stored on a centralized server. However, the hash value of the picture is stored in the smart contract. Therefore, although CryptoPunks has the problem of impermanence, we can verify whether the picture has been modified through the hash value, so as to determine whether the picture is the original one. Other projects (such as CrypoKitties) have adjusted this system, for example, storing the characteristics of the NFT on the chain, but storing the renderings of the characteristics on a centralized server. In the Cryptokitties system, the picture can be modified, but the “gene” and rare information of each cat cannot be modified.
  3. Decentralization : Unlike storing metadata in a centralized server, developers can choose to store metadata directly in smart contracts or file-friendly decentralized networks. The two best options are IPFS + Filecoin and Arweave. Arweave requires miners to point to previously stored data when creating blocks, similar to blockchain (called “blockweave”). IPFS allows peer nodes to store, request, and transmit verifiable data to each other, and can be used with Filecoin to incentivize miners to use verifiable proofs to store data permanently. For example, Bored Ape Yacht Club stores metadata in IPFS, but the contract owner can modify the root URI of IPFS.
  4. Decentralized and frozen : It is difficult to know whether the metadata of the NFT has been frozen, because there are usually many ways to modify it. This is a manual process, but OpenSea can now display whether the NFT issued on OpenSea has been frozen, and whether many non-OpenSea NFTs have been frozen:

1625357430827080

-If the metadata of a certain NFT is stored on a file storage network that supports IPFS and Arweave, clicking on “frozen” in the figure will open the corresponding decentralized URI (including `ipfs://` and `ar:/ /` URI)-

Some projects that are both decentralized and freezeable are:

  • SuperRare (IPFS)
  • Sandbox (IPFS)
  • Uniswap (on-chain)
  • 1111 by Kevin Abosch (Arweave)

Note : Some projects directly store metadata in smart contracts. For example, Autoglyphs, another project of Larva Labs, returns character artwork directly from the contract, and it is the first NFT project to do so. Autoglyphs does not rely on other systems other than Ethereum to provide pictures, so we call it decentralized, on-chain and frozen.

Each of these four types of NFTs has advantages and disadvantages. However, for collectors, knowing a little more about NFT implementation will help in decision-making. This is why we are introducing a new event type to enhance the ERC1155 and ERC721 standards so that developers can tell platforms such as OpenSea when they will mark an NFT as “frozen”.

Permanent URI

In order to resolve the conflict between frozen metadata and unfrozen metadata, a new event will tell OpenSea to register a certain URI as a permanent URI (ie, PermanentURI). The event signature is as follows:

event PermanentURI(string _value, uint256 indexed _id);

Once the NFT smart contract sends out a PermanentURI event, no one can change the URI corresponding to a certain token ID. Please refer to our documentation for details. Like most cryptographic standards, permanent URIs are still under development and may be changed based on community feedback.

Freeze NFT on OpenSea

In December 2020, we launched a gas-free NFT caster ( Chinese translation ), opening the door to more artists who want to sell their works on the blockchain. At that time, we were the first to support the freezing of metadata through smart contracts. In other words, creators can now freeze the metadata of NFTs that they have created in the past 6 months that have not yet been sold.

First, go to the “Edit” page of your creation and click on one of the NFT pencil icons in the upper right corner of the page (you can find them in the search bar below the “Add New Item” button). Click the Freeze Metadata button and you will see a pop-up window as shown in the figure below. If you want to continue, please check the box and click “Submit Transaction” to submit the transaction. Although OpenSea does not charge any fees, you need to pay a gas fee to save the new metadata URI into the smart contract.

1625357431692703

Once you freeze an NFT, you cannot unfreeze it or change its metadata . As long as Ethereum and Filecoin exist, this NFT will always be frozen.

When you freeze an NFT, you can view its IPFS URI directly on the OpenSea webpage. You can also use the NFT.Storage API and your NFT’s IPFS content hash value to view the number of Filecoin transactions related to this NFT. For example: https://api.nft.storage/check/bafkreiem4twkqzsq2aj4shbycd4yvoj2cx72vezicletlhi7dijjciqpui.

The future of decentralized metadata

One of OpenSea’s goals is to provide a source of truth for all NFTs , regardless of the blockchain , metadata format, and decentralized storage solution they use. In the future, the NFT field may fall into chaos, and many NFT issuance methods will emerge. We want to make NFT more transparent.

Free gas freeze

In the past 6 months, we have provided users on OpenSea with a gas-free experience by supporting Polygon sidechains. If you have access to the closed beta version of the NFT mint, you can now freeze your Polygon NFT using IPFS and Filecoin.

Just like Polygon transactions, the smart contract that saves the IPFS URI to the NFT does not incur any gas cost-OpenSea will pay for this part of the cost for you. Please pay attention to the subsequent version release, and welcome to tell us your thoughts through Discord.

Note: If you are interested in NFT metadata, we are hiring people. Welcome to check our current vacant positions: https://opensea.io/careers.

Total
0
Shares
Leave a Reply
Related Posts

Glassnode data insight: how do you view the new normal of DeFi?

Last week, the cryptocurrency market continued to slowly decline, BTC has found itself trading below $30,000, and ETH is firmly below $2,000. This week, we put forward some indicators to demonstrate the short-term struggle of the DeFi department, but the long-term gains. The battle…
Read More