Live data from Hacker News

Public trust demands open-source voting systems

voting.works

161–170 of 292 posts

Re: Public trust demands open-source voting systems

#161
post #99

Earlier quoted context omitted.

Crypto could be argued similarly no? But it seems to have sustained trust.

Cryptocurrencies don't need to do things like make sure that no human gets more than one vote, only humans (no bots) from a specific part of the world get a vote, and keep votes secret. Blockchain is not the solution.

Correct, there are several aspects to voting that blockchains don't address:

- The Human Identification Problem (not sure if there is a more official name): uniquely identifying a human being. If you solve this, you solve many forms of fraud (anything rooted in identity fraud) and eliminate entire industries dedicated to reducing fraud losses. Best attempt so far has been the Estonian ID system [0]; Sam Altman tried with Worldcoin but that ended up being yet another crypto grift. Incidentally, Estonia uses its identity system for electronic voting.

- Proof of citizenship; citizenship in the US for most people is a birth certificate issued by a hospital or other authority several decades ago, or a proxy to this document such as a passport. Naturalized citizens have it easier here because they have a state-issued document declaring their citizenship.

- Proof of residence: This is also something not verifiable via a blockchain or smart contract, because it depends on the state and relies in part on your physical location and your intent. Legally you can only vote from one voting address, but there are countless people registered with multiple addresses across states as they move residences.

- Secret ballots: You cannot tie votes back to voters in a free election. Blockchains are open and publicly-verifiable, which is good; but cast ballots cannot be verified _even by the voter_. Blockchain doesn't bring anything to the table here over, say, a database; because the recorded ballots must not be tied back to human identities, you cannot use any of the work done to verify the three previous points to verify the election outcome. Blockchain would boil down to replacing or augmenting paper ballots with a provably immutable record, where you still need to place trust in the system recording votes on the chain.

[0]: https://en.wikipedia.org/wiki/Estonian_identity_card

Re: Public trust demands open-source voting systems

#162
post #147

Earlier quoted context omitted.

We have good reason to believe a is true and b is false; the machines get tested to death before election day.

As mentioned in the video, there is no amount of “testing” which could prove the absence of malicious software or hardware. None.

That pretty much undermines the entire concept of unit and integration testing.

If you're saying we should be writing voting machine code in ML and keeping the firmware in Fort Knox, I'm going to make the argument that it's a lot cheaper to do sampled hand-counts to check against machine error or tampering... Which we already do.

Re: Public trust demands open-source voting systems

#163

Earlier quoted context omitted.

Cryptocurrencies don't need to do things like make sure that no human gets more than one vote, only humans (no bots) from a specific part of the world get a vote, and keep votes secret. Blockchain is not the solution.

> Cryptocurrencies don't need to do things like make sure that no human gets more than one vote That's pretty much the problem they were designed to solve no? It's called the double spend problem, and it's crypto's big comp-sci innovation. The whole paper was about it.

The secret ballot requirement foils this. Transaction identities are well-known and public; voter identities are secret and unverifiable. Any attempt to link ballots with identities to prevent double-voting also reveals how someone voted.

Re: Public trust demands open-source voting systems

#164

Stop me if you heard it before, but paper ballot with automatic counting machine is the way to go. You still get real time update, and you have a physical ballot box that's constantly under watch of volunteers from multiple parties. And if there's any dispute (there will be disputes) you can simply bring out the boxes and count again. It's a simple, cost-effective system which is impossible to hack. Electronic voting…

Did you look at the link at all? That's what this company sells. They make ballot marking devices that print your vote on a ballot paper, then a separate ballot box that counts the votes by scanning the ballot papers.

Re: Public trust demands open-source voting systems

#166
post #13

No. Public trust demands no software or programmable hardware in the election process. • Why Electronic Voting is a BAD Idea https://www.youtube.com/watch?v=w3_0x6oaDmI > • Why Electronic Voting Is Still A Bad Idea https://www.youtube.com/watch?v=LkH2r-sNjQs >

I'm watching him talk about the two key ingredients of an election (anonymity and trust, for those not watching the video) and thinking "We don't have those in U.S. elections".

I live in California, where the voting method is vote-by-mail and you sign your ballot. That breaks anonymity right there, plus there's a barcode that matches address and ballot for traceability, so in theory anyone involved in the election process could look at my ballot, cross-reference against address, and figure out how I voted. In practice I've never heard of anyone being pressured or confronted based on how they voted, so my default assumption is this doesn't happen much or at all.

But even broader, in the U.S. your party registration is public information. That's why whenever there's a political shooting, the media always says "He was a registered Republican" or "registered Democrat" or "was not registered to vote". And this mechanism is actively and publicly being exploited to alter elections. Since the U.S. is a two-party system and party membership is public, you have a fairly good idea how each precinct is going to vote before they vote, and can gerrymander maps to get the outcomes you want.

Plenty of trust issues in physical ballot transfer as well. California is vote-by-mail, but that assumes the postal service is a reliable carrier, while there was just a recent news story [1] about ballots being stolen. Before I lived in California, I was in Massachusetts, where we voted on 1930s-era lever voting machines where you hit a lever down and it marks a paper ballot without you ever seeing the real ballot. Between elections, these were stored backstage at the local middle school, so a mechanically-inclined middle schooler with knowledge of how an upcoming election's ballots would be formatted (and we did mock elections in middle school) could have rigged the machines to deliver the local precinct to their preferred candidate.

The useful points in the video were basically that decentralization and redundancy are what make physical elections hard to rig: you have to hack multiple locations to influence the overall election, and at each point you have multiple eyes watching you. He sets up the contrast with software voting, where you have the same software running on each machine, and even if the software is open-source, you can't be sure that the rest of the stack it's running on is secure (an oblique reference to the Ken Thompson Hack [2]).

But decentralization and redundancy are properties that you can introduce into software systems just as easily as real-wold systems. The KTH can be countered through Diverse Double-Compiling, for example [3]. zkStarks and digital signatures give you ability to prove that you authored something without revealing what that something is or who you are. The importance of client diversity for the security of the network as a whole has been well-known in the filesharing and crypto worlds. And anyone who has worked in Big Tech, aviation, or telecom could tell you that having multiple paths to success that are developed by independent teams is important for any computer system that is in a safety- or reliability-critical area.

[1] https://www.almanacnews.com/election/2025/10/14/ballots-stol...

[2] https://aeb.win.tue.nl/linux/hh/thompson/trust.html

[3] https://dwheeler.com/trusting-trust/

Re: Public trust demands open-source voting systems

#167

The comments on this have lots of folks focused purely on the software, talking about a lack of paper ballots, etc. So, let me provide some more context that is missing from the post. For those who don't know the VotingWorks software is both Open Source and their machines create and count paper ballots. You can read about it here: https://www.voting.works/machines Essentially they have a computer, a ballot marking de…

This is an excellent overview & much needed context. I read the (very short) OP but didn't dive into other sections of the website (which is not an initiative I'd previously been aware of).

Probably a difficult task to ensure all readers of all pages on the entire website are fully aware of this context in advance - I'd imagine this kind of averse reaction will continue to be common until these kind of hybrid systems become more widespread (or the interests pushing paperless are comprehensively silenced, which seems less likely).

---

That said, now that I do have full context, I do have two criticisms:

1. Clicking through to the VotingWorks frontpage, the copy still doesn't really highlight in a very obvious manner the paper nature of the system. You really have to analyse the website to figure this detail out.

2. The homepage does contain a section entitled "Faster Election Results" - which I do think flies directly in the face of many criticisms in the HN comments here & I personally believe to be an approach that's incompatible with democratic integrity. Counts should simply not be trying to be fast as a high priority - verifying the automated count by hand is insufficient if it isn't done as a matter of course. Ideally, live, while the count is taking place. The latter is not feasible with an automated system, & the former is a lot more likely to be overlooked if speed is a priority.

We don't just need systems that can be fair, we need systems that incentivize fairness & don't contain perverse incentives - count speed is exactly such an incentive.

Re: Public trust demands open-source voting systems

#168

It might be an aside but it would be, "really groovy" if the general public started to realize that, "democracy" is a way of life and a set of considerations that furthers an open public discourse and attempts to maximize human felicity and reduce cruelty. In an oxymoronic sense it's the public voting on things that actually kills real democracy. https://sites.pitt.edu/~rbrandom/Courses/Antirepresentationa... https:/…

No. Democracy is not about reducing cruelty, or any other vaguely activists points of views. It is about having people choose where they want to go. It might be that these choices unveil that humanity, statistically speaking, is actually a cruel bunch. And, what you think is cruel, might be just fair to someone else. Democracy is about surfacing the human nature.

Re: Public trust demands open-source voting systems

#169

Earlier quoted context omitted.

And how would you feel if those counting machines were closed source?

How do you feel that the paper bill counter in your bank is closed source? It does not matter because it's trivial to verify. The counter says "here is a pack of one hundred ballots for candidate A," and if you're in doubt, you just count them again. While representatives from candidate A's and B's team are watching.

The difference is that I know the sum ahead of time and can object in the moment at the bank.

A vote recount and/or judicially called audit can take months to resolve. This can lead to a loss in confidence in the outcome and for political shenanigans (e.g. Bush v. Gore).

I feel far more confident in a system where the software is open source because it increases trust for free. As a citizen having the software be open source is only upside to me.

Re: Public trust demands open-source voting systems

#170
post #41
post #23

Public trust cannot exist if the voting system requires *any* expertise. Voting systems should be idiot-proof. If you cannot explain how voting system is manipulation-proof to a 7 year old, your voting system is untrustworthy. This means anything more complex than a pen or a stamp on an approved paper is too complex.

If it’s just a signature or stamp, won’t the 7 year old ask why those can’t be faked or forged?

That's an inquisitive 7 year old. Definitely reward them. Let's explain. A good voting system needs to guarantee

- Secrecy of who voted for whom

- Transparency of everything else. The names of everybody in the process, the process itself and all the statistics should be verifiably public.

Being an observer to your polling station must be a guaranteed voter right. Similarly all participating parties must have the right to send representatives to observe the entire process.

Before opening the polling station all ballots are counted by multiple observers from all sides. This is recorded into files / documentation of each observer. So the number of possible ballot papers that can be voted on is documented.

Then each ballot paper needs to be stamped with a official local seal. This is also observed by every observer. The number of stamped ballots is also counted and documented. The number has to match the original ones.

The number of people who can vote in that voting station is determined by a population survey. In bigger cities each region must have roughly the same number of constituents.

The number of ballots that are stamped must match the number of eligible voters in the polling station. A voter can request to change a damaged ballot paper. The replacement should be done in front of all observers and the voter. The replaced ballot is destroyed in front of everyone.

After putting their ballot into the box, the voter has to sign their name in multiple printouts of the list of eligible voters of that polling station. These printouts of the lists are held by observers from multiple sides. The number of signatures has to match the number of ballots in the box.

Everybody can observe the count. All the numbers are checked against each other.

If you think that this is infeasible, I come from a country of 80 million people and live in a similarly sized one. Both of them use the same system. It works. It scales since it is an almost trivially parallelizable problem. We get the election results in the same day of voting.

Post reply on HN