Skip to content
Bastin edited this page Aug 11, 2024 · 3 revisions

EigenSync

What is EigenSync?

EigenSync revolutionizes the power of restaked ETH by extending its utility beyond the Ethereum main network. It empowers Actively Validated Services (AVS) with an added layer of security and agility provided by EigenLayer, not just on the Ethereum mainnet but across any EVM-compatible chain.

By leveraging EigenSync, AVSs can synchronizes the state of their middleware contracts, such as its operators' staking and keys, across multiple chains and enables operators to hold ownership of AVSs contracts on different chains.

This solution empowers developers to expand their AVSs into a multichain ecosystem, offering a seamless and secure way to manage contracts across various networks.

Main Components

The EigenLayer Synchronizer consists of two main components:

  1. Operator Registry Contract
  2. Synchronizer Service

Operator Registry Contract

The Operator Registry Contract is a pruned version of the EigenLayer middleware contracts. It maintains records of addresses, staking information, sockets, and G1 and G2 public keys of Eigen operators across multiple chains. Additionally, it keeps track of active operators for any Autonomous Verification Systems (AVS) and provides tools to verify Boneh-Lynn-Shacham (BLS) signatures issued by the AVS operators.

This contract provides functions for operators to recursively add, delete, and update their information. For instance, operators like op1 and op2 can issue an aggregated BLS signature to approve the addition of a new operator (op3) or update/delete existing operators. Additionally, it includes a method that allows AVS contracts on these chains to verify aggregated BLS signatures generated by AVS operators.

Synchronizer Service

The Synchronizer is an oracle servcie that operates on nodes (active operators) to monitor updates of AVS operators on the Ethereum mainnet using a subgraph service. It issues signatures that enables applying these events on Operator Registry contracts on other chains to sync them with the mainnet.

The service uses the Python EigenSDK developed by the Zellular project to issue BLS signatures on the nodes. This SDK simplifies the process, providing a reliable and efficient way to manage signatures.

The service includes an aggregator that monitors events emitted on the Ethereum mainnet. After a delay, it sends requests to nodes to retrieve their signatures. These signatures are then aggregated to initiate corresponding transactions on the Operator Registry Contract, ensuring synchronization with the Ethereum mainnet.

System Overview

The following diagram illustrates the architecture and flow of the Synchronizer service:

EigenLayer Synchronizer Diagram

Current Milestones and Future Goals

Current Milestone

Currently, every AVS on each chain must deploy a version of the Operator Registry Contract, a subgraph, and a Synchronizer Service of their own. This decentralized approach ensures that each chain maintains its operations but requires considerable setup and management.

Future Goals

  1. AVS-Based Service Platform:

    • Generalized Operator Registry Contract: We aim to offer the Eigen Layer Synchronizer as an AVS. This platform will enable other AVSs to register on our platform and use a generalized version of the Operator Registry Contract as an external contract to verify their BLS signatures across multiple chains.
  2. Support for Multiple Quorums:

    • EigenLayer Quorum Information: We also plan to support multiple quorums that the EigenLayer uses and make this information accessible across multiple chains.