GoChain is pleased to announce that GoFS, or GoChain File System, a faster, more decentralized file storage for the web. GoFS allows users and enterprises a simple way to store and access content from the InterPlanetary File System (IPFS) without requiring you to run and manage your own instance of IPFS.
Unlike traditional web hosting and file storage solutions (AWS, S3, Drop Box, etc), files stored using GoFS are served from multiple locations at once allowing for faster downloads, more redundancy, and ensuring your files are always accessible.
It is our hope that IPFS will serve as a storage layer for many new highly-reliable and security-enhanced web applications and GoFS is your gateway to IPFS.
This post will provide a brief introduction to IPFS, the problems it solves, and its benefits.
The internet as we know it today
Today, the web operates similar to an app built on the internet with an interface for end-users. When a user wants to use an application to access information on the web, they engage in what is called a client-server relationship.
In other words, your computer, ‘the client,’ sends a request for the website data to a centralized server using location-based addressing, for example, www.apple.com, where the URL is the location. If approved, the centralized server then sends the website data back to your computer.
The result is a system that makes it very easy to distribute, manage and secure data as well as scale the capacity of servers and clients. In other words, it is highly effective for moving around small files like text and images. For these reasons, the client-server model and HTTP have been pretty effective during the first twenty-five years of the internet.
If HTTP has worked so well, why do we need something new?
Thank you for asking!
While HTTP is effective for transferring small amounts of information, it was never designed to handle today’s massive data transfer requirements (think audio and video files). Over the past two decades, the average web page has increased by 100,000%.
Additionally, due to the centralized nature of the servers which currently store the data, there are additional weaknesses in the realms of security, privacy, and efficiency.
- Security & Privacy: Centralized servers = centralized control of data = single point of failure. What this means is that anyone’s data can be accessed, altered and removed by any party with control of the server. Sometimes, this is by an entity with legitimate authority, such as a government. Other times, it is by malicious hackers.
- Efficiency: In HTTP, the information on the web is assigned an address and is assessed based on its location. While this makes it easy to reference where data is located, this, unfortunately, means that a user must go to that specific location to access it, regardless of whether the same information is available somewhere closer.
The Internet has become the most important tool in our lives. We use it to consume media, converse with friends, interact with colleagues, learn new skills, and run our businesses. We now have the technology to ensure the internet can support the next two decades or longer.
“The Web as I envisaged it, we have not seen it yet. The future is still so much bigger than the past.”Tim Berners-Lee, Inventor of the World Wide Web
The InterPlanetary File System (IPFS)
If today’s web operates similar to an app built on the internet, IPFS uses peer-to-peer communication—like one smartphone to another—to allow users to store and exchange information without a central server.
IPFS has its roots as an open-source project by Protocol Labs, an R&D lab that graduated from Y-Combinator. Development wasn’t done only by Protocol Labs; they enlisted the help of hundreds of developers from around the world to contribute to building IPFS.
This p2p network allows for two distinct differences between IPFS and the traditional web.
First, unlike traditional web where storage is done by big hosting providers in remote locations, with IPFS, anyone can sign up their computer or server to host information. It doesn’t matter if you’re working on a MacBook Pro or running a $100 million server farm.
Second, information is addressed by its content rather than its location. While this may seem like a small change, the impact is huge. Speaking at a TED Talk, Juan Benet, founder of Protocol Labs, explained the drawbacks of using location-based addressing, such as HTTP:
“Imagine we could only reference books by the physical location of one copy. So, in other words, you want to read To Kill a Mockingbird. You go to look it up and the file catalog tells you that the only place you can find the book is in one library, in one room, against one wall and at the end of one shelf. When you go there and it’s not there, you’re out of luck.”Juan Benet founder of Protocol Labs
Obviously, someone who wants to read To Kill a Mockingbird would be pleased to get their hands on any copy of the book and it sounds silly that they’d only read the copy that is in the far corner of some library that is potentially halfway across the world. Yet this is exactly what we’ve been doing online.
With IPFS, information stored is assigned a cryptographic hash of its contents. This is a long string of letters and numbers that are unique to the information contained in that file. Instead of sending a request to retrieve the information contained at a URL address, a user would send a request to “show me the information with the cryptographic hash of 1a2b3c4d5e6f7g8h9i0j.
So what does this mean?
- A more efficient, affordable network that is available anywhereIPFS results is a more flexible network. Information may be stored on one, two, ten or even thousands of computers around the world. By telling the network what to look for instead of where to look, the network now has the flexibility to return the data from the server or servers that are most efficient or fast.
- A network with 100% uptimeThe network is more resilient to the effects of server downtime. By storing data across many nodes, downtime on any one server no longer results in the dreaded 404 error, or “this page cannot be found” prompt. The network simply looks for the information somewhere else.This also means that data stored on centralized servers that shut down will no longer be lost forever. Unfortunately, this was the case with more than 38 million webpages when popular hosting site Geocities shut down its servers.If the internet was the library of Alexandria, Geocities burned 38 million original books.
- More secure & private networkThird, the combination of IPFS and blockchain add a level of automatic security to the files on the network. Every time a file is modified or altered, it generates a new hash, or digital fingerprint. Malicious modifications or deletions of content on a file is immediately detectable and does not damage the original content. It is essentially a convenient way to know if anything has been tampered with.
“With IPFS, you tell the network what to look for, and the network figures out where to look.”Cloudflare
To summarize, IPFS’s peer-to-peer structure results in a high throughput, low latency, decentralized, secure, and permanent storage network.
There are over 5 million pages currently using IPFS and many exciting use cases, from website hosting to file sharing to encrypted communication.
GoFS allows you a simple way to store and access content from the IPFS without requiring you to run and manage your own node or having special equipment.
We’ve released the following video tutorial on getting started with GoFS. We will continue to release and update resources for using GoFS.
We hope that you will take a moment to give GoFS a try and experience a new and improved way to store files in a secure and decentralized way. Try it at GoFS.io
GoChain believes in driving the adoption of impactful technology for the betterment of society and our habitat. GoChain partners with companies in all industries to quickly launch and manage their own scalable, low-cost blockchain solutions, run distributed applications and to deploy smart contracts. At 1,300 transactions per second, GoChain’s network is the fastest, most reliable, web3 based public and private blockchain protocol. GoChain’s Proof of Reputation (PoR) consensus algorithm relies on a decentralized consortium of Fortune 500 companies, NGOs, and nonprofits to validate transactions. GoChain also supports its designated public cryptocurrency, which has the ticker symbol GO.