IPFS: A Complete Analysis of The Distributed Web

Written by zkCAPITAL | Published 2018/10/01
Tech Story Tags: blockchain | distributed-web | ipfs | distributed-web-analysis | blockchain-distributed

TLDRvia the TL;DR App

In our recent comprehensive analysis, we discuss Interplanetary File System (IPFS). This article summarizes the reasons that excite us about IPFS. We also pinpoint some areas that require future enhancements and development in order for IPFS to achieve mainstream adoption. The complete analysis can be accessed HERE. Once you click this link, Congratulations, you are already using IPFS!

In this analysis, we begin with an overview of IPFS, explaining the main motivations behind it. The purpose is to help our readers comprehend the major problems in today’s internet that IPFS can solve. Next, we briefly delve into the technical design of IPFS. Here, our goal is to help readers understand the different distributed systems IPFS was inspired by and how it expands on such ideas to achieve a single and powerful cohesive system. Following that, we perform our own analysis on the network dynamics. We strive to reflect the current costs of running an IPFS and how beneficial it would be to the network. For completeness, we also touch upon some challenges and possible countermeasures. Finally, present some discussions on applications that run on IPFS and how this could allow new business models to evolve.

Why IPFS is Interesting

IPFS is a significant step up from the predecessor technologies

IPFS has benefited significantly from multiple predecessor technologies like distributed hash tables (DHT), BitTorrent, git, and SFS. It was inspired by these technologies to provide an enhanced solution for hypermedia data sharing. IPFS is an open source project that accepts worldwide research and development contribution to enhancing the system.

Comparing the movement of data in IPFS to centralized client-server models.

IPFS is an important component of the Web 3.0 infrastructure

Web 3.0 is a long-term target that aims to replace the current internet infrastructure. As decentralization is the essence of Web 3.0. Many consider the distributed ledger technology (DLT), for example, blockchains, as the core building block of Web 3.0. A blockchain is an immutable and append-only ledger that stores the network state. Distributed consensus between all the network nodes is required in order to extend the blockchain and store the critical network data among the network nodes. Therefore, it could be prohibitively expensive to store any other kinds of data into the blockchain. For multiple use cases, it may be more efficient to store other non-critical data in a secure fashion close to the security level of the blockchain.

IPFS is the most suitable storage medium for this category of data. IPFS allows for distributed storage of data that is immune to altering and forgery. Data stored on the IPFS network cannot be altered without changing the data identifier. In IPFS, the identifier is a cryptographic hash of the data. This means non-critical data can be stored to IPFS while storing this identifier to an underlying distributed ledger. This would result in less exhaustive operations over the distributed ledger.

IPFS is an optimal storage platform for decentralized apps

Decentralized applications (dApps) are a class of applications that leverage decentralization to achieve unprecedented benefits. Among those are decentralized exchanges and marketplaces where centralized intermediaries are removed, hence eliminating/reducing any trading fees. Another example is decentralized social media and video platforms where content cannot be censored at the will of the operating company. Such dApps require the storage of a significant amount of data. IPFS allows this data to be stored in a distributed way that is censorship-resistant. For these reasons, IPFS is turning into a preferred storage platform for dApps.

app.co shows a growing list of dApps that use IPFS as the storage platform.

IPFS can provide a better user experience

IPFS could lead to improved user experience in multiple cases. For example, trying to browse or download some popular content using the typical client-server model may exhaust the network bandwidth and lead to network congestion. This may result in an inconvenient user experience due to the larger latencies. In IPFS, content is delivered from the closest peers that possess a copy of the content removing the single-node pressure and improving the user experience. In addition, IPFS allows for continuous and smooth browsing of the content even if the owner of the content is no longer available.

IPFS allows for new online business models

In today’s internet, any online content needs to be hosted on dedicated servers. It is essential for the content publisher to ensure the availability of the content and a sufficient bandwidth to satisfy the required demand. IPFS fundamentally changes this model. In IPFS, rather than having a single host server serving all users, data is shared in a distributed manner and can be served by any node in possession of the data. As a result, the bandwidth requirements are significantly reduced and the reliability is enhanced. That being said, new business models will begin to evolve. For example, using some projects like Filecoin it would be possible for content publishers to pay users a small reward to store the content. This would improve content distribution and ensure content availability.

Many video sharing platforms, social media, and other applications are turning to IPFS to achieve better user experience and a better business model.

IPFS is receiving increased mainstream adoption

Due to the multiple attractive features of IPFS, it is getting increased mainstream adoption. In our report, we discuss situations where IPFS helped mainstream users fight censorship in Turkey and Spain. In addition to the recent Cloudflare’s announcement, it is now possible to host websites on IPFS and point to them using an easy standard domain name. IPFS hosted websites are censorship-resistant websites and now they can be easily recognized and securely browsed using HTTP and HTTPS and using Cloudfare’s IPFS gateway. In addition, Cloudflare has implemented techniques to guarantee that users do not need to trust Cloudflare to be serving them the right content they asked for.

What Are the Challenges Facing IPFS

IPFS is a new technology undergoing continuous development. Yet, we recognize a number of challenges that need to be overcome in order to achieve mass adoption.

Bandwidth requirements

Running an IPFS node currently involves using significant bandwidth that may not be feasible for many users especially in developing countries. Excessive bandwidth usage may harm the adoption of the IPFS in multiple areas of the world. While there are multiple suggestions on how to handle this problem, financial incentives may be the proper direction. Gaining financial rewards for hosting content on IPFS can help cover the costs of running nodes and encourage adoption.

Bandwidth usage of our experimental IPFS node. In this test, the node was not used to browse or download any IPFS content. However, over a period of 8 hours, our node has downloaded/uploaded over 5 GB of data.

Availability

The current implementation of IPFS cannot guarantee data availability upon being requested. A possible way to ensure availability is content pinning which means constantly saving copies of the published content on an IPFS node. This IPFS node is required to be online at all times to satisfy the availability guarantees. Projects like Filecoin are building an incentive layer to encourage nodes to save content in return for some incentives.

Private content

Content published to IPFS is public by design. Anyone in possession of the content hash can access such content. Currently, IPFS does not provide a built-in solution for storing private data. Encryption can be used to store and/or transfer private data over IPFS. Another more complex method is to create a private network using the IPFS protocol where the nodes can only connect to a specified list on nodes that form the private network.

Conclusion

In this summary, we have discussed why we believe IPFS is a critical technology for the future’s distributed internet. The complete analysis includes further details on IPFS technology, security, network dynamics and different applications. Overall, IPFS has proven to be crucial for censorship-resistant and distributed data storage. With the ongoing development, it can be the standard data transfer protocol of the future.

Acknowledgments

We would like to thank Protocol Labs team who provided useful contributions, review, and feedback; in particular Matt Zumwalt, Jeromy Johnson, Arkadiy Kukarkin, Lars Gierth, David Dias, and Juan Benet.

Disclaimer:

This report is for informational purposes only. This report does not in any way constitute an offer or solicitation of an offer to buy or sell any investment or cryptocurrencies discussed herein. Investors should conduct independent due diligence, on all cryptocurrencies discussed in this report and develop a judgment of the relevant markets prior to making any investment decision. None of the authors, contributors, or anyone else connected with zk Capital, in any way whatsoever, can be responsible for your use of the information contained in this report.


Published by HackerNoon on 2018/10/01