There are many things that we take for granted when storing files in the cloud. When you upload a file, you probably expect it to be kept safe (encrypted), under your control, and not used/viewed by someone else without your permission.
Unfortunately, most cloud storage platforms don’t do that. Most of them purposely don’t encrypt your files so that they can spy on you and sell/monetize your data. And even for the ones that do claim to ‘encrypt’ things or value your privacy - none of them are open-source meaning you can’t verify if what they are saying is true (which it most likely isn’t).
That’s the biggest difference with Space. With Space, you don’t need to worry about those things because it is end-to-end encrypted (meaning only the user has control and access to their files), peer-to-peer, and best of all it’s fully open-source. That means you, or anyone else can verify and trust that those aspects (privacy, encryption, user-owned accounts, p2p, etc.) are in fact true.
Space is the first cloud storage platform to be built on open-source Web3 technologies, including IPFS, Textile, Ethereum, and Filecoin (coming soon). Our goal with Space is to build a file storage, sharing, and collaboration platform that is completely user-owned and trustless (meaning you don’t have to trust some company to store your data on their servers).
Getting there takes several steps, but we have a clear path to achieve that vision over the next 12-18 months. So let’s take a look at what that path looks like, and what we’re doing to build a new standard for file storage, sharing, and collaboration.
To understand why we are taking this path for Space, we must first take a look at the current way cloud storage works, and how that affects users and their data.
The main characteristic of platforms like Google Drive, Dropbox, or OneDrive, is that they are centralized storage platforms. This means that the servers, the data, and control over its security sits entirely on one organization’s hands.
What problems does this generate? To start, the “rules of storage” are set by these companies, and users have little control over how they enforce them, or how they affect the data they store in their platform. The most basic one, to begin with is, that you rely on a single company to store your data, and if they go down, so do your files.
This ends up causing awkward situations where people have to willingly accept the fine print of the deal, and sacrifice their privacy or security, to get access to storage.
For example, agreeing to data collection and monetization. Everyone knows that when you use their platforms and services, Google collects information from your own data by default and utilizes it for advertising, effectively making a profit out of it. A profit that you as a user, don’t see, benefit from, or usually authorize at all.
Another example is the rules by which your data is encrypted and protected. Companies like Google or Dropbox do encrypt your files to protect them from being exposed. But here comes another issue centralized cloud has: the keys used to decrypt your files are stored, managed, and controlled by the providers themselves.
This is a literal backdoor to your data. If Dropbox, for example, suffered a breach in their systems that exposed these keys, or if a legal entity made an arbitrary decision that forced them to give access to your unencrypted data, they could do so easily without your consent or approval. We’ll talk later about how end-to-end encryption plays a part in solving this.
Finally, there is also the issue of transparency. Google Drive, Dropbox, OneDrive, and most leading cloud providers are not open-source. It is simply not possible to know if there are backdoors, or instances of data abuse because their platform’s code is not open for the public to review.
All these features force the user to pick their cloud storage platform out of trust. Trust in the company’s ability not to disappear, and take their data down with them; trust in the company’s ability to keep their word on security; and trust in the company’s fairness when protecting users from censorship or external abuse.
To solve these problems, we’re embarking on this journey to build Space! The road to fully encrypted and trustless storage has several steps we must take, so we’ve decided to take a path of progressive decentralization/trustlessness in order to deliver a product to market now, without substantially sacrificing user experience and performance, while we continue to build out the pieces we need to make Space fully trustless.
Space V1 is already a huge step towards the end goal. It gives users a file storage, sharing, and collaboration platform that is end-to-end encrypted, peer-to-peer, fully open-source, and begins to reduce dependency on a single centralized entity - all while delivering a best-in-class user experience.
Our first differentiation from cloud on this journey is full transparency. We’re making Space open-source to its core. Anyone can review our platform’s code, and see how we implement the various Web3 protocols (IPFS, Textile, Ethereum, Filecoin, etc.) that pave the way for trustless storage.
So, how’s Space distributed storage different from cloud? When you use Space, you can store and encrypt files locally on your own device, as well as store encrypted backups of your files in ‘Space’ (so that you can access your files from multiple devices and from the browser; and also it’s useful to backup files on your devices in case one gets damaged or lost). In contrast to normal cloud storage, only you have access to your files stored locally and/or in Space.
And you can even access your encrypted files outside of the Space product/interface (so long as you have access to your keys).
That’s one of the big benefits of Space. Since we use Web3 technologies like IPFS under the hood, your files no longer need to be exclusively stored on a single company’s servers. Instead, you can store encrypted copies of them on any IPFS nodes that anybody (individual or company) can run and pin/backup whatever files they choose.
To make this a super seamless process, we embed an IPFS and Textile node into the Space desktop app (and mobile app in the future). By doing this, users can participate in storing, backing up, and serving files (peer-to-peer) to themselves and other users they share and collaborate on files with (instead of just Space doing this). And since all files on IPFS are ‘content addressed’, a user can use another IPFS pinning service as an additional backup storage provider for their files (in addition to just storing encrypted backups on Space).
So essentially for V1, storing backups in Space means storing/pinning encrypted copies of your files on our remote IPFS and Textile nodes/infrastructure that run 24/7. In addition to this being useful for backing up files, this architecture also enables us to ensure that files can be served to you at all times and across all platforms (ex. in the browser, or when no users who have the file are online to serve it to you).
The magic is that we are beginning to blur the lines between the role of a traditional cloud storage ‘provider’ and the user - which sets things up perfectly for the next and final step towards fully trustless storage.
Space V1 mainly uses IPFS & Textile. And while combining those two give us encryption, peer-to-peer, and reduced centralization benefits, they are not fully trustless because they still require centralized entities to run the infrastructure in order to properly/performantly use them (ex. storing backup encrypted copies of your files in Space V1).
So there is still an element of trust in V1 in that users must trust that Space -the company- won’t shut down our remote IPFS/Textile infrastructure that is storing backup encrypted copies of user files.
That is why in V2 of Space, we plan to offer users the option to store backup encrypted copies of their files on Filecoin!
Filecoin is the natural evolution of storing backup encrypted copies of files on our own IPFS nodes. Built by the same awesome team at Protocol Labs that built IPFS, Filecoin was specifically created to address the issue of there being no incentivization for IPFS nodes to store/pin files (which is why we have to run our own IPFS nodes in Space V1).
With Filecoin mainnet barely a month old, they’ve already crossed 1 exbibyte of data stored on the network, and high on the protocols roadmap (as well as Textile’s Powergate roadmap) is a seamless integration between IPFS and Filecoin (in addition to other priorities like improved retrieval times).
Once Filecoin is in a position to performantly replace the centralized role Space currently plays in the product (storing backup encrypted copies of users files on our own centrally operated IPFS nodes), our plan is to completely switch, or offer users the option, to store backup encrypted copies of their files on the Filecoin network. By doing this, users would have a provably trustless guarantee about where their files are stored, and for how long their files are stored, without needing to trust any centralized entity with their files/data.
The great part about this plan and our architecture is that by switching to Filecoin in the future, we will still maintain the encryption, peer-to-peer, and user delivery benefits we are achieving in V1 by using IPFS, Textile, and Ethereum under the hood (and embedding them in user machines). Filecoin will just make those benefits greater by making the remote/backup role more decentralized/trustless.
While the timeline for us to add Filecoin support is largely dependent on the Filecoin team’s roadmap and timeline for implementing features/protocol improvements that we need to make this vision a reality, we anticipate it will start to happen in 3-6 months from now and we will probably roll out this feature in phases.
Independently of how the road to decentralized storage looks like ahead of us, we want to give users the options to choose what they want their storage Space to be. But we also don’t want to make it too confusing to the average user, so we will work to simplify it as much as possible to create a seamless user experience.
The goal is that in the end, whether they want to store files on their own cluster of IPFS nodes, Space’s IPFS nodes, Filecoin, or some combination of those 3, we want to enable it. The great thing about being open-source is that people are free to experiment however they want.
And since we’re open-source, those more technical users can experiment however they want. For example, users can host their own backup Space infrastructure in the future and/or create their own company/project specific distributed storage/delivery networks!
But, as we said, V1 of Space is still pretty revolutionary and we recommend giving it a try while we continue to develop V2. Our alpha is in private beta now, and we will be releasing a public beta in next few weeks!