Wisconsin Requires Open Source, Verifiable Voting
AdamBLang writes "Previously covered on Slashdot, Wisconsin Governor Jim Doyle today signed legislation that "will require the software of touch-screen voting machines used in elections to be open-source. Municipalities that use electronic voting machines are responsible for providing to the public, on request, the code used." Madison's Capital Times reports "the bill requires that if a municipality uses an electronic voting system that consists of a voting machine, the machine must generate a complete paper ballot showing all votes cast by each elector that is visually verifiable by the elector before he or she leaves the machine.""
This is exactly what people have been saying all along. It is not a good idea to trust the numbers that the machine keeps track of electronically somewhere. Some sort of paper trail is definitely a good idea. Even a simple line printer that sits in the back of the room somewhere, printing a short summary of every cast ballot would work because it provides a paper trail that can be verified by a human.
Question is, why aren't other states doing this?
What I've always thought would be a good idea would be a computer to help generate the ballot, and then a separate computer to count those ballots.
This offers the advantages of multi-language ballots with brail, audio prompts, etc. And the resulting ballot is standardized so it can be read by both machine and human - and no "hanging chads".
The ballots can then be easily counted by another machine - and human validated as necessary.
The ballot-generating computer never needs to "count" - but it could do so as a spot check against the counting computer.
It hardly matters if it is open source. Who will compile it before it is uploaded to the machine ? Who will check that the correct software is loaded ? Who will check the guy doing the checking ?
Automated vote counting of any kind - electronic or mechanical - makes fraud considerably easier, puts a mystery shroud around the counting process and as such is incompatible with democracy. In the UK we count all the votes in our elections within 12 hours including the odd recount. Why are Americans obsessed with diluting their democracy by using machines to do it ?
the competing non-fraudulent technology will have to be electronic.
it's how the human brain works. electronic is seen as the next step.
so the good guys have to be electronic too.
if people try a completely different route, that entire class of technology is going to be ignored.
it's idiotic but true.
Like EVM2K3? :)
"""How do you recount? Election results must be reproduceable by a human afterwards, especially if a virus or spyware got into the election results (either on purpose, or with malicious intent). Open Voting has this part figured out by producing a paper ballot that can be validated without the use of a computer, or you can use a computer to check it faster."""
v ote-hacking-2004.html
a me=FAQ&myfaq=yes&id_cat=11&categories=Security%2C+ Resiliency%2C+Integrity%2C+Reliability
...all in all it seems like a pretty good system and like I said they've done a lot of thinking about it.
http://www.robertames.com/blog.cgi/entries/links/
Links have broken with time, but here's an updated link to Open Voting...
http://www.openvotingconsortium.org/modules.php?n
Their systems are reallly neat and they've had a lot of smart people looking at the problem. I've not been involved in it, but have read some of their documentations, and promised myself that I'd speak up and give them google-juice anytime voting came up. Some highlights:
- Commodity hardware / software
- Open source code
- Paper "receipts" that can be verified by:
* Sight
* Barcode
* Audio / Visual
* Separate "reader / recounter"
- Accurate computer counts (ie: select count(*) from votes group by person)
- Paper trail for recounts (re-count manually or computer assisted the receipts), with useful information hidden in the water-marked receipts (kindof like scantron stuff, where both computers and humans can read it).
--Robert
I would expect this is only a ploy to make it seem like he cares about the voting irregularities which occurred in WI during the 2004 Presidental election, causing several leading Milwaukee Democrats to be investigated.
Reading the requirements, not only does no one currently offer such a machine, but most machines in the state wouldn't live up to it today.
That's great that their system will be open source, but that isn't quite enough. There are a few things that I think would make the systems more trustworthy in addition to the open source requirement:
Your system really isn't any different than the one in the US. In the US, you must first register to vote. This only needs to be done once, after which the voting place will expect you. As soon as you check in, your name is crossed out and you're given a ballot. That ballor has no identifying information, thus securing your right to a secret ballot. If a recount goes into effect, two things can happen:
1) The ballots themselves are recounted
2) The voters who showed up are verified to ensure that no one voted who shouldn't have. (e.g. Dead people.)
The system is tedious, but it works. The problem that has arisen, however, is that districts want to streamline voting by using electronic ballots. Since it can be difficult to *prove* that a counted vote wasn't changed after the fact, we have various stories like this one pointing out the many problems with E-Voting.
Javascript + Nintendo DSi = DSiCade
Is there a non-profit out there that has produced an open-source voting machine? Either software that converts a regular PC into a voting machine, or maybe even take it a step further and is willing to build the hardware and sell it at cost to governments.
We don't, other than by inspecting the source. Once we cast our vote using a paper ballot, how do we know it was actually counted? We don't, other than by having observers present. Source inspection is the digital analogue of human election observers.
IMHO, having computers count is more accurate than having people count. Remember, as Stalin may or may not have said, "those who cast the votes decide nothing; those who count the votes decide everything." Florida 2000 and Ohio 2004 showed us that. Computers have no motivation to lie, and I can inspect a computer's source code. I can't inspect the mind of the person counting my paper ballot. To me, computers have more accountability.
This post expresses my opinion, not that of my employer. And yes, IAAL.
Based on suggestions I've read in the comments, how about this:
Voter enters polling place, name scratched off list as usual. Voter enters booth. For each office up for election, voter types* a name or names+ into the voting machine. A blank vote or "Nobody" would indicate no vote for that office. Referendums etc. could be indicated with some predefined response (preferably more than a simple "yes" or "no" in order to avoid Windows-dialog-box-style confusion). When finished, the voting machine prints out the completed ballot. The format is importantly both human readable and machine readable via OCR. Surely if the machine knows the font beforehand, OCR can be fairly quick and highly accurate...? A ballot would essentialy be a list like:
A ballot may contain special marks to help a machine reader align the text, but the actual vote info must be human readable (i.e. not a barcode). The voter reviews the ballot and either destroys it and creates a new one, or submits it to the ballot box. Ballots are then machine tallied after all ballots are collected (it is important to not tally instaneously for the sake of voter anonymity). Hand recounts may be conducted as necesarry.
The good parts about this are 1) machine countable, 2) human countable, 3) transparent (voter puts physical paper ballot into box rather than bits into a database), 4) tamper resistant (difficult to invalidate votes by marking or tampering with the ballot after the fact) 5) anonymous.
One problem is: how to type a candidate's name. Keyboard? What about those with disabilities? I'm not really familiar with alternate text entry systems, but surely some exist.
* The biggest problem is, of course, determining who is meant by "John P. Doe", since there may be many John P. Does in America. I don't really like the idea of requiring people to "get on the ballot" because anyone who doesn't know who to vote for will almost certainly pick a candidate who is on the ballot. But I don't really have a solution for an all-write-in system. Please address this as a separate issue. In lieu of requiring a typed name, the system could easily offer a selection of candidates as is common now. (How do write-in votes work now? I assume they are silently ignored unless it's clear that a majority of votes are not for someone on the ballot which almost surely never happens).
+ Some offices may allow multiple candidates. Some voting systems may allow multiple votes, possibly ranked, for a single final winner. This voting method lends itself well to these alternative (surperior IMO) methods.
Discuss.
Yeah, but even if it was open source, you'd never really be to trust it unless you compiled it yourself. For example, Ken Thompson was able to bug the compiler so that it installed a backdoor whenever the login(1) program was compiled. For details you should see his paper Reflections on Trusting Trust.
Sorry folks. As someone who knows Wisconsin state IT (and posting anonymously). The voter registration server and apps (SVRS) are CITRIX based. And the papers are already publishing complaints about that application. It is failing to poor project management by state workers with a history of poor project management. The state CIO is a linux advocate (Matt M.), but even he had to bow to pressure for a high profile project and go with HP UX. And our efforts to get rid of MS Exchange had been fairly difficult, and may yet hit the papers. (Even the governor's office hasn't attempted the email conversion despite Larry Ellison's visit...Oracle is trying to help replace MS). The governor can sign anything he wants in to law, but how will it be implemented? And how will the municipalities feel about further requirements to get voters registered and voting, when SVRS works so poorly? It sounds like the average Wisconsin citizen is not going to be very happy with what the state government dictates. From my point of view, too many state IT management folk are jumping on the open source bandwagon because of the CIO, rather than practising good IT. Sounds like the governor signed into law a feel good law without thinking about the consequences. Do I have the answers? Nope, just know this will be a great idea, poorly implemented.