[Grant Update] Zcash Shielded Assets Monthly Updates

Dear Zcash community,

As we progress with ZSA deployment work and Asset Swaps design, in March we’ve been focusing on Zcash backward compatibility to get ready for integration. This work touches on the core libraries of Zcash, allowing ZSA to be compatible with the rest of Zcash.

The deliverables for compatibility of ZSA with Orchard are part of a larger milestone related to NU6 Integration. We’re splitting this milestone in 2 parts, where the next part will consist of the work with ECC and ZF to support including ZSA in the coming network upgrade(s).

For more details:

Orchard crate backward compatibility

We have completed additions to the Orchard crate to achieve backward compatibility. We have confirmed and tested that our code now simultaneously supports both v5 and v6 transactions. This is a necessary step for integration in NU6, and we are currently working on a second pass through this code, refactoring to improve the code quality and optimize where possible.

Orchard test vectors backward compatibility

Alongside the orchard crate changes, we are also refactoring the changes we made to the zcash-test-vectors repository so that we can generate test vectors for Orchard and OrchardZSA in parallel. Here too, we are working to improve the code quality by minimizing the duplication of code.

Halo2 backward compatibility

We need to be able to generate circuits for the OrchardZSA circuit while still supporting generation of the original Orchard circuit. This required us to make certain changes to the structure of the routines while ensuring the generated Orchard circuit continues to remain unchanged. We have made good progress in this regard, and should be able to wrap this up soon.

Librustzcash support for V6 transactions

The changes in orchard above require changes to be made to the librustzcash crate to support the newly introduced generics. These changes are under internal review, though completion will have to wait for the stabilization of the orchard crate backward compatibility work.


We’re contacted the teams at Geometry Research and Least Authority (the Zcash Ecosystem Security Lead) about performing audits of the ZSA Protocol. The audit is an important step in getting the protocol deployed on the Zcash main-net, and we’re excited about the possibility of such accomplished teams helping us get there! We will provide updates about the status of this in future posts.


We are happy to share that the ZSA ZIPs, ZIP 226, ZIP 227 and ZIP 230, have been merged and included on the zips.z.cash site! Of course, please feel free to keep dropping comments about these ZIPs, we are always interested in hearing feedback and perspectives.

We have also submitted an initial draft of ZIP 228 for Asset Swaps (rendered version here), as was described in a previous post.

As always, please feel free to play around with our work. Let us know if you have any questions, or just what you think!


The QEDIT Team.