Staked Poll on Zcash Dev Fund Debate

@zooko, thanks for elucidating your rationale on the merits of coin-weighted voting even if imperfect, as well as your recommendations on how to participate in imperfect coin-weighted voting.

Unfortunately, I disagree with many of your points.

Learning from the imperfect?

We’ve already learned a great deal from the first Coin Holders Petition.

We used it last time around, and it was a success.

Actually, what did we really learn? As far as I can tell, all we learned is that some people amassed ~1% of the ZEC supply and managed to follow the instructions. That’s it.

We don’t know if it’s one person or many. We don’t know if they had any economical stake in this ZEC, or just loaned or custodied it. We don’t know if they voted according to their preferences, or tried to fake a crowd, or just wanted to make some weird point. We don’t know what technical or financial hurdles they surpassed, or how many others did not surpass those. We don’t know whether they compromised their privacy when voting.

So, why do you judge this a success, and what valuable lessons were learned?

Voices large and small?

Coin Holders, large and small, are treasured parts of the Zcash community. […] We should encourage Coin Holders of all sizes to know that their voice matters.

If your goal is to have voices heard regardless of their ZEC holdings, then why are you weighting them by ZEC holding?

Yes, all raw ballots are available, but you’re calling for people to interpret them by ZEC weighting, and doing that yourself. You even explicity advised risk-averge voters to

use a fraction (like 1%) of your coins in your petition [which] means your vote only weighs 1/100 as much as if you voted all your coins [but still] show that you exist and raises your voice

This doesn’t make any sense to me. A voice diluted a hundredfold, and lost in a crowd of Sybils, is hardly heard.

So if you insist that small ZEC-holder matter, then go ahead and explicitly disregard ZEC weights. Just do a plain z2z bulletin board where a ballot costs 0.0001 ZEC. Yes, you’d have to acknowledge the fact that such votes can be trivially faked and Sybilled, and that maybe the real vote result was the insights we gained by along the way by reading the encrypted memos?

But you can’t have it both way. A vote must have a clear pre-commitment to how it will be interpreted, but you’re juggling two inconsistent interpretations, neither of which is very good, and speaking as if the vote magically assumes the best aspects of each.

Throwing caution to the crowd

What you wrote about how to mitigate fund and privacy risk created by participating in the poll is truly horrifying to my ears. You’re expecting users to practice extreme levels of technical sophistication, at their own peril, to paper over the fact the voting protocol is broken!

Choice quotes.

If you’re considering participating in a Coin Holders Petition, and you’re concerned about the risk of your coins being lost to accident or theft, then just use a fraction (like 1%) of your coins in your petition. […] Your call.
2. If you’re worried about the risk of your privacy being compromised by participating in a Coin Holders petition, I would say this. […many lines of technical explanation…]
3. […] One particular off-chain data leakage that you should be aware of is the network layer. […] Whether this is a problem for you in practice really depends on your situation. […] If you’re a real privacy ninja, you could mitigate this risk by using Tor in a particular way. […]
Think about the fact that a network observer can link your IP address with other transactions you make from the same IP address. The consequences of this are confusing to think about, but if you have concerns about your privacy even though you are using a z-address for long-term storage, then you need to think through this network-level privacy leakage.

From a protocol design perspective, this is completely unacceptable. Users should not be assumed to understand any of the above. And if you require participants to understand all of the above, then at please recognize that you’ve restricted participation to those who are either exceptionally cognizant or dangerously misinformed.

Incidentally, this is a point where ECC, ZF and others (including ZF grantees!) can take the lead and design better protocols that really do reduce these risks.

Process

As mentioned earlier and being discussed there, now is too late in the game to introduce new signals and expect them to materialize in time. Especially when even the (rudimentary) current protocol is not supported by GUI tooling.

The usual critique of coin-weighted voting

By now we have ample analysis showing that coin-weighted voting is way too easy to capture, and devolves into pay-to-vote or worse given efficient markets and even small incentives. This is discussed extensively earlier in this thread, but let me just copy some pointers that are buried in another thread:

So I get your wishes for decentralized permissionless voting, but if you’re going to stake anything of importance on it, then please first offer a rebuttal to the analysis saying that it’s bound to fail.

11 Likes