store my files online, but without Dropbox being able to read them. I want to selectively share my photos, but without Facebook seeing them. I want to store my files online, but not in a company that could go bankrupt.
file system • /username/yourfiles • Tree of symmetric keys (TweetNaCl) with cryptographic links between (Cryptree) • Location + Key = cryptographic access token or capability (CAP) • Explicitly don't use convergent encryption!
• Users have a public boxing key • To send a follow request: create a directory /myname/sharing/friendname • Send a read CAP to this directory encrypted to friend's public key • Shared files are currently vulnerable to a quantum computer • Will move to post-quantum sharing as soon as a clear candidate arrives
write) CAP encoded in a URL: demo.peergos.net/#Public_writing_Key/Subspace_label/Decryption_Key Material after # is not sent to the server → file still isn't exposed to the network Can share an individual file or a folder.
cracked? • Brute force is practically impossible with a good password • Random 14 character alpha-numeric password has ~ 2^84 ~ 10^25 possibilities • A GPU can calculate ~ 1M scrypt hashes/s (measured by litecoin users) • One GPU cracking a single user’s login would take 10^19 seconds or ~ 300 billion years • 300 million GPUs would take 1000 years • GPU purchase cost = 300 billion USD
user): • Doesn't trust our public server • Doesn't trust the SSL chain Run Peergos on own machine AIR GAP Faraday Cage Binary, compiled with 3 different compilers, from signed source
builds, both server and front end • Do not use npm! Only 8 JS dependencies, all vendored • Have our own deterministic replacement for webpack, and minifiers • Self host all assets • Most of the client code is written in a type-safe language (Java) and cross-compiled to JS
• Web-interface – done • Use actual IPNS – to do • Tor integration – to do • Fuse client – done • Security audit – to do • Granting write access – not in UI yet • Private keystore of friends (TOFU) – done
up to hear when our alpha is ready (soon): https://peergos.org • Read our book: https://peergos.github.io/book • Try our demo at https://demo.peergos.net • Contribute https://github.com/peergos/peergos • Currently we are a team of 4 contributors