Testnet, Canonical Patch & PlonKup - Dusk Development Update #39
By Robin Massini

Feb 14, 2022

A monthly development update series created to embrace the transparency and inclusivity that we strive for at Dusk Network

Dusk Network is developing the privacy blockchain for financial applications. A blockchain-based ecosystem of programmable digital assets that meet industry compliance standards. Companies use Dusk Network to secure capital, trade assets, and access a full spectrum of financial services.

Key takeaways:

  • Due to an unforeseen critical bug in the final stage of testing the team had to postpone testnet launch to a later date. Two parallel strategies should patch the bug quickly and efficiently, and provide a long-term solution.

  • With the Canonical patch in place, we see the test-harness passing, which enables us to launch the cluster in the pre-production environment for Web Wallet testing.

  • Dusk Network’s PlonKup paper has been published with the IACR and has seen some media coverage, as we have seemingly identified the missing ingredient to bringing scalable privacy to the blockchain industry.


Testnet Daybreak

Expectations for the launch of Dusk Network’s testnet Daybreak are high. As the first public blockchain optimized for privacy-friendly smart contracts, the testnet provides the opportunity for the public to interact with the network and provide invaluable feedback on the road towards mainnet. Daybreak was scheduled for a February 1st launch, but did not meet this deadline.

An unforeseen critical bug in the final stage of testing forced the postponement of its launch. This unexpected false start is set to be rectified as swiftly as possible through the execution of two strategies to efficiently patch the bug.

Approach 1.
Patching Canonical
Canonical is a serialization library that provides Dusk Smart Contract developers with the possibility to access native operations on the node seamlessly. This library is currently implemented in Dusk Network’s testnet and patching this element could provide a resolution to the issue we’re currently experiencing.

Approach 2.
Migration to rkyv

Rkyv is a zero-copy deserialization framework built entirely in the RUST programming language, and was scheduled to be added to the stack and complement Canonical after profound component testing. Bringing this development forward could not only help resolve the bug but would also speed up the network and solve gas inefficiencies.


Canonical Patch does the job

With the team working in parallel on both strategies, we are happy to see that the bug of indeterminism is currently resolved in the Canonical patch. While this is not a permanent fix (we are still moving forward with the 2nd approach), it does mean that this case of indeterminism is no longer an issue, nor a blocker to continue testing the blockchain from a cluster.

In addition, the gas-related problem has been fixed properly, without resorting to reintroduce wasmi instrumentation as envisioned in https://github.com/dusk-network/rusk-vm/pull/307.


Pre-production cluster

Now that the state bugs have been fixed, we see the test-harness passing, which brings us to the process of forming the network and launching the cluster in the pre-production environment. In particular, we are currently modifying the dusk-blockchain repo to accept the state_root genesis at configuration time, which is the last necessary component to launch the cluster.

We aimed to provide further transparency on the testnet’s progress along the way in the lead-up to launch. That’s why we started the State of Testnet article series. You can find each individual entry into the series here:


PlonKup

Dusk Network is composed of numerous sophisticated Zero-Knowledge technologies, and our latest research paper, now live on the International Association for Cryptologic Research (IACR) website, elaborates in detail on one of our most exciting technologies yet: PlonKup.

PlonKup is a fully succinct ZK-SNARK (a proof construction where one can prove possession of certain information without revealing that information) that utilizes an updateable universal structured reference string, which can be securely reused for new applications. Unlike previous ZK-SNARKs, which were unable to scale by requiring a trusted setup for every single use-case, PlonKup’s use-cases are theoretically unlimited once the network completes its first and only trusted setup.

PlonKup could prove to be the missing link to bringing scalable privacy to the blockchain industry, finally allowing cryptographic obfuscation of data on layer-1 blockchains to be affordable. This has been one of the major adoption hurdles for the industry, as non-purpose-built privacy blockchains have been unable to ensure data-privacy on-chain.

For more technical information, please read our article on the release of the research paper.

Outlook

All hands are on deck for the resolution of the critical bug postponing the launch of our testnet. With a patch for Canonical in hand, and a long-term rkyv solution under scrutiny, the development team is now setting up the pre-production cluster for the last stage of testing. After Daybreak launches, bi-weekly release cycles are to be shared with the community to shine some light on the developmental progress. Our GitHub, in addition, remains fully open and available for our community to gauge progress.

A closer look at our development milestones

GitHub now includes milestones & timelines, making it a lot easier to follow our developmental progress in real-time. Rest assured, for those unfamiliar with Github, or simply lacking the time to dive in, there is always the opportunity to catch up in our Monthly Development Update.

Latest articles:



About Dusk Network

Dusk Network is the privacy blockchain for financial applications. A new standard for compliance, control, and collaboration. Our mission is to enable any size enterprise to collaborate at scale, meet compliance requirements and ensure that personal and transaction data remains confidential.

Share this post

Subscribe to our newsletter

Dusk on GitHub Download Whitepaper