August 20, 2012

Zero-Knowledge 101: What It Is & What It Means to You

by with 9 comments

Welcome to SpiderOak University. If you’re a student, new user, or a lover of continuous learning, this month we’re talking to you.

We’ll be posting a couple video shorts each week where SpiderOak CEO Ethan Oberman uses a whiteboard to explain some of our basic product functionalities. School yourself and keep an eye out for our next POP QUIZon Friday so you can receive extra GBs.

Who can you trust? This is an important question in today’s race to the cloud. We’ve worked hard over the past six years to build a trustworthy product that upholds user privacy above all else. SpiderOak CEO Ethan Oberman explains how SpiderOak developed its ‘Zero-Knowledge’ privacy policy, what it is, and how it works.

Do you have a .edu email address? Don’t forget – you can enjoy 50% off your private backup/sync/share account:

Sign up today.

  1. Can you tell me what algorithms is used to encrypt the files? Also, how do the files get uploaded/downloaded? FTP, Http/s, ect.

  2. If this was truly zero-knowledge, then I wouldn't be able to see the file names, file size, etc. on the SpiderOak website, much less be able to download them, now would I?

  3. Indeed, the only possible way that this would work while still having everything encrypted on SpiderOak's side would be to do some server-side decryption using the passphrase provided in the login form.

    Notice that I just said "server-side decryption", which pretty much means it's not zero-knowledge anymore. Nothing prevents SpiderOak from logging this data. And if you say that they won't because they're good people, look at what happened to Hushmail for doing the exact same thing (server-side decryption)!

  4. This can be found at

    Important Note: When accessing your data via the SpiderOak website or a mobile device, you must enter your password which will then exist in the SpiderOak server memory for the duration of your browsing session. For this amount of time your password is stored in encrypted memory and never written to an unencrypted disk. The moment your browsing session ends your password is destroyed and no further trace is left.

    The instance above represents the only situation where your data could potentially be readable to someone with access to the SpiderOak servers. That said, no one except a select number of SpiderOak employees will ever have access to the SpiderOak servers. To fully retain our 'zero-knowledge' privacy, we recommend you always access your data via the SpiderOak desktop application which downloads your data before decrypting it locally.

  5. I think you should update your progress on open-sourcing Spideroak.

    I noticed on one blog post someone mentioned about the same thing, but you referred this person to your other project, which is open-source. Was this a subtle hint saying something along the lines "we're not gonna open-source this for reason X, but you should take a look to our other software which is open-source"?

  6. Also I'm interested of the web access in a bit more technical terms, or in-depth. In the above video, I get the picture that all the encryption is done on my computer, and basically it's just gibberish data that gets uploaded on Spideroak's server. The keys to open and decrypt files are on my computer only, so no one ever knows them nor is it stored anywhere.

    But still, with web access, you see everything from from file names to sizes and can download them all the same, all unencrypted, with just the plain password you provided on the webpage. Password that was created specifically on my computer in the software – for the reason that it doesn't leave from there anywhere.

  7. @ John: Thank you for your comments above. The link below posted by 'For what it's worth' does answer your question as it is stated on our website. Please of course let us know if you have further questions.

    As it relates to the reasoning, when we were building SpiderOak we did think it would be important to provide some way to remotely access your data – whether an emergency situation or a user who doesn't care as passionately about maintaining 'zero-knowledge'. Therefore, we did provide the ability for a user to enter his/her username and password through the web and provide the data back to them in a plaintext format. Of course we do not recommend this method of accessing your data if maintaining 'zero-knowledge' is of utmost importance and take all the steps possible to ensure your data is secure when a user does access their data through the web-access tool.

    In every case, SpiderOak's first thought is always towards maintaining privacy. However, there are cases where the use-case is justified and we did not want to fully remove the functionality – especially if the user is in a position where they need access to their data. That said, understanding the consequences (mentioned above) is important.

    Thank you again for sharing your thoughts and feedback.

  8. @ To buy or not to buy: Thank you also for your thoughts above and questions.

    I hope your second question/post is more thoroughly answered in my response above. If this is not that case, please let me know and I would be happy to send additional information anytime.

    Regarding your first question/past, we continue to debate internally about whether to open source the SpiderOak client in full. We continue contributing to the open source community (both as a company and individually) and believe firmly in the act of doing so. You are further correct that we should have sent out an update on our thinking surrounding this question and my apologies for not doing so sooner. At this moment we have not yet made the decision about open sourcing the SpiderOak client but I do think we are moving closer. The question does require a lot of thought and tremendous forethought as it is an action that is by definition complete and final.

    We will continue to work with and support the open source community both as a company and as individuals and still believe in driving toward a place where we will open source the SpiderOak client.

    Thank you again for posting your questions.