Software systems can easily be hacked, and it isn't easy to inspect and tell. A vote is a one time, one sided transaction. It's not as easy to detect fraud in an election as it is with say, a double entry banking record.
Software systems can easily be hacked, and it isn't easy to inspect and tell. A vote is a one time, one sided transaction. It's not as easy to detect fraud in an election as it is with say, a double entry banking record.
The only way I can think of to actually do this is to have some trusted party go out and randomly sample voting machines (i.e. check the software on the disk matches the reproducible builds of the open source software, and decap the machine's CPU and other hardware to verify there's no bugs).
Anything else can be foiled by malicious software or hardware.
With the CDN, the user receives source code and they want to verify the source code is unchanged. Checking a hash of the data they received is sufficient.
For a voting machine, what's the analogue? If I walk up to a voting machine with an integrity key, how do I check that the source code it's running has a given hash or is signed with a given key?
If the voting machine itself shows the code or does the check, obviously a person who compromised the machine can fake that bit. If I have to remove the hdd and verify the data on it, and take apart the voting machine to verify there's no second hard drive... well, that seems like it's well out of reach of any voter verifying it.
Integrity keys, hashes, signatures, blockchains, etc can verify digital data, can verify the contents of data that servers serve... But they don't seem to solve the problem of "what code is this machine running", and that seems to be the important problem for voting machine code.
The UK system I think is a bit like that. When I go in my name is checked against a voting slip number (on paper) and then I vote on a bit of paper so someone could theoretically figure which way I voted but the odds of someone going through both paper lists is minimal.
I can already hear the politicians going on about how "being open source" lets "anyone put their own back door in! BE AFRAID!"
And that's impossible.
People who think open source is the solution to the voting challenge haven't given this problem much thought.
You claim that open source is NOT safer than closed source, what is your reasoning there? Security through obscurity?
When I learned that the US actually uses software in its elections, I was shocked. It’s unthinkable here in the UK.
From what I've read, there are some states/localities that have paper ballots they can check, including swing states like Georgia, where they did audit that exact thing.
But then there are other states that do not keep the paper trail, most of which went "red" according to an article I read but did not verify.
https://ballotpedia.org/Voting_methods_and_equipment_by_stat...
"Currently only one state — Louisiana — keeps no paper trail of votes at all. Counties in eight states — Indiana, Kansas, Kentucky, Mississippi, New Jersey, Oklahoma, Tennessee and Texas — use a hybrid system" where some, but not all votes will have a paper trail.
(from https://madison.com/on-paper-ballots-for-the-2020-election/a...)
[1]: https://ballotpedia.org/Voting_methods_and_equipment_by_stat...
Not just in the UK. Most Western democracies consider the idea completely crazy because nothing can be properly audited once papers are removed.
It's easy to say that software can just be hacked, but just because its a possibility doesn't give you the right to invalidate an election.
The people putting forward voter ID laws usually do the opposite. They want to make obtaining an ID more difficult and make that ID a requirement to vote. If we just say "getting and ID should be easy" but don't actually make it easy, and then we increase voter ID requirements, we are disenfranchising voters.
Requiring id and then making it hard to get doesn't have a lot of merit if there aren't a bunch of people exploiting the lack of id checks.
If someone has registered and voted in the past and has an expired id, should they be excluded from voting if they don't renew in time? Even though registration is already a sufficient barrier to fraud?