Register Option 2 (Post Network Launch)

Registering as a validator during Exocore's bootstrap phase.

Exocore has a unique, open-ended way to kickstart its network. Instead of locking in a small group of initial validators, Exocore allows anyone to become a validator right from the start using our Bootstrap contract.

Please note you should only proceed with the steps for either Before Network Launch or After Network Launch. At this current time, most validators will select "Post Network Launch". Do not complete both sections.

Here's how it works:

Option 1

  • Bootstrap Phase: If the network isn't live yet, you can register as a validator through the Bootstrap contract on Ethereum. However, keep in mind that this registration process closes 24 hours before the network launch to give the bootstrap validators time to prepare.

Option 2

  • Post Network Launch: Once the network is up and running, you can register directly on the Exocore chain itself.

This approach ensures that the validator set isn't pre-determined by a few stakeholders. Instead, it's open to anyone who wants to participate, making the launch phase more inclusive and decentralized.

To ensure your validator is eligible to participate in consensus, it is mandatory to have a minimum self-delegation of 1000 USD of value in any supported token. This self-delegation acts as a commitment and ensures that validators have a vested interest in maintaining the integrity and security of the network.


Similar to other Delegated Proof-of-Stake networks, Exocore requires validators to stake their own tokens and delegators to delegate their token to these validators. However, one major distinction is that Exocore supports multiple types of tokens, which may or may not live on the same chain.

Exocore is an L1 Cosmos-based chain which supports multiple tokens on Ethereum Sepolia and Holesky testnets, with additional chains to be supported in the near future. To that end, users are required to have two addresses - one on Ethereum and one on Exocore (generated previously) which may or may not be derived from the same mnemonic.

If any of the transactions in the next steps produce error code -32000: execution reverted, it likely means that you don't have enough ETH to pay for gas. This is caused by a spike in Sepolia gas prices; you can either (1) wait for the gas prices to normalize, or (2) obtain more Sepolia ETH through the faucets.


Follow these steps if you're registering during the POST NETWORK LAUNCH phase.


Registration Steps

The Bootstrap contract is not available after the network launches; instead, validator registration happens on Exocore while the assets continue to live on Ethereum. Since Exocore is a restaking L1 supporting multiple AVSs, all validators must first register as “operators” and then opt-in to the Exocore-chain-as-an-AVS as “validators”.

  1. Contact Exocore contributors and provide your exo1 address to obtain some exo native tokens. These tokens will be used to pay for gas on Exocore.

  2. Register the operator.

exocored --home $HOMEDIR tx operator register-operator \
    --meta-info "ValidatorName" \
    --commission-rate 0.5 \
    --commission-max-rate 0.99 \
    --commission-max-change-rate 0.1 \
    --from $ACCOUNT_KEY_NAME \
    --gas-prices 700000000hua

To check the operator registration, query the node.

exocored --home $HOMEDIR query operator get-operator-info \
    $(exocored --home $HOMEDIR keys show -a $ACCOUNT_KEY_NAME) \
    # the line below may be eliminated to query localhost:26657 (your node)
    --node $EXOCORE_COS_GRPC_URL \
    --output json | jq
# Expected output
{
  "earnings_addr": "<your_exo1_addr>",
  "approve_addr": "<your_exo1_addr>",
  "operator_meta_info": "<your_operator_name>",
  "client_chain_earnings_addr": {
    "earning_info_list": []
  },
  "commission": {
    "commission_rates": {
      "rate": "<your_commission>",
      "max_rate": "<your_commission_max>",
      "max_change_rate": "<your_commission_max_change>"
    },
    "update_time": "<registration_time>"
  }
}
  1. Opt-in to the AVS to register as a validator.

exocored --home $HOMEDIR tx operator opt-into-avs \
    $(exocored --home $HOMEDIR query avs AVSAddrByChainID $CHAIN_ID --output json | jq -r .avs_address) \
    $(exocored --home $HOMEDIR tendermint show-validator) \
    --from $ACCOUNT_KEY_NAME \
    --gas-prices 700000000hua

To check if your operator is successfully opted in, query the consensus (validator) key for the chain.

exocored --home $HOMEDIR query operator get-operator-cons-key \
    $(exocored --home $HOMEDIR keys show -a $ACCOUNT_KEY_NAME) \
    $CHAIN_ID \
    # the line below may be eliminated to query localhost:26657 (your node)
    --node $EXOCORE_COS_GRPC_URL \
    --output json | jq
# expected output
{
  "public_key": {
    "ed25519": "<sample bytes key>"
  },
  "opting_out": false
}

Your validator is now registered and ready to accept (self-) delegations. As a reminder, a minimum self-delegation of 1,000 USD in token value is required for inclusion in the validator set.

Last updated