The latest Beta release in the Diva Staking testnet marks a significant step towards the Mainnet, featuring crucial improvements over the previous versions.

Diva's Final Testnet: The Last Step Before Mainnet

tldr:

  • Diva Staking Protocol: Entering its final stage before the mainnet launch.
  • Final Testnet Phase: The most critical and closest iteration to the mainnet, ensuring a robust and secure system.

The Diva staking protocol is entering its final phase before the highly anticipated mainnet launch. This latest testnet release marks the culmination of extensive development and rigorous testing. As we edge closer to the mainnet, this final testnet serves as a crucial step, ensuring that all systems are optimized and secure.

This phase is not just another testnet; it's the definitive step towards a fully operational Diva staking protocol. We are excited to share this journey with our community and look forward to your continued support as we approach the mainnet release.

Key Highlights:

▶ Telemetry

The project has undergone significant improvements in telemetry, allowing for better monitoring and optimization of its performance:

  • New Telemetry protocol: The new OpenTelemetry protocol is used instead of the old Jaeger protocol.
  • More traces: system now generates a significantly larger number of traces than before with a higher volume of traces, developers can quickly identify issues and diagnose problems more efficiently.
  • Fixed Context Propagation: Additionally, the context propagation issue has been resolved, enabling traces that involve multiple nodes in the network to be correctly propagated and analyzed. This means that developers can now get a more comprehensive view of how different components interact with each other within the system.

▶ Synapse Integration

The project has integrated with Synapse, an in-house framework used for low-level application tasks. This integration allows the system to utilize Synapse's features and tools. With Synapse's dependency injection mechanism, logging, and configuration management tools, maintenance and development of the system become easier and more efficient since we can share code between our different repositories.

  1. Dependency Injection: Synapse provides a dependency injection mechanism that enables components within the system to be easily decoupled from each other.
  2. Lifecycles Management: Synapse controls the entire lifecycle of the application, including startup, shutdown, and restart processes.
  3. Logging and Configuration: Synapse can integrate with a third party logger and configuration management tools, allowing for efficient and centralized logging and configuration of system components.
  4. Plugin Support: Synapse has plugin support that enables developers to extend its functionality with custom plugins. We've move some of the logic to its own plugins.
  5. Protoactor Actor System: Synapse wraps the Protoactor actor system, providing additional tools and features on top of it.

▶ Validator Creation

  • The validator creation logic has been improved and optimized to support more concurrent DKGs.
  • Some security issues reported in audits have been fixed: missing signature, missing security checks, etc.
  • Now the coordinator node won't send transactions anymore so it simplifies the topping up process. Instead, this node will publish the result of the DKG in the p2p network using the Diva DHT.
  • A new role, the Submitter node, will fetch DKGs results from the Diva DHT and will send the required transactions to the smart contract.

▶ Consensus algorithm

In the previous version of the system, if the node that was supposed to be the aggregator happened to be offline while being the aggregator, the aggregation would fail even if there were three other working nodes. This meant that the entire signing and aggregation process would stall until the offline node came back online. The version has introduced a new consensus algorithm for selecting an aggregator in a random way. This change improves the overall reliability and efficiency of the system.

  • Random Aggregator Selection: The new algorithm randomly selects an aggregator from a pool of available nodes, rather than relying on a fixed node.
  • Offline Node Detection: The consensus algorithm can detect if a node is offline and will submit a vote to skip that node as an aggregator until it comes back online. If the majority of the pool (3 nodes) votes for skip, the node will be skipped.
  • Improved Signing Performance: With the new algorithm, the signing performance is improved so that the pool can sign and aggregate with only three working nodes.

▶ Enhancements and Audits

Comprehensive Security and Stability Audits

We have completed extensive audits to ensure the security and robustness of our system. All identified issues were mitigated, protecting the platform against potential vulnerabilities. The project has transitioned its development environment from Hardhat to Foundry, leveraging the latter's tooling and workflows. These changes enhance our development and integrate advanced code quality tools, ensuring top-tier code development.

▶ Advanced Testing and Coverage

Expanded Test Coverage and Innovative Testing Methods

Our commitment to quality is reflected in the significant expansion of our test coverage. We've introduced regression tests to prevent the recurrence of past issues and initiated fuzz testing for our LSD contracts, including diveth, wdiveth, and WithdrawQueueEscrow. These measures are designed to rigorously validate our contracts under various conditions, ensuring reliability and robustness.

▶ New and Extended Features

Integration and Feature Enhancements

We have integrated Merkle Proofs (EIP4788) to enhance security, enabling the verification of withdrawal credentials before validator activation, as well as the verification of slashings, exits, and correlation penalty amounts. This integration ensures adherence to protocol standards and safeguards against MEV stealing incidents. Moreover, we've implemented essential getters for the DeFi integration of wdivETH

Key feature updates include:

  1. wdivETH: Added new getters for seamless DeFi integration.
  2. Validator Manager: Implemented enhanced penalization mechanisms.
  3. PerformanceProver Contract: Introduced new voting procedures for operator rewards distribution, validator exits, correlation penalty enforcement, inactivity penalties, and collateral release processes.
  4. Paymaster Contract: Refactored to operate based on balances, simplifying transaction processes and enhancing efficiency.
  5. OperatorManager: Introduced a new method to efficiently remove operators.
  6. MEVWhitelist: Deployed for better management of MEV activities.
  7. Configuration Contract: Added to streamline system configurations.
  8. Collateral Management: Enabled the addition and withdrawal of both locked and unlocked collateral, improving financial operations.
  9. Accounting Manager: Significantly revamped for enhanced financial tracking and management.
  10. WithdrawQueueEscrow Contract: Complete refactor and optimization, significantly boosting contract performance and reliability.

▶ Diva Prover and Heartbeat Prototypes

Diva Prover Prototype

We have developed a fully operational version of the prover, capable of generating all necessary proofs for Diva operations.

Diva Heartbeat Prototype

The Diva Heartbeat prototype is now functional, automating the essential transactions required to update Diva at the end of each era. This automation ensures timely updates and enhances the overall efficiency of the system.

▶ Summary of Functionalities Added to Kurtosis with the Diva devnet Package

The Diva package introduces several key functionalities to Kurtosis for enhancing the development and deployment of Ethereum networks with integrated Diva components. Here's an overview of the added features:

Genesis Configuration and Network Deployment:

  • Diva Nodes in Genesis: Capability to include Diva nodes directly in the genesis block for network deployment.
  • Diva Smart Contract Deployment: Automatic deployment of the Diva smart contract as part of the network setup.

Validator Creation and Management:

  • Validator Creation with DKGs: Utilization of Distributed Key Generation (DKG) processes and DIVA contracts for creating validators.
  • Merkle Proofs Prover: Integration of a prover to generate Merkle proofs for validator creation, exit, or slashing events.

Performance and Transaction Handling:

  • Performance Oracle: An oracle to calculate the performance of operators based on the validators they manage.
  • Transaction Submitter: A submitter that abstracts the process of sending transactions from nodes to the Ddiva contract.

Protocol Operation and Monitoring:

  • Heartbeat Script: A script to update eras, which control rebasing and operational cycles of the protocol.
  • Operator UI Deployment: Option to deploy an operator user interface.
  • Bootnodes for Network Bootstrap: Deployment of bootnodes to bootstrap the Diva network.
  • Nimbus Validator Client: Deployment of the Nimbus validator client with fee recipient verification to prevent MEV or fee stealing.

Enhanced Observability and Tracing:

  • Tracing: Ability to enable tracing across all components for better observability.
  • Jaeger Integration: Use of Jaeger for tracing to monitor request execution times and identify errors.
  • Block Explorers: Deployment options for various block explorers such as BeaconChain, Dora, or Blockscout.
  • Prometheus and Grafana: Integration of Prometheus and Grafana for developing custom metrics and dashboards.

Install Diva using our Docs https://docs.divastaking.net

Towards the Mainnet

The Beta version brings us closer to the Diva Mainnet launch. User feedback is crucial for refining the testnet and preparing for a successful Mainnet deployment. Users are encouraged to continue testing and reporting any issues.

Follow Nektar Network on X | Farcaster | Telegram | LinkedIn

Join the community in Discord