5 IPFS Basics

Think about your favorite NFT project. There’s all that beautiful solidity underpinning its blockchain deployment, and if you’re lucky, a tidy front end from which to mint. We talk about community, utility, and value, but what initially attracts many of us to an NFT project is simply the art.

Your average NFT collector probably doesn’t take time to consider the smart contract that enables token-gated Discords and crazy ponzinomics, and they almost certainly don’t think about the way their artwork, that right-click JPEG and all its enabling metadata, is stored.

Many people just assume that the files that make your NFT pretty are just part of what’s on chain. However, with very few exceptions, the artwork is not stored on chain, but often on centralized servers, like Amazon Web Services – which hosts more Ethereum validators and NFT-related data than you could imagine. And then there’s Microsoft Azure, Google Cloud, and countless others.

But what if your web3 ethos rejects these centralized storage options - what’s a crypto native to do? Store the files on a distributed and decentralized file storage platform, of course. And the mother of all decentralized storage options is the InterPlanetary File System.

Interplanetary What?

The InterPlanetary File System (IPFS) was deployed in 2015 by Protocol Labs, and it quickly gained popularity. And why wouldn't it? IPFS is an open source, peer-to-peer file sharing protocol that enables users to host data and make it accessible to others at no cost.

Just as with blockchains, the more distributed and decentralized the file storage system, the more robust and resilient the network. IPFS is a diverse global network of computers - there are currently over 200,000 nodes that host the data, and nearly 2 million users and 125 terabytes of data traffic per week. IPFS isn’t interplanetary yet, but it’s getting there.

How IPFS Works

Without getting too technical, IPFS works by retrieving information based upon its content, as opposed to its location. Each file, each piece of unique data, is given what’s called a content identifier link. This CID is largely made up of a cryptographic hash tag. And just as we see with some blockchain data, it’s normally secured using the SHA-256 algorithm.

Depending on the file size, the content is broken down into smaller chunks of data. Using complex-sounding data structures called Directed Acrylic Graphs and distributed hash tables, IPFS is able to know where the information is you’re looking for and how to retrieve it.

Benefits of a Distributed and Decentralized Network

There are many benefits to IPFS, but the three main are data resilience, censorship resistance, and speed. Because IPFS is distributed and decentralized, if some computers go down, the data will still be available for those who seek it. If the server for your favorite website is offline, there’s a good chance that information is available on a mirrored IPFS site.

Similarly, IPFS is censorship resistant because you can’t take down the location of the data, like you can when attacking a server with a DDoS attack. IPFS doesn’t point to a location on the internet or any other network that can be hacked or crashed; rather, IPFS points to the content itself. Because you can’t take down the content, you can’t censor the information.

As a decentralized and a distributed network, accessing data can be faster than retrieving it from centralized alternatives. And because of the peer-to-peer architecture, it’s possible to create local networks that can serve this function in remote or poorly connected locations.

Run It and Pin It

There are a number of ways to participate in the IPFS network. The simplest way is to download the IPFS client and set up a node. A node is just a name for a computer running the IPFS software. Unlike traditional computer networks, which are gated and tightly controlled, anyone can possess any file and participate in making that data available to the network.

Although some data you interact with is temporarily available on the network, pinning the data to your node is how users permanently make data available to others. Pinning the data saves it on the hard drive, enabling others to access it — at least so long as the computer is on and connected to the internet.

If you don’t trust yourself to be a good IPFS node host, you can take advantage of various pinning services to ensure that the data is available to others even if your computer is offline. Although there are a number of these services available, Pinata may be the most popular for NFT projects.

Let’s Tokenize It!

As with all open-source protocols, at some point someone is going to fork it, restrict it, and monetize it. Filecoin and Arweave are probably the two most well-known companies to monetize IPFS. Interestingly, Filecoin was started by Protocol Labs, the organization behind IPFS, whereas Arweave was founded in the U.K., both in 2017.

Filecoin and Arweave serve very different purposes, but both relate to the permanence of storage. Filecoin acts as a decentralized storage broke. With Filecoin, you rent server space for a set period of time. Filecoin is designed to incentivize low-cost, short-term storage.

Arweave, on the other hand, is focused on permanent storage. Rather than sharing data through what is essentially a periodic rental contract, Arweave users pay up front to store the data forever. Permanence is good, but with that comes immutability, so once that data is on the Arweave blockchain, it can’t be changed. Mirror.xyz, the wallet-connected publishing platform, uses Arweave to store the data for Mirror posts. Have you ever tried to change a Mirror title after hitting ‘Publish’? You can change the title on Mirror, but the interwebs will always index your article by the original title.

Get On That Rocket Ship

IPFS built decentralized storage for the peer-to-peer age, and it’s one of the most powerful, yet underrated, tools on the internet, let alone web3. There’s way more to IPFS – and we’d need another article to explain how to actually use it – but your next step is to scan the manual, download the client, invite some friends to do the same, and create a small cluster of networked computers.

Connecting planets isn’t easy, but IPFS is just a rocket ship and a few interspace relays away from making it happen. But for now, let’s enjoy this otherworldly tech here on this planet. Decentralization isn’t easy, but it’s always worth the journey.

Hiro Kennelly* is a writer, editor, and coordinator at BanklessDAO and the Editor-in-Chief at Good Morning News. He is also helping to build a grants-focused organization at DAOpunks.*

Subscribe to Hiro Kennelly
Receive the latest updates directly to your inbox.
Mint this entry as an NFT to add it to your collection.
This entry has been permanently stored onchain and signed by its creator.