DirectDrop — P2P File Tunnel
A zero-knowledge, decentralized file sharing tool that streams files directly between web browsers without storing data on intermediate servers. Powered by WebRTC DataChannels and client-side AES-GCM encryption, it provides maximum transfer speeds and absolute end-to-end data privacy.
Overview
Traditional cloud uploaders require files to sit on third-party cloud storage before reaching the recipient. DirectDrop bypasses intermediary servers entirely by establishing an authenticated Peer-to-Peer (P2P) data pipeline directly between two browser sessions. The signaling server is utilized solely for exchanging ICE candidates and session descriptions (SDP), while actual file payloads stream directly across an encrypted peer mesh.
Key features
- Serverless Data Relaying: Files flow directly device-to-device via RTCDataChannel, achieving local network line speeds and eliminating cloud bandwidth limits.
- End-to-End Encryption (E2EE): Client-side cryptographic layer encrypts every chunk with 256-bit AES-GCM using ephemeral keys before network transmission.
- Chunked Stream Processing: Handles multi-gigabyte transfers smoothly by utilizing the Streams API and File System Access API without exhausting browser RAM.
- Dynamic NAT Traversal: Integrated STUN/TURN handshake fallback ensures reliable peer connections across restrictive symmetric NATs and firewalls.
- Integrity Verification: Computes real-time SHA-256 digests over incoming chunks to guarantee that files are assembled without transmission corruption.
Tech stack & Architecture
A dual-tier architecture isolating discovery coordination from file delivery:
- Transport Protocol: WebRTC DataChannel (SCTP over DTLS/UDP) for high-throughput, low-latency binary chunk streaming.
- Security Engine: Web Crypto API for hardware-accelerated AES-GCM encryption and SHA-256 payload checksums.
- Signaling Layer: Lightweight Node.js and WebSocket service responsible exclusively for room coordination and ICE candidate exchange.
- Client UI: Modern TypeScript paired with reactive drag-and-drop file queues and live bandwidth transfer meters.
What I learned
Building DirectDrop offered deep practical insight into peer-to-peer networking mechanics: ICE workflows, STUN/TURN negotiation, backpressure handling in browser data buffers, and the challenges of memory-efficient binary blob slicing. It also solidified the principles of zero-knowledge client architectures and Web Crypto primitives.