
What is IPFS
Table of Contents
InterPlanetary File System, or IPFS for short, is a global P2P file storage and sharing network based on a protocol that uses Content Identifiers instead of traditional URLs. A Content Identifier, abbreviated CID, is both an address and a proof of data integrity, in other words it is a fingerprint of data.
Overview
InterPlanetary File System, or IPFS for short, works as a peer-to-peer (P2P) network, meaning files aren’t stored on a single central server; instead, they’re distributed across many computers. Instead of using regular website addresses, called URLs, IPFS uses special codes called Content Identifiers, for short CIDs. Think of a CID as a fingerprint for a file: it’s completely unique and based on the file’s contents. If someone changes even a tiny detail, like one letter in a document, the fingerprint changes, meaning it’s now a different file with a new address.

Imagine a puzzle, but instead of keeping it whole in one piece, IPFS breaks it into smaller puzzle pieces. Each piece is stored separately, and when you need the full picture, the system puts them back together instantly - just like magic!
This puzzle-like structure is called the DAG, or Directed Acyclic Graph. Instead of saving files as one big block, IPFS stores them as a web of interconnected pieces. These pieces are linked together, so when you request a file, IPFS knows exactly how to reassemble it fast.
For users, this happens invisibly - it feels like grabbing a normal file. But behind the scenes, the system is working in an ultra-efficient way. The Content Identifier at the top of the graph checks all the connections, making sure every piece is correct and hasn’t been altered. If even one piece changes, the whole CID changes - so you always know you’re getting the right file.
It’s like having a self-checking puzzle that never loses a piece!
Why it splits files?
Basically, IPFS makes sharing files like using a smart, connected web of helpers. Instead of sending copies over and over, it lets people grab files from the closest source available, like how a library works. It breaks files into tiny pieces and spreads them across different computers, so when someone wants a file, they get it quickly from multiple places instead of just one.
Think of it like assembling a puzzle. Instead of getting the whole picture from one person, you collect pieces from different people, making the process quicker and smoother.
How do nodes find a file
How do nodes find a file by ID if the address where it is stored is not specified? The Bitswap protocol is used for this. In short, nodes simply ask each other: “Do you have a block with ID X?”. If a node asks the right one, it responds “Yes!”, and the block is immediately downloaded.
Because IPFS nodes are connected to many others, there’s always a chance that the file you’re searching for is nearby.
A Wantlist
But what if nothing is found? If a node asks for a block and doesn’t get an answer, that doesn’t mean the search is over. Instead of stopping, IPFS nodes help each other find files more efficiently by using wish lists, also called wantlists.
Here’s how it works:
- If a node asks, “Do you have the block X?” and gets no positive response, it can leave a wish list with nearby nodes: “If you ever find block X, Y, or Z, let me know!”
- When those nodes later connect with others, they don’t just search for their own files - they also check for blocks from the wish lists they received.
- If they finally find the missing blocks, they notify the original searching node, saying, “I found the blocks from your list!”
Even though the searching node didn’t directly know where the file was, the wish list system helped it find the right source. Once another node discovers the missing blocks, it lets the searching node know, and the file can finally be downloaded.
The DHT
Searching for files in IPFS by simply asking every node can take a long time, especially in a huge network. To speed things up, the Distributed Hash Table, called DHT, exists. Nodes can announce what files they store in this shared global table. Then, when some node needs a file, it checks the table instead of asking everyone individually. The table provides the exact address of the node storing the block.
This way, the searching node connects directly to the desired node and downloads the file much faster.
Final note
IPFS is like a giant, super-smart web that helps people store and share files without needing a big central server. Instead of depending on one place to keep all the files, IPFS spreads them across tons of computers, making everything faster, safer, and more reliable.
The coolest part? Every file gets a special fingerprint (called a CID), so you always know you’re getting the exact file you asked for - nothing fake or messed up. To make things smoother, IPFS has features like Bitswap (a smart way for computers to trade files) and DHT (a giant shared table where computers list what files they have). And if the file needs to update, IPFS has tools like IPNS to keep track of the changes without losing the original. Plus, there are handy apps like Kubo and IPFS Desktop, as well as Pinning servers, so you don’t need to be a tech genius to use them!
At the end of the day, IPFS is changing the way people store and share files, making the internet more free, secure, and efficient. As more people start using it, the system will keep growing and improving - helping everyone access information easily, no matter where they are!