Skip to main content
Version: Next

Validator Registration using pryzmd

This guide provides step-by-step instructions on how to register a transaction (tx) for running a validator on a Pryzm blockchain network using the Pryzm command-line interface (CLI). By following these steps, you will be able to submit the necessary transaction to register as a validator and participate in the consensus process.

Prerequisites

Before proceeding with the validator registration, ensure you have the following prerequisites:

  • Installed and configured pryzmd: Ensure that you have installed the pryzmd on your machine and configured it to connect to the desired Pryzm network. You can refer to the official Pryzm documentation for instructions on how to install and configure the pryzmd.

  • Funded Account: Make sure you have an account with sufficient funds to cover the required transaction fees for validator registration. If you don't have an account, create one using the pryzmd and acquire the necessary funds.

Steps to Register a Validator

  1. Generate a Validator Key Pair:

    • Use the pryzmd to generate a new validator key pair by running the following command:

      pryzmd keys add <validator_key_name> --keyring-backend <keyring_backend>

      Replace <validator_key_name> with the desired name for your validator key, and <keyring_backend> with the appropriate keyring backend option (e.g., os, file, etc.).

    • Follow the prompts to set a passphrase for your validator key and securely store the generated mnemonic.

  2. Create a Validator:

    • Register your validator by submitting a transaction to the network. Run the following command:

      pryzmd tx staking create-validator \
      --amount <staking_amount> \
      --pubkey <validator_pubkey> \
      --moniker <validator_moniker> \
      --commission-rate <commission_rate> \
      --commission-max-rate <commission_max_rate> \
      --commission-max-change-rate <commission_max_change_rate> \
      --min-self-delegation <min_self_delegation> \
      --from <your_account_key_name> \
      --gas auto \
      --chain-id <chain_id> \
      --keyring-backend <keyring_backend> \
      --node <node_url>

      Replace the following placeholders:

      • <staking_amount>: The amount of tokens you want to stake for your validator.
      • <validator_pubkey>: The public key of your validator generated in step 1.
      • <validator_moniker>: The name or identifier for your validator.
      • <commission_rate>: The commission rate for your validator (in decimal format, e.g., 0.1 for 10%).
      • <commission_max_rate>: The maximum commission rate your validator can charge.
      • <commission_max_change_rate>: The maximum rate at which your commission can change.
      • <min_self_delegation>: The minimum amount of tokens you want to self-delegate.
      • <your_account_key_name>: The name of your account key.
      • <chain_id>: The ID of the target blockchain network.
      • <keyring_backend>: The keyring backend option you previously used for key generation.
      • <node_url>: The URL of a running full node to connect to.
    • Confirm the transaction and provide your passphrase when prompted.

  3. Wait for Confirmation:

    • After submitting the transaction, wait for the network to process and confirm it. The time required for confirmation may vary depending on the network's block time and congestion.
  4. Check Validator Status:

    • Use the following command to check the status of your validator:

      pryzmd query staking validator <validator_operator_address> --chain-id <chain_id>

      Replace <validator_operator_address> with the operator address of your validator, and <chain_id> with the ID of the blockchain network.

    • Verify that the status of your validator is "bonded" or "unbonding," indicating that your registration was successful.

Congratulations! You have successfully registered as a validator on the Pryzm blockchain network using the pryzmd. Your validator will now participate in the consensus process and contribute to securing the network. Monitor your validator's performance and adjust your configuration as needed to maintain optimal operation.

Note: Do not forget to setup and configure the pryzm-feeder service for your validator service. pryzm-feeder is responsible for providing reliable, up-to-date information about external data sources. Validators rely on this information to make informed decisions about the network state and required actions.