Skip to content

Latest commit

 

History

History
24 lines (16 loc) · 1.49 KB

README.md

File metadata and controls

24 lines (16 loc) · 1.49 KB

ovote Circuits Contracts

Research project

OVOTE: Offchain Voting with Onchain Trustless Execution

This repo contains the OVOTE circuits and contracts, compatible with the ovote-node and ovote-clientlib. All code is in early stages.

More details on the OVOTE circuits and contracts design can be found at the OVOTE document.

OAV: Onchain Anonymous Voting

Reusing the same census created for OVOTE, users can vote onchain anonymously.

In OAV, voters generate a zkSNARK proof in their browsers proving that they know the private key which public key is in the Census MerkleTree and that they generated a valid signature over the vote value with that key.

Test

  • Circuits
    • Needs installed: circom, nodejs (version: >16)
    • Install the dependencies: npm install
    • Run the tests: npm run test
  • Contracts
    • Needs installed: foundry
    • Run the tests: forge test