By now, much of the world has heard of NFTs. The craze struck the hearts and minds of seemingly everyone in the space. From Beeple to Eminem, Ellen, and even Paris Hilton - it seems like anyone and everyone has launched an NFT.
A Brief History of NFTs
The history of NFTs goes back a lot further than many may think. Some of the first NFTs started sprouting up around 2014 with the creation of CounterParty, which ran on the Bitcoin blockchain. Fast forward a few years, and with the 2017 Ethereum bull run came some new NFT projects in the form of RarePepes, CryptoPunks, and the big fish to enter: Axiom Zen/Dapper Labs with CryptoKitties. In recent years, OpenSea, Rarible, SuperRare, and many other NFT platforms have joined the industry and continue to push the current NFT boom. Widespread adoption of MetaMask and other Web3 wallets has only helped boost this trend even further.
IPFS: The InterPlanetary File System
IPFS, or The InterPlanetary File System, is an open-source project created by Protocol Labs. It’s described as “a distributed system for storing and accessing files, websites, applications, and data.”
At its core, IPFS is a versioned file system that has the ability to store content and track various versions over time. Along with that, it controls how files/data are moved around the network. IPFS pushes for decentralization by supporting a resilient internet, subverting content censorship, and improving web connectivity and speed for those in remote or otherwise disconnected places.
In IPFS's vision to create a permanent and distributed web, it uses a content-addressed system instead of the location-based system that HTTP uses. This is achieved by assigning a cryptographic hash to be used as the address for each file that is stored. Below is an example of how a traditional URL looks vs. an IPFS file path. To easily access the IPFS network, you can type in "https://ipfs.io" at the beginning of the hashed URL below. Here’s a mirrored version of the Aardvark article, courtesy of Protocol Labs:
URL:
https://en.wikipedia.org/wiki/Aardvark
IPFS:
https://ipfs.io/ipfs/QmXoypizjW3WknFiJnKLwHCnL72vedxjQkDDP1mXWo6uco/wiki/Aardvark.html
IPFS supports a stronger internet. For example, if a website you’re trying to visit is attacked, its domain expires, or its server goes down... you would be out of luck. With IPFS, you would still be able to serve up the same website from somewhere else. Thanks to the ability for files to come from many places, it is harder for anyone to block and censor data or content. Finally, as the “InterPlanetary File System,” the goal is to build a system that works anywhere - even on other planets. The team at IPFS sees this as an attainable objective, and that is a huge awesome-factor to me.
For more information on IPFS, check out https://docs.ipfs.io/#decentralization.
IPFS and NFTs: The Relationship
Most NFTs function by storing data off-chain. From the NFT, a URL is used to point to the data somewhere within the internet. Now as you know, links can change, die, or lead you somewhere completely different than expected.
Here's an example scenario of the above: March 11, 2021, was the day that Mike Winkelmann made history. Most know him by the name of Beeple and he sold the "Everydays: The First 5000 Days" NFT for $69 million. Imagine you bought that NFT and have access to it via a URL, with the data being stored off-chain. You open the link, expecting to see your beautiful NFT art, but see this instead:
That would be a problem, especially as you had just paid $69 million for it. Most of us don't purchase NFTs for anything close to that price, but this could happen to anyone out there who has purchased an NFT, no matter the price of that NFT.
So, what is an easy solution for this? IPFS. As a network that uses cryptography and is built in relation to the blockchain, your files don't come from a standard URL, and you are ensured that it will always be there, no matter what. For example, Beeple’s work is stored on IPFS, and many other NFTs use IPFS for primary or secondary storage.
With IPFS, you are using a network of different hosts to help store your files (as long as someone is hosting the file on the network), rather than accessing the content from a specific domain or server, as normal HTTP does. If you've heard of Filecoin, this is the coin that is mined by users who dedicate storage servers to the IPFS network, and serves as the incentive for hosts to keep the network up and running.
Currently, it is a bit of a grey area when it comes to who is responsible for the storage of an NFT - the artist or the buyer. Regardless, if you have ever purchased an NFT, I would recommend backing up the file with the IPFS.
If you ever want to upload some of your own NFTs to this distributed network, check out Pinata. They are a cloud storage company that currently operates with IPFS. They have free accounts for storing under 1/GB of content and have scaled priced plans as well. I have used them for some of my files and they are quite easy to use. I would also recommend checking out the actual IPFS and browsing through it a little bit to get your feet wet.
The NFT space is new and fresh. This won't be going away anytime soon, so make sure your content is stored safe and secure. I suggest that people start using the IPFS at least for a secondary backup, if not primary for important files and NFTs. We are truly living in an exciting time that brings the power of blockchain to old practices, making them better.