I am tired of the state of file sharing that is now.
WeTransfer: has a 2GB size limit (unless you pay).
Google Drive: makes you log in, and it traces your identity.
Discord: Large files are blocked.
I wanted a means of transferring giant files to my friends forever without having to pay for a server or spying on what they are doing.
So, I created SimpleShare. This application runs within your browser.
How it works (The Magic)
This is not a regular file-hosting service. It is a distributed encryption engine.
Smart Compression: Your browser reduces the file size you choose before it leaves your computer, thanks to CompressionStream.
Military Grade Encryption: Your file is converted into “digital noise” via AES-256-GCM encryption. This occurs on your device.
Atomic Slicing: If your file is really large (say 10GB), we slice it into 200MB "atoms."
The Ledger: We upload the encrypted atoms to Catbox (permanent file host) via a public CORS proxy.
The Key: The website provides a 12-character code (or a Magic Link). The code has the map to locate your atoms, as well as the password that is used to unlock them.
Because the encryption happens on your device, I cannot see your files. The server cannot see your files. Only someone with the link can see them.
async function deriveKeyFromPassword(password) {
const enc = new TextEncoder();
const keyMaterial = await window.crypto.subtle.importKey("raw", enc.encode(password), { name: "PBKDF2" }, false, ["deriveKey"]);
return window.crypto.subtle.deriveKey({ name: "PBKDF2", salt: enc.encode("NeuralShareSalt"), iterations: 100000, hash: "SHA-256" }, keyMaterial, { name: "AES-GCM", length: 256 }, true, ["encrypt", "decrypt"]);
}
Top comments (0)