Getting Started

Key Setup

This step collects your ECDSA and BLS keys for whitelisting and for registration into Fermah AVS through EigenLayer smart contracts, respectively.

We are going to need an ECDSA key imported, and a BLS key generated.

A passphrase will be prompted from the user to securely store the keys. Keys are saved using a user-provided name, which will be used to refer to them in other CLI commands.

ECDSA Keypair

Import a private key matching the ECDSA key provided in the form, using either:

  • A path to an existing private key file, or
  • The hex-encoded private key string (0x hex prefix is optional)
NAME=ecdsa.operator
KEY=hex_ecdsa_private_key

fermah-operator key import --key-type ecdsa --name $NAME --private-key $KEY

We are temporarily not able to import EigenLayer's ECDSA keyfile format, this feature is under development.

BLS Keypair

Operators should generate a unique BLS key for every AVS they onboard to. Generate a key using our CLI:

NAME=bls.operator

fermah-operator key gen --name $NAME --key-type bls

For both ECDSA and BLS:

  • Output will include the public key which will be used as the identifier to get you whitelisted
  • Private key will be saved to ~/.fermah/keys/name.json according to the Web3 Secret Storage Definition

Command Reference

The following arguments apply to both ECDSA and BLS key operations:

ArgumentDescriptionRequired
--nameUnique name for keyYes
--key-typeecdsa or blsYes
--password-stdinRead password from stdinNo
--no-pw-confirmDo not ask for password confirmationNo
--no-passwordForce no password for keystoreNo

Next Steps: Whitelist Keys

After generating your keys:

  1. Submit both ECDSA and BLS public keys through our Fermah AVS - Operator Application Form for Testnet on Holesky
  2. Wait for notification that your keys have been registered
  3. Proceed with the remaining setup steps
Previous
Installation