Peer Production on the Crypto Commons

Version 0.8

Toward a Commons Based Economy

Zcash

Zcash relies on pure PoW consensus and is mined by ASICs. Having formerly considered itself “ASIC resistant”, it made no moves to interfere with the deployment of ASICs on the network and now takes a neutral position towards them.

Zcash’s commons are dominated by two conventional organizations, the Electric Coin Company (ECC) and the Zcash Foundation. Zcash uses pure PoW consensus but incorporates a “founder’s reward” through which 20% of block rewards are issued to the founders - stakeholders in the Zcash company (now “Electric Coin Company” or ECC).

The ECC (formerly Zcash ECC) took investment before launching Zcash, and the founder’s reward is distributed between founders, investors, employees, and advisors according to some private contractual arrangements. Zcash is pioneering the use of zero-knowledge proofs to allow for private transactions, and the founder’s reward is predicated on the idea that the developers are highly skilled and they can only dedicate much of their time to working on the project if they are well compensated.

How can such a high-powered team afford to devote years of our lives to this project when everything we’re producing is public, open, and permissionless?

As the focus is on cutting edge cryptography and Zcash is a work in progress, it can be assumed that Zcash ecosystem participants are comfortable with accepting hard fork upgrades as and when they are released by the ECC.

Zcash launched in October 2016. Five months later Zooko announced the Zcash Foundation.

The organization we created to launch this project is a startup. This provides a tight-knit, focused team, rapid decision-making, and the possibility of generating additional funding, such as by building blockchain solutions for industry.

However in the long run it would not be appropriate for a single for-profit company to have this much power over the evolution of the Zcash technology. Ultimately, there will need to be an independent, inclusive, non-profit body to steward the technology in the interests of all users.

  • Zooko Wilcox

Zooko and other ECC members donated portions of their share of the Founders’ Reward totalling 273K ZEC, at then price of $49/ZEC it was worth $13 million+.

I personally have donated half of all of the coins I was due to get from the Founders’ Reward, and many of my colleagues have donated as generously or even more so!

  • Zooko Wilcox

The Founder’s reward is 10% of the total ZEC issuance, 2.1 million ZEC - so the Zcash foundation is set to receive 13% of the Founder’s Reward in total, over the first four years of the project. When the first halving in block rewards occurs after roughly four years, the Founder’s Reward is set to cease, which would cut funding to ECC and the Foundation. All block rewards would go to PoW miners from then on, according to the current consensus rules.

Whether and How to Replace Block Reward Funding

The attention of the Zcash ecosystem has recently turned towards sustaining development beyond the duration of the founders’ reward, with Zooko expressing support for a continuation of block reward funding which incorporated ECC but had a larger role for other organizations. In his capacity as ECC CEO, Zooko has stated that the ECC needs 12 months of runway to function and if no continuation of funding for ECC is established one year before the founder’s reward ends, then ECC will have to consider pivoting to other projects which can generate revenue.

The many ICO funded projects each received one-time funding, but what they are building will need perpetual maintenance and possibly refinement, if it succeeds. The Zcash funding issue is therefore of particular interest, because it is on the horizon for many other projects with autonomous but time-limited funding.

Organizations will tend to prioritize their own survival, and in many cases the continued vitality of the common pool resource would seem to depend on this dominant organization’s continued leadership. Some of the ICOs took in significant sums which, if managed well could sustain development for some time. There are indications that ICO beneficiaries may not always be acting prudently with these funds.

That is not to suggest that the Zcash Founder’s Reward is being mismanaged. According to this tweet, as of June 2018 the Zcash Co (now ECC) had a burn rate of $500k/month and 26 employees, this would be around $19k per person per month.

As the main leadership figure in the ZEC ecosystem, Zooko has had a challenging time navigating this issue of the funding gap post-2020. He has repeatedly stated that the decision of how to fund development post-halvening should not be taken by himself, and that the ECC should not be dictating what the next steps are because it is potentially a main beneficiary.

The Zcash community have been forthcoming with many suggestions. Chris Burniske of Placeholder VC, a recent investor in ZEC, made a detailed analysis of the situation. This advocated for a continuation of 20% block reward to fund project development for another 4 years, with a split of 70% to “Protocol Development” and 30% to “Growth Funds”, while recognizing that there were other options on the table (like a drop to 10% development subsidy).

Burniske also highlighted the need to establish that the method of decision-making is seen as legitimate by all stakeholders in the Zcash ecosystem.

As Zcash is a commons-based resource, there is a risk of contentious fork if a significant faction within the ecosystem is not on board with the change that is offered by ECC. As this is a proposal to change the consensus rules, it can only be implemented and “offered” to the ecosystem by developers.

This saga has already led to a “friendly fork” called Ycash, which is independent of the ECC and Zcash Foundation and hard forked in July 2019 to reduce the Founder’s Reward immediately to a perpetual 5% (now directed to the Ycash Foundation) - thus limiting development funding to 10% of total issuance as initially agreed. Ycash also plans to amend the hashing algorithm to pursue ASIC resistance. The development plan for Ycash is to track and incorporate most upstream changes from Zcash. Zooko wrote a blog post about “A Future Friendly Fork” in 2017, and this appears to have inspired the positioning of Ycash as a friendly fork. Zooko has also commented on the Ycash post to say that he sees Ycash as a positive development for Zcash.

It is worth noting that Zcash ecosystem constituents are no longer entirely reliant on ECC for Zcash node software. The Parity team released a Rust implementation of the Zcash protocol, sponsored by the Zcash Foundation. This reduces reliance on the ECC, and adds a degree of redundancy to enforcement of the consensus rules - where one version may be robust to an exploitable weakness in the other version and could serve to raise the alarm that something was amiss.

The Electric Coin Company

The ECC is in many ways the official custodian of the Zcash network, bearing great responsibility for the health of the network, and having significant power to amend the rules. One story from Zcash’s history is particularly interesting in this regard. In February 2019, a team of ECC developers announced that they had identified (11 months previously), and stealthily deployed a fix for, a vulnerability in the underlying cryptography Zcash uses for shielded transactions. If exploited, this would have allowed an attacker to mint new ZEC without being detected. There is no way to know if this exploit was used. The way zero-knowledge proofs are deployed means that it is not possible to audit the full ZEC supply and ensure that it is as expected.

The blog post announcing the fix offered consolation in the likelihood that because this was such a complex exploit to identify only the highly skilled and expert members of the ECC team were likely to have identified it. From this perspective, giving developers with the deepest knowledge of the protocol a financial stake in it is probably a good use of block rewards to pay for security. If the individual who discovered the exploit first was not being rewarded with a steady supply of ZEC, they may have been more likely to consider stealthily minting some ZEC for themselves.

The severity of the threat to ZEC led the ECC members to keep it quiet for 11 months while they sneaked a change to the consensus rules which would nullify the exploit into a scheduled hard fork update. ECC was in this case withholding information from the Zcash stakeholders for their own benefit. The fact that nobody outside of the small group identified this change to the consensus rules before it was deployed and announced says something about the degree to which the Zcash commons are entrusted to ECC.

The Zcash Foundation

The Zcash Foundation has a mandate to represent the Zcash stakeholder community, and ample funding. This blog post from 2018 gives some insight into how the foundation is going about ascertaining the desires of the Zcash stakeholders. Their approach involves selecting up to 200 members of the Zcash community to form a Community Governance Panel. 64 initial CGP participants voted on a number of ballots at a foundation conference (including a rejection of ASIC resistance), and elected two board representatives to fill vacant seats on the Foundation’s board.

The role of the CGP is effectively to inform the positioning of the Foundation, which itself has limited say in the future direction of the Zcash network. This page was updated recently (Q3 2019) to provide some resources related to the dev fund issue - a set of documents which provide summaries and make recommendations. Among these, the ZF has taken a position that any future mandatory development funding from block rewards should only be distributed to not-for-profit entities. The ECC is a for-profit corporation, ZF suggest that the obligation of this corporation to its shareholders represents a significant conflict of interest with the health of the network. ZF is taking the position that ECC should become a not-for-profit.

Another issue identified in the early part of this resource has more recently come into play with regard to the Zcash dev fund: ownership of intellectual property such as trademarks. There had been a long-standing agreement in principle between ECC and ZF that control of the trademark should be shared between these entities in the legal equivalent of a “2-of-2 multisig” but in Aug 2019 it seems that negotiations on the specifics broke down. Zooko posted about this disagreement:

There are a few things that we’ve learned about the disadvantages of the 2-of-2 “double-veto” approach. One is the inherent problem with double-veto, which has been illuminated as we worked on the legal agreement and received 3rd party feedback. The inherent problem with double-veto is that it is prone to inaction or deadlock. Our earlier intention had been that 2-of-2 would be a stepping stone to 2-of-3, or even further decentralization. But, if we were to lock the trademark into a 2-of-2 double veto, and then there wasn’t subsequent agreement on how to further decentralize it, then it would be in a dead end. There would be no way to move on to 2-of-3 or another more decentralized governance structure.

ZF is not happy about this development, stating that their position was very different, and that the news that the 2-of-2 multisig would not happen came as a surprise to them. ZF and other contributors to the debate are now suggesting that control of the trademark must be resolved before deliberation on the development fund can proceed.

Zcash’s issues with development funding are a contemporary demonstration of the importance of governance for cryptocurrency networks. At the point where a formal governance process would help to resolve a dispute it can be too late to add one. Forging ahead with “rough consensus” and adding in a new governance process both run the risk of alienating some of the blockchain’s constituents.

At time of writing Zcash has yet to detail how the decision about future funding will be made, but according to this megathread it will involve some form of polling and then a 2-of-2 decision from ECC and ZF about which consensus rule change to move forward with, if any. As an external observer, one of the most salient points for me has been how difficult it is to follow the discussion around this subject, as it is divided between a number of different platforms, forum, twitter, blogs/announcements.

Last updated on 11 Sep 2019
Published on 11 Sep 2019
Edit on GitHub