I have heard that some, if not all, widely used electronic voting systems (e.g., Diebold, Sequioa, Dominion) use closed-source software. If so, how can the public be sure that a closed system isn't rigged? What is the justification for not opening their source code? Doesn't the public have a right to transparency? And how can a method of simply counting votes possibly be considered proprietary?

  • You forgot one major disadvantage of electronic voting systems, whether open source or closed: means to verify vote count by every eligible voter - and not only a few tech-savy people who know how to do security audits :) Nov 14, 2020 at 8:28
  • 1
    You could start off by reading just about everything Ed Felten ever wrote on the subject.
    – MadHatter
    Nov 14, 2020 at 8:41
  • 1
    Welcome in the USA. Had it happened in any other country, they had long threaten it by bombing/sanctions.
    – peterh
    Nov 14, 2020 at 21:46
  • MadHatter suggested that I accept an answer. I'm ready to do that, but I can't figure out how. Sorry if I'm missing something obvious. Nor am I allowed to comment, so I had to "answer" the question. As for questions disguised as rants, yes this is a rant, but it is also a legitimate question. I had heard many years ago that electronic voting systems used closed-source, but I was not sure that is still true, and I don't know how to check it. I'd still be interested in knowing which major systems are closed source and which are open source, if any.
    – user36086
    Nov 15, 2020 at 19:38
  • @user36086 you need to link your current account with the account under which you asked the question, so the system recognises you as the person who asked the question - then you can both comment on, and answer, it. This linking is known as merging user profiles and can be requested from the "Contact" link at the bottom of the page.
    – MadHatter
    Nov 16, 2020 at 8:18

3 Answers 3


There are a couple of moving parts here:

What is the justification for not opening their source code?

This is more of a question to the customers (in this case - the government) than the manufacturers. I don't know any specific details about any voting system, but generally speaking, if the government purchases anything (in this case - a voting system) from a private vendor, it should publish a request for tender with the specifications of the system it wishes to purchase. If publishing the system's code as open source isn't listed there as a requirement, the vendor is free to use whatever proprietary license it wishes. In that case, the question becomes why a specific vendor chose a specific closed license for their software, which will boil down to their business model.

And how can a method of simply counting votes possibly be considered proprietary?

A voting machine does much more than applying a ++ operator to a variable - you need to develop an (administrative) way to input the candidates on the ballot, a way to record votes, handle fault tolerance (e.g., what if the power is lost?), error handling (what if someone attempts to vote for two candidates on the same ballot?), accessible interfaces (can the machine be handled by a visually impaired individual), fraud detection algorithms (hopefully!), etc.

  • Thanks for that clarification. Yes, there is much more to it than simply counting votes. However, I would argue that it should ALL be open source for transparency. And the fact that the government officials writing the specs aren't requiring open source is inexcusable in my view. Get bids for open source and pay whatever is necessary. The whole notion of proprietary, closed-source election software strikes me as idiocy of the highest order. Oh, and don't forget to ALWAYS have paper ballots as a backup.
    – Russ P.
    Nov 14, 2020 at 18:18
  • 2
    @RussP. "I would argue that it should ALL be open source for transparency" I don't think anyone here will argue against you. I certainly won't. However, you asked why, despite that, it's not all open source, and I personally think Mureinik's done a great job of explaining that: because the people that buy it value things other than transparency.
    – MadHatter
    Nov 14, 2020 at 19:52
  • I appreciated Mureinik's explanation, and I realize that he was not arguing in favor of closed-source software. But my main objective here is to bring attention to the absurdity of using closed-source, proprietary software for public elections. According to one documentary from around 2006, not even the government officials running the election have access to the source code. I have also heard recently about "glitches" in Dominion voting systems that flipped a race to the wrong candidate. Given the current situation, certainly this is a good time to bring these issues to public attention.
    – Russ P.
    Nov 15, 2020 at 0:10
  • @RussP. I'm cerrtainly not saying that's a bad thing to do, but it's not such a great thing to do here. This is a question-and-answer site. Questions that turn out to be disguised rants tend, quite justifiably, to accumulate close votes. Please consider accepting an answer to this question before that happens.
    – MadHatter
    Nov 15, 2020 at 6:18

Just an fyi: Most operating systems that run the Internet (Linux) and most Web servers (Apache) and programming languages (i.e: Python, Javascript, others) are open source and many open source projects are free to use. Importantly, the operations are well understood with training and personnel available to operate them.

Therefore, not having in an electronic open source election backbone that can collect all votes whether federal state or local is unforgivable. Additionally, an open source voters registry would allow a voter to audit their own submission regardless of how that submission originated (ie: scanned ballot, online entry, or voting machine.)

Naturally, certain personal data would need to remain secret, while other data is publicly available. These kinds of rules could easily be implemented by open source developers. Such developers work free of charge! There actually would be no or very low governmental investment.

I believe an open source blockchain application would be the perfect solution. There are some available.


Some security chips, you need to sign an NDA just to get the datasheet. Drivers you only get once you send the vendor your own public key for encryption. Just those NDAs might stop a company from publishing the source code - if that source would inadvertedly disclose details under an NDA.

  • Thanks, I didn't think of that. I would argue that the government officials responsible for determining the requirements should rule out that kind of issue a priori. In other words, any company hampered by an NDA shouldn't even bother bidding. If no company bids, then just go with paper ballots. An electronic tally should always be backed up with paper anyway.
    – Russ P.
    Nov 15, 2020 at 0:02

Not the answer you're looking for? Browse other questions tagged or ask your own question.