Cryptography is not my strong point, so forgive me if this is obvious to others, but how can we build a system which simultaneously:
1. Allows you to verify that your vote counted in the direction you wanted it to
2. Allows you to be confident that your public "receipt" (half of a key, or whatever you use to confirm your vote counted) is unique, and you aren't sharing it with someone else who voted the same way (lumping multiple votes under the same "verifiable" vote)
3. Prevents you from publicly proving you voted in one direction, thus allowing you to sell your vote?
To put it another way, what good is it to be able to privately verify to myself that I voted in one direction if, when I find a discrepancy, I can't prove to people that the system miscounted my vote? Yet if I can prove it, what's stopping me from selling my vote?
Do you have any examples of corporations submitting to FOIA (public record) requests?
My point is that our elections are being privatized. Internet voting is just the excuse.
"...my reasoning falls closer in line with Milton Friedman's..."
Mine's closer to Abraham Lincoln's:
of the people, by the people, for the people
Elections are what give a democracy its legitimacy. The right to vote precedes all other rights. Like the Zeroth law of Robotics. It's unstated because it's assumed because we voted ourselves (nation) into existence.No, I don't. "Public counts" in my comment refer to how the individual votes would be captured within a blockchain's ledger -- by design, visible and traceable.
I appreciate your follow-up. The right to free expression, and by association, the ability to vote, define our constitutional republic. It's so basic that I didn't consciously recognize it.
Blockchains are more easily conducive to side-channel attacks at revealing who a person voted for than paper voting is.
I'm not even sure it's possible to build one, given that humans are a portion of the workflow. On the other hand, I'd love to be proven wrong.
In the paper system Michigan uses, ballots are not distributed anonymously, but the identifying information is torn off the ballot before it is counted and secured.
(I think it's pointless to propose a voting system that depends on individuals securely managing a cryptographic wallet; it's pretty clear we don't yet live in a world where that's a good idea. But it'd be interesting to see how they propose to solve the above problem.)
edit: logfromblammo answered my question below: https://news.ycombinator.com/item?id=12382298
For example, if I have one "votecoin" that I vote with that isn't tied back to me (as per necessity of private voting), how can the system ensure that it's actually me voting, and not just whoever I gave/sold my vote to beforehand?
I may be missing your point or misunderstanding your comment, but what you describe there is a by-product of a successfully developed blockchain-based voting solution.
Everyone's votes are verifiably recorded, but publicly anonymous. You can still conduct public counts and everyone with access to the blockchain's ledger (or a trusted method of viewing the ledger) can confirm that the only votes that count towards the contest are those actually recorded. The additional benefit is that at any point in time, you can revisit your own vote to confirm it is still contributing to the outcome as it should.
I don't see how this in any way undermines or "forfeits the primary function of our government, which is administrating elections." This may be due to our differing opinions on what the role of government is. Generally my reasoning falls closer in line with Milton Friedman's (paraphrased) view:
> Government has three primary functions. It should provide for military defense of the nation. It should enforce contracts between individuals. It should protect citizens from crimes against themselves or their property.[...][1]
--- [1] http://www.goodreads.com/quotes/578626-government-has-three-...