
V initiative – Building tomorrow’s secure digital democracy - chiachun
http://www.v-initiative.org/
======
ajb
The main problem here is that an _ordinary voter_ should be able to check the
integrity of a voting system. With paper votes, (which we still have in the
UK) an ordinary voter can do this - they can watch the ballot boxes being
carried about, count people voting, and watch the votes being counted. With
electronic voting, an ordinary person has to take it on faith. The more clever
technology you put in, the less it can solve this problem - the harder it is
for an ordinary person to check that the vote is being counted correctly.

A better route is the development of voter-verification, such as Rivest's
ThreeBallot:
[https://en.wikipedia.org/wiki/ThreeBallot](https://en.wikipedia.org/wiki/ThreeBallot)

He didn't include any crypto, even though he's one of the world's most famous
crypto experts, precisely because that would make it opaque to anyone who
isn't a cryptographer.

~~~
atmosx
This is a bitcoin-based system. The integrity of the keychain can be in danger
only if a 51% attack takes place (creates a larger keychain). That's highly
unlikely IMHO in a national election system, where any geek could setup a node
not to mention political parties, organizations, etc.

There is a public ledger. The votes are easily verifiable by anyone, on the
fly, all you have to do is a client with a nice GUI for the user. The user
doesn't care about the crypto, all he wants to know is that his vote counted
and that 40 years later, it's verifiable and private.

Bitcoin can do all those things. Actually it _solved_ the most important
problems related to e-voting IMHO.

ps. The only not-solved problem is _selling votes_. With this sort of scheme
the _buyer_ could request a _proof of vote_ (e.g. a picture, or something more
sophisticated like your user/pass). But this is already happening in Greece
and I guess elsewhere too. I'm not sure though if an e-voting scheme would
allow this to take a much larger scale. Technology can overcome the lack of
social/political education, unfortunately.

~~~
kaoD
Why not use a non-bitcoin-based system and completely avoid the 51% attack?

[https://www.youtube.com/watch?v=ZDnShu5V99s](https://www.youtube.com/watch?v=ZDnShu5V99s)

I'm not sure if this is state of the art[0] since the talk is 7 years old.
This scheme provides proof to the voter, but not enough so he can prove his
vote to someone else, avoiding vote selling altogether.

The biggest challenge IMHO is trust in the system.

[0] I'd appreciate criticism or any other progress in the field.

~~~
atmosx
I've seen the video you posted. It's a 2007 video, otherwise I'm sure the
author would have mentioned the Bitcoin protocol time and again, because it
solves all the problems mentioned + it's decentralized.

Decentralization is a key-aspect here. Votes count equally for all citizens.
So every citizen has the opportunity to operate a node for the time (48hours)
that the elections will take place, in order to inhibit possible corruption.
Given the No of organizations, individuals (e.g. political activists, freedom
believes, anarchists, you-name-it, conservatives, liberals, you-name-it) and
geeks (who will do it for fun, get an RPi, setup a node for the elections,
measure traffic, do a JS/CSS3 front-end to display traffic, real-time results
etc.)

The government (formed by all parties) should be able to setup an X number of
nodes that would allow the elections to take place anyway, without relying to
third parties. But third parties will join to ensure reliability of the
network.

A government could block the access of nodes from IP netmasks that are located
outside the country's IP blocks, to avoid interference of foreign
governments[1].

Now, I'm not 100% about the interface and the interaction which is equally
important:

    
    
        * Should the voters use PKI? Should an account be linked with their IDs?
        * Should we use a dedicated machine with touch screen and accessibility options in a private chamber?
        * Should we use electronic signatures generated by a special 'card' which every citizen should have one?
        * etc
    
    

Estonia has an electronic card[2] for example that could turn handy into
situations like these.

There many ways of deployment with pros/cons to be considered on a country by
country scenario.

Bitcoin protocol solves the double voting, the possibility to re-count votes,
the possibility (which is nowhere today) for citizens to review their votes
even years later.

Also we should not underestimate the ability to vote from the comfort of your
home, using any device: Imagine how greatly that would improve the % of people
participating in the elections for example.

[1] I can't think of what the NSA could come with in this scenario. Would make
an interesting discussion.

[2]
[http://en.wikipedia.org/wiki/Estonian_ID_card](http://en.wikipedia.org/wiki/Estonian_ID_card)

~~~
nebulous1
I don't see the point in using a Bitcoin-esque protocol for a voting system
(ie a hashing based blockchain). In fact the existence of a double spent vote
could simply invalidate both (or all) votes; the user attempted to cheat, no
need to decide which is valid. Otherwise vote acceptance could be based on the
votes of the ids themselves rather than by hashing power. You say
decentralization is a key aspect, but the distribution of whatever underlying
identity the users are voting with still has to be centralized. Bitcoin has
opened people up to these sorts of ideas, but that doesn't mean it has to form
the basis for everything in the future.

------
atmosx
I was thinking about a Bitcoin-based e-voting system (Specifically made for
political nation-scale elections) for some time. It was a project that I'd
like to get involved after I get my degree (~ Jan 2015). I believe it is the
future because it can incorporate everything that an e-voting system needs
(privacy, votes are re-countable, data is publicly accessible, nodes can be
run from individuals to organizations to parties, etc.)

This looks _not bad_ but what I'm failing to understand is:

    
    
         * Is this an organization or a company?
         * Is code open source? Where is it?
         * Are they interested in 'corporate voting' schemes or in public voting schemes?
    

I see nothing more than a landing page which says a several things but nothing
specific and NO I don't want to register first in order to know _exactly_ what
this is.

------
jkldotio
>100% Fraud Proof

This is a highly problematic claim, I am not aware of any serious security
specialist who guarantees any system is 100% fraud proof.

[http://v-app.io/landing](http://v-app.io/landing) seems to be the real
application behind this, which seems to be a much better and wider version of
Doodle, the voting application. If anyone from v-app is listening I don't
think you should mix v-initiative.org with v-app.io/organising things in a
democratic way.

~~~
bowlofpetunias
It's not just a highly problematic claim, it's 100% false.

Any democratic digital vote is in itself 100% fraud, because it lacks two
fundamental elements:

1) Completely transparent and verifiable for all voters. 2) The guarantee that
anyone can cast their vote free of immediate external pressure.

That's why we have paper ballots and voting booths. Anyone who claims
otherwise, anyone who claims this system is merely "outdated" isn't talking
about free and democratic elections.

This project is a fraud.

~~~
neilk
Uncertain why you got downvoted - perhaps "fraud" is a bit too strong but you
are mostly correct.

Even if you had a device and protocol that was perfectly secure, if you vote
from home, someone else can demand to see you cast it. Or, if it's an app on
your phone or a website, there will be an enormous incentive to either monitor
your votes or hack them from the rest of the OS.

I've looked into this question a lot and as far as I can tell, there's no way
around it. At best, you might be able to distribute relatively secure machines
to many places. Maybe every place that has minimal security, like pharmacies
or post offices. Or possibly you have some scheme that allows you to repudiate
coerced votes later - but that also offers more opportunities for coercion!

That still leaves the problem of verifiability. We might imagine a relaxed
standard of verifiability where almost any geeky person can verify the vote is
good. I don't have any real ability to verify paper ballots for even a local
election, as they are held in a warehouse somewhere. Maybe ubiquity of
verification trumps ease of understanding.

------
Myrth
I think the main issues to overcome will be making sure that only registered
users vote, and only once per voting event.

This could be achieved by distributing an undivisible votecoin to each
registered voter upon presenting their proof of registration or eligibility.

But then there's a weak point of someone giving/receiving more than one
votecoin (bribe, threat, blackmail, etc)

Even if there are checks and balances with number of votes vs number of
registered voters, there's again the weak point of human element of data
entry.

------
nebulous1
Bitcoin isn't the correct starting point for this as the whole point of
verifying blocks via miners is that you can't trust entities in the system to
be unique for each user (i.e. Sybil attack), whereas with a democratic voting
system trusting that each user has been given a unique starting key is a core
requirement.

~~~
cjg
I agree that you need to know that voters aren't voting twice (assuming one
voter one vote), but that doesn't mean that a blockchain isn't the way
forward. If keys are issued / signed centrally, then there's no way to vote
more than once.

~~~
nebulous1
So what does the blockchain do?

~~~
cjg
Provides a public record of votes - anonymous / encrypted or otherwise.

~~~
nebulous1
That's just a record though. A bitcoin style blockchain would provide a
hashing-power based method of deciding which votes count in the case of double
voting, which isn't required or even wanted in this case.

~~~
cjg
It's not _just_ a record. It is public and untamperable, and could form the
core of vote verification.

I didn't imagine voting to be like spending a bitcoin. Although that could
work too. Issue every voter a single indivisible votecoin. To vote for a
candidate send the votecoin to their address.

But, perhaps the V initiative have something else in mind for the blockchain.
I'm sure there are others.

I've outlined only two possibilities for using a blockchain here, but I'm sure
there will be others.

~~~
nebulous1
You haven't given a reason to use a blockchain, you're just pointing out ways
in which you _could_ use a block chain.

As I said, why would you rely on a democracy of hashing power for _anything_
when you have unique underlying identities you're trying to let vote? Why use
a system designed to allow the decentralized use of a currency without double
spending when double spending isn't an issue?

The two biggest issues solved by Bitcoin are double spending and distribution
of a decentralized currency. Our would-be voting system doesn't need either of
these things.

------
bowlofpetunias
If it's a _digital_ democracy it's neither secure nor a democracy.

The system can be rigged with the oldest means possible: a knife to the
voters' throat.

I really wish fellow techies would cut this kind of dangerously ignorant and
arrogant crap.

We've invented polling stations and voting booths for reasons other than being
fucking Luddites. Only in the voting booth behind drawn curtains, an anonymous
ballot paper and zero potential electronic surveillance equipment are you free
to cast your vote without external pressure and manipulation.

And the result, the counting process, should be observably by any voter,
including the ones that don't know shit about software. I.e., the manual
counting of ballots.

That's a fucking democracy. Totally secure and yet totally transparent and
verifiable.

The rest, like this project, is a self-important sideshow that only serves to
undermine true democracy, and half the time that is the actual agenda.

------
krmtl
I was thinking about digital democracy for some time but the open source model
loses credibility when you use a centralized approach. I think making it
decentralized with a cryptographically sound method is the key. Bitcoin is
everywhere. I hope this project gains traction.

------
binarymax
Had an idea for something similar several months ago but was struggling with
the conceptual implementation [1]. Very glad to see someone is doing something
here and working towards a solution.

I'm going to install this on my phone and play around with it, and see if I
can get some folks in my community involved as well - and see where it goes.
Looks very very early but I'd be happy to give it a shot.

[1]
[https://news.ycombinator.com/item?id=7493129](https://news.ycombinator.com/item?id=7493129)

------
Thiz
Rights can't be voted off.

Fix that problem first.

Then suffrage won't be necessary at all.

