I will never trust voting machines that do not print and store a paper ballot. But it's practically impossible to change or remove votes with a machine that does store them.
Once the votes are recorded (on paper), you only need to do two things:
- ensure the paper count matches the electronic counts
- ensure the paper count matches the count of voters
You can also spot-audit or fully audit the results to ensure that the tallies for individual candidates match between paper and electronic tallies.If the model of an electronic vote relies on individual keys having cast votes (following something like a vote enrollment), the attacker will have to spoof all those keys for the result to look authentic and at the same time be malicious.
Depending on how those "keys" have been generated in the enrollment, this could be difficult to scale. The most basic premise would be that the "tallier" and the voter create this key together, and once committed to the ledger can't be tampered with by any of them. A vote must be signed with this key. The voter can override their vote at any time while the election runs. (This is something that I'm paraphrasing from the article actually)
This does not scale as it requires a malicious actor to hijack enrollment and voting for a large number of voters. If enrollment is being done based on a physical device (eg, electronic ID card) it's even less so.