Live data from Hacker News

ZeroBin, opensource Pastebin where the server has zero knowledge of pasted data

sebsauvage.net

11–20 of 75 posts

Re: ZeroBin, opensource Pastebin where the server has zero knowledge of pasted data

#11
It's not really true that (due to the data being encrypted client side) your data is safe even if someone were to gain control of the server. It's something often claimed by these "Host Proof" style services.

As long as you are downloading the client side code from the server, someone just needs to make a small change to the javascript and they get access to your data.

Only if you can trust the code, and then make certain that the code does not change, is your data truly safe from the host.

Cortesi (http://corte.si) has done some interesting writing on the subject. http://corte.si/posts/security/hostproof.html

He implemented a similar service (http://cryp.sr + http://corte.si/posts/security/crypsr.html ), and also worked on creating a browser addon that would verify a webpage against a known hash (https://github.com/cortesi/apphash).

Here are a couple of HN submissions on cryp.sr which have some discussions on the "Host Proof" concept:

https://news.ycombinator.com/item?id=1438552

https://news.ycombinator.com/item?id=1226277

Re: ZeroBin, opensource Pastebin where the server has zero knowledge of pasted data

#12

I'm not sure that is true. If the link automatically decrypts the paste then you could use server logs to get the plaintext of the document.

Someone didn't read the project page ...

See the section "When opening a ZeroBin URL: "

Re: ZeroBin, opensource Pastebin where the server has zero knowledge of pasted data

#13
post #11

It's not really true that (due to the data being encrypted client side) your data is safe even if someone were to gain control of the server. It's something often claimed by these "Host Proof" style services. As long as you are downloading the client side code from the server, someone just needs to make a small change to the javascript and they get access to your data. Only if you can trust the code, and then make ce…

[deleted]

Re: ZeroBin, opensource Pastebin where the server has zero knowledge of pasted data

#14
post #11

It's not really true that (due to the data being encrypted client side) your data is safe even if someone were to gain control of the server. It's something often claimed by these "Host Proof" style services. As long as you are downloading the client side code from the server, someone just needs to make a small change to the javascript and they get access to your data. Only if you can trust the code, and then make ce…

They actually mention this in the "drawbacks" section of the project page:

>Won't protect against Man-in-the-middle attacks (eg. javascript substitution)

I think it is pretty much the case that anything that works as man-in-the-middle will also work if an endpoint is compromised.

Re: ZeroBin, opensource Pastebin where the server has zero knowledge of pasted data

#15
i made a chatroom implementation on exactly the same principal a few years ago using long polling. the password to the chatroom served as the client-side encryption/decryption key, the encryption algo was AES and a random IV per word.

here is the algo i was using for the client-side enc/dec.

http://www.myersdaily.org/joseph/javascript/alphac.html

Re: ZeroBin, opensource Pastebin where the server has zero knowledge of pasted data

#16
This is interesting!

It really is true that if you have an idea there is already someone also working on it. I have been putting together something very similar and I'm just days away from launching it. I just set up the server last night. I will have to get it up ASAP now. Fortunately its a little different to this but built on a very similar concept.

Re: ZeroBin, opensource Pastebin where the server has zero knowledge of pasted data

#18
The genius of this is the realization that browsers do not send the named anchor (technically "fragment identifier"[1]) to the server. Using the named anchor as the cryptographic key enables users to pass around simple URLs to encrypted data. Data is stored on the server, but the server never has access to the complete URL with the key, so it cannot decrypt it.

As others have pointed out, this doesn't protect the data from a compromised server, but I think it has a different motivation.

It appears the purpose of this is to reduce the liability of whoever is running the server. Perfect for magnet links and such.

This is another step in the right direction of protecting the web and its maintainers from legislation.

[1] http://www.w3.org/TR/html401/intro/intro.html#fragment-uri

Re: ZeroBin, opensource Pastebin where the server has zero knowledge of pasted data

#19
post #11

It's not really true that (due to the data being encrypted client side) your data is safe even if someone were to gain control of the server. It's something often claimed by these "Host Proof" style services. As long as you are downloading the client side code from the server, someone just needs to make a small change to the javascript and they get access to your data. Only if you can trust the code, and then make ce…

Would browser-hosted JS solve the problem?

Re: ZeroBin, opensource Pastebin where the server has zero knowledge of pasted data

#20
post #11

It's not really true that (due to the data being encrypted client side) your data is safe even if someone were to gain control of the server. It's something often claimed by these "Host Proof" style services. As long as you are downloading the client side code from the server, someone just needs to make a small change to the javascript and they get access to your data. Only if you can trust the code, and then make ce…

They actually mention this in the "drawbacks" section of the project page: >Won't protect against Man-in-the-middle attacks (eg. javascript substitution) I think it is pretty much the case that anything that works as man-in-the-middle will also work if an endpoint is compromised.

If you did not trust the supplied server, you can host the javascript (including the support libraries) on a server you control (and, theoretically, can trust) by making your own web site. I would expect it to be pretty simple to store the data on your server or on a third party server, e.g. S3.
Post reply on HN