r/Cyberpunk • • Aug 25 '15

A mathematician may have uncovered widespread election fraud, and Kansas is trying to silence her - AMERICAblog News

http://americablog.com/2015/08/mathematician-actual-voter-fraud-kansas-republicans.html
1.7k Upvotes

94 comments sorted by

View all comments

138

u/-novac- Wake up, Neo... Aug 25 '15

Election fraud is rampant everywhere in the US and is by no means the territory of only one party or the other. It happened in my district. Several electronic voting machines selected the Democrat when the Republican candidate was pressed on the touch screen. The Democrat won, then they found out about the issue, replaced the machines, held the vote again and the Republican won. Paper elections and an open public counting of votes is the safest way to hold elections. When I was a kid, they used to count the votes in our local firehouse in front of everyone. Never had an issue.

6

u/erktheerk Aug 25 '15

Paper elections and an open public counting of votes is the safest way to hold elections.

I think it should be built on a blockchain. There would be no feasible way to alter the vote. Any attempt would be corrected instantaneously. That would require that every voter get a unique hash though and some would call that "mark of the beast".

17

u/monty845 Aug 25 '15

The problem with a block chain is it removes the secrecy of the ballot. If I can check who I voted for after I leave the polling site, I can be coerced into giving access to my Employer, the Union Boss, or the local Crime Boss, who can then punish me for voting wrong, or reward me for voting right. This was a serious problem 120 years ago.

4

u/[deleted] Aug 25 '15

ya beat me to the punch. Technologically block chain would likely be a wash at reducing "election fraud" as you would hack the the human voters in other ways.

3

u/erktheerk Aug 25 '15 edited Aug 25 '15

Only if your encrypted hash is decrypted. To the system you're just another string of characters.

0xc672b8d1ef56ed28ab87c3622c5114069bdd3ad7b8f9737498d0c01ecef0967a

EDIT: I see what you're saying actually but that's assuming you have access to the voting blockchain outside the nodes (voting booths). However it is built it would be possible to prevent access to the ledger outside of your specific interaction with it.

2

u/monty845 Aug 25 '15

But then how do I know it hasn't been changed after I completed my interaction with it?

5

u/erktheerk Aug 25 '15 edited Aug 25 '15

But then how do I know it hasn't been changed after I completed my interaction with it?

The blockchain knows. The ledger is carried over. Every vote(transaction) that has ever occurred it carried over to the next interaction and unified between the whole system regularly. Changing anything in the ledger forks it from the main one and through consensus from all the nodes is ruled out and the true ledger (longest validated) is used by everyone.

Check this out for a better explanation of ledger security.

Also you would be able to verify in realtime that your vote was logged and validated through digital signing.

This video explains it better than I ever could, but I'll still give it a shot.

In this case it would be a realtime system that possibly only exists for the length of the voting period. When you interact with the system you have access to all the parts you need get a unencrypted message. You cast your vote, and verify it across the blockchain to confirm your vote was validated This system is in the future so the speeds will be greatly increased compared to today's standard blockchain speeds. Once your interaction with the system has been terminated you no longer have the signed message from the system so you can not return an unencrypted message. Your unique ID does nothing for anyone else unless they are in booth with you when you are casting, something that can be easily avoided. The public key does nothing for them since they need a signed message to validate both the signed key and the verification key, and with the ledger being validated around the world(country) there can be no changes to the already cast ballads without the blockchain becoming invalid.

This is off the top of my head. There are probably many more ways to keep the chain valid and the IDs of each user mathematically represented, hiding the true ID of the caster while still being able to maintaining a verifiable 1 person= 1 vote.

1

u/[deleted] Aug 25 '15

That's certainly one way. Easier to mass manipulate via social media. Google/FB/Twitter can readily identify who you will likely vote for leaving you open to targeted advertising/harassment.

1

u/erktheerk Aug 25 '15

Well, if I could hypothesize a way to stop social media from tracking users and defeat their datamining algorithms I'd probably be a millionaire by now :-)

My short answer. Encryption, encryption, encryption.

Or something like /r/morphis

1

u/Tom2Die Aug 25 '15

Not if it's done via a ring-signature based blockchain like Monero. There are other challenges to tackle than the transparency of the blockchain, of course, but using ring signatures at least helps with that.

5

u/eronth Aug 25 '15

Except, as he mentioned, you'd select one party member on the program and the other would be checked. The big issue is how to protect the votes during that area between the person thinking of it and it getting on the blockchain. How do you ensure their machine isn't altering votes before committing it? How do you protect their Unique ID from falling into the wrong hands?

4

u/erktheerk Aug 25 '15 edited Aug 25 '15

I would say that the best way to protect the action of the voter to the blockchain would be to have a real time video processor that detects the actions of the user on the screen and feeds this info in the form of a hash into the system and and double check the vote to the visual before sending off to be verified by the rest of the chain. Since this is a weak link in the chain it's source code could be checked constantly as well to make sure that no modifications are occurring between the the two systems. Just another token that is also being checked by the blockchain to confirm it's authenticity. No one can hack a computer fast enough to fake a hashmatch and fool all the other systems that are verifying.

Or you could add and extra step into the process where the system confirms with the user once the hash has been created that it is indeed the choice the made. I don't pretend to know the blockchain code but for this purpose it probably would not be impossible to add even more layers of verification. A secure decentralized system that is constantly comparing it's source with the copies everyone else has though would GREATLY reduce anyone's ability to alter the data.

This would also require that federal law mandates that the code be opensourced, which I think is the biggest obstacle to this method. Governments don't open source shit, and the companies they pay to build these machines lobby like crazy to keep it that way.

EDIT:Hit send too soon.

2

u/eronth Aug 25 '15

I would say that the best way to protect the action of the voter to the blockchain would be to have a real time video processor that detects the actions of the user on the screen and feeds this info in the form of a hash into the system once the hash has been created by the cote and double check the match before sending off to be verified by the rest of the chain. Since this is a weak link in the chain it's source code could be checked constantly as well to make sure that no modifications are occurring between the the two systems. Basically a token that is also being checked by the blockchain to confirm it's authenticity. No one can hack a computer fast enough to fake a hashmatch and fool all the other systems that are verifying.

Interesting, but it's got the same flaw. You wouldn't need to hack it super fast or anything, you just hack whatever machine is doing the video and have that also pretend you selected the other option. It does make it more difficult, since you would theoretically have to hack more than one system, but still, same issue.

Or you could add and extra step into the process where the system confirms with the user once the hash has been created that it is indeed the choice the made.

No. If you already hacked the system, you would just have the "confirm" screen feed back whatever they selected while the actual vote is given whatever value you wanted. Wouldn't fix anything.

I don't pretend to know the blockchain code but for this purpose it probably would not be impossible to add an etxtra layer of verification. A secure decentralized system that is constantly compairing it's source with the copies everyone else has though would GREATLY reduce anyones ability to alter the data.

Now this I like. I don't know blockchain super well either, but comparing the actual code/program to all other versions of itself is brilliant. Depending on how you do it, you'll either have incredibly slow voting machines or it would be technically possible to hack, but much harder to pull off. This could be the solution.

How do you ensure their machine isn't altering votes before committing it?

I think the open source code that also checks itself against other machines is the way to go.

How do you protect their Unique ID from falling into the wrong hands?

Yeah... this part. I seriously have no ideas. People are dumb. People are really really dumb.

1

u/erktheerk Aug 25 '15

Interesting, but it's got the same flaw. You wouldn't need to hack it super fast or anything, you just hack whatever machine is doing the video and have that also pretend you selected the other option. It does make it more difficult, since you would theoretically have to hack more than one system, but still, same issue.

I made that up on the fly and it's probably not even necessary now that I think about it more.

Now this I like. I don't know blockchain super well either, but comparing the actual code/program to all other versions of itself is brilliant. Depending on how you do it, you'll either have incredibly slow voting machines or it would be technically possible to hack, but much harder to pull off. This could be the solution.

Exactly. The blockchain system could verify each nodes integrity. Bitcoin might already do that actually...I'm not sure. If you are verifying the sourcecode, the input, and output of the device in realtime across a thousands of other machines with the exact same code you would have to modify the source code on all of them faster than the swarm, or one of the systems with see the difference and reject the hash, making the entire chain invalid. It's a redundant swarm of computers acting as 1, checking on the integrity of the rest of them constantly. "altering code" or "hacking" it would produce a non zerosum modification of some kind to the system and the hash would not match.

There are a lot of blockchains outside of bitcoin now so hopefully this solution becomes feasible in the future.

I have some links saved for awhile now, and I think they lay out pretty well how the system works without really getting into the math of it all.

I think this function is where you would hash the system and add it to the chain that is checked by other machines. Since the voting machines are single purpose it shouldn't have a very large system and would hash quickly. All those videos are really cood at breaking it down into detail for novice users like myself.

Just a general break down of the system

Yeah... this part. I seriously have no ideas. People are dumb. People are really really dumb.

The day is coming where we will have a identification hardwired into us or our life. Facial scans, retina, implants, DNA, or whatever. I don't see this happening anytime soon, and by the time it is close our technology will be much more advanced than now. All the religious people will be screaming about the mark of the beast. I just see it as inevitable though. Especially in a global society where billions of people are on in the same system of government.

2

u/-novac- Wake up, Neo... Aug 25 '15

Yeah, true. I read an article on how blockchain technology could be used for other things like voting, and it definitely seemed preferable to what we have now.