
I built a zero-knowledge file sharing app as a college student — here's what I learned about AES-256-GCM in the browser
About a year ago, I was in my dorm room copying a 4GB project file to a flash drive to walk across campus. It felt absurd. Every cloud service either had file size limits, showed ads, or asked me to trust them with my data. So I started building something. That project became FileShot.io — a zero-knowledge, end-to-end encrypted file sharing platform. This post isn't a product pitch. It's about the specific technical problem I had to solve: doing AES-256-GCM encryption entirely in the browser, before a single byte of data leaves the user's machine. What "zero-knowledge" actually means here Zero-knowledge architecture means the server genuinely cannot read your files. Not "we promise not to look" — the server can't look, because it never has the decryption key. The key is derived from a password on the client side, and it lives only in the URL fragment ( # ) — the part of the URL the browser never sends to the server. When someone visits a FileShot link, their browser downloads the encry
Continue reading on Dev.to JavaScript
Opens in a new tab

