What would a Zcash Proof-of-Stake transition look like?

By Nathan Wilcox

ECC recently shared our motivations for why we believe Zcash should transition from the current Proof-of-Work (PoW) consensus protocol to a Proof-of-Stake (PoS) protocol.

A successful transition would necessarily require support from Zcash users, a legitimate governance process, and a well designed technical migration process. This post outlines what the technical migration process might look like at the top level.

Quick takeaways

If you don’t have time for the full post, here are some key details I’d like to convey:

  • I am fairly confident that switching to PoS would not require altering the Zcash issuance rate or 21M cap.
  • A transition would probably take two or more years, and the first protocol changes are unlikely to happen in the next 12 months.
  • ECC is focused on product-led development of a hybrid PoW-PoS protocol, prior to any possible move to full PoS, without disrupting our efforts on improving shielded mobile UX, NU5 and Halo deployment, ZSAs, and other non-product efforts.

A phased transition

A feasible migration could occur in stages starting from the current PoW protocol, then introducing a new PoS component to complement the PoW system in a hybrid protocol, and then finally transitioning fully to pure PoS.

We are focused on first transitioning to a hybrid protocol for several reasons:

  • It would be lower risk than a direct transition of the core consensus protocol because it would retain most of the properties and guarantees of PoW.
  • It would retain use case and infrastructure network effect, such as miners, wallets, and other services.
  • It would allow the new PoS component to be proven out first on mainnet before relying on it solely.
  • It may allow modularizing and compartmentalizing the protocol and node implementations.
  • And it would follow the general phased approach of Ethereum’s transition toward PoS, which the Zcash community could learn from prior to committing to such an important transition.

ECC’s product approach

For this transition to a hybrid consensus protocol, ECC’s first focus is on user and product research as part of our user-focused product strategy. That iterative process will inform a set of desirable properties of the protocol. After these are well defined and we are confident in the product strategy, we will set about the technical research and design of the protocol.

Some of our leading product research questions about transition to a hybrid protocol are as follows:

  • How would the new consensus protocol impact current use cases and associated users, especially shielded mobile wallet usage, PoW mining, exchange markets, hardware device support, and transparent usage?
  • While still nascent, the same use case investigation will be needed for how this transition would interact with use cases introduced with Zcash Shielded Asset (ZSA) support.
  • What new use cases could alternative hybrid protocol designs enable? The most obvious is some kind of PoS validation and delegated staking.
  • What risks and opportunities would such a transition present around monetary policy, coin distribution, governance, community engagement, developer engagement, and broader mindshare, beyond specific use cases?
  • How might alternative approaches impact ZEC as a store of value, a means of exchange, an inflation-hedge, a payment mechanism, and for other utility?
  • For all of the above, how do the impacts vary across geography, cultures, and populations?

Drilling into the technical properties, we intend to investigate user needs around the following:

  • If the Zcash issuance rate is preserved, what design constraints does this impose, and what are the impacts for ZODLers, transactors, miners, validators, and stake delegators?
  • What privacy and scalability needs will validators and stake delegators have?
  • How scalable can stake delegation be made, and how well can it be supported in mobile shielded wallets?
  • What risks, costs, and benefits will different designs have for fees, scalability, light-client support, and privacy?
  • What opportunities and risks would a transition to a consensus protocol with absolute finality bring?
  • Do any existing consensus protocols meet our requirements, or do we need novel research, such as around privacy or scalability?

Timeline

ECC is in the process of very early research on this transition. This kind of transition is likely to take multiple years, and meanwhile we’re focused on nearer-term priorities, such as the successful roll-out of NU5, which includes the new Halo ZK proving system, improving mobile shielded wallet usability and adoption, and support for Zcash Shielded Assets.

In the absence of other priorities, if all Zcash developers were solely focused on this transition, my off-the-cuff, optimistic schedule estimate would be 2-6 months of research and design, followed by at least two network upgrades. This would put the near-term bound on hybrid deployment about 18 months out. Once we incorporate all existing priorities, such as ZSA support, it is likely any transition would be pushed out to the 2-year mark or later.

This would provide ample time for the Zcash community to discuss and digest ECC’s work on this transition, as well as time to observe Ethereum’s transition, engage with product vendors for new use cases (example: validators), and for ECC to develop our own products in tandem with protocol development.

Next Steps

As we’ve described, our next step on this project is focused on product research, especially of existing and potential new use cases. If you’re a user with insight into these cases, all of Zcash can benefit from sharing needs, concerns, and requirements. We’re interested in hearing from miners and wallet developers, especially with experience of hybrid PoW-PoS consensus systems. We’re also interested to hear from validators and protocol developers from multiple PoS or hybrid PoW-PoS networks to gain a comparative perspective and hear what their wishlist for a new protocol might look like.

Come join Zcash community development calls listed on the ECC Events Calendar, join the Zcash R&D Discord, or contact the ECC product team directly by emailing [email protected]. We look forward to collaborating with you!