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.jsonaccording to the Web3 Secret Storage Definition
Command Reference
The following arguments apply to both ECDSA and BLS key operations:
| Argument | Description | Required |
|---|---|---|
| --name | Unique name for key | Yes |
| --key-type | ecdsa or bls | Yes |
| --password-stdin | Read password from stdin | No |
| --no-pw-confirm | Do not ask for password confirmation | No |
| --no-password | Force no password for keystore | No |
Next Steps: Whitelist Keys
After generating your keys:
- Submit both ECDSA and BLS public keys through our Fermah AVS - Operator Application Form for Testnet on Holesky
- Wait for notification that your keys have been registered
- Proceed with the remaining setup steps