Distributed. Hypermedia. Content-addressable. Identities. Permanent Web.
These are a few terms that seem to get thrown around a lot these days when people talk about upcoming web technologies. If you too are confused like the majority of us, then here is the guide that will take you through each of these terms and explain how and why we need them. Let’s explore…

IPFS
IPFS stands for Inter Planetary File System.

What is IPFS?

It is nothing but a protocol. The next question that comes to mind is well, so is HTTP. Now here lies the difference. IPFS is not just a protocol. It is a distributed, hypermedia protocol that aims to make the web safer, faster and more open.

How is IPFS different from HTTP?

HTTP is based on the centralized server model. This means that there is a single server somewhere that manages the links to other systems for exchange of information.

The above shown centralized system worked well for decades but it is failing now. The current technological scenario shows that almost everyone uses a Smartphone or laptop or a smart electronic gadget and tries to connect to the internet. This internet is basically connecting to a central server which then routes information or alerts other servers to do so. The problem arises when one of these central servers fails. What happens next? The connection link expires and website simply ceases to exist. A simple solution to this problem is to have distributed system architecture (as shown below).

On a related note, let us take an example. We have all seen the "404 Error. The requested URL was not found on this server." What does this imply? It means that the website location has been changed and the server previously hosting it has gone down and no one knows the current location. This usually occurs if the web pages are too old and the server hosting them too outdated.


Another major difference between HTTP and IPFS is the downloading process. HTTP tries to download the whole file from one system. However, IPFS allows multiple parts of a file to be downloaded simultaneously from many different systems. This results in faster downloads and almost no loss of bandwidth.

Now let’s discuss the features of IPFS

  • Hypermedia
    IPFS supports hypermedia which is data such as graphics, text, links, audio, video and other information through nonlinear medium (like hard drive).

  • Peer-to-peer
    IPFS supports peer-to-peer computing which means systems work together in tandem. It is a mode of distributed computing systems. Systems or peers partition tasks between themselves for faster processing.

  • Content-addressable
    IPFS is content-addressable. This means that the information can be retrieved using the content instead of location. This is a comparatively faster way of storage and retrieval.

  • Forms Merkle Directed Acyclic Graph
    IPFS forms a Merkle tree or hash tree which can be used for safe and efficient verification of data in large structures.

Why is IPFS a way towards permanent web?

IPFS uses peer-to-peer model and hence, information from servers can be read and stored in local systems which are nearer to the user for faster usage. Since IPFS is content-addressable, we can easily verify the authenticity of the data and the system on which it is hosted. Since the local system has the data now, it can be stored in memory for as long as possible, thus making it permanent. In this way, IPFS can lower the risk of important content not being available and secures the data through content-signing.

In the next article, we shall discuss more about how content-signing is implemented and how it can be used with blockchain technology.

Also read: Certificate on IPFS and Ethereum

For news, technical blogs and project updates on Blockchain Technology, please join us at our Website, Facebook, Medium and follow us at Twitter. Please feel free to share this post, and email us with your suggestions.