Live data from Hacker News

Show HN: VOTEism – Secure political opinion poll app

docs.voteism.org

1–10 of 41 posts

Re: Show HN: VOTEism – Secure political opinion poll app

#2
Hi Everyone,

We are redoing the Show HN for VOTEism.

The first time we did a Show HN (https://news.ycombinator.com/item?id=23430800), there was a very valid suggestion from the HN Community that we open source the code. Accordingly we have published the code here: https://github.com/VOTEism.

A brief about VOTEism ... again :)

The Covid-19 situation forced many things to shift online. We wondered what it would be like to conduct democratic elections online. While that is the far-far future, we set about building something that could get us a step closer towards that future.

VOTEism is a secure political opinion poll app to express your preference for one electoral candidate or the other. VOTEism currently works for the 2020 USA Presidential Election only. But we hope to take it to all countries where democratic elections happen.

Current political opinion polls are riddled with low sample sizes, interviewer biases, push poll tactics, self voting sock-puppets, and worst of all, the lack of privacy. VOTEism seeks to change that.

Your vote is encrypted with a public key on your mobile device and is decrypted with the private key on an air-gapped system. 4096 bit keys are used. Anonymized and aggregated results are published on the VOTEism mobile apps.

VOTEism is built, published and funded by a small and independent software company (AskDesis INC.) based in the United States. We have no political, governmental, corporate, or media affiliation. Please take time to read our transparency policy here: https://docs.voteism.org/transparency

We hope you find VOTEism useful. Feel free to ask us anything.

Links: iOS: https://ios.voteism.org Android: https://android.voteism.org Docs: https://docs.voteism.org Source Code: https://github.com/VOTEism

Re: Show HN: VOTEism – Secure political opinion poll app

#3
> https://github.com/VOTEism/server/blob/d8d3752af99d7f4c25c0b...

Why fork threads only to immediately join on them? This is just sync code with extra context switching and fatter stack traces.

> https://github.com/VOTEism/server/blob/d8d3752af99d7f4c25c0b...

This creates a new thread pool for each login request. That's a terrible idea. If anything create it once statically and re-use it. Or just perform your actions in the calling thread as you're just issuing a .get() on the future anyway. Again, it's needless complexity.

Re: Show HN: VOTEism – Secure political opinion poll app

#4
post #3

> https://github.com/VOTEism/server/blob/d8d3752af99d7f4c25c0b... Why fork threads only to immediately join on them? This is just sync code with extra context switching and fatter stack traces. > https://github.com/VOTEism/server/blob/d8d3752af99d7f4c25c0b... This creates a new thread pool for each login request. That's a terrible idea. If anything create it once statically and re-use it. Or just perform your actions…

Thanks for pointing the issue with the thread pool and will take a look.

Re: Show HN: VOTEism – Secure political opinion poll app

#5
Hi. I'm a malicious server.

When a client requests the public key from me, I give them a fake one- not the one present on the air-gapped PC, my own key. I then decrypt their vote, inspect it, and re-encrypt it with the real key before sending it off to the air-gapped server.

Does this work? How do you detect it? And what's your threat model?

Re: Show HN: VOTEism – Secure political opinion poll app

#7

Hi. I'm a malicious server. When a client requests the public key from me, I give them a fake one- not the one present on the air-gapped PC, my own key. I then decrypt their vote, inspect it, and re-encrypt it with the real key before sending it off to the air-gapped server. Does this work? How do you detect it? And what's your threat model?

The encrypted data along with the signature of the encrypted vote is written to the bigquery table (and not directly to the air-gapped server) which is written to another temp folder (only the account that has access permissions can write to this folder) before being downloaded and processed on air-gapped server. The malicious server will not be directly able to write to the air-gapped server.

Re: Show HN: VOTEism – Secure political opinion poll app

#8
This reminds me of Democracy Earth. I like how Democracy Earth takes into account the concept of liquid democracy, where people can vote through nominating a trusted person they feel is more suited than they are to make what they feel is the right decision. This representative vote is an option to take on a vote-by-vote basis.

https://democracy.earth/

Re: Show HN: VOTEism – Secure political opinion poll app

#10
post #8

This reminds me of Democracy Earth. I like how Democracy Earth takes into account the concept of liquid democracy, where people can vote through nominating a trusted person they feel is more suited than they are to make what they feel is the right decision. This representative vote is an option to take on a vote-by-vote basis. https://democracy.earth/

Thanks for sharing the info. Will take a look.
Post reply on HN