Proposals welcome for Private Voting on Sputnik DAO

A key feature of NEAR’s Sputnik DAO is voting on proposals, but currently the votes are all publicly visible on the blockchain. The Cypherpunk Guild is interested in sponsoring a private-voting feature, and would welcome proposals.

Sputnik 2 enables DAO members to be assigned roles, and then have role-dependent voting privileges. Votes should be selectively visible to four tiers of roles: public, DAO members, role members, and no one (anonymous).

This would require:

  1. Zero-knowledge proofs (for set inclusion or token ownership via state roots).

  2. Sending transactions anonymously, probably via a relayer that would:
    a. be discoverable
    b. be pre-paid
    c. validate proofs
    d. relay proofs to the chain

It will likely be necessary to build on one of the ZKP infrastructure projects that are currently under way, e.g. ZeroPool.

References:
-Sputnik DAO | DappRadar
-https://www.sputnik.fund
-SputnikDAO: Discussing Missing Features
-sputnik-dao-contract/sputnikdao2 at main · near-daos/sputnik-dao-contract · GitHub

6 Likes

This is great! Thanks, Steve. :slight_smile:

Just to confirm, would this be a bounty funded by the CPG?

@Extropy.io would someone from Extropy be interested in building this out? :slight_smile:

5 Likes

The CPG council has indeed expressed such willingness!

4 Likes

@shreyas We would love to get and fund such proposals. And of course we also plan to move the guild voting to Sputnik DAO ourselves as well.

4 Likes

Woo! That sounds great! Thanks, @SteveCobb and @frankbraun! :pray:

I’ll share this thread with some ZK folks.

2 Likes

It was James Waugh who came to us with the idea, and Illia who pointed out the ZK role. I just wrote it up. :wink:

4 Likes

MACI is an inspiring bit of software that uses ZKPs to implement an interesting aspect of private voting on Ethereum’s CLR.fund. Here’s a recent discussion with creator Koh Wei Jie:

2 Likes