NU7-rc0 Testnet is Live

NU7-rc0 Testnet is Live

This is the first NU7 testnet going live! We’ve built out how we see the consensus changes for NU7. The most user facing one is the block time reduction, which you can feel before the quickly approaching NU7 vote. The featureset below matches what we believe NU7 should be, and how we are voting.

The testnet is ephemeral and will last two weeks. We will make a more polished one in two weeks, please tell us what you’d like to see.

  • 3x faster blocks: Block times drop from 75 seconds to 25, so payments confirm sooner. We’ve shown that uncle rate stays sub 5% on decentralized testnets, and will be even lower on mainnet.

  • Double TPS: Orchard max throughput doubles!

  • Less sandblasting damage: We implement the Action Limits proposal, leading to 40% lowering the maximum sandblast attack vector.

  • Lower PoW variance Behind-the-scenes “difficulty” math is retuned for a more secure, matching wall-clock guarantees of Zcash at launch. (Component of ZIP-218 right now)

  • Network Sustainability Mechanism: A long-term savings pool for the network. Zcash block rewards have a halvening every 4 years. Eventually the miners will be only funded by tx fees with variability. We implement a variant of the NSM, which fixes this problem by collecting 60% of tx fees and distributing them to miners after the fourth halving.

  • Delayed Sprout Deprecation: Sprout pool deprecation is planned, but were awaiting for the token holder vote conclusion on the date. We implement making the Sprout pool inactive at a 1 year out date.

We do not include memo bundles, and are not in favor of its inclusion in NU7. There is one slated change, which we excluded: v6 extensible transaction format. This is due to timeline concern with the code not being written, and the ZIP not being agreed upon. The extensible transaction format has a lot of short-term ecosystem breakage concerns. Were a fan of the idea, especially long-term, but it will breaks parsers so we are concerned over Ledgers / keystones being at risk of un-spendable funds. Meanwhile, users will have to update them anyway for the subsequent Tachyon upgrade, which will be soon after.

Using the Network

To join the network, run the following:

# Download the join script once (from the release)
curl -fsSLO https://github.com/valargroup/kresko/releases/download/v0.1.0/join-nu7-testnet.sh

# Observer mode
bash join-nu7-testnet.sh \
  --bundle-url https://github.com/valargroup/kresko/releases/download/v0.1.0/nu7-join-bundle.tar.gz

# Mining mode
bash join-nu7-testnet.sh \
  --bundle-url https://github.com/valargroup/kresko/releases/download/v0.1.0/nu7-join-bundle.tar.gz --mine

There is a testnet landing page is here, which also lists some public nodes and instructions on how to join the network. https://nu7.valargroup.dev/

The code running this testnet is available here: GitHub - valargroup/zebra: Zcash - Financial Privacy in Rust 🦓 · GitHub

8 Likes

Awesome, thanks for your work on this! Other than implementing a version of ZIP 234 that preserves halvings, how does this differ from Shielded Labs’ implementation of the NSM? Does it include our versions of ZIP 233 and ZIP 235?

1 Like

yep!! :slightly_smiling_face:

just keeps the funds in a pool, anyone can voluntarily add to the pool, 60% of tx fees go the pool and then smooth issuance from that pool (tbc the block subsidy is still quantized via halvenings, the LTS pool however is not) in addition to the block subsidy after the fourth halvening

apologies, I should update the post to link to Proposed NSM update ("Long term security")

1 Like

Great! We’ve prepared a version of ZIP 234 that preserves halvings, and the logic should be very similar to your LTS approach. We’re intentionally waiting for the polling results before submitting the PR, and will move forward if polling shows meaningful support for preserving halvings.

2 Likes