Dear Zcash community,
We’d like to share with you our update on what we have been working on towards getting ZSAs ready for NU7 ![]()
ZIPs
- We opened a new pull request (PR#991) to the
zcash/zipsrepository to the movement of the burn fields into the Action Groups in the V6 transaction format. We have received the green light from the ZIP Editors for this change. We have also responded to all current comments on this PR. - Note that the PR targets the draft PR#987 that has been opened by the ZIP Editors to create a new ZIP for the updated SIGHASH computation, instead of the
mainbranch. This is because it causes less redundancy to make the changes on top of this branch.
Changes to the orchard crate
- As mentioned in our previous update, the PCZT changes required various updates to allow support in the OrchardZSA protocol. We completed the support for the PCZT changes (in PR#143).
- We also updated our implementation to reflect the changes to the ZIPs in PR#975 (replacing the asset description with a hash) in PR#150.
Changes to the halo2 and sinsemilla crates
- We have pulled upstream changes to the
halo2crate and made them compatible with our fork (in PR#38). These changes mainly correspond to the shift of code fromhalo2_gadgetsinto separatesinsemillaandhalo2_poseidoncrates. - We have also submitted an upstream pull request (PR#2) to the new
sinsemillacrate providing the changes needed to support the OrchardZSA protocol.
Changes to the librustzcash crate
- We have propagated the changes mentioned in the updates to the
orchardcrate to librustzcash (such as PR#103). - We have also made the changes to support the move of the burn fields into the Action Groups (as in the ZIPs PR#991).
Changes to the Python reference implementation
- We updated the
zcash_test_vectorsrepository to generate the test vectors for the changes in PR#150 of theorchardcrate (the move from the asset description string to an asset description hash). - We are in the process of merging the upstream changes that were made to remove the use of the std library in the generated Rust vectors.
Zebra Node
- Our development of the asset supply and state management functionality in Zebra is progressing.
- We have prepared the changes needed for the move to Action Groups in this crate as well. These include both serialization and consensus changes. This can be seen in PR#42 and PR#46.
Updates to zcash_tx_tool
- We have deployed a CI to the repository that will confirm the usage of a compatible Zebra version, helping automate our updates better.
- We are creating ways to allow a user to more easily create their own scenarios for testing, this is in review at present.
PRs ready for review
- We have submitted PR#823 to the
halo2repository and PR#429 to theorchardrepository to support the halo2 gadget changes, as described in the previous update. We will be submitting further PRs after the initial review of this PR, since they build on this base. - We also have the suggested changes to the ZIPs for the V6 serialization format open for discussion in PR#991 of the
zipsrepository. - We have opened PR#2 to the
sinsemillacrate for changes needed to support OrchardZSA in that repository.
Best,
The QEDIT Team.