Coin Voting / Shielded Airdrop / Proof of Balance

Let’s have an Ask Me Anything about this topic now that there is a working prototype / demo.

Agenda:

  1. Q&A
  2. Zcash protocol overview
  3. ZKP Halo 2
  4. Proof of Balance
  5. Extensions
  6. Demo
13 Likes

thank you @hanh

this is opening up so many new possibilities, it is a game changer!

if you combine ZSA (that enables others to create tokens themself) and the coin voting feature this could be used for so many things :scream:

3 Likes

Starts in 5 mn

6 Likes

We started the review process but the document requires formatting changes (to start with) and a PR.

5 Likes

As you are probably aware, we are carrying a coin vote at this very moment.

3 Likes

A few weeks ago, we ran a few coin-voting trials with success. The total participation reached 1 million ZEC, or 30 million USD at today’s price.

Moving forward, we have several options to improve the process.

Pools

Including every pool would offer the most significant participation, but transparent coin voting would not be private and would reduce the privacy of the entire process.
Sapling would require a new trusted setup (or some complex cryptographic work to fit Sapling into Orchard)
Therefore, we’ll keep it limited to Orchard.

Eligibility Window

We had an eligibility window of a few weeks during the tests. Users could only vote with notes created during that time.

To understand why, we need to dig deeper into how zcash works. Please bear with me for a bit; this part may be tedious, but it is essential since it determines what can be done technically.

When you vote, the voting app includes references to your notes. The voting authority can verify their amount and check if they are used.
With shielded notes, the proof is a ZKP to preserve the voter’s privacy.
But to compute this proof, the app must have all the note commitments. It is akin to how shielded transactions need synchronization. During the synchronization, the app collected the note commitments and prepared the data required to create the transaction ZKPs.

With a window of 1 month, the app has to download and process a few MB of data, but if we extend to the entire Orchard lifespan, it becomes GB.

However, we don’t have to make every Orchard note eligible for voting. We could consider the notes created by the SPAM transactions do not have voting power. Doing so would reduce the data to about 150 MB.

Conversely, we don’t have to only use the note commitments from the main chain. Once we take a snapshot, we can consider adding extra voting transactions (not regular zcash transactions) that grants voting power.

Furthermore, we could add the capability to make voting transactions that move voting power, like regular transactions that move coins between users. But that means implementing a “blockchain” per vote.

The snapshot is taken at block 1’, on the voting chain.

5 Likes

Close, just one digit off:

Current mined ZEC : 15,119,575
Participation : ~ 1,000,000 ZEC

= 1/15th

1 Like

Yeah, that’s strange. Coingecko is more accurate.

You can’t trust Coinmarketcap either, they still have the incorrect block interval regardless of how many times we have emailed and tweeted them about it.

That’s what I thought but since it has to be done before the snapshot height, some users realized they were ineligible too late.
Also, this messes up the coin age and coin time weighted voting (a potential alternative)

It only applies to a given vote. Your coins didn’t move on the main chain and you can delegate to someone else next time.

Anyone can organize a vote. The process is entirely decentralized. After all, I could :slight_smile:

At some point, I will do a demo but for now I would like to gather feedback.

1 Like

Hello, it’s been a while since the last update, but a lot of stuff has been happening.
With the experience gathered from the devfund coin voting, we worked to improve the design. In a few days, I’ll submit a new proposal for Coin Voting 2.0

Thanks for your patience.

13 Likes

A new proposal that was accepted by the zcg replaces this one.

Thanks for your interest, we will continue on the new proposal.

6 Likes