Could this be done such that a person cannot prove that they voted a certain way (the source of the problems people mention, like vote selling becoming viable)?
Maybe with a schema that allows a one time verify, and then churns your entry. If that verify occurs upon entry synchronously at the time you vote, if possible, that’d be no less safe than the paper ballot you feed into the machine.
This is the exact use-case for a blockchain, a public immutable ledger where you can validate your vote, but nobody can tie it back to you.
You’re forgetting about the traffic analysis and key distribution problems
No different than how it’s recorded today. We can improve from there but it’s not worse with the upside of a public ledger.
You can do much better than a ledger with a commitment scheme and transparency log.
Could this be done such that a person cannot prove that they voted a certain way (the source of the problems people mention, like vote selling becoming viable)?
Maybe with a schema that allows a one time verify, and then churns your entry. If that verify occurs upon entry synchronously at the time you vote, if possible, that’d be no less safe than the paper ballot you feed into the machine.