Registration
Here we'll go step-by-step on how to opt-in into NFFL. It's a quick and easy process that will allow you to start contributing to the network once the testnet starts functioning.
Hardware Requirements
The opt-in process is not hardware-intensive - you should be able to do it with little to no specific requirements. If you wish to use the same setup to run the operator in the future, you can follow the hardware requirements on Setup.
Steps
At this initial testnet stage, operators need to be whitelisted. If you are interested and have not already been whitelisted, please contact the NFFL team!
Step 1: Complete EigenLayer Operator Registration
Complete the EigenLayer CLI installation and registration here.
Step 2: Install Docker
Install Docker Engine on Linux.
Step 3: Prepare Local NFFL files
Clone the NFFL repository and execute the following.
git clone https://github.com/Nuffle-Labs/nffl.git
cd nffl/setup/plugin
cp .env.example .env
Step 4: Copy your EigenLayer operator keys to the setup directory
cp <path-to-your-operator-ecdsa-key> ./config/keys/ecdsa.json
cp <path-to-your-operator-bls-key> ./config/keys/bls.json
Step 5: Update your .env
file
You should have something similar to this in your .env
:
# Operator BLS and ECDSA key passwords (from config/keys files)
BLS_KEY_PASSWORD=fDUMDLmBROwlzzPXyIcy
ECDSA_KEY_PASSWORD=EnJuncq01CiVk9UbuBYl
For registering, set your EigenLayer ECDSA and BLS key passwords in the
ECDSA_KEY_PASSWORD
and BLS_KEY_PASSWORD
fields.
Step 6: Update your configuration files
Now, in setup/plugin/config/operator.yaml
, set your operator_address
and double-check the contract addresses.
# Operator ECDSA address
operator_address: 0xD5A0359da7B310917d7760385516B2426E86ab7f
# AVS contract addresses
avs_registry_coordinator_address: 0x0069A298e68c09B047E5447b3b762E42114a99a2
operator_state_retriever_address: 0x8D0b27Df027bc5C41855Da352Da4B5B2C406c1F0
# AVS network RPCs
eth_rpc_url: https://ethereum-holesky-rpc.publicnode.com
eth_ws_url: wss://ethereum-holesky-rpc.publicnode.com
# EigenLayer ECDSA and BLS private key paths
ecdsa_private_key_store_path: /nffl/config/keys/ecdsa.json
bls_private_key_store_path: /nffl/config/keys/bls.json
You'll need to refer to the Setup again before running the node for other important fields.
Step 6: Run the registration script
Now, simply run ./register.sh
! This will fetch our latest operator plugin
container and run it with the --operation-type opt-in
flag. It will
opt-in your operator into NFFL.