Ever wondered where your NFTs are stored?
On-chain storage implies that the entire NFT – the Image and all its metadata – exists on the blockchain. Off-chain storage means that some or most of the NFT are stored outside the blockchain, including centralized servers within a company or an InterPlanetary File System (IPFS).
What’s difference between on-chain and off-chain storage?
The advantage of on-chain storage is that the user can easily verify all aspects of the NFT. Yet, very few NFT projects store them On-Chain. An example of NFT stored Off-chain is Autoglyphs, a project on the Ethereum Blockchain which runs a highly optimized generative algorithm capable of creating billions of unique artworks. On the other hand, NFT projects like CryptoPunks and Bored Ape Yacht Club utilize off-chain storage.
For off-chain storage, the smart contract of the NFT includes information that reveals an off-chain location where the actual NFT JPEG image is stored. This raises the issue of centralized and decentralized hosts. In many cases, the NFT image and the metadata are stored in a hash, which points to centralized (e.g., Google and Amazon) or decentralized hosting providers.
Centralized storage used to have a vulnerability issue. Meaning that if the server goes down (or the company dissolves), the image would be lost. With IPFS, a distributed and decentralized method of finding data, the compromise of a distinct node still allows the image to be found in another location. They are also safer because IPFS is censorship resistant, meaning that nobody could shut it down and expose owners to the risk of losing the NFTs.
Rewriting or corrupting a smart contract is also impossible due to its immutable nature. If there is a disruption to the Off-chain storage, the smart contract would still be intact but contains a link to unavailable content.
Are my NFTs stored Off-chain?
To check where your digital assets are stored, you can access Etherscan by reviewing the NFT details on Metamask or OpenSea. Then, you have to click the “Contract” tab to reveal the “Token URI” and enter the ID number of your token. After entering the Token ID number, select “Query.” If a link is visible, the artwork is probably kept off-chain. The project name may be included in the URL, which may begin with “ipfs:/” or “https://api.” and finish with a token number.