Skip to main content

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​

note

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.