3 ms·
Javascript is downloaded by the client and can be verified by the client. I know the server can serve malicious Javascript, but then a client extension can chec
by lazaroclapp 12y ago
Javascript is downloaded by the client and can be verified by the client. I know the server can serve malicious Javascript, but then a client extension can check it. If the server doesn't know which clients are performing verification and which aren't, then it risks being found out.
And yes, that article mentions that it's safer to perform the entire protocol in an extension. But the point of the "verifier extension" is that then you don't need every user to use a modified browser[1], just a threshold number of users. It would be even better if browsers provided decent crypto primitives and more compartmentalized runtimes, of course.
The point of client side processing here can be seen, if you want as "open sourcing the code that will actually handle my vote" vs "open sourcing some code and promising that it is the code that will handle my vote". Even with the limitations of Javascript security, the former is better than the later, and the later is better than closed source in the server, which is the present situation. Arguably a dedicated (phone?) app would be better and dedicated hardware even better[2]. But then you have to deal with rolling that out to tens or hundreds of millions of people.
[1] Chrome extensions are usually also partially compartmentalized Javascript.
[2] http://googleprojectzero.blogspot.com/2015/03/exploiting-dram-rowhammer-bug-to-gain.html http://googleprojectzero.blogspot.com/2015/03/exploiting-dra...