web3Drive

Web3 Drive is the user gate for the decentralized storage world. it acts as a decentralized drive where user can upload, download his large files in a secure way .

Demo Video Live Demo Source Code

Description

This project combines a browser-based frontend with web API crypto, 3box identity, 3box storage, and ifps storage to allow users to upload/share large files securely through end to end clientside based encryption. user has full control over his data and can delete his metadata, unpin file sync his data with decentralized storage, access it anywhere from any device securely and share any file with friends if he wants

How It's Made

This project connect to ipfs from browser to let user connect , upload ,fetch ,and download files in ipfs without depending on any central server . web worker and web crypto api are used to encrypt file chunks and generate encryption key per file. Indexdb is used to store user files metadata and most importantly temporarily store file cipher to avoid using too much memory and browser crashing . 3box with texitl are used to sync user file metadata so user can access his file any time, anywhere ** How it works: *** - Upload or drop you file - a unique key is generated and assigned to your file - file is spitted into smaller chunks and each chunk is encrypted - file name is encrypted for extra privacy - file is uploaded encrypted - file is listed in file list and user can download it decrypted - file metadata is saved in user storage ( indexeddb) - user can connect to his 3box account or create new one - user can sync his stored file metadata in his private storage in 3box - user can fetch any file and once encryption key is added, he can download it decrypted - user can import, export his file list , - user can empty his file list locally and/or in 3box , **stack *** - React js - redux - web API crypto - web worker - 3box with Textil identity - indexdb - Fleek host

Team

Eman Herawy
← click here to see all projects