Interplanetary File System (IPFS) 101
April 15th, 2025

The internet is at the foundation of all digital interactions including online businesses, digital commerce, and other social experiences on the web. The present state of the internet is based on the client-server architecture, facilitated by the Hypertext Transfer Protocol (HTTP), which is an application protocol that runs on top of the TCP/IP suite and is used to communicate between client browsers and centralized servers. However, the increased adoption rate and exponential growth of the internet have amplified concerns regarding the sustainability, scalability, and latency of the HTTP and present-day web architecture. For instance, the centralization of servers increases inefficiencies in content delivery, since numerous files are downloaded from a central point. This consequently increases the prevalence of DDoS attacks, ISP censorship and government snooping. Other issues border around expensive bandwidth cost, file duplication leading to bloated storage, fragile history of information stored on the internet and short lifespans of webpages.

These issues, have therefore, necessitated the need for a distributed and scalable web architecture. The Interplanetary File System (IPFS) fundamentally attempts to address the present deficiencies of the HTTP, through a novel peer-to-peer (p2p) file sharing model that is more scalable, and efficient. This implies that IPFS is a highly ambitious project, with profound potential impact on the future state of the internet. Hence, this research examines the main components, features, and operational mechanism of the IPFS. The real-world applications, use-cases and legal implications would also be discussed extensively.

IPFS

IPFS is an open-source, distributed, peer-to-peer (p2p) hypermedia protocol for accessing, storing, and sharing data, files, websites, and applications. The fundamental ideology behind the IPFS centers around transforming the way in which networks of people and computers communicate. Today's World Wide Web and HTTP model is structured on centralized ownership and access, meaning that clients only get files from whoever owns/hosts them, (if they are granted access). However, the IPFS is based on the principle of collective possession and participation, where many users (peers), possess each other’s files and collaboratively  participate in making them readily available and accessible to others.

HTTP vs IPFS Architecture
HTTP vs IPFS Architecture

The diagram above, illustrates that the IPFS does not rely on centralized servers, as in the case of the HTTP model, but rather a client (peer) computer can be used to host and distribute web files, data, and contents. This, therefore, creates a decentralized architecture that makes it difficult to censor contents since the data, files, or webpages on IPFS can come from several points or locations. Thereby creating a more robust, resilient, and interconnected internet structure.

Some of the main features and properties that define the Interplanetary file system are outlined in the table below:

IPFS Main Features and Properties
IPFS Main Features and Properties

How the IPFS works IPFS fundamentally works based on three (3) core components, which are:

  1. Unique identification via content addressing

  2. Content discovery via Distributed Hash Tables (DHTs)

  3. Content linking with Directed Acyclic Graphs (DAGs)

Content addressing

Instead of the location-based system used by the HTTP, which involves the use of URLs and Domain Name Servers (DNS) to route web clients request to the servers hosting the file. The IPFS, in this case, uses content-addressing, in which every file or content is given a unique Content Identifier (CID) which is a cryptographic hash. The use of these unique content identifiers ensures that duplicates are automatically removed across the network and version history is tracked for every file. This leads to an immutable, persistently available file system where web pages or data do not disappear because of a failed server or webhost. This is mainly possible because IPFS stores the object history for all files, so that all versions are accessible throughout time. Thereby, enabling configurable synchronisation of all data, files, or websites, which implies that websites would no longer be vulnerable to cyclical “404” error messages, due to downed servers or interrupted chain of HTTP links.

The contents of an IPFS object are primarily stored in two fields which are:

i.            The data field, which is an unstructured binary data block of size of 256 KB.

ii.            An array of links to other IPFS objects under the same directory which are used to increase the network efficiency.

In addition, an Interplanetary Linked Data (IPLD) system is used to translate between different hash-linked data structures. Thereby, enabling the unification and interoperability of all data, files, and contents across distributed systems within the IPFS protocol. The IPLD further provides libraries for combining pluggable modules to resolve a path, selector, or query across many linked nodes, therefore allowing users to explore data regardless of the underlying protocol.

Content Discovery via Distributed Hash Table (DHT)

A hash table is generally described as a data structure that stores information as key/value pairs. The IPFS protocol uses distributed hash tables as the fundamental component for content routing to find the specific peers that are hosting the contents which a client has requested. Using distributed hash tables, data is spread across a network of computers to enable efficient access and lookup between nodes. Therefore, DHT enables decentralization and fault-tolerance since nodes do not require central coordination, which implies that the IPFS protocol can function reliably even when nodes fail or leave the network. Also, DHTs can scale to accommodate millions of nodes. This consequently result in a system that is more resilient than client-server structures.

Content Linking with Directed Acyclic Graphs (DAGs)

The IPFS protocol uses the Merkle Directed Acyclic Graphs (DAGs), which is simply a blend of a Merkle Tree and a Directed Acyclic Graph (DAG) which ensures that data blocks exchanged on p2p networks are accurate, and harmonized. This verification is done by unifying all data blocks using cryptographic hash functions. Also, the use of a Merkle DAG structure enables the creation of a Version Control System (VCS), through which the IPFS stores the object history of files in a synchronized manner. A common example of this is Github, which allows developers to simultaneously collaborate on projects. Files on Github are stored and versioned using a Merkle DAG, thereby enabling other developers to independently edit versions of a file, store these versions and later merge edits with the original file.

The version control system in IPFS are further enhanced by the Interplanetary Naming System (IPNS), which enables content linking, so that files can be accessed using the node ID address, allowing users to retrieve updated contents even without knowing the new hashes of such files. This further highlight another key characteristic of IPFS that it is a Self-Certifying File System which means that data served to clients is authenticated by their own filename and the node providing it.

Applications of IPFS

Despite being a fairly new technology, the applications and use cases of the Interplanetary File System [IPFS] are presently being exploited in a myriad of contexts. It is, however, important to specifically highlight the symbiotic relationship between IPFS and the blockchain technology (being a distributed and interlinked immutable ledger). The combination of both technologies enhances their applications in diverse scenarios, which includes enabling off-chain storage and anonymous file sharing in a distributed manner using timestamps. This means that blockchain projects do not need to store their data or files on-chain.  Thereby reducing blockchain bloating, because IPFS provides a convenient and secure off-chain solution that can enable blockchains scale.

Although, other distributed file systems such as BitTorrent can coordinate the transfer of data between several nodes or peers, however it is mainly restricted to the torrent ecosystem. In contrast, the IPFS implements a generalised version of this protocol called BitSwap, which enables further possibilities for built-in storage platforms like Filecoin. For this reason, Filecoin, a distributed storage network, is based on IPFS, where node operators are incentivized to host files and gain cryptocurrency rewards. Similarly, Audius, which is a decentralized music service, uses the IPFS for hosting its audio files. Another notable example that highlights the practical application of the IPFS, can be seen in the case of Pinata, which is an NFT hosting service that uses IPFS to back up crypto collectibles for partners like Rarible and Sorare.

Finally, browsers such as Brave and Opera presently provides native support for IPFS browsing. In this case, the Brave browser, gives users an option to access IPFS content through a public gateway or thier own local node. This, thereby, provides a gateway for the increased adoption of IPFS.

Subscribe to Protext Research
Receive the latest updates directly to your inbox.
Nft graphic
Mint this entry as an NFT to add it to your collection.
Verification
This entry has been permanently stored onchain and signed by its creator.
More from Protext Research

Skeleton

Skeleton

Skeleton