Hi @ttmariemia,
This looks really similar to the type of voting system I proposed for a decentralized dev fund.
copying the relevant section here:
Voting System Requirements
Here are the general properties of the mandated voting mechanism. I don’t want to specify the technical implementation details, since I believe this is a job suited for the engineers building this system.
- Voting should be private.
- Only Zec holders can vote.
- Voting should happen on-chain.
- In order to vote, you must lock your zec so it cannot be spent for a period of time. This is to force the voters to have ‘skin in the game’ and prevent someone nefarious from buying a lot of zec just before an election and then dumping it immediately after.
- Voters can choose how long to lock their zec, and their voting power is proportional to the time that the zec is locked. For example, someone who votes with 10 zec and locks it for 6 months would have the same voting power as someone who votes with 20 zec and locks it for 3 months. Of course there must be a maximum lock time, perhaps a year, to prevent anyone from getting ‘infinite’ voting power by locking their zec permanently.
- The final results of the vote should be transparent to and verifiable by everyone.
- The system should be totally open and allow anyone/any organization to compete for funding to develop zcash.