Back to Projects
In Progress· May 2025 – Present

BlockDrop

Decentralized Encrypted File Sharing on Blockchain

ReactNode.jsIPFSSolidityEthereumPinataMetaMaskWeb3.js

Overview

BlockDrop is a Web3-native file sharing platform that combines IPFS distributed storage with blockchain-based access control and audit trails. Files are encrypted client-side before upload, stored on IPFS, and access references are written to a smart contract — creating an immutable record of all file interactions. This architecture means no central server can be compelled to delete or expose files, and every access event is cryptographically logged.

🔴 The Problem

Centralized file sharing platforms are single points of failure — they can be hacked, subpoenaed, or shut down. For sensitive documents (legal, medical, journalistic), this is unacceptable.

🟢 The Solution

BlockDrop eliminates the central server entirely. Files are encrypted client-side, distributed across IPFS, and access is controlled by smart contracts. The blockchain provides an tamper-proof audit trail — every upload, download, and permission change is permanently recorded.

Architecture

React frontend connects to MetaMask for wallet authentication. Files are encrypted in-browser with AES before being pinned to IPFS via Pinata. The IPFS CID and access permissions are stored in a Solidity smart contract deployed on an EVM-compatible testnet. Node.js backend handles IPFS communication and provides a REST API layer.

Challenges

1

Client-side encryption without compromising UX — key management is always the hard problem

2

IPFS upload reliability and pinning permanence across different nodes

3

Smart contract gas optimization for frequent audit trail writes

4

Handling large file uploads in the browser without memory overflow

Results

Successfully deployed on Ethereum testnet with end-to-end encrypted file sharing working

Audit trail implemented — every file access event recorded on-chain

Sub-10-second upload pipeline for files up to 10MB

Ongoing development with planned mainnet deployment

Lessons Learned

Key management is the unsolved UX problem in Web3 — hardware wallets are the only real solution

IPFS is eventually consistent, not immediately — design UI to handle propagation delays

Smart contracts need extensive testing before any mainnet deployment