tl;dr: Separate the "voting machine" and "casting" machine, and use paper audit.
After a person selects their choice on a voting selection machine (or smartphone etc...)
They go to the "casting machine", this casting machine uses NFC to read your ballot setting and prints out the ballot on a roll at a "staging" view. If you accept, it will pass though and be casted. If you have a change of mind, it will punch a series of holes to void the message before sending the ballot entry into the roll.
Printing it on a continuous roll allows for very fast auditing via optical scanner.
To deal with voter privacy, you could have multiple printers on a casting machine, and randomly select one of the printers to print to.
-----
Other possibility, is to provide a continuously calculated hash function (like sha5), printed on a separate audit roll (or maybe on the actual voting roll as well). Which ensures that nothing funny has been calculated after the fact. And you can even read it back to the casting device (like a phone), so people can check their ballot has been casted properly after the fact remotely.
--------
Each roll has a chip that store the claimed tally into a one time programmable chip. You run the roll though a optical reader, and it checks that it tallys up correctly to the the chip's tally.
-------
3 printing tech to consider
1. Thermal - Reliable printhead, but paper can fade
2. Inkjet - long lasting print, cheap printhead, not as reliable as other methods
3. Toner - Reliable, long lasting print but expensive printer
4. Dot matrix - Very rugged, can mechanically fail tho. Ink last for a while. Low rez
5. Punched holes - Can have mechanical issues, but prints will last the life of the paper.-- mofosyne, Aug 07 2015 thermal paper fade if stored improperly http://pointofsale....-Thermal-Paper.html [mofosyne, Aug 09 2015] Blockchain https://en.wikipedi...ockchain_(database)A way to temporal link each voting rolls together [mofosyne, Jan 21 2017] [+] the return of papertape.
You could do it right on the paper, in transit from send to takeup roll: fill in the box for your candidate and hit the "cast" button; if you screw up, fill in the "void" box and it will forward to the next line for you to start again. For voting systems that allow negative votes, different coloured markers.-- FlyingToaster, Aug 07 2015 I really like the ability to check my cast was not tampered with.-- wjt, Aug 07 2015 FlyingToaster, Aug 07 2015
Well the issue with that, is you don't want a ballot writing and casting on the same box. This is since you increase the attack surface from one casting box, to all the ballot machine. Plus less privacy if you can trace to a ballot box (unless you get all printers to print at the same time, but that requires communication between printers... which is another potential attack vector).
Can't just have a single ballot writing/casting box too... that would be awfully slow.
Thus my suggested design decision to have it as a "Tap/Scan your NFC/QR tag, or tap your smartphone" to load in your settings to a "Preview Only" screen, before printing to a paper staging area, before being committed.-- mofosyne, Aug 07 2015 I hope this idea makes its way to a proper category. Soon.-- blissmiss, Aug 07 2015 Give each voter a verifiable salted hash of his vote/votes. All hashes count toward the winner. That's all that's required.-- Voice, Aug 08 2015 Windows 10 will do your voting for you, based on your click history.-- FlyingToaster, Aug 08 2015 This is quite simply one of the most brilliant ideas to ever be posted on this site.
In the age of electronic voting, there is no security against fraud without hard paper copies of one's vote that can be accessed and checked. This makes paper ballots and order of magnitude more difficult to fake.
We had an election here where the guy running for congress was slightly behind so he kept demanding "recounts" till he won. Each recount "found" another box of ballots that were all for him, all coming from districts that supported him. They basically told the polling places "We need x amount more ballots, print them up and send them in." Where the original vote had him slightly behind, these "recounts" supplied thousands of votes that were exclusively for him. To check each ballot sent in would be very time consuming. To spot check a roll of 10,000 ballots would be comparatively easy.
This needs to be passed up the chain from "Hmm, interesting idea" to consideration for actual implementation. Brilliant. Absolutely brilliant. If this were my idea I'd patent it and at least give it a good go. What a fun and interesting challenge this would be to implement. Something that could do some real good for society as well.-- doctorremulac3, Aug 08 2015 Well in the interest of actually getting this implemented.
I hereby declare this idea, as free for all.
Oh. And also, to whoever is lobbying for voting machines... seriously please open your damn sourcecode. And politicians that let this obviously massive security hole though... what the hell were you guys thinking?-- mofosyne, Aug 08 2015 This is the kind of simple solution to a complicated problem that I really get a kick out of. Very clever.
And there really is a need for something like this. About the only thing that the two parties in my country agree on is that voter fraud is rampant. They just disagree about who's doing it.-- doctorremulac3, Aug 08 2015 Plus if online voting is about improving accessibility/incentive to vote...
Why not just make the voting day a national holiday, and perhaps give everyone cash (or make it compulsory like Australia) just to vote? Seems to work for Australia (we get 90% turnout). The usual objection I hear, is that voters are idiots and shouldn't vote if they don't want to. But it neglects the issue of those who want to vote, who really shouldn't be voting as well (like religious extremist) lol.-- mofosyne, Aug 09 2015 Capital idea... I say we put it to a vote.-- 2 fries shy of a happy meal, Aug 09 2015 // Online voting should be given a try just so that on election night we'll have no exit polls, no minute by minute coverage and no tallying of the votes for hours when the polls close. //
Seems to me if electronic voting is implemented properly a real-time tally as votes are placed could be displayed.-- scad mientist, Aug 10 2015 scad mientist, Aug 09 2015
ballot casting box twittering on twitter?
ballotbox:"OH HAI, LOOKS LIKE BERNIE@495 AND TRUMP@324 "
ballotbox:"OH DON'T MINE ME! I LOVE RECOUNTING"
ballotbox:""OH SILLY ME, TRUMP@1243 WHILE BERNIE@1240"-- mofosyne, Aug 10 2015 scad mientist, Aug 09 2015
Well what about also displaying a real time hash as well? So to verify that the voting roll has not been tampered with, you calculate the voting hash at each stage of the election. (I think this would be related to block chain "which is essentially a chain of hashes").-- mofosyne, Jan 21 2017 random, halfbakery