Decentralized Storage

For a system to be web3, data is needed to be stored on Decentralized Storage. RADIAN primarily uses IPFS for Default Storage and Arweave as an additional option for Permanent Storage.

IPFS

IPFS (Interplanetary File System) is a decentralized storage facility that acts like BitTorrent. The data is initially stored in the server to which data is uploaded. Servers hosted by other users can download the data and pin it for persistent storage.

Data stored on IPFS is easy to verify due to content addressing, i.e. a storage protocol that deterministically generates a hash of the data as the content identifier (CID). The IPFS distributed network serves data by acting as 1 big database. When the user queries an IPFS node for a particular CID, it will ask the entire IPFS network for it.

Moreover, data stored on IPFS is public. Data can be easily replicated to another server, i.e. IPFS Server B can download and serve a particular CID, simply by downloading it from IPFS Server A.

Pros of IPFS

  1. Data is persistent as long as there is 1 IPFS server that pins the Data

  2. IPFS is theoretically decentralized if there are a sufficiently large number of nodes in the network that hosts their own data and are willing to host for other users.

  3. Storage cost is the same as that of Web2 as it is user-provided or hosted on centralized servers such as EC2/S3

Cons of IPFS

  1. In practice, no one is willing to host a server for free for others, and not even for themselves, as self-hosting an IPFS server is costly and tech-intensive.

  2. The majority of the people use free nodes or paid nodes hosted by companies such as Infura or Pinata.

  3. Even if the data is in a distributed mode, the latency could be high as users may store data in a remote node with a poor internet connection.

  4. If you are not using your own node, you are subject to the permission of third-party nodes for data upload. They may have some kind of censorship policy.

Arweave

Arweave is a blockchain for permanent decentralized storage. Data stored on Arweave is guaranteed to exist forever. The usage of Arweave is permissionless like any other public blockchain. The data stored on Arweave is identified by the transaction hash.

Pros of Arweave

  1. Data storage is permanent by default. Pay once store forever.

  2. The usage is permissionless, i.e. nobody can stop you from uploading any kind of data

Cons of Arweave

  1. The data retrieval is incentivized by blockchain. It is in general faster than pulling data from the IPFS network, assuming that the IPFS node storing the data is unknown. However, it is far from the paid IPFS storage service, which has a speed similar to Web2 servers, i.e. S3. For instance, 5 seconds read latency.

  2. You will need to pay a huge sum, i.e. roughly 40 years’ worth of S3 storage cost for the same unit of data.

Storage Policy in RADIAN

Responsibility of the User on Storage

Benefits of Web3 Storage

In Web2, the users do not need to pay for the storage of their data. They can upload a large number of photos or videos on Facebook, without the need to worry about the cost of storing them. Of course, there is a limit to how much data they upload before getting a warning. But the vast majority of the users will not reach this limit. The reason is that the web2 social platforms have a more or less exclusive right to control and monetize user data so that they can recover the storage cost.

In Web3, the user owns the data and the platform does not. The meaning of owning refers to the ability of the user to attribute the creation of the content to themselves in a public, verifiable, and unregulated manner. For instance, any user can mint an NFT with data stored on Arweave, and be verified to be the owner on the blockchain. This is not the case in Web2, in which users create accounts/profiles under a particular social application. Data associated with that account is stored on the application's private database. The implication is that platforms have absolute power over the data uploaded by the user in Web2, whereas data are free from the control of the application in Web3.

Not to be mistaken, in web3, users who like to use a particular web3 application will need to abide by the rules set by that particular application, just like in web2. Also, applications in web3 can monetize data just like in web2, with Ads, data analytics, etc. However, the user has the ultimate power over the existence and ownership of the data itself. They can sell the data and they can modify the data without the permission of the application.

So why is this important? The factor that matters most is that users are now free from the threats of centralized applications. Just look at the cases below:

1) Application A decides to censor all your posts.

Web2: You are over.

Web3: Your posts are still visible on applications B, C, D, E, ...

2) Application A decides to ban you from uploading a particular image because they found it offensive.

Web2: You cannot upload this image.

Web3: You can upload this image from another application or directly to the blockchain with an open-sourced frontend.

Users' Responsibility

Users are responsible for the secure storage of their data, as they reap more benefits of owning the data. Applications have much less incentive for providing free storage of user data because they now do not have full and exclusive control over it.

Users should understand that decentralization and free storage are a trade-off. Now, users themselves should be responsible for the persistence of the storage.

RADIAN as a gateway to Web3 Storage

RADIAN Storage Policy empowers users to own their content but does not enforce users to do so.

Web2-ish storage to begin with (Free -> Cheap)

Data by default is stored in the RADIAN IPFS server. The RADIAN IPFS Server is hosted on AWS EC2/S3 with Caching and CDN enabled. This provides users a seamless experience like most web2 Applications. However, users have a limit on how much they are allowed to store on our server. They will be required to pay for the excessive (To be confirmed). Moreover, illegal content will not be persisted. The RADIAN IPFS server will be the last resort for getting IPFS data linked to the RADIAN deployed contracts.

Making it more web3 (Cheap)

Users can host an IPFS node themselves or purchase a third-party IPFS storage service, i.e. Infura for storing their data. RADIAN team will provide an easy-to-use, open-sourced frontend for handling the duplication of data from the RADIAN server to the user-owned server.

Making it totally web3 (Expensive)

Users can permanently back up their data to Arweave. RADIAN team will provide an easy-to-use, open-sourced frontend for doing so. We will also provide the code for the recovery of lost IPFS data from Arweave storage. With data backed up on Arweave, users should have the peace of mind that their data will forever exist.

To Sum Up, In RADIAN:

  1. Data are owned by the user through the on-chain proofs.

  2. Data can be freely replicated to any other IPFS server

  3. Users are empowered and encouraged to secure their data by

    1. Hosting their own IPFS server to permanently pin the data

    2. Pay and backup their data permanently to Arweave

    3. Pay a third party to pin their data

    In the case their RADIAN IPFS server goes down, the RADIAN ecosystem should function on the data that are stored securely by the users

  4. Those who refuse or are too lazy to secure their data will pay the price when the time comes

We believe

  1. Providing free and decentralized storage to users is unsustainable

  2. Forcing all users to pay for decentralized storage is unrealistic

  3. Providing an option for users to store in decentralized storage is a must

Storage Concerns for Dapps

For Dapps who are willing to pay for the storage for their user, they are free to host their own IPFS server and replace us as the primary storage facility for their users. This is especially important if the Dapp is accepting content that is regarded as obscene or inappropriate by the RADIAN team. In this case, they can continue to use the permissionless smart contract, but the data won't be stored by the RADIAN IPFS server. Dapp should self-host their own IPFS server.

RADIAN infrastructure will likely be part of the smart contracts that the Dapps are using. Most likely there will be other smart contracts deployed. And the application backend maybe partly consisted of a centralized database for storing user data. Dapps may appear as a mixture of Web2 and Web3, with part of the user data stored in a centralized way and the social-related data stored in a decentralized way on the RADIAN infrastructure.

Privacy Policy in RADIAN

Data encryption with a selective reveal option is coming. Please see the Data Privacy section.

Storage Format

Storage Format follows the standard of Interplanetary Linked Data (IPLD)

Last updated