Stories
Slash Boxes
Comments

News for nerds, stuff that matters

Slashdot Log In

Log In

Create Account  |  Retrieve Password

Open Source Voting Software Success

Posted by ScuttleMonkey on Mon Jan 14, 2008 05:44 PM
from the finally-a-voting-story-to-feel-good-about dept.
elhaf writes "The Open Voting Consortium has announced that they successfully demonstrated the Open Voting Process in San Luis Obispo this weekend. OVC received a request from San Luis Obispo County on the previous Monday to provide software to run their January 12 straw poll. By Friday, they had the software prepared and Saturday's event goes down as a great success for Open Voting Consortium and the cause of transparent election administration. They used Ubuntu and their code is publicly available. Surprisingly, counting ballots is not rocket science."
+ -
story

Related Stories

[+] IT: Diebold Election Results Released By AZ Judge 134 comments
Windrip writes "A judge in the case covering the nature of the database used in Diebold Gems software during Pima County, Arizona elections has ruled the DB is not a computer program (pdf). The result is that the Arizona Democratic party will have the chance to review previous elections for transparency and accuracy. ''The Pima County Democratic Party sued the county this year for the electronic databases from past elections. The party requested the databases and passwords be released according to Arizona public-records law. Pima County denied that part of the request, while turning over other records the party asked for. In closing arguments of the four-day trial that began Dec. 4, Pima County argued the databases meet the definition of a computer program, which is protected by state law, said Deputy County Attorney Thomas Denker."
[+] Technology: Open Source Electronic Voting Progress Limited 113 comments
An anonymous reader points us to a story about how the problems with electronic voting mostly stem from one source: the lack of mandated standardization. The LinuxInsider article goes on to suggest that once the issue of a universal voting platform is solved, the way is paved for open-source software to address concerns over accuracy and transparency. Though the article states that "no open source program for voting machines yet exists," it should be noted that such software was successfully tested earlier this month. Quoting: "People debate the merits of e-voting for a variety of reasons, including suspicion of new technologies and a general distrust of politics, according to Jamie McKown, Wiggins professor of government and polity at the College of the Atlantic. 'Reports on e-voting security often de-contextualize the history of voter fraud in this country, as if boxes were somehow assumed to be better. You constantly hear calls for paper trails, and open and free inspection of voting machine source code. But it's a very thorny issue and one that has a lot of facets,' McKown told LinuxInsider."
This discussion has been archived. No new comments can be posted.
The Fine Print: The following comments are owned by whoever posted them. We are not responsible for them in any way.
 Full
 Abbreviated
 Hidden
More
Loading... please wait.
  • by jamieswith (682838) on Monday January 14 2008, @05:48PM (#22042490)
    Surprisingly, counting ballots is not rocket science

    Of course not, however there is a lot of science involved in the process of mis-counting ballots... especially in a way that avoids the possibility of getting caught.

    Those are valuable trade secrets worth protecting!
    • You've been modded funny, but I think an Insightful is in order. It really is a trade with large sums of money and corruption involved. Yes my aluminum foil brain wave scanning deflector sheild is firmly in place.
    • Yeah, rocket science, the Democratic Party did it! I guess they've finally caught up with the Libertarians and Greens that have been doing this stuff for years.

      Seth Woolley
      Pacific Green Party of Oregon Parliamentarian and past Elections Administrator
  • by Anonymous Coward

    Surprisingly, counting ballots is not rocket science.
    No, it's political science... and now computer science.
      • Computer Science isn't a science in the same way Mathematics isn't a science seeing as, you know, Computer Science is merely a subset of Mathematics...
  • Voting_thing.tar (Score:5, Informative)

    by gQuigs (913879) on Monday January 14 2008, @05:51PM (#22042552) Homepage
    "[1] In case any techies want to see some code, here is the program for the voting counting program, written by Asheesh: http://www.openvotingconsortium.org/ad/voting_thing.tar [openvotingconsortium.org]
    Here is Jan's code (if you want to run it and have some trouble, let me know and I will help you with it) http://user.it.uu.se/~jan/test/straw.tar [it.uu.se]"

    I love the name.
    • Now, prove that this is the code that actually was loaded onto and executed by the computer during the election. And that the BIOS didn't install a rootkit. [this would apply to any computer-based ssytem, not just an open-source one]
    • Re: (Score:3, Insightful)

      How do you verify the machine you are voting on is actually running this code?
      • Easy, get a hash of an executable know to be compiled correctly and compare it to the hash of the executable in the machine.
        Although as long as ballots are counted by machines, even if they are open source, without a manual count also being done under controlled circumstances (ie observers from all involved parties as well as neutral observers) I wouldn't trust the results.
        • How do you ensure that the computer is returning the correct hash from it's executable. For all you know, their version of SHA1SUM could just return the predetermined hash code every time. Oh, and don't plan on bringing your own version of SHA1SUM, because there's no way to ensure that your version was actually run.
          • That's where thinks like the Ubuntu live CD come in handy. if you have a CD with a proper checksum then you know what you have. You can check that code when compiling data that you know. If the code is in any noticable way broken, then you can expect that other people around the world are going to see corrupt checksums. (It's not perfect, but it\s a really effective way of testing against random data).

            You are then able to distribute CDs of a known base to everybody, and they can use their own Ubuntu liv

        • Re: (Score:3, Interesting)

          Easy, get a hash of an executable know to be compiled correctly and compare it to the hash of the executable in the machine.
          The trouble is knowing it's compiled correctly [boun.edu.tr].
          • True. Then I suppose you'll have to resort to writing the machine code by hand. It's a long and arduous task, but it can be done.
            Of course even if you manage to do that, then you'll have to have some way of confirming that the operating system hasn't been compromised. So we'll skip the operating system and just write directly to hardware (making the above task more difficult).
            Then of course there's no way of knowing that the hardware hasn't been compromised.

            So maybe just skip the whole thing and at most hav
            • Of course, there's no way to know that the whole collection of human beings hasn't been bought, so we'll have to replace them with dogs whose intelligences have been raised via genetic engineering. Luckily, dogs only accept food as legal tender, so we can be sure they're honest until they start pooping unexpectedly.
    • by jamieswith (682838) on Monday January 14 2008, @06:01PM (#22042718)
      RTFA The user made their selection and a paper ballot printed out (with both a bar code, and a printed candidate name) - this was then placed in the balot box. When it became time to count, it was done in public, the candidate name was read, and then the ballot bar-code scanned, making the candidate tally increase on screen.
      • by 0xABADC0DA (867955) on Monday January 14 2008, @06:18PM (#22043050)
        They say with an election with many measures that instead of reading it aloud it could be put up on the projector and with enough observers any error would be spotted. But really all you need is one observer with a video camera of the running tally and the vote itself, then they can review it in slow motion later on.

        I have described a system like this for a long time, only using OCR instead of bar codes. Bar codes are better though since the really important part is the running total that observers can match against the vote -- how the computer reads the printed vote is not important at all as long as the counts match what is human-readable. I'm glad they have created this system as it really shows how ridiculous the diebolds and others are.
        • video can be tampered with
        • Actually, your OCR idea is better - the machines should use the same "codes" that the humans do. There are fonts which are specifically designed to be human readable and still have a high degree of accuracy for typical OCR algorithms.
    • Re: (Score:1, Insightful)

      Anything electronic can be pwned.

      Any process can be subverted; paper-ballot elections were stolen through a large number of different means long before computers were invented.

      This isn't to say that paper ballots can't be abused. Even so, we have a long history of dealing with election fraud where paper ballots are involved. We know what it looks like and it tends to be obvious.

      Its pretty obvious when electronic ballots are used, too -- pretty much the same way that paper-ballot fraud is (pre-election poll

    • It does look fishy

      well the full recount will happen January 16th [huffingtonpost.com] So we'll get to the bottom of that. I personally think we won't find any grand conspiracy, but it will be good to just show people that sometimes things aren't exactly as they seem. Sometimes polls are off, and strange weird little things happen during elections that can only be attributed to random chance, rather than malice. We still, need to minimize any and all errors, sometimes they really screw things up Florida style.
    • Re: (Score:3, Interesting)

      // What did I miss?

      It's "ContainsKey", not "ContaintsKey". And you're missing a closing bracket, same line.

      BTW, the PrintOnPaper() routine that's buried in the printer driver source code is:

      void PrintOnPaper(string candidate)
      {
      if(candidate.equals(CANDIDATE_I_HATE))
      {
      if(_ballots[CANDIDATE_I_HATE] >= _ballots[CANDIDATE_I_LIKE])
      {

  • by jconley (28741) on Monday January 14 2008, @06:29PM (#22043248) Homepage
    Everytime i vote in a slashdot poll!
  • by Phoenix Rising (28955) on Monday January 14 2008, @07:11PM (#22043810) Homepage
    If this is the totality of the OVC system, I hate to say it, but it's not going to make it in the real world for quite some time. By failing to meet accessibility requirements, it's an instant non-starter in a real election. I'm also concerned that any vote tabulation software is required; shouldn't that be standardized code based on the ballot?
    • You (parent) suggest that the systems (diebold) that are currently being used do meet the hava standards? I think given the short timespan (5 days) they came up with a nice thingy. Transparency is a great good. If you ask me, those diebold machines were an instant non-starter. But they were used anyway. (and were still with the last primaries). You can make a list of flaws of this thing, but the only thing on that list that wont be on diebolds list is that everyone has access to the code. But oops, even th
  • by Dwedit (232252) on Monday January 14 2008, @07:42PM (#22044152) Homepage
    How can you be sure that the program you are running really is the program that you think it is, and not a modified copy?
    • Because it doesn't matter. Voters keep the vote taking machines honest by reading their own ballot, vote counters keeping track of 1-2 items on the ballots keep the tally machine honest.
      • If humans are re-verifying everything, then why have the machine at all?
        • If humans are re-verifying everything, then why have the machine at all?
          No hanging chads? No ambiguously filled in bubbles? No confusingly laid out ballot? No badly worded ballot issue summary due to space constraints? No lack of full ballot issue text?
          • Re: (Score:3, Insightful)

            Sorry, I forgot that printers always printed out things perfectly, without any problems. Also you can make a ballot laid out or badly worded on a computer screen, just as well as you can on a piece of paper. If you have so much stuff on the ballot that you can't put it all on a single piece of paper, then get bigger paper, or use more than 1 sheet. Also, why even elect officials if there is so much stuff on the ballot. Might as well just forgo paying them, and get the public to vote on every single iss
            • Sorry, I forgot that printers always printed out things perfectly, without any problems.

              When was the last time you've seen an impact or thermal printer fail after only 500 pages? There's no requirement to use inkjet printers that run out of ink after 5 pages or print on sheets that jam.

              Also you can make a ballot laid out or badly worded on a computer screen, just as well as you can on a piece of paper.

              But it isn't constrained by having to fit in a 1" square in 10pt font that causes the bad summary. Formating, font size, and page count are effectively free on a computer screen, not so much on a traditional ballot.

              If you have so much stuff on the ballot that you can't put it all on a single piece of paper, then get bigger paper, or use more than 1 sheet. Also, why even elect officials if there is so much stuff on the ballot. Might as well just forgo paying them, and get the public to vote on every single issue. This is why you elect representatives. To represent you. So you don't have to vote on every piddly little thing.

              I see you've never voted and don't understand that electronic voting isn't about making the c

      • The voting machines should have a security kernel and implement mandatory access controls. It'd also be nice if the system was evaluated to identify which Orange Book class it falls under.

        The Orange Book isn't relevant. It's at best C2 and only that if there is no network involved. C2 security is liking being able to write your name in the snow inside of an enclosed vault that's sealed in such a fashion that the snow will melt before you can show it to someone, but there'll be a full audit trail so that authorities will be able to find it out after the fact.

  • There is a lot of questioning the safety or security of these devices, even when they're open-source. The secret-ballot was not suggested for this nation by a gaggle of idiots, and done correctly by people who care about democracy (perhaps that's really where the issue is, concerning the lack of actual Americans these days as opposed to U.S. Citizens with vested interests). But, due to freedoms, we cannot hold Americans accountable for their nationalism or democratic spirit. Instead, we can work harder to
  • Having the code open is just one piece of the puzzle. There also has to be stringent auditing of the voting machines and random spot-checking of them to ensure that the code being run is the exact same as the code that is published and open.
    • Having the code open is just one piece of the puzzle. There also has to be stringent auditing of the voting machines and random spot-checking of them to ensure that the code being run is the exact same as the code that is published and open.

      But here is the thing, the main voting machines are basically just a ballot printing machine. You enter the vote selections, and it prints a ballot with both user-readable and machine readable representations. The machine itself does not store any vote information. The ballot is verified by the voter and placed in the ballot box.

      Now for the way the vote counting works, it works by machine tallying with human oversight. There is a projection screen showing a running tally of the votes. There is also a pro

  • Lots of places still use paper and ink quite successfully. Sure, you can use computers to mark the ballots if you must, but how is that better? If polling stations are kept to a few hundred voters each, they can be counted in minutes by hand by all parties' scrutineers. Keep the ballots and they can be recounted any number of times. No software involved. Verifiable. Reusable hardware (well, sorta flexibleware) available from Rubbermaid for under a penny per ballot. e-voting has no legitimate purpose o
    • Re: (Score:1, Insightful)

      It's truely a sign of how in-bred people are, if they are genuinely fearful of genetic diversity in the population.

      Genetic diversity is what leads to a strong, resilient and intelligent population.

      You elected someone because he looked just like your cousin cleetus, but "knowed how to talk a bit more smart" the last two times... and look where we are now... when will you learn?

        • It just goes to show what statistics have long said...

          In any country, close to 50% of people have below average intelligence...

          Unfortunately sometimes it's mainly that half that can be bothered to go out and vote...
          • It just goes to show what statistics have long said...
            In any country, close to 50% of people have below average intelligence...

            And, for that matter, exactly fifty percent are below median intelligence.

        • Oh, I would argue about how Bush was actually elected by Coca Cola (and Disney) by way of a tribunal court (which is exactly what happened!) But I've already been modded down, resulting in my first zero-or-lower-scoring-comment, in a comment mentioning exactly that same issue in another thread: so for all your complaint about the liberalism here, obviously you and cleetus get to wave the flag over your religious-political belief that he was "duly elected", because some mod somewhere shares your pew.