7 ms·
I cautiously applaud the progress. Back in Ron Rivest's 6.857 computer security class, we spent some time on electronic voting. If you're not careful to get t
by KMag 9y ago
I cautiously applaud the progress.
Back in Ron Rivest's 6.857 computer security class, we spent some time on electronic voting. If you're not careful to get the privacy right, you open up more opportunities for coercion.
With anonymous paper ballots, coercion can and does happen, but it basically requires physical control of the polling station / voting booth to pull off.
In this case, anonymized ballots are put on a blockchain. Hopefully the system is auditable, but provides no way for someone to prove which anonymized ballot serial number belongs to them. Otherwise, the thugs can come to your house and either beat you or pay you your bribe after forcing you to reveal how you voted.
- craftyguy 9y agoHow do you provide anonymized ballots while at the same time guaranteeing that fraudulant voting is not taking place? It seems that being able to verify that a ballot came from an actual person authorized to vote (and not some bot) is key, but I'm not sure how to satisfy both.
- mvid 9y agoPerhaps with asymmetric key encryption? So someone can validate that a vote was theirs, but you can't pin a vote to a person without them doing so. It would require that everyone understood key management, which is probably untenable
- GeneralMayhem 9y agoThat doesn't guard against the lead pipe decryption strategy. The point is that you need a way to prove that a vote was yours, without any possible way to prove which vote was yours, whether you want to or not. I'm not a cryptography expert, but that sounds difficult if not logically impossible.
- colordrops 9y agoHow is lead pipe coercion currently handled?
- Infernal 9y agoThere is no way to prove you voted one way or another with anonymous ballots, so there is no incentive to bribing or threatening violence to influence your vote. The desired outcome is to prove that each vote came from a valid voter, while being impossible to prove which vote came from whom.
- amitbr 9y agoThere is a cryptographic primitive that does just this allowing of plausible deniability whilst ensuring that only persons able to vote voted: Using Linked Ring Signatures.
- Mediterraneo10 9y ago> There is no way to prove you voted one way or another with anonymous ballots. The coercing party can insist that you take a mobile phone picture of your ballot. This kind of coercion is common in some regions of Russia where civil servants and teachers are told by their superiors that they must vote for the preferred party “or else”, and a mobile phone picture is demanded as proof.
- KMag 9y agoThe way around this is to give each person 1 ballot for each of N candidates. 1 ballot goes into an envelope and into the vote box. N-1 ballots go into envelopes and into the discard box. It's trivial to show a photo of your ballot for Dr. Evil, but it would take a video of you going into the voting booth, closely following your hands to prevent three-card-monty, and continuing to follow you into the public lobby containing the vote and discard boxes. If you strictly enforce no recording in the public lobby, then there's no way for you to prove to your boss which box got your ballot for Dr. Evil in the end. Edit: Perhaps I wasn't clear. Each of the N ballots is already filled out for a different candidate. The envelopes are all identical and sealed by you inside the voting booth. That way an existence proof of a ballot for the given candidate leaks absolutely no information. There are no empty paper ballots, and none of the paper ballots can leave the polling station. Ballots need to be counted both from the "vote" and from the "discard" boxes. Ballots missing from the discard box prove vote tampering.
- meeton 9y agoHow about this: when you get into the booth you're given an ID. You then cast your vote for Ms A and you can see on the block chain that it was recorded for A. After you cast, the system shows you a bunch of ids on the chain which voted for other candidates and you can memorise the id shown that voted for Mr B. When people come round, you tell them that other id. When they look it up they see that it voted for B and leave you alone. That doesn't solve the potential problem of vote stuffing... Still thinking about that one.
- snakeboy 9y agoHowever in this setup, anyone can bring a smartphone in and take a picture of the screen when it displays anything that separates your id from a fake one. Sounds like you might be on the right track if you can get over that hurdle somehow.
- kybernetikos 9y agoThe smartphone problem exists currently with paper ballots. You're not supposed to be allowed to bring a camera into the voting booth, but this is not enforced particularly well. One approach to this problem is to make it easy to cancel a previous ballot and submit a new one, so you can get your evidence that you voted the way e.g. your employer wanted you to, but then you can cancel it and vote with your conscience.
- rjmunro 9y agoAs far as I can remember from the instructions last time I voted, in Britain you can do this, just return the ballot to the person handing them out and say that you made a mistake, and they should issue you a replacement.
- feborges 9y agoIn the Brazilian voting machine this is often done. You type the numbers and it loads the candidate info in the screen. Once you click [Confirm] the screen gets blank with the message of success. Therefore the only way to take a picture is before the vote is actually processed. You have a [Reset] button to re-enter the numbers.
- darawk 9y agoPresumably you'd want a deniable system. So, something where you have a private key 'k', some function 'f', and the public chain 'p'. So, you compute: r = f(k, p) Suppose r may be 1 or 0. The meaning of 1/0 will be randomly distributed among the population, and will be made known to you when you place your vote, but at no other time. So, later on, you understand that a value of 1 means your vote counted for candidate A, but if someone tries to coerce you, you can realistically claim the opposite.
- geofft 9y agoHow do you know that the people tallying the vote have the same meaning for r? (That is, how do you prevent a butterfly-ballot-style situation where people think they're voting for Gore, accurately cast a ballot that appears to them to be a vote for Gore, and actually end up casting an objectively valid vote for Buchanan?)
- darawk 9y agoPresumably you could generate some proof that the vote was correctly cast at the moment you cast it, and that 1 corresponds to A and 0 corresponds to B. But that proof would not be accessible after you leave the polling booth (because it'd require some ephemeral value that you could retain or throw away).
- breatheoften 9y agoMaybe you could do a block tallying with verification scheme. 1. Enter your vote and receive an identifier 2. Group n identifiers into a batch ensuring not all votes in the batch are for the same candidate. Record the n identifiers into a block then randomly order the identifiers but don’t record the randomized sort order. Display the index of their identifier to each user but don’t record it. Record the actual vote in this (random) order to the block. Allow each voter to see all votes recorded in the block at each location (including the one only they know represents their vote). Allow the voter to manually tally the block to ensure the sum of symbols reflects their vote intent. Present to each voter cryptographic proof of the existence of the block and the net affect the block as a whole has on the vote tally for each candidate. Each voter leaves with: 1. cryptographic proof of having voted 2. Cryptographic verification of the effect their vote had on vote tally 3. Ability to claim having voted for any candidate represented in their voting block/inability to prove to others who they voted for while being sure of how their vote was counted themselves.
- deleted 9y ago[deleted]
- offbytwo 9y agoWould zero knowledge proofs work for this?
- jinpan 9y agoRivest invented the 3-ballot voting protocol (see https://en.wikipedia.org/wiki/ThreeBallot https://en.wikipedia.org/wiki/ThreeBallot) The trick to the 3-ballot voting protocol is that not everyone can validate their vote. However, when a group of voters band together, they should be able to validate that a subset of their votes (1/3) were registered with high probability. With a sufficiently large group of voters checking results, the law of large numbers comes into play and they can statistically detect the presence of voting fraud.
- googlryas 9y agoI like how the example ballot on that wikipedia page has Alex Jones running for president.
- fareesh 9y agoOne can dream
- littlestymaar 9y agoZero-knowledge \o/
- notahacker 9y agoIt's an interesting idea whose utility depends on whether you think turning casting a valid vote for the intended candidate into a logic puzzle is a good thing
- deleted 9y ago[deleted]
- ihm 9y agoOne simple way (basically using Zerocoin/ZCash) is the following. Every voter is issued one "vote coin" at registration time. There are special addresses for each candidate. Each voter sends their "vote coin" using a zero-knowledge/private transaction to the candidate of their choice. It's totally auditable, not possible to vote more than once, etc. The main issue is in making it potentially easy to sell your vote, which as the OP was getting at is at the heart of the tension.
- clintonb 9y agoVoters can sell their votes now. While unethical, it's not illegal and probably not worth combatting since, technically, that is the will of the voter.
- vincnetas 9y agoSo this basically reduces democracy to "moneycrasy". Whoever has/can promise most money, wins. And then when they in power guess from where (whom) they will get back all the money that they spent? It's like saying, well it's your kidney, it should not be illegal to sell it...
- thaumasiotes 9y ago> So this basically reduces democracy to "moneycrasy". "Plutocracy".
- brianberns 9y agoIn the U.S., I believe it's illegal to buy or sell votes. http://www.slate.com/articles/news_and_politics/net_election/2000/10/want_to_sell_your_vote_not_so_fast.html http://www.slate.com/articles/news_and_politics/net_election...
- KMag 9y agoBut if properly implemented (use metal detectors to keep cameras and phones out of the voting booths), it's difficult to prove how you voted using paper ballots / old fashioned mechanical voting machines. I don't see much problem in selling your vote if there's no way to verify that you're not ripping off the person buying the vote.
- KMag 9y agoPreventing non-registered voters is the easy problem. Some signature systems allow blind signatures: I can create a ballot and encrypt the ballot. The government can sign the ballot, and then knowing my secret encryption key, I can decrypt the ballot and transform the government signature so that it matches the decrypted ballot. The signed but decrypted ballots can then be published using mixnets, Tor, or some other anonymous publishing mechanism. As I remember, it's still an open problem to set things up (without requiring trusted hardware or trusting the government to destroy a private homomorphic encryption key) so that I can't later prove to Dr. Evil's jackbooted thugs that I voted for Dr. Evil. Though, maybe there's some mechanism where I actually generate ballots for all candidates and only submit one of the ballots and it's impossible for me to prove which one I actually submitted, and I could cheat by submitting more than one ballot but there's a zero-knowledge proof that my ballots were for all of the N candidates, so in an American-style first-past-the-post voting system, submitting all of my ballots has the same effect as submitting none of my ballots.
- em3rgent0rdr 9y agoAlso could use "homomorphic encryption" [1] which allows you to perform arithmetic on encrypted data without decrypting it. [1] https://en.wikipedia.org/wiki/Homomorphic_encryption https://en.wikipedia.org/wiki/Homomorphic_encryption
- em3rgent0rdr 9y agohttps://en.wikipedia.org/wiki/End-to-end_auditable_voting_systems https://en.wikipedia.org/wiki/End-to-end_auditable_voting_sy...
- tlrobinson 9y agoThere was a relevant discussion on the Bitcoin mailing list recently: https://lists.linuxfoundation.org/pipermail/bitcoin-dev/2018-March/015812.html https://lists.linuxfoundation.org/pipermail/bitcoin-dev/2018...
- deleted 9y ago[deleted]
- decebalus1 9y ago> With anonymous paper ballots, coercion can and does happen, but it basically requires physical control of the polling station / voting booth to pull off. > In this case, anonymized ballots are put on a blockchain. Hopefully the system is auditable, but provides no way for someone to prove which anonymized ballot serial number belongs to them. Otherwise, the thugs can come to your house and either beat you or pay you your bribe after forcing you to reveal how you voted. I don't agree. The amount of damage to the voting mechanism a malicious group can do when physically controlling a polling station (which in itself proves a huge amount of reach and political power) is way greater than thugs coming to someone's house to check the right person was on a 'virtual ballot'. I agree that with this approach you can do voter information data gathering 'at scale' but if you can't really do coercion 'at scale' if you can't afford either violence 'at scale' or similar enforcement via the public system (no benefits, pension cut, etc..) then it's all for nothing. But if you can do all in the first place then there's no sense in talking about the method of voting, neither will be less secure or less private than the other.
- thewhitetulip 9y agoThugs don't beat you up these days, they throw money at you. At least that happens in India these days.
- abhishekjha 9y agoI don't think we are reading the same headlines these days.
- yAnonymous 9y agoBoth systems have their disadvantages. Electronic voting, especially when it's not completely anonymous, opens up the voting process for all kinds of vote buying, coercion and intimidation. Take Turkey or Russia for example. Voters know exactly that the current radical governments can track their ballot numbers, so they'll think twice before voting against them.
- specialist 9y agoAgora's ballot privacy (secrecy) is apparently based on Neff shuffling. A verifiable secret shuffle and its application to e-voting [2001] https://dl.acm.org/citation.cfm?id=502000 https://dl.acm.org/citation.cfm?id=502000 All prior crypto-based voting systems I've studied rely on hash collisions, algorithmically simulating the secure one-way hash of physically dropping a ballot into a box, for an individual's ballot to get lost in the herd. But for this to work, ballots have to be simple and elections have to be large (enough). In the USA, ballots are complicated and precincts are small. Appropriate for elections administration based on the Australian Ballot, bad for crypto-based balloting system. -- I'm very surprised this is the first I've heard about Neff shuffling. But I know a lot about VoteHere. Even though they are a proven bad actor in this space, I'll suspend disbelief and see if something good came out of their efforts. The Agora people appear smart, earnest. So maybe there's something here. If Neff shuffling (or something similar) actually works for this application, it'd be remarkable. Least importantly, I'd have to update my world view. Specifically: no fully digital voting system can both protect the secret ballot and ensure a public vote count. (In practice, electronic voting systems do neither.) -- PS- Scanning the other comments, feel compelled to point out: Design the whole system. Understand election administration. Protecting the ballot is not enough. Information also leaks from poll books, voting history, etc., which then deanonymizes the secret ballot. For Sierra Leone, Agora might be a great idea. Maybe the benefit of extending the franchise (reduced costs, increasing access) outweighs the loss of individual privacy.
- monort 9y agoPhysical control of polling station is not required. Voters are getting the filled ballot outside the polling station from organizers, tossing it into the box and bringing the empty ballot back. https://en.wikipedia.org/wiki/Bulgarian_train https://en.wikipedia.org/wiki/Bulgarian_train