Open waozi-dev opened 6 years ago
Hi @spaceywolfi, thanks for sharing your notes. In order to build a proper decentralized secure voting system, you will have to design from threat models and requirements, rather than libraries. To start, try to answer these questions:
You can definitely set up something that looks like voting using a CRDT library, however, it won't be secure.
I would like to develop a decentralized voting library that other people can integrate in their existing application for decentralized secure voting in their application.
I am still not so sure how to make it possible but here is the idea, any feedback and suggestions on what tools to use are very welcome :) I am especially wondering what crdt i should use, y-js connector, orbitdb, peer-crdt-ipfs, etc..
the process i am working on is weighted score voting with consensus logic the process can be divided into 3 phases phase 1 - collection phase in this phase anyone in the group can add proposals to a specific topic phase 2 - voting each user votes on each proposal from -3 to +3 negative numbers describe the resistance and are weighted with a standard weight of x3 0 mean no resistance and therefore you accept any outcome of the specific proposal positive numbers show how much you support a proposal phase 3 - result the results are calculated (any negative number is multiplied by the negativeScoreWeight such as 3) the proposal with the highest score is shown at the top of the list
here is a basic example in psuedocode of how i could imagine the library to function
looking forward to any feedback :) @diasdavid