These values are grounded in the current c8ntinuum genesis and node code.

Network constants

Create validator

Generate an operator key. eth_secp256k1 is the default account key algorithm for ctmd.
Get the node consensus public key from the validator home:
Create validator.json. The pubkey must be the /cosmos.crypto.ed25519.PubKey output from ctmd comet show-validator.
Submit the transaction:
c8ntinuum enforces a validator creation floor of 888888000000000000000000ctm (888888 * 10^18) for both the initial self-delegation amount and min-self-delegation. The current genesis validators use this minimum self-delegation and have 999912000000000000000000ctm self-bonded. For the module-level policy details and EVM staking precompile coverage, see Minimum Self-Delegation Check.

Commission bounds

Genesis validators use: General staking validation still applies: commission values cannot be negative, rate <= max-rate, max-rate <= 1, max-change-rate <= max-rate, and commission can only be increased once per 24 hours by no more than max-change-rate.

Keys and Ledger

  • Account/operator keys default to eth_secp256k1.
  • Supported account algorithms are eth_secp256k1 and secp256k1.
  • Consensus validator keys are CometBFT ed25519 keys exposed through ctmd comet show-validator.
  • The SDK default coin type is 118, with default path m/44'/118'/0'/0/0.
  • Ledger coin type 60 uses the Ethereum app and creates an eth_secp256k1 public key.
  • Ledger coin type 118 uses the Cosmos app and creates a Cosmos secp256k1 public key.
  • ctmd keys add --ledger rejects a custom --hd-path; use --coin-type, --account, and --index.

KMS and sentry architecture

The repo does not encode a required KMS or sentry topology; use these as operational recommendations.
  • Lowest-complexity signing uses the local CometBFT file signer under ~/.ctmd/config/priv_validator_key.json, but this has the largest key-exposure risk.
  • Remote signing can be implemented with TMKMS or Horcrux-compatible CometBFT remote signer setups.
  • For threshold signing or high availability, prefer Horcrux-style threshold signing over running duplicate live validator keys.
  • Never run the same validator consensus key in two active signers at once.
  • Keep the validator node private and connect it only to sentry nodes.
  • Public sentries should expose P2P and any intended public RPC surfaces; the validator should use sentries as persistent peers.
  • Recommended validator-side settings include pex = false, no public RPC, and firewall access limited to sentries and the signer.
  • Recommended sentry-side settings include pex = true, persistent_peers including the validator, and private_peer_ids including the validator node ID.

Ports and services

API, gRPC, JSON-RPC, and telemetry are disabled by default unless explicitly enabled in config or via start flags.

Monitoring

Monitor at least:
  • Process health and automatic restart behavior for ctmd.
  • Sync status from ctmd status; alert if catching_up is true on a validator.
  • Peer count and sentry connectivity from CometBFT RPC.
  • Block height progress, block time, disk usage, memory, file descriptors, and database growth.
  • Validator signing info from ctmd query slashing signing-info $(ctmd comet show-address).
  • Missed blocks well before the downtime threshold; alert before 500 missed blocks in the 1000 block window.
  • JSON-RPC, gRPC, API, and indexer latency only on nodes intentionally serving those surfaces.
Validator incentive state is tracked by x/valrewards, including epoch reward settings, reward-pool funding, outstanding reward queries, and one-time validator reward claims. See Validator Rewards for CLI and precompile details.

Slashing, jailing, and unjail

Checked-in slashing params: A validator is jailed for downtime when it misses more than half of the 1000 block signing window after the slashing warm-up period. Downtime burns 1% and jails for 600s. Double-signing burns 5%, jails, and tombstones the validator; tombstoned validators cannot be unjailed. Unjail only after fixing the signer/node issue, waiting until jailed_until has passed, and confirming self-delegation is at least 888888000000000000000000ctm.

Upgrade flow and emergency contacts

Use Upgrade Instructions as the canonical upgrade runbook. Validators should layer signing-key safety, sentry topology, TMKMS, and double-sign protection checks on top of each release-specific upgrade notice.