Dev Update: Hardfork Success and Beyond
As February gave way to March, the Zano development team worked tirelessly, culminating in the momentous Zarcanum hardfork—a pinnacle of our efforts. These past weeks have been a blend of stress and satisfaction, but ultimately, rewarding as we achieved a significant milestone in the Zano project.
Hardfork Highlights
Pre-Hardfork: Our journey toward the hardfork was marked by a series of rigorous tunings and refinements:
- Perfected the tuning of asset operations, ensuring flawless execution.
- Refined the core and tests to support the feature of fee burning.
- Implemented a double Schnorr proof, a direct countermeasure to the same-key-image-in-wallet attacks—thanks to Luke Parker for the highlight and Crypto Zoidberg for the concept.
- Introduced a cap on transaction fees to protect users from excessive costs.
- Improved transaction privacy by adding a derivation hint per each output.
- Rolled out various minor enhancements including a new median calculator, additional daemon and simplewallet commands, and improved logs.
- Executed comprehensive Zarcanum hardfork testing on stagenet.
- Restricted old client versions (prior to 2.x) to maintain a secure and updated network environment.
Post-Hardfork: Post-hardfork, our commitment to a seamless transition continued:
- Ensured the removal of non-zarcanum-compatible transactions from the transaction pool, both at daemon startup and periodically, to maintain network integrity.
- Strengthened deep verification processes upon transaction additions, including checks for balance proof and asset operation validation.
- Addressed a defect where old bare outputs interfered with PoS staking, refining the generation of defragmentation transactions.
Continuous Development
Before the Hardfork:
- Executed a comprehensive bug fix regime across the new Zarcanum codebase.
- Refined asset ownership transfer protocols and enhanced signing schemes.
- Ensured compatibility across different operating systems and backward compatibility with existing APIs, along with new core-tests.
- Performed multiple restarts of the testnet, simulating various scenarios pre-hardfork.
After the Hardfork:
- Launched another phase of the decoy selection algorithm refactoring.
- Integrated JWT (JSON Web Tokens) for extension authentication.
- Established asset whitelisting through the RPC API.
- Advanced mobile development for Zano Mobile and its native library, paving the way for integrations with wallets like Cake Wallet.
- Updated zano-node-utils to recent sources and switched to submodule for improved management.
- Rolled out a new self-documenting RPC API system, ensuring our documentation is always up-to-date—a resource we've long needed.
Hardfork Rollout
The hardfork builds were released on February 22nd, with the hardfork itself successfully taking place on March 22nd. Despite a few initial hurdles, the transition was smooth, with no major disruptions such as chain splits or significant technical issues—a testament to the hard work of our team and the resilience of the Zano network.
Looking Ahead
For those who have yet to migrate their outputs to the Zarcanum scheme, the upcoming auto-migration feature in the GUI will facilitate this process in the next release. This addition underscores our commitment to accessibility and user convenience.
Moreover, we're gearing up to introduce support for confidential assets in the mobile wallet, extending the privacy features Zano is known for to your mobile device.
In conclusion, the success of the hardfork is not a finale but a gateway to new beginnings. The Zano team is already forging ahead with new features, optimizations, and enhancements to secure the network's future and enrich the user experience. We thank our community for their unwavering support and look forward to what's next on the horizon for Zano.