Live data from Hacker News

Show HN: VOTEism – Secure political opinion poll app

docs.voteism.org

21–30 of 41 posts

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

#21
post #11

Earlier quoted context omitted.

When we process the results on the air-gapped system our algorithm does make sure that the user's vote is counted only once (no matter how many times the user has voted). Please read the process at https://voteism.org

I've read both https://docs.voteism.org/ and the Github README, and found no mention of this algorithm that prevents multiple votes from malicious actors. Except a brief mention of collecting "device id, location, ip address, etc". Could you point me to the specific section where it is explained? Edit: After rereading your comment, I felt there might have been a miscommunication. I'm sure your server discards multipl…

When we process the data and aggregate the results on the air-gapped system we do make sure that the user vote is not counted twice. Like you pointed out this is one of the fundamental things that is super important and we were very careful when we designed the app to address this issue. We did make sure that a single individual's votes are not counted twice. It is a custom algorithm. Also, we have taken precautions during registration too.

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

#22

> 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. There is unanimous agreement from the security community that we must not use digital voting. It is a mistake, full stop. As an opinion app it doesn't matter, but we must use paper ballots for our elections. For anyone intere…

Unanimous? That seems extremely unlikely, no?

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

#23
post #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.

"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."

No, you say it is. From the client's side, all I do is POST my encrypted vote and signature ( https://github.com/VOTEism/server/blob/d8d3752af99d7f4c25c0b... ), encrypted with a public key I just got from an HTTP request to the same server, no? ( https://github.com/VOTEism/server/blob/d8d3752af99d7f4c25c0b... ). I can't tell what you're doing with it after that.

And there's what may be an even worse issue (not even requiring tampering with the public key) - the user's signature appears to go outside of the encrypted blob. Now, I can't tell what the signature is actually over - but if it's, say, just a candidate name or ID, then... without ever decrypting the "encrypted vote", I can figure out who voted for what by just trying possible values and seeing if I can validate their signature.

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

#24

> 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. There is unanimous agreement from the security community that we must not use digital voting. It is a mistake, full stop. As an opinion app it doesn't matter, but we must use paper ballots for our elections. For anyone intere…

In person paper ballots

mail in voting is ripe for fraud.

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

#25

> 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. There is unanimous agreement from the security community that we must not use digital voting. It is a mistake, full stop. As an opinion app it doesn't matter, but we must use paper ballots for our elections. For anyone intere…

Unanimous? That seems extremely unlikely, no?

I work in Switzerland on evoting issues and I disagree with that reply, so by definition opinion is not unanimous. End to end verifiable voting systems work. The devil is in the (operational details) but societies which wasn't evoting can have it if they read the research (or cheat and just take Switzerland's law).

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

#26
post #21

Earlier quoted context omitted.

I've read both https://docs.voteism.org/ and the Github README, and found no mention of this algorithm that prevents multiple votes from malicious actors. Except a brief mention of collecting "device id, location, ip address, etc". Could you point me to the specific section where it is explained? Edit: After rereading your comment, I felt there might have been a miscommunication. I'm sure your server discards multipl…

When we process the data and aggregate the results on the air-gapped system we do make sure that the user vote is not counted twice. Like you pointed out this is one of the fundamental things that is super important and we were very careful when we designed the app to address this issue. We did make sure that a single individual's votes are not counted twice. It is a custom algorithm. Also, we have taken precautions…

And are those precautions during counting and registration open source as well, or are they secret by necessity? I've had not had time to read the source code, if they are in there. If they are open source, could you still briefly explain the gist of the precautions here? If they are secret, can you offer any guarantees to the public that they cannot be circumvented in a way that makes any collected statistics inherently faulty?

I'm sure you've made impressive work with this app, and it surely is beyond my capabilities. But if you have created an app that presents itself as a reliable and secure system but in reality is easily gamed by malicious actors, it might actually hurt democracy instead of helping it. If the app gains any form of notoriety or popularity, it could be fed malicious votes and then be used to sow distrust towards the (real and valid) election results. In such a scenario it would just harm the democratic process. I have yet to see any indications that this is not a real possibility.

Being sure my vote is counted is only half the battle. I also need to be sure that my vote was not drowned out by countless of fake votes. One thing is not worth much without the other.

I would be more forgiving it was more clearly presented as only a prototype or proof-of-concept, but with a mission statement as grand as "VOTEism seeks to fix opinion polls" I feel it deserves more in-depth questions.

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

#27

> 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. There is unanimous agreement from the security community that we must not use digital voting. It is a mistake, full stop. As an opinion app it doesn't matter, but we must use paper ballots for our elections. For anyone intere…

In person paper ballots mail in voting is ripe for fraud.

[deleted]

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

#28

> 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. There is unanimous agreement from the security community that we must not use digital voting. It is a mistake, full stop. As an opinion app it doesn't matter, but we must use paper ballots for our elections. For anyone intere…

In Germany, a election must be equal, secret and comprehensible. (Hope I translated correctly: gleich, geheim, nachvollziehbar). One of the three will always fail in online voting systems. The obvious is always the comprehensibility, because the majority won't understand the software. That can only be sold by losing the secret vote, because then a vote is reasonable for anybody.

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

#29
post #11

Earlier quoted context omitted.

When we process the results on the air-gapped system our algorithm does make sure that the user's vote is counted only once (no matter how many times the user has voted). Please read the process at https://voteism.org

I've read both https://docs.voteism.org/ and the Github README, and found no mention of this algorithm that prevents multiple votes from malicious actors. Except a brief mention of collecting "device id, location, ip address, etc". Could you point me to the specific section where it is explained? Edit: After rereading your comment, I felt there might have been a miscommunication. I'm sure your server discards multipl…

The term you're looking for is 'sybil attack'.

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

#30
post #21

Earlier quoted context omitted.

When we process the data and aggregate the results on the air-gapped system we do make sure that the user vote is not counted twice. Like you pointed out this is one of the fundamental things that is super important and we were very careful when we designed the app to address this issue. We did make sure that a single individual's votes are not counted twice. It is a custom algorithm. Also, we have taken precautions…

And are those precautions during counting and registration open source as well, or are they secret by necessity? I've had not had time to read the source code, if they are in there. If they are open source, could you still briefly explain the gist of the precautions here? If they are secret, can you offer any guarantees to the public that they cannot be circumvented in a way that makes any collected statistics inhere…

Thanks for all the questions raised here. Really appreciate it. To answer your concerns/questions -

1. Registration part is open-source and we have taken precautions such that same user doesn't register twice from the same device using different SIMs, change of devices. 2. We have made sure that the registered device is a mobile number 3. Restriction and verification of the user registration to where the poll is being held. For example, currently VOTEism app cannot be downloaded outside of US. 4. Counting part is not open-source by design, because it is processed offline and it is a proprietary algorithm out of necessity for secrecy. 5. We want to make sure the counting of the votes happens offline to eliminate the scope for manipulation 6. Vote data is encrypted and validated with it's signature to make sure it is not tampered with. 7. We are also making sure that the keys are rotated periodically. 8. We can guarantee that the collected information statistics are accurate.

I hope we have answered your questions. Please feel free to raise your concerns. If you want to take the conversation further you can email us at hi@voteism.org

Post reply on HN