ETHGlobal Showcase: https://ethglobal.com/showcase/mypfs-8vrm0
X wants his dapp users data (or personal data) to be saved in a distruibed database, to not rely in a single point of failure, have full avalability and ensure that the data gets uncensurabily, but wants to preserve privacy.
Cloud services like Google Drive enable you to store your data privately but you have to rely on this company for the security and longevity of your files. Instead, a distribuited storage like IPFS enables you to store data in a node network so you don't need to rely on centralized entities anymore but nodes are public so everyone can access your data.
But, there wasn't a easy way to store private data in a distribuited database, until now.
Thanks to our solution we are adding privacy to IPFS. We allow the average user to easily encrypt his data by signing a message with his wallet and storing it on many IPFS nodes so it lasts forever.
Encryption is done on the browser using our custom Metamask Snap, where each user generates its own app-specific private key so they have a unique key, different from their wallet one. Files are then stored using web3.storage which replicates and pin the data on multiple IPFS nodes so we can ensure we'll never lose our data.
Also, to make it easy for users to keep track of their file URLs we made a directory system stored on a smart contract which gets updated every time a new file is created or re-written.
- MetaMask
- Polygon
You will need to use MetaMask Flask, the experimental version of MetaMask that implements Snaps, which will be implemented in the official MetaMask soon.