keybase / kbfs

Keybase Filesystem (KBFS)
https://keybase.io/docs/kbfs
BSD 3-Clause "New" or "Revised" License
1.21k stars 137 forks source link

Please reconsider storage method #943

Open imp1sh opened 7 years ago

imp1sh commented 7 years ago

Hi,

why was kbfs designed to rely on storage that you host yourself? To me as a user it is nontransparent how it works. I was only able to find out that it's being stored on some server. Whose server is it? Why was it designed like that?

Since the data is encrypted I think it's somewhat ok that the data is leaving my domain, BUT I think there are much better ways.

First of all I'm bound to 10 GiB of storage. Well you might upgrade that some day, but then it may be 100GiB. Still not satisfactory for me and probably for other users, too.

Secondly I would like to encourage you software designers to think about another approach like freenet or like btsync or ipfs. I know there's pro and con for every method but the method you are using I think should really be reconsidered.

joshua-mcintosh commented 7 years ago

Looks like folks from ipfs filed an issue on this around a year ago, keybase/client#1893, from initial brainstorming documented at ipfs/notes#48.

jzila commented 7 years ago

Thanks for the feedback! Regarding our backend storage approach, we've gone with an internal one for now so that we can provide certain guarantees about the user experience. We've also invested heavily in the infrastructure as it is now, and it'd be a tremendous amount of work for our still small team to switch backends like you suggest.

As you mentioned, the encryption we've implemented makes our storage of the data risk-free from your perspective. Keybase can't even figure out the structure of your file tree, let alone the data itself.

All that being said, we are always having internal discussions about these architectural decisions, and we welcome your feedback. I'm sure as we grow our ability to consider options like these will also expand.

Finally, please note that recently we've rolled out caching of encrypted data on your local disk and journaling of writes (allowing you to write data more quickly than your network connection would support). Eventually we hope to be able to support an offline mode with these features, but we don't have an ETA on that yet.

jfbourdeau commented 6 years ago

A friend just sent me that link and I was presently testing that to realized the " cached" files on my Windows or Linux PC were only accessible if Keybase " processses " are able to access to the internet ( talk to your servers to constantly authenticate me)... I still " love " your product but it's not a complete alternative to Dropbox for my " confidential " files

jzila commented 6 years ago

@jfbourdeau We have offline mode on our roadmap (no dates yet though). Once we implement that you'll be able to access cached/synced data offline.

jfbourdeau commented 6 years ago

TKs @jzila ... your product " rock " :-) JFB ( 50 years old) former IT consultant with Apple, and security consultant with WIndows product/Networks and now Linux Addict. If I can help/test anyting for you guys, let me know ( Windows, IOS or Linux Mint)

jfbourdeau commented 6 years ago

You probably already know how you'll do it but in my little head, it's may be as simple as : your Processes just need to monitore live which gpg key is active on our device(Pc/Mac/Linux/IOS etc) Mean that there is a gpg key used/active then letting the actual " logged " user access cached files... If we logout or change user, then the new active key on our pc will allow the new user to access the last version of chached files on the machine"... If no key is active (no one logged in keybase) then the cached files are not visible / hidden ( as you seem to be doing I don't know how LOL ) BUT this is probably a lot more complex than that ( sync errors, double, etc... as Dropbox and the other probably had to deal along the developing process of their product)

andho commented 6 years ago

Wow I just realised, I've been using kbfs to sync my taskwarrior tasks and if I'm not online I won't be able to access my task list. Looking forward to persistent cache (across sessions/restarts) and offline feature.