Electronic voting requires two steps.
1. Assign a unique cryptographic identity to every eligible voter.
2. Collect votes of all cryptographic identities with some protocol.
Cryptographic voting protocols for #2 with good properties already exist (
example), and Bitcoin, which was designed to do something else entirely, brings very little, if anything, to the table. For #1, as long as voting eligibility relies on some meatspace attribute, you'll need a meatspace interaction to make the assignment, no sort of fancy technology can change that.
Agree completely. There is no point in trying to use bitcoin for voting. It just doesn't work any better than any existing dedicated solution.
This has already been discussed, and there's no way to do it. How could you possibly ensure that no one votes twice? Or a thousand times?
Somehow implement the proof of work into that. If everyone was assigned an 'voting address' similar to a btc address that could be either be hashed with the last 4 of a social security # or something. I dont think that would be the biggest problem
Actually that is THE biggest problem. Really the only non-trivial problem.
A POW doesn't prove the person doing it is suppose to be voting. My company has millions of SSN. So I could take them take the last 4 and vote as a million people.
Maintaining an accurate vote count, ensuring votes aren't tampered with, and allowing transparency once you solve the critical and difficult problem of ensuring only valid persons vote and they only vote once. There is nothing in Bitcoin or block chains that help to solve that problem.
I see your point, people can actually 'sell their votes' in a way where they sell their address and the buyer gets another vote.
Hmm, there has to be a good theory at least on how to do it, development can come after.
What if the current system of going to a polling station is used, and you still need to show ID to vote. After the ID is shown and your a registered vote an on the spot program generates a random (and I say that lightly) key which acts as your receipt.
You then go into the booth, vote using your receipt key.
Before you leave, the receipt key is checked if its in the system so you can't walk out with it and sell it. At the same time, when you go home you can see your vote in the blockchain.
Thoughts?
Why would you use this as opposed to any existing electronic voting method? It offers no advantages. The polling station could just as easily issue themselves a bunch of random keys, or issue a bunch of them to someone offering them a bunch of money, or the system could be hacked and give the hacker a bunch of random keys, etc.
Bitcoin introduces nothing new to such a system.