How IPFS is Challenging the Web as We Know It
Think of a world where 4k video streaming is bufferless, going offline doesn’t end your online workflow, where e-commerce is free for merchants and where governments cannot control Internet access.
Before we see what drives businesses to invest in technologies that will help to achieve this and how you can benefit from this today, let’s understand the problem current web2.0 is facing.
Problem of Data
From the year 2005 humanity had gathered around 130 Exabytes of data. To hold this information on paper you would roughly need the entire world to be covered with trees to be converted into books. In 2015 this figure was 7900 Exabytes. In 2020 this number will be 40900. This exponentially growing information will be consumed by Internet users whose numbers are also growing rapidly.
In Indonesia alone, the 105M Internet users are expected to grow to 125M in the next 4 years. That is 20 million more people coming online in the next 4 years. That is in a single country alone.
To make matters more complicated, the difference between yearly price drop in storage (40%) and bandwidth (26%) is almost double.
All this means that we will have more people, streaming more data on channels that are not scaling as fast. This creates congestion that at one point in time cannot be solved by just adding more hardware.
Congestion being just one problem, today the Internet is a centralized system that naturally has a single point of failure. This point of failure can be misused to disable access to the Internet for an entire country. This is exactly what happened to Egypt in 2011 during the January revolution. When the president didn’t want to be overthrown he decided to pull the plug on what was feeding the protests, the Internet. As we know, in the end it didn’t help but the effect was clear, four major ISP providers cut the wire and the country was cut off from the world. Single point of failure here was the fact that all communication between the protestors was going in and out of Egypt instead of directly between the people and when that door was shut, nothing worked anymore.
Clearly, the problem exists, now let’s look at how businesses can benefit from this by investing in the technologies that offer solutions. This is where IPFS and Blockchain come in.
IPFS or Interplanetary File System is a new Internet protocol initially designed by Juan Benet in 2014 with the goal of storing data permanently, remove duplications across the network, and obtain addresses to information stored on network computers. It is now an open-source project. Unlike HTTP, it is resource, not location oriented. Instead of communicating by pointing to locations, IPFS points to the resource itself. It then gets this resource from whoever has the data or parts of it stored creating a decentralized network.
So why should you care about whether the Internet protocol you are using is location-based or not? For this lets compare these two approaches.
HTTP works by mapping the resources with location-based IP addresses. It uses them to point to computers in a specific location that have the resource a client needs.
If you want to stream a 4k video on Youtube, for example, your browser needs to look up that video on a server in the Google data center far away and have that stream propagate all the way to you. In reality, there is something called content delivery network (CDN) that “brings” the servers closer to you but it may still be hundreds of kilometers away and has little help in the developing countries.
Imagine you are in a lecture together with 100 people and you all watch the same video. What happens is that this video has to be fetched from the closest nodes of Google, streamed to each of the student’s laptops and repeated 100 times. Instead of students, who have an identical copy of the video, sharing it with each other, we propagate large amounts of data, long distances, multiple times. Inefficient, but this is how HTTP works and it is creating large congestion problems on the backbone of the Internet.
IPFS helps to resolve congestion and overly controlling governments by distribution
Instead of locations, IPFS addresses point directly to the resources and it makes sure that this data comes from the closest sources. This means that if a classroom full of students would watch the same video, they would fetch it from each other instead of any central location. This would make streaming a 4k video bufferless.
You may now ask how does this differ from the well-known Bitorrent protocol and how will it change the Web?
While it borrows heavily from the tried and tested technologies like Git and BitTorrent, it offers a completely separate solution. How BitTorrent works is that for every torrent you have a separate swarm, or group or users, who share a single file, or torrent. If there are two videos with different language packs, there would be 2 swarms and they would not be able to cross-share anything. Not even the parts of the file that are identical, which in this case is 99% of the file.
With IPFS the entire World Wide Web can be considered as one torrent file that everyone shares
Also, BitTorrent doesn’t support all data types, which makes life harder. Neither does it care at all about deduplication which means that two identical videos can co-exist and be shared on the network adding to the data congestion problems.
With IPFS the entire World Wide Web can be considered as one torrent file that everyone shares. Any document, video, audio file or an entire application, or just parts of them sit on the local storage of an Internet users computer and it is shared between everyone on the network. The protocol takes care of finding the closest peers who have what you need.
The network automatically deletes duplicates and tracks version history. It achieves this by giving each file submitted to IPFS a unique cryptographic hash that depends on the content. Historic versioning prevents information from being easily erased. Combined with Blockchain and these unique addresses can now be saved to an immutable chain creating interesting product opportunities. IPFS is not blockchain but it is designed to work together with it. Lets look at some of the other misconceptions people have of IPFS and then come back to what applications have been built and can be built using this combination.
Data stored on IPFS is persistent
Permanence and persistence mean different things. Let’s be clear here, IPFS doesn’t guarantee persistence, the nodes on the networks decide if they think keeping something on IPFS is worth the energy or not. What you can do with IPFS though, is it that you can create the content, add it to the network and disappear without keeping any infrastructure running. Using cryptography, IPFS will serve your content as long as the network decides that it is worth doing so. The links to unique content will always remain the same but whether the network stores it is up to the users. IPFS uses cryptocurrencies to incentivize data storage, more on that later.
IPFS is built on Blockchain
Although it uses similar architectural elements like Merkle Trees, IPFS is not built on Blockchain but rather is designed to work together with existing Blockchain protocols. As mentioned in the misconceptions above, each file uploaded to IPFS will get a permanent address. Blockchain, unlike IPFS, is not fit to store large amounts of data. Put these together and you can store large amounts of information on IPFS and place the immutable, permanent IPFS addresses into a blockchain transaction. IPFS will provide a publicly accessible database while Blockchain makes it publicly verifiable.
IPFS vs Decentralized vs Distributed
IFPS is a distributed file system that allows for fast performance and decentralized data archiving.
Distributed means that all data processing/archiving is not done in the same place. Those distributed services can still be under the control of a single entity.
Decentralized means that no one entity has control over all the transactions.
IPFS then is distributed as data is stored across the network. Decentralization, or ownership, depends on the data and the applications that manage this data.
Looking to leverage IPFS? Get in touch and let’s exchange ideas.
Applications with IPFS and Blockchain
IPFS is used to store data that is publicly accessible and Blockchain is used to verify the addresses. This means 2 things. 1) You can be sure that the link referencing a specific file is really is the one you should use and 2) the link will always return the same object. This empowers the creation of platforms that help to solve the many problems today’s Internet has either created or not been able to solve.
Online IP problems range from arts and music to source code and programs. Platforms like Embermine use IPFS and Blockchain to empower content creators by providing a complete ecosystem for their work. This includes revenue channels that are driven by smart contracts (applications running on Blockchain), a reputation-based collaboration network, identity protection and more.
Networks like Akasha and Steemit that are built on top of Blockchain and IPFS offer a truly decentralized social networking experience. They incentivize content creation by rewarding cryptocurrencies and deny control and censorship power to any data governing central actor by having its data distributed over IPFS.
“In today’s blockchain realm, AKASHA is a social and technological experiment enabling our collective memory, feelings, and ideas to echo freely throughout humanity’s existence. By fusing Ethereum with the Inter-Planetary File System, we explore the implications and applications of a permanent Web in the context of freedom of expression, creative perpetuity, and privacy for a better home of Mind.” — Akasha.world
OpenBazaar creates a marketplace that, since is not centrally controlled, does not put any fees on merchants. Unlike conventional e-commerce sites like eBay or Amazon, OpenBazaar has no fees for listing or selling items. Because the trade is peer-to-peer and happening directly between buyers and sellers there is no middleman to take a cut from each sale. This is an online commerce that is free for the merchant.
FileCoin incentivizes data storage. You get paid in FileCoin to store data and help the IPFS network to function. Their premise is that since the massive amount of storage sits unused in data centers and hard drives around the world, one could put their unused data storage to work and earn FileCoin that could then be exchanged to other crypto or Fiat currencies.
zCash promises to protect the privacy of transactions. Its payments are published on a public Blockchain, but the sender, recipient, and amount of a transaction remain private.
As you can see, all of these applications work and feel like a normal HTTP browsing experience. That’s what makes this a very interesting tech to play around with. It works together with HTTP and offers competent tools to solve relevant problems that the conventional systems are incapable of.
All this gives platforms that leverage IPFS and Blockchain power to compete with the Internet giants of today.
Today vs Tomorrow
The applications of today run on web 2.0 and they do a decent job to mitigate the problems we mentioned earlier by investing a lot of money into infrastructure. The decentralized technologies that make up the web 3.0 like IPFS and Etherum Protocol need to compete with them in order to achieve any large scale adoption.
They need to perform at the same level, or at least show its possible, while at the same time complement itself with much more.
Here are the benefits that the web 2.0 cannot compete with
Trustless multi-party computations which today’s technologies cannot offer means that you can perform computations on computers you don’t trust. The same applies to data storage.
Trusted ledgers, timestamping and verifiable applications mean that operations that are happening can be mathematically proven with certainty.
Applications are decentralized which means that a company that published an application on the web can disappear and the application will continue to exist without the companies infrastructure or support.
End-to-end encryption is built-in. Current providers cannot offer this cause they live off user data and advertisement while the web 3.0 comes with this by default.
There are many more players in the world of web3.0 and they all offer us a foundation, leverage that allows application and business developers to compete with the giants of today. Whether or not IPFS will be the technology that achieves mass adoption, it shows us what is possible.