6 ms·
Verifying that the right binary was uploaded is solving the wrong problem. Who cares what the source code claims to do? We care about what it actually does. Re
by Strilanc 14y ago
Verifying that the right binary was uploaded is solving the wrong problem. Who cares what the source code claims to do? We care about what it actually does.
Real cryptographic voting systems use verifiable protocols. You don't trust the machine, you force it to follow a protocol that involves proving its actions are correct at every step.
You can verify basically everything except destruction of information (i.e. there's no way to prove with cryptography that a video camera didn't record the voter).
Video with an example of a verifiable voting protocol: http://www.youtube.com/watch?v=ZDnShu5V99s http://www.youtube.com/watch?v=ZDnShu5V99s
- kaoD 14y agoYeah, it was just a tour over the most common flawed arguments in favor of e-vote. I just got tired and stopped somewhere (you can see I got a bit into secure protocols instead of secure programs). Last time I checked the protocols had several drawbacks (including the "destruction" problem, vulnerable to collusion, etc.) Maybe I missed good protocols? Could you please point me to good papers? (a video is too slow and hard to skim over). Thanks! I'll check the video ASAP and report back if I have questions!
- Strilanc 14y agoI don't know enough to point you at good protocols. The video covers basically all I know, and it's five years old. I mainly commented to remind people that computer voting systems don't have to be glorified counters. You can actually use their strengths (crypto), instead of only inheriting their weaknesses (malleability).
- rejschaap 14y agoYou are right that it is not about the software. I think you are wrong thinking that it is about the protocol. It probably should be about the data. The data should be openly available to everyone. But there are some requirements to the data that make this tricky (understatement). With the data in your hand it should be possible to independently verify the results. It should be possible to individually verify that your vote is somehow in there. But it should NOT be possible to link votes to individuals, it should be completely anonymous. This is not a problem that is likely to be solved by software engineers. If there is a solution, it is in crypto and math more than software. I do think this is an important problem to solve. It would enable the ultimate democratization. Instead of voting for representatives it would become feasible to directly vote on issues by referendum. If tech is about anything, it's about democratization and cutting out the middle man.
- alexanderRohde 14y agoActually this is a trivial problem to solve (as an engineer who knows a tad bit of cryptography).