Suzaku Protocol
Protocol Specifications

Protocol Specifications

Suzaku specifications

Protocol smart contracts

For detailed documentation, see:

Core contracts

The Suzaku Protocol consists of the following core contract modules deployed on the Avalanche C-Chain:

Avalanche L1 validator set management contracts

The core contracts are used in coordination with validator set management contracts (see ACP-99 (opens in a new tab)) to translate Suzaku operations into Avalanche validator set updates. All L1s on Avalanche maintain their validator set on the P-Chain that acts as a shared registry.

BalancerValidatorManager

The BalancerValidatorManager (opens in a new tab) is an ACP-99-compliant contract that wraps the ICM ValidatorManager (v2.1.0) and implements a validator management system allowing multiple security modules to control portions of the validator set. Each security module is allocated a maximum weight they can assign to their validators.

Key Features:

  • Multiple security modules can operate independently to manage validators
  • Each security module has a maximum weight allocation they cannot exceed
  • Tracks and enforces security module weight limits
  • Supports wrapping existing ValidatorManagers that already have validators
  • Enforces validator ownership by security modules

Architecture:

  • The BalancerValidatorManager owns the underlying ValidatorManager
  • Security modules interact with the BalancerValidatorManager, not directly with the ValidatorManager
  • All validator operations are tracked and attributed to their managing security module
  • Weight limits are enforced at the BalancerValidatorManager level

For complete documentation, see the BalancerValidatorManager README (opens in a new tab).

Security Modules

PoASecurityModule

The PoASecurityModule (opens in a new tab) provides Proof of Authority (PoA) style validator management:

  • Owner-controlled validator management using OpenZeppelin's Ownable
  • Immutable BalancerValidatorManager reference
  • Delegates all operations to the BalancerValidatorManager
  • Owner can initiate validator registration, removal, and weight updates
  • Anyone can complete operations once acknowledged by the P-Chain (improving liveness)

AvalancheL1Middleware

The AvalancheL1Middleware (opens in a new tab) manages operator registration, vault registration, stake accounting, and slashing for Avalanche L1s in the Suzaku Protocol:

  • Handles operator registration and opt-in to L1s
  • Manages vault registration and stake limits
  • Tracks stake accounting for validators
  • Enforces staking requirements (primary and secondary assets)
  • Integrates with the BalancerValidatorManager to update validator sets

For more details, see: