Author

Topic: Can the blockchain be used for secure voting, and if so, how? (Read 1482 times)

sr. member
Activity: 266
Merit: 250
I'm interested in cryptographically secure, decentralised voting. Is this possible with the blockchain? Or is this something more suited to Ethereum?

In theory it could, however it would be impossible to vote in secret.

With all transactions public on the blockchain every vote would be public so people who cast their vote early on may influence votes that happen later.

Not true.

The voting system in BitPools creates a list of vote addresses and distributes an address to each of the voters. The list of addresses is then encrypted and made publicly available for anyone to download.

Everyone votes by sending bitcoins to their address, then when the vote is over the private encryption key is brought out of cold storage and made available for everyone.

Anyone can then decrypt the list of addresses and verify on the blockchain that the results match the BitPools results.

Waiting for verifications does not matter because as long as you get your vote in with a single verification (within seconds) before midnight then the vote is counted. This can be easily be checked on the blockchain.

As for a 51% attack. That is why Bitcoin is the best for voting. It has the highest amount of computing power behind it, the alts aren't even close.

Presidential campaigns spend billions of dollars in revenue every election cycle.

One candidate probably could buy all of the miners (at the current market rate) on the network
legendary
Activity: 1890
Merit: 1086
Ian Knowles - CIYAM Lead Developer
You might want to look into BitShares, Ethereum or Nxt AT for tech that will be able to do this most likely before the end of the year (especially in the case of Nxt AT as I am managing that project and it is progressing very rapidly now).
legendary
Activity: 3598
Merit: 2386
Viva Ut Vivas
You might be interested to know that "decentralised" versions will be appearing soon (i.e. there should be no need to sign up to any website).

Yes, this will be even better. My goal with BitPools is to eventually have everything decentralized. But with a concept so new I believe some hand holding will be necessary early on.

Mike Hearn is working on a decentralized version and I hope it does well and if possible I would like to interface with what he comes up with if possible. Just like I wish to eventually use BitMessage for all communications, but for the new user who has never used it, a simple centralized forum interface that they are used to is a good start.
legendary
Activity: 1890
Merit: 1086
Ian Knowles - CIYAM Lead Developer
You might be interested to know that "decentralised" versions will be appearing soon (i.e. there should be no need to sign up to any website).
hero member
Activity: 658
Merit: 500
I have read numerous times on using the blockchain for other functions other than a currency, and never have I found a detailed explaination of how to do it. I have no idea this system is already in place and being used. Thanks for the article.
legendary
Activity: 3598
Merit: 2386
Viva Ut Vivas
I'm interested in cryptographically secure, decentralised voting. Is this possible with the blockchain? Or is this something more suited to Ethereum?

In theory it could, however it would be impossible to vote in secret.

With all transactions public on the blockchain every vote would be public so people who cast their vote early on may influence votes that happen later.

Not true.

The voting system in BitPools creates a list of vote addresses and distributes an address to each of the voters. The list of addresses is then encrypted and made publicly available for anyone to download.

Everyone votes by sending bitcoins to their address, then when the vote is over the private encryption key is brought out of cold storage and made available for everyone.

Anyone can then decrypt the list of addresses and verify on the blockchain that the results match the BitPools results.

Waiting for verifications does not matter because as long as you get your vote in with a single verification (within seconds) before midnight then the vote is counted. This can be easily be checked on the blockchain.

As for a 51% attack. That is why Bitcoin is the best for voting. It has the highest amount of computing power behind it, the alts aren't even close.
sr. member
Activity: 266
Merit: 250
I'm interested in cryptographically secure, decentralised voting. Is this possible with the blockchain? Or is this something more suited to Ethereum?

In theory it could, however it would be impossible to vote in secret.

With all transactions public on the blockchain every vote would be public so people who cast their vote early on may influence votes that happen later.

You would also have the problem with unconfirmed transactions when voting ends. If for some reason a TX never gets confirmed a person's vote may not count.

Another issue is that there would be a massive incentive to attempt a 51% attack. Presidential candidates spend billions of dollars in advertising every election cycle. Instead of spending all this money a candidate could invest in mining hardware that is at least 51% of the network and simply not confirm any votes that are not in their favor, or possibly reverse votes voting in the other person's favor.
legendary
Activity: 2394
Merit: 1216
The revolution will be digital
I'm interested in cryptographically secure, decentralised voting. Is this possible with the blockchain? Or is this something more suited to Ethereum?

I believe voting system with all required parameters is more suitable on Ethereum than Blockchain. U can even have BLOB data storage on Ethereum, which I believe is impossible on Blockchain.
newbie
Activity: 42
Merit: 0
it would be cool to be able for the people to vote on public laws


That it would. Bring government closer to home.
sr. member
Activity: 252
Merit: 250
who would you vote for.  certainly not a diplomat of a particular country. 
legendary
Activity: 3598
Merit: 2386
Viva Ut Vivas
Is this possible with the blockchain?

Yes. See: http://www.bitpools.com

Here is a sample result of a successful vote:

legendary
Activity: 1890
Merit: 1086
Ian Knowles - CIYAM Lead Developer
You might find this topic to be of some interest: https://bitcointalk.org/index.php?topic=60229.60

(I spent quite a lot of time working on a design for voting way back then)
legendary
Activity: 1806
Merit: 1090
Learning the troll avoidance button :)
Yes it can be used for secure voting
The ways it can be used vary agora is an example of a voting system although I recall a few different groups trying different methods
Colored coins
http://bitcoinmagazine.com/9562/agora-voting-proposes-bitcoin-based-voting-system/

I guess you could look at Elwars project it might be of interest to you as well
https://bitcointalksearch.org/topic/bitcoins-killer-app-pooling-your-bitcoins-using-the-blockchain-to-vote-588622
copper member
Activity: 1380
Merit: 504
THINK IT, BUILD IT, PLAY IT! --- XAYA
"Liquid Democracy" sounds pretty good. The video at the link above is impressive.

Here's the site:

http://liquidfeedback.org/

There are problems still, but it looks promising.

It would be interesting to see some "polls" adopt this kind of technology to see it run in a production environment & see what happens.
sr. member
Activity: 252
Merit: 250
it would be cool to be able for the people to vote on public laws
member
Activity: 108
Merit: 10
holy shit this is a great idea.
Bring this to the attention of people who can implement it. Definitely.
Like, seriously.
sr. member
Activity: 286
Merit: 255
This has been weighing on my mind for months now.   Also, thank you for the article.
copper member
Activity: 1380
Merit: 504
THINK IT, BUILD IT, PLAY IT! --- XAYA
copper member
Activity: 1380
Merit: 504
THINK IT, BUILD IT, PLAY IT! --- XAYA
I'm interested in cryptographically secure, decentralised voting. Is this possible with the blockchain? Or is this something more suited to Ethereum?
Jump to: