Skip to main content

Multichain Security Considerations

The following table outlines the key security aspects to consider when implementing multichain verification services.

RiskMitigationImplementation
Stale Stake DataConfigure appropriate staleness periodsSet staleness > 7 days in your OperatorSetConfig
Key CompromiseMonitor for operator ejections and key rotationsListen for AllocationManager.OperatorSlashed and KeyRegistrar.KeyDeregistered
Insufficient StakeSet minimum thresholds in verificationUse verifyCertificateNominal() with minimum stake requirements
Operator CentralizationImplement stake capping in your calculatorCap individual operators at 10–20% of total weight
Certificate ReplayCheck certificate freshnessValidate referenceTimestamp is recent and within staleness period

The following table outlines possible emergency procedures.

ProcedureAction
Operator EjectionImmediately updates across all chains when operators are slashed or ejected
Operator Registration/DeregistrationImmediately updates across all chains when operators register or deregister
Pause MechanismsSystem-wide pause capabilities for critical vulnerabilities
Key RotationOperators can rotate compromised keys with configurable delays

The operator tables of all operatorSets are updated weekly on Monday at 14:00 UTC on mainnet and daily at 14:00 UTC on testnet. To ensure that an operatorSet can immediately begin verifying certificates and that its stake weights do not become stale between table updates, the multichain protocol updates the table for a single operatorSet registered to the protocol when the following events are emitted:

  • AllocationManager: OperatorSlashed
  • AllocationManager: OperatorAddedToOperatorSet
  • AllocationManager: OperatorRemovedFromOperatorSet
  • CrossChainRegistry: GenerationReservationCreated