🪪 Validator Installation

Prerequisites & Assumptions

Before starting validator onboarding, you must have:

  • A fully synced Monad full node (execution + bft + rpc running)

  • Access to a Monad RPC endpoint (local or remote)

  • SECP and BLS validator keys already generated by monad-bft

  • A funded EVM address with:

    • Minimum 100,000 MON self‑stake

    • Additional MON for gas fees

⚠️ Production validators must use a hardware wallet (Ledger) for funded / authorized addresses.


Validator Eligibility Requirements

To become active, a validator must satisfy all of the following:

Requirement
Value

Minimum self‑stake

100,000 MON

Minimum total stake

10,000,000 MON

Active validator set size

Top 200 by stake

Once all conditions are met, the validator becomes active in the next epoch.

Configure Validator Node

node.toml (Validator Configuration)

Ensure you are using the validator‑themed node.toml.

Mandatory check:

  • This address receives block rewards

  • It does not have to be the funded or authorized address

Optional but recommended:

  • Update node_name to a unique validator identifier

  • Remove any full_ prefix from full‑node testing

Reload Config Without Restart

Install Staking CLI

Clone Repository

Create Virtual Environment

Install Dependencies

For development or modifications:

Configure Staking CLI

Create config.toml

Funded & Authorized Addresses

You will need:

  • Funded address — pays gas + provides stake

  • Authorized address — controls validator operations on‑chain

These can be different addresses.

🔐 Recommended:

  • Funded address → Ledger

  • Authorized address → Ledger

Never commit config.toml to git.

Extract Validator Private Keys

⚠️ DO NOT reuse old backup keys.

Always extract keys directly from keystores using monad-keystore.

Save outputs securely and verify public keys match your node identity.

Add Validator (CLI Workflow)

Verification Prompt

You must verify derived public keys:

Confirm only if keys match your node.

Successful transaction:

Add Validator (TUI Workflow)

Navigate:

Fill values carefully → confirm → submit.

Verify Validator Registration

Confirm Validator Creation

Check Execution Set

Query Validator Info

Verify:

  • Stake

  • Commission

  • Status

Common Operations

  • Delegate

  • Undelegate

  • Withdraw

  • Claim rewards

  • Compound rewards

  • Change commission

All available via CLI or TUI.

Troubleshooting

Transaction Failed (status 0)

  1. Fetch tx data via eth_getTransactionByHash

  2. Replay via eth_call for trace

Common errors:

  • insufficient balance

  • invalid validator id

  • gas too low

Security Best Practices

  • Use Ledger hardware wallets in production

  • Never store private keys in git or plaintext

  • Restrict RPC access

  • Monitor validator health continuously

Final Notes

  • Validator activation occurs next epoch after requirements met

  • Stake ranking determines activation

  • Keep node fully synced and stable

Last updated