Decentralized File Storage
- Decentralized file storage refers to systems that use distributed networks of computers (nodes) to store data securely and redundantly, rather than relying on centralized servers.
- These systems use blockchain or peer-to-peer technologies to ensure data integrity, availability, and privacy.
Understand the difference between URL and URI
URL is nothing but a Location-Addressing. Traditional web uses location-based addressing, where content is accessed by its location on a server.
URI refers to Content-Addressing. Where, where content is accessed by a hash of its content. This ensures that as long as the content remains the same, its address does not change.
What is IPFS (Inter-Planetary file storage)??
- IPFS is a decentralized P2P distributed file storing protocol.
- Storing data on blockchain is way expensive. So, the company store their data on
centralized server and cloud providers
- In IPFS, files and other data are stored in a network of nodes.
- When a file is added to IPFS, it is split into smaller blocks, coverted to hash using hash algorithm (SHA-256).
- This hash is called as CID(Content Identifier)
- Everytime re-uploading file a new CID is generated.
- To retrieve data, a user requests it using the hash.
- IPFS locates the nodes storing the corresponding blocks and downloads them.
Some more Popular Decentralized File Storage Platforms:
- Filecoin
- Arweave
- Swarm
- Bluzelle
All this above have there own pros and cons!!! To understand more you can visit there docs for more guidance
Types of Web3 Storage
On-chain storage :
- This refers to the practice of storing data directly on the blockchain, leveraging its inherent security features but at the cost of speed and expense.
off-chain decentralized storage :
- This involves storing data across a network of decentralized nodes or servers IPFS
Off-chain private storage solutions :
- This encompass traditional cloud-based and legacy data storage options designed for secure and controlled access.
On-chain file storage in full stack web3 applications
If there are some corrections and more information!! Pls update us in comments.