Skip to content

Nuffle Validator Node Installation

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!

ComponentTestnet
Memory32GB DDR4
CPUx86_64 (Intel, AMD) processor with at least 8 physical cores
CPU FeaturesCMPXCHG16B, POPCNT, SSE4.1, SSE4.2, AVX
Disk1.5TB SSD (NVMe SSD is recommended)
Operating SystemLinux (tested on Ubuntu 22.04 LTS)
Bandwidth100 MBps for Download / Upload

Rollups on the Ethereum network are gaining traction, indicating a new phase in the development of decentralized applications (dApps) and smart contracts. However, as the ecosystem continues to evolve towards a rollup-centric roadmap, it confronts new challenges such as state and liquidity fragmentation and extended finality time.

In order to solve this problem, the Nuffle Fast Finality Layer (NFFL, formerly SFFL) was designed. Through it, various chains can, while supplying block data to NEAR DA, rely on the economic security of an EigenLayer AVS to provide a faster block finality to various protocols and use-cases while also including an additional public DA layer into their stack.

This universal, secure and fast finality leads to major advancements in interoperability protocols, enabling or improving designs such as general bridging and chain abstraction.

For more details, refer to Protocol Design. NFFL is under active development and is not yet available on any publicly accessible environments.

Terminal window
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg
echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
sudo apt-get update
sudo apt-get install docker-ce docker-ce-cli containerd.io
docker version
Terminal window
VER=$(curl -s https://api.github.com/repos/docker/compose/releases/latest | grep tag_name | cut -d '"' -f 4)
curl -L "https://github.com/docker/compose/releases/download/"$VER"/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
chmod +x /usr/local/bin/docker-compose
docker-compose --version
Terminal window
curl -sSfL https://raw.githubusercontent.com/layr-labs/eigenlayer-cli/master/scripts/install.sh | sh -s
export PATH=$PATH:~/bin
eigenlayer --version
Terminal window
git clone https://github.com/NethermindEth/near-sffl.git
cd near-sffl/setup/plugin
cp .env.example .env

Generate encrypted ECDSA and BLS keys using the CLI:

Section titled “Generate encrypted ECDSA and BLS keys using the CLI:”
Terminal window
eigenlayer operator keys create --key-type ecdsa "wallet_name"

!!! Set password & save your private key

Terminal window
eigenlayer operator keys create --key-type bls "wallet_name"

!!! Set password & save your private key

Terminal window
eigenlayer operator keys import --key-type ecdsa "wallet_name" PRIVATEKEY
Terminal window
eigenlayer operator keys import --key-type bls "wallet_name" PRIVATEKEY

You’ll need at least 1 Holesky ETH to cover the gas cost of the operator registration.

Link faucet Holesky ETH: https://cloud.google.com/application/web3/faucet/ethereum/holesky https://holesky-faucet.pk910.de/

Terminal window
eigenlayer operator config create
  • Enter your operator address: your Eigenlayer address
  • Enter your earnings address (default to your operator address): your Eigenlayer address
  • Enter your ETH rpc url: https://ethereum-holesky-rpc.publicnode.com
  • Select your network: holesky
  • Select your signer type: local_keystore
  • Enter your ecdsa key path: /root/.eigenlayer/operator_keys/allnodesone-test1.ecdsa.key.json
Terminal window
nano /root/chainbase-avs-setup/holesky/metadata.json

Sample:

Terminal window
{
"name": "Tinh-LTH",
"website": "https://allnodes.one",
"description": "Tinh-LTH",
"logo": "https://raw.githubusercontent.com/tinhdowoss/js-tinhdv-api/master/360_360.png",
"twitter": "https://x.com/tinhs2cop"
}

Note Logo support .png only and less than 1Mb

  • Create a Public repositry in github
  • Upload logo.png and metadata.jsonthere.
Terminal window
nano /root/chainbase-avs-setup/holesky/operator.yaml

Set URL metadatar with raw file link:

Terminal window
eigenlayer operator register operator.yaml

You Operator link: https://holesky.eigenlayer.xyz/operator/0xe3f67637a0e139a9b5a9e38af480cc56b184b663

Check status:

Terminal window
eigenlayer operator status operator.yaml

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!