I'm working with a model government simulation for fun over on reddit. I was wondering if there is a way that I could improve anonymity of votes and ensure that all votes are legitimate. This is the way that we currently do things:
- A voting form and spreadsheet are created in Google Docs
- People vote in the poll (which includes asking for their reddit name) and then post in the reddit comments to let us know that they voted.
- We compare the number of votes at the end to the number of comments in the thread and check to make sure that the numbers match and that for each username in the spreadsheet, there is one comment in the thread.
This has some really obvious problems. For one, the spreadsheet has to be owned by a single person and could be manipulated by the spreadsheet owner. Additionally, by having users enter their username into the form, we can verify that they voted, but it basically tosses anonymity out the window since the person who owns the spreadsheet can see how everyone voted. Lastly, verifying that the votes are accurate can take a really long time for longer votes. We don't have a quick and easy way of verifying the results do not have duplicate votes, votes from unverified users who were just given the link to the google docs form. Lastly, we can't audit this process. If they were to release the spreadsheet to verify that the election was done properly, we would just end up having everyones votes released.
Is there a better system to make our voting system more anonymous, but still be able to easily verify votes through their reddit username or other info.