Skip to content

Latest commit

 

History

History
66 lines (48 loc) · 1.71 KB

README.md

File metadata and controls

66 lines (48 loc) · 1.71 KB

Incredible Squaring AVS in Python

Do not use it in Production, testnet only.

A Python implementation of the EigenLayer Incredible Squaring AVS

Dependencies

  1. Install foundry
curl -L https://foundry.paradigm.xyz | bash
foundryup
  1. Install docker

  2. Build the contracts:

make build-contracts
  1. Install MCL
sudo apt install libgmp3-dev
wget https://github.com/herumi/mcl/archive/refs/tags/v1.93.zip
unzip v1.93.zip
cd mcl-1.93
mkdir build
cd build
cmake ..
make
make install
  1. Python3
  2. Install required modules:
pip install -r requirements.txt

Tip

This AVS employs the eigensdk-python to facilitate interaction with EigenLayer contracts and to aggregate BLS signatures.

Running

This simple session illustrates the basic flow of the AVS. The makefile commands are hardcoded for a single operator, but it's however easy to create new operator config files, and start more operators manually (see the actual commands that the makefile calls).

Start anvil in a separate terminal:

make start-anvil-chain-with-el-and-avs-deployed

The above command starts a local anvil chain from a saved state with eigenlayer and incredible-squaring contracts already deployed (but no operator registered).

Start the aggregator:

make start-aggregator

Register the operator with eigenlayer and incredible-squaring, and then start the process:

make start-operator