Core Concepts
Validator set
A validator set represents the collection of validators for a specific epoch, containing their cryptographic keys, voting power, and operational status. Each validator set includes:
- Validators: Array of validator entries with operator addresses, voting power, and cryptographic keys
- Quorum Threshold: Minimum voting power required for valid signatures
- Required Key Tag: Specifies which cryptographic key type must be used for signatures
- SSZ Root: Merkle root of the validator set data for efficient verification
Epoch
An epoch represents a time period during which a specific validator set is active. The system tracks epochs through:
- Epoch Number: Sequential identifier for each validator set period
- Capture Timestamp: When the validator set was captured from the underlying network
- Header Commitment: Process of committing new validator set headers to settlement contracts
BLS signatures and ZK proof aggregation
The relay supports two signature aggregation methods:
Simple BLS Aggregation
Direct BLS signature aggregation suitable for smaller validator sets (≤125 validators). The aggregation process combines:
- G1 signatures from individual validators
- aggregated G1, G2 public keys, signature and messageHash for verification
- Non-signer tracking for quorum validation
Zero-Knowledge Proof Aggregation
ZK-based verification for large validator sets with constant verification cost. This method:
- Generates cryptographic proofs of signature validity
- Supports configurable validator set sizes
- Provides privacy-preserving verification
Quorum Signature
The network maintains a validator set that communicates via P2P to regularly aggregate signatures of ValSetHeader structures (and signatures of arbitrary data upon external request). The quorum signature process:
- Signature Collection: Validators sign validator set headers using their private keys
- Aggregation: Aggregator nodes collect signatures and verify quorum thresholds
- Commitment: Committer nodes submit aggregated proofs to settlement contracts
Updates are committed to one or many Settlement chains, where the ValSetHeader structure combined with cryptographic proofs enables efficient verification of validator consensus
Attestation
Relay allows the validator set to issue attestations through HTTP API endpoints. The attestation system enables:
- Arbitrary Message Signing: Validators can sign arbitrary data structures
- Quorum Verification: Attestations require sufficient voting power for validity
- Cross-Chain Compatibility: Signatures can be verified on multiple settlement chains
The HTTP API provides endpoints for requesting signatures and retrieving aggregated attestations from the validator network.
Settlement
Settlement contracts manage the canonical state of validator sets across epochs. Key settlement functions include:
- Header Commitment: Storing new validator set headers with cryptographic proofs
- Signature Verification: Validating quorum signatures against stored validator sets
- Extra Data Storage: Flexible key-value storage for verification-specific data
- Cross-Chain State: Maintaining validator set history across multiple chains
The settlement system ensures validator set transitions are cryptographically verified and provides the foundation for cross-chain signature verification