Live data from Hacker News

Ask HN: How would you implement a verifiable open-source web application?

news.ycombinator.com

81–87 of 87 posts

Re: Ask HN: How would you implement a verifiable open-source web application?

#81

Ethereum is a distributed virtual machine, based on blockchain technology. It appears to be what you are looking for. https://ethereum.org/

I'm a big Ethereum/Eris fan, but another option specifically for attested hosting is Codius from Ripple Labs (codius.org). I'm not sure how far along their development is atm.

Re: Ask HN: How would you implement a verifiable open-source web application?

#82

> So basically I started wondering if it is possible to implement a way people could verify that the same code they see on the Github repo is the code that's also running on the live hosted site? If Github wanted to get into the hosting business, they could offer this... you'd be trusting what they say when they tell users that the code is identical in both. I can't think of any clever way to prove it otherwise. Thou…

I doesn't necessarily need to be GitHub itself, any hosting with a reputation could host your software and verify which git commit it is pointing to.

> and verify which git commit it is pointing to

You'd need to go a step even further. The "application" code is only one thing - what about other applications, processes, DB logic, HTTP front-ends?

All of those can modify requests, data, copy data, etc - even if you could "100% prove" that the server is running that particular git revision, there's so many side-channels as to make it useless.

Re: Ask HN: How would you implement a verifiable open-source web application?

#83
Trust comes back to a trust anchor.

If you could create e.g. a publicly available AMI of your application and prevent further runtime modifications to it (e.g. disallow SSH access), then maybe Amazon could offer an interface to verify that your application was running based on the trusted AMI.

Essentially Amazon would issue a statement connecting a certain IP address to a certain application.

Substitute AMI and Amazon for your choice of other technology as appropriate (docker container and docker hosting provider - this sounds like a competitive advantage for hosting providers hint hint)

Re: Ask HN: How would you implement a verifiable open-source web application?

#85

Earlier quoted context omitted.

The first statement is untrue: Stallman is also advocating measures to replace obfuscated JavaScript web apps with free versions: "Browser users also need a convenient facility to specify JavaScript code to use instead of the JavaScript in a certain page. (The specified code might be total replacement, or a modified version of the free JavaScript program in that page.) Greasemonkey comes close to being able to do thi…

OK, but unminimized JS still has no bearing on trusted computing. What about Intel TXT (maybe?) and the upcoming SGX? Although I've not seen details on how the key system works with SGX. But assuming each processor has a unique ID/public key signed by Intel, and assuming we trust Intel and assume it's not profitable/plausible for a darknet to undo Intel's hardware protection, SGX seems to be exactly what the OP is as…

[deleted]

Re: Ask HN: How would you implement a verifiable open-source web application?

#86

Earlier quoted context omitted.

The first statement is untrue: Stallman is also advocating measures to replace obfuscated JavaScript web apps with free versions: "Browser users also need a convenient facility to specify JavaScript code to use instead of the JavaScript in a certain page. (The specified code might be total replacement, or a modified version of the free JavaScript program in that page.) Greasemonkey comes close to being able to do thi…

OK, but unminimized JS still has no bearing on trusted computing. What about Intel TXT (maybe?) and the upcoming SGX? Although I've not seen details on how the key system works with SGX. But assuming each processor has a unique ID/public key signed by Intel, and assuming we trust Intel and assume it's not profitable/plausible for a darknet to undo Intel's hardware protection, SGX seems to be exactly what the OP is as…

Yes it does; the current state of the art of trusted computing is indeed "run open source on your own hardware", and unminifed JS does that. It's only, as of now, impractical, because the browser does not help with verification.

I was unaware of Intel SGX; sounds okay in principle, but I would consider the jury out until it's released and a the security community has weighed in.

Re: Ask HN: How would you implement a verifiable open-source web application?

#87
Maybe the best way to ensure you don't do anything sneaky with the data is not having the data in the first place (at least unencrypted). Do you know the Mylar project [1]? They are doing pretty interesting stuff with zero-trust (even compromised) servers.

[1] https://css.csail.mit.edu/mylar/

Post reply on HN