Skip to main content

Open-source voting technology

Every "trust us" election has the same defect: the assurance comes from the party with the most to gain from it. Prevention moves the guarantee out of the promise and into the technology.

The three properties

1. The code is readable by anyone, including the loser

Software that decides an election and cannot be read is asking for trust it has no way to earn. Open source is not a preference here, it is the condition under which a result can be argued about at all. The side that lost has to be able to look, or the count is settled by authority rather than by evidence.

2. Records are designed to be reproduced, not merely stored

Storage answers what did we say happened. Reproduction answers can somebody else get the same answer from the same inputs — a much stronger property, and one that has to be designed in from the start. Records that exist only as totals cannot be reproduced no matter how carefully they are kept.

3. No component whose correctness rests on the operator's character

This is the test that decides the architecture. Wherever a step is correct only because the person running it is honest, that step is a promise wearing a technical costume. An honest operator loses nothing by removing it. Only a dishonest one does.

Why this is not a partisan position

Both party bases have believed an election was mishandled, in different years, about different elections. Neither could check. The argument for open technology does not depend on which of them was right — it depends on the fact that neither had any way to find out, which is a defect regardless of the outcome it happened to protect.

An open system is worse for exactly one kind of participant, and it is not either party's voters.

What it does not settle

Open source is necessary and not sufficient. Readable code still needs the published data, the routine audits and the named gaps — see Reproduce the result and Audits and open gaps.

The same principle, everywhere else on this site

This is the identical argument the rest of the product makes about itself: the code is open, the data is open, and the arithmetic behind every published number is republished so anyone can redo it. We would be a poor advocate for verifiable elections while asking to be trusted ourselves. See Repos and Open Data.

Also in this area