6

I am considering starting a new co-op based business. Since the business will be member-owned, it would be nice to launch the business with a voting tool. I want to be able to propose items to the co-op members and have them vote through a transparent system. I understand that there are efforts to use the blockchain (or blockchain-esque tools) to handle voting. But all of the ones I can find are for large scale efforts (like BitCongress).

Are there any blockchain tools/approaches that can handle voting for small-ish groups? Ideally it would:

  1. Handle voting from 300-400 people
  2. Be able to be deployed on my own server (not a cloud-based solution)
  3. Be simple to use for people that may or may not have previous BTC/blockchain experience

I should also add that I have the coding skills to develop my own blockchain voting tool. So if there is no OOTB solution for what I need, I'd appreciate links to whitepapers or other documentation that outlines approaches to a blockchain voting scheme.

All help is welcome.

3 Answers 3

8

Blockchains are a bad solution for voting, and in my opinion the widespread interest in using them for this purpose is misguided.

One of the important properties of a voting system is making sure that it is impossible for a voter to prove after the fact what vote they cast, in order to avoid vote selling or intimidation. Because of this, systems that do allow voters to prove what they voted for are in fact outlawed for government elections in many jurisdictions.

The property you want is auditability (individual users need to be able to check their vote was counted, and verify that the tally was computed correctly), but that doesn't require publication. A blockchain is however inherently a publication mechanism, and systems that rely on a blockchain to tally votes imply that everyone can see all votes.

In practice, modern cryptographic voting systems (see E2E auditable systems) actually have very good properties, without the need for publication. They rely on a central server which can see the IP addresses of the voters (but can't see the encrypted votes, and Tor can conceal IPs), let a group of trustees jointly decrypt the resulting tally, and let individual users verify after the fact that their vote was included in that tally.

But isn't that centralized? Yes it is. But decentralization is only a means to achieve a goal. In Bitcoin, we need decentralization as it's the only alternative to having a central party with transaction censoring rights. In a voting system, having a central party who can censor encrypted votes is typically preferable to allowing the whole world to see your vote (and still allow a 51% majority to censor and thus influence the outcome).

I also recommend reading Ben Adida's blog post on the matter: https://benlog.com/2017/12/28/blockchain-and-voting/

1

I believe http://followmyvote.com is worth looking into; at least they claim to allow both anonymity, security and auditability at the same time. I'm not sure if it's resistant to vote-buying, it sounds a bit too good to be true, but I'd recommend to reach out to Adam Kaleb Ernest and ask for details.

There is also the opposite approach, just accept that the nut is uncrackable. The German Pirate Party seems to be doing that; they are using Liquid Feedback and voting non-anonymously there. Centralized tool and no blockchain involved; the developers don't see blockchain tech having anything to do with voting systems. Anonymity collides very much with the idea behind "Liquid Democracy", and they've so far given up on the idea of going for pseudonymity. Probably the design in followmyvote could be used to allow for pseudonymity.

-2

This is certainly possible with Ethereum. It won't meet the requirement of being "simple to use for people that may or may not have previous BTC/blockchain experience" but if you have programming experience you could hook up it up to a nice app or website.

Alternatives that don't seem to meet your needs:

Bitcoin multisig allows up to 15 people voting on a single standard transaction. This has the most support and tools for people to that are new to the concept of a blockchain. Maybe you can do a delegate type setup?

NXT implemented a voting system that allows up to 100 answers. I'm not sure about the number of tools to make this easy to use for your average person.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge that you have read and understand our privacy policy and code of conduct.

Not the answer you're looking for? Browse other questions tagged or ask your own question.