Back

Blog details

What Is IPFS? How the InterPlanetary File System Works

AIOZ Network
6 min readMay 13, 2026
ipfsaioz-pin
AIOZ Pin cover image with the headline What Is IPFS? How the InterPlanetary File System Works

IPFS (the InterPlanetary File System) is a peer-to-peer protocol that finds files by what they contain, not by where they sit. Every file gets a Content Identifier (CID) built from its own hash, and any node that holds the file can serve it to you.

TL;DR:

  • IPFS swaps location addressing (a URL that points at one server) for content addressing: a file's CID is a cryptographic hash of its bytes
  • That one change makes links verifiable, lets any peer serve a file, and stores identical content once
  • Gateways let a normal browser load IPFS content, and pinning stops nodes from deleting content during garbage collection
  • IPFS is not permanent storage on its own and not private by default; someone has to keep pinning your files
  • AIOZ Pin pins files for you on the AIOZ DePIN and serves them through public and premium gateways

Updated Oct 19, 2026: removed a stray metadata line, rewrote the opening, and added a diagram, a real CID example, a limits section, and the AIOZ Pin remote pinning commands.

How Does IPFS Work?

When you add a file to IPFS, your node splits it into blocks, and Kubo (the most widely used implementation) makes them 256 KiB each by default. Each block is hashed and the hashes are linked into a tree called a Merkle DAG, and the top hash of that tree, the root CID, is the only thing you need to share.

Retrieval runs the other way: your node asks the distributed hash table (DHT) which peers provide the CID. It then fetches blocks from those peers over Bitswap, the IPFS block exchange protocol, and checks every block against its hash before rebuilding the file.

Diagram of how IPFS stores and finds a file: a file is split into chunks, each block is hashed, the blocks link into a root CID, and a request for that CID goes through a DHT lookup, a Bitswap fetch from peers, and hash verification

Because the CID comes from the content, you can test the idea yourself with any hashing library. We hashed two short text files with the multiformats JavaScript library (CIDv1, raw codec, SHA-256), and one extra character produced a completely different CID:

"hello world\n"   -> bafkreifjjcie6lypi6ny7amxnfftagclbuxndqonfipmb64f2km2devei4
"hello world!\n"  -> bafkreihm64a7oj6z4llxysvetldpxpgjs4tyvsqbbpo65olbyegpktkdli

That is why a CID works as a tamper check: if a peer sends you different bytes, the hash won't match, so you never have to trust the server. The anatomy of a CID breaks the string down byte by byte, and DHT and Bitswap covers the lookup and transfer steps in depth.

IPFS vs HTTP: Location vs Content Addressing

A normal web link names a server and a path, so it breaks when that server goes down or the file moves. It also gives you no built-in way to check the file you got, while an IPFS link names the content itself.

Aspect IPFS Traditional cloud storage (HTTP)
Architecture Peer-to-peer network of nodes Servers run by one provider
File address Content Identifier (CID) Location-based URL
Who can serve it Any peer that holds the blocks The server named in the URL
Verification Recompute the hash and compare Trust the provider
Link rot A CID resolves while any peer still provides it A dead server or moved file breaks the URL

Content addressing also deduplicates: if two people add the same file with the same settings, they get the same CID, and the network stores one set of blocks. Our guide to content vs location addressing goes further into the trade-offs.

Gateways and Pinning: Making IPFS Content Usable

Two more pieces turn content addressing into something your users can reach every day, without running IPFS themselves.

IPFS gateways translate an HTTP request such as /ipfs/{cid} into an IPFS lookup and return the file as a normal web response. Your users load IPFS content in any browser without running a node, and many gateways add CDN caching so popular files come from an edge server near the reader. See how an IPFS gateway works for the full request flow.

Pinning solves a storage problem: IPFS nodes have limited disk space and run garbage collection to free it, deleting anything that is not pinned. A pin tells a node to keep a CID and every block under it, so without one your file lives only as long as someone keeps a cached copy. Our post on unpinning and garbage collection shows what happens to the blocks when a pin is removed.

What Is IPFS Used For?

NFTs made IPFS famous, but the same mechanism fits any data that should stay verifiable and reachable without one central host:

  • NFT assets and metadata: a token points at a CID, so the image or JSON cannot be swapped without breaking the hash
  • Static websites and dApp front ends: you publish the site as a directory CID and serve it through a gateway
  • File sharing and media distribution: any node holding the blocks can serve them, so popular files get more sources
  • Research and public data archives: datasets keep the same address even when the original host changes
  • Package and software distribution: users can check that a download matches the published CID

Two worked examples are in our IPFS case studies, and hosting a static website on IPFS walks through the website case.

What IPFS Does Not Do

A few limits catch new users, so it helps to know them before you build:

  • It is not storage by itself. IPFS moves and verifies blocks, but someone has to keep them. Without a pin on a node that stays online, your file can disappear.
  • It isn't private by default. Anyone who knows a CID can fetch the content, so encrypt sensitive files before you add them. Our guide on IPFS privacy and encryption covers the options.
  • You can't edit a file in place. A changed file gets a new CID. Mutable names come from IPNS or DNSLink, explained in IPFS immutability.
  • Speed depends on providers. A file served by one slow peer loads slowly; a pinned file behind a cached gateway loads fast.

Is IPFS Free to Use?

The protocol is open source, and running your own node costs nothing in license fees, but you still pay for the disks, bandwidth, and uptime that keep it reachable. That is why most teams pay a pinning service instead of running their own node fleet. On AIOZ Pin, storage costs $20 per TB per month and bandwidth $20 per TB, with the first 40,000 pinned files free and $0.10 for each extra 1,000 pins. Our AIOZ Pin pricing breakdown works through a full monthly example if you want to estimate your own bill.

How AIOZ Pin Handles It

We built AIOZ Pin as a pinning service on the AIOZ DePIN, a network of independent node operators. You upload a file or pin an existing CID through the API, the SDK, or the CLI. AIOZ Pin keeps it pinned and serves it through two kinds of gateway:

  • Public gateway at https://public.aiozpin.network/ipfs/{cid}: no account needed, meant for testing and low volume. The docs set 15 requests per minute per CID and 200 per minute per IP.
  • Premium gateways: no predefined rate limit, and the docs list 200+ edge caching locations. Bandwidth is billed at the rate above.

AIOZ Pin also implements the IPFS Pinning Services API, so a Kubo node can pin to it directly. These are the commands from the AIOZ Pin Pinning Services API docs, where YOUR_AUTH_JWT is the access token from your email login:

ipfs pin remote service add pin https://api.aiozpin.network/api/psa/ YOUR_AUTH_JWT
ipfs pin remote add --service=pin --name=<human-readable-name> YOUR_CID
ipfs pin remote ls --service=pin
ipfs pin remote ls --service=pin --status=queued,pinning,failed

What the docs don't cover yet: replica counts per file and any uptime SLA, so ask the AIOZ Pin team if your project needs those numbers. For the full product tour, read how AIOZ Pin works.

Next step: follow the AIOZ Pin Quick Start to top up and pin your first file.

Frequently Asked Questions

What does IPFS stand for? IPFS stands for InterPlanetary File System, a peer-to-peer protocol for storing and sharing data by content address instead of by server location.

How is IPFS different from a normal web server? A web server is found by its URL, which points at one machine, while IPFS content is found by its CID and served by any peer that holds it.

Why does IPFS avoid link rot? A CID is not tied to one server, so as long as any peer still provides the content, the same CID keeps resolving even after the original uploader goes offline.

Do I need to run my own IPFS node? No: a gateway lets a normal browser load IPFS content over HTTP, and a pinning service keeps your files available without you running servers.

Is content on IPFS permanent? Only while at least one node keeps it pinned, because garbage collection can remove unpinned blocks at any time.

Who created IPFS? Juan Benet designed IPFS and Protocol Labs released it in 2015, borrowing ideas from Git's content-addressed objects and BitTorrent's peer-to-peer transfer.

References

We only send updates when meaningful changes ship, and you can unsubscribe anytime

Related Content

blog thumbnail

IPFS Dedicated Gateway Free vs Paid Plans on AIOZ Pin

An IPFS dedicated gateway on AIOZ Pin is called a premium gateway. See what the free plan limits, what a paid plan adds, and what happens at zero balance.

6 min readOctober 28, 2026
blog thumbnail

Pin by CID on IPFS Without Re-Uploading Your Files

Pin by CID asks a pinning service to fetch content already on IPFS and keep it. Covers the AIOZ Pin pinByHash call, statuses, and why a pin stalls on Pinning.

6 min readOctober 26, 2026
blog thumbnail

IPFS Gateway Not Working? Diagnose It in This Order

IPFS gateway not working? Read the status code first, then check the CID, your request rate, and whether anyone is providing the content. Here is the order.

6 min readOctober 23, 2026
blog thumbnail

ERC-1155 Metadata on IPFS: The ID Substitution Rule

ERC-1155 metadata on IPFS breaks when filenames ignore the {id} rule. Here is the exact 64-character format, a working folder layout, and the per-token option.

6 min readOctober 21, 2026
blog thumbnail

AIOZ Pin Rate Limits: API, Public, and Premium Gateways

AIOZ Pin rate limits in one place: 180 requests per minute for the API, 15 per CID on the public gateway, and no predefined limit on premium gateways.

6 min readOctober 19, 2026
blog thumbnail

IPFS Pin Stuck on Pinning? What Each Pin Status Means

IPFS pin stuck on Pinning? Here is what Pinning, Pinned, and Failed mean on AIOZ Pin, why big directories can sit there, and how to read a pin's real state.

6 min readOctober 16, 2026