Hi everyone,
This is the Zcash Foundation’s Engineering update for Sprint 17 (August 13th - August 26th.)
Work on the NU6 network upgrade continued as the team prepared for the NU6 testnet activation. To this effect we upgraded zebra to the latest librustzcash dependencies to include NU6 consensus rules, set the NU6 testnet activation height and network protocol version and prepared for a zebra release containing these changes. This zebra release lowers the EOS (end-of-support) halt to occur ahead of NU6 activation on mainnet. Additionally, we updated the getblockchaininfo RPC method to return information on NU6 value pools.
In order to test NU6 testnet activation we took part in a private testnet test together with ECC engineers ahead of NU6 testnet activation to ensure that this would go smoothly.
The FROST team continued to work on the FROST Zcash demo, updating the documentation to add details on the new user registration feature and started to research how encryption and authentication for the demo would work using the snow library. We started writing a number of cli commands to generate a keypair, register an account, log in and export public keys of contacts. Next we will tackle group registration and identifier handling.
We have also been making some progress on the necessary ZIPs that specify how FROST will work in a Zcash context. We made some updates to ZIP-312 to change how the randomizer should be handled and we continued the discussion on standardising transaction plans in Zcash in order to allow the creation of shielded transactions offline.
DevOps work was focused on our docker image builds and ensuring that these are optimized for build times. We also made some improvements to the docker images themselves, changing the image to no longer use the root user, through PR #8803, which was further improved with PRs #8803 and #8817, as we should not run our nodes with a privileged user inside the container, but allow users to create further configuration files or directories where Zebra runs. We also started some planning to avoid new Docker releases or adding packages to our Dockerfile to increase the amount of vulnerabilities, and thus increasing potential attack vectors.
We have also been working on the deployment of some long-lived testnet nodes to improve testnet network health and to have some bootstrap nodes for the Foundation hosted testnet DNSseeder. Finally, we fixed a number of issues we were having with our scheduled testnet and mainnet full syncs from genesis that we use for testing zebra.
Thank you for reading!