KIIEX – powered by KiiChain
  • Learn
    • What is KIIEX?
    • What is KiiChain?
    • KiiChain
      • Vision of KiiChain
      • Use Cases
      • Roadmap
      • Whitepaper
    • Tokenomics
      • Intro Coin Details
      • Coin Unlocking Schedule
      • Utility
      • Evergreen Model
    • Getting Started
      • Get a Wallet
      • Set Up a Web Wallet
      • Connect Wallet to Explorer App
  • Kii Ambassadors
  • CONNECT TO KIIEX
    • Set Up KIIEX Account
      • Contact OTC Desk
    • Connect to KIIEX APIs
      • Introduction
        • New endpoints
        • Revised calls
        • Behavior Changes
        • Revised Calls 3.5.0
      • Background Information
        • Message Frame
        • Standard Response Objects and Common Error Codes
        • Modules
        • Users, Accounts, and Permissions
        • Products and Instruments
        • Quotes and Orders
        • Time– and Date-Stamp Formats
        • The Trading Day
      • Users
        • Activate2FA
        • AddUserAffiliateTag
        • Authenticate2FA
        • AuthenticateUser
        • CancelUserReport
        • GetAllUnredactedUserConfigsForUser
        • GetL2Snapshot
        • GetLevel1
        • GetUnredactedUserConfigByKey
        • GetUserAccountInfos
        • GetUserAccounts
        • GetUserAffiliateCount
        • GetUserAfilliateTag
        • GetUserConfig
        • GetUserDevices
        • GetUserReportTickets
        • GetUserReportWriterResultRecords
        • GetValidate2FARequiredEndpoints
        • LogOut
        • RegisterNewDevice
        • SubscribeAccountEvents
        • SubscribeBlockTrades
        • SuscribeLevel1
        • SubscribeLevel2
        • SubscribeTicker
        • SubscribeTrades
        • UnsuscribeBlockTrades
        • UnsubscribeLevel1
        • UnsubscribeLevel2
        • UnsubscribeTicket
        • UnsuscribeTrades
        • UpdateUserAffiliateTag
        • Validate2FA
      • Accounts
        • GetAccountInfo
        • GenerateTransactionActivityReport
        • GenerateTradeActivityReport
        • GenerateTreasuryActivityReport
        • GetAllAccountConfigs
        • GetAccountPositions
        • GetTreasuryProductsForAccount
        • ScheduleTradeActivityReport
      • Trades
        • GetAccountTrades
        • GetAccountTransactions
        • GetAllOpenTradeReports
        • GetOpenTradeReports
        • GetTickerHistory
        • GetTradesHistory
      • OMS Orders
        • CancelAllOrders
        • CancelOrder
        • CancelQuote
        • CancelReplaceOrder
        • CreateQuote
        • GetOMSFeeTiers
        • GetOpenOrders
        • GetOpenQuotes
        • GetOrderFee
        • GetOrderHistory
        • GetOrderHistoryByOrderId
        • GetOrdersHistory
        • GetOrderStatus
        • ModifyOrder
        • SendOrder
        • SubmitBlockTrade
        • UpdateQuote
      • Products
        • GetProduct
        • GetProducts
      • Instruments
        • GetInstrument
        • GetInstruments
      • Tickets
        • CreateDepositTicket
        • CancelWithdraw
        • CreateWithdrawTicket
        • Deposit withdraw template
        • GetAccountDepositTransactions
        • GetAccountWithdrawTransactions
        • GetAllDepositRequestInfoTemplates
        • GetDeposits
        • GetDepositInfo
        • GetDepositTicket
        • GetDepositRequestInfoTemplate
        • GetOMSWithdrawFees
        • GetStandardTemplateExample
        • GetTetherRPCWithdrawTemplateExample
        • GetWithdrawFee
        • GetWithdraws
        • GetWithdrawTemplate
        • GetWithdrawTemplateTypes
        • GetWithdrawTicket
        • GetWithdrawTickets
        • SubmitDepositTicketComment
        • SubmitWithdrawTicketComment
      • Misc
        • Ping
  • BUILD ON KIICHAIN
    • Developer Hub
    • Testnet Oro
    • Endpoints - Cosmos
      • EVM
        • VM
        • ERC20
        • FeeMarket
      • IBC
      • Kiichain
        • TokenFactory
      • Cosmwasm
      • Cosmos
        • Auth
        • Authz
        • Bank
        • Tendermint
        • Consensus
        • Distribution
        • Evidence
        • Feegrant
        • Gov
        • Slashing
        • Staking
        • Tx
        • Upgrade
    • Developer Tools
      • RWA Protocol
      • Rust SDK
      • JS/TS SDK
        • Kiijs-evm
        • Kiijs-proto
        • Kiijs-utils
      • Deploy a smart contract
      • Deploy a dApp
      • Testnet faucet
    • Smart Contracts
    • Modules
      • TokenFactory
      • EVM
  • Precompiled contracts
  • Validate the Network
    • Getting Started
      • What is a delegator?
      • What is a validator?
    • Run a Validator / Full Node
      • Getting started
      • Step-by-Step Guide
        • Becoming a Validator
        • Recovering Legacy Addresses
      • Maintaining a validator
      • Incentive
      • Technical requirements
      • Validator Security
    • Economics
      • Staking Requirements
      • Delegation / Staking
      • Rewards
      • Block Rewards Formula
      • APR
    • Delegator Information
      • Choosing a validator
      • Directives of delegators
      • Incentive to stake
      • Security considerations
      • Risks to consider
Powered by GitBook
LogoLogo
On this page
  • Becoming a validator
  • Creating a validator
Export as PDF
  1. Validate the Network
  2. Run a Validator / Full Node
  3. Step-by-Step Guide

Becoming a Validator

How to run your own Kiichain Validator

PreviousStep-by-Step GuideNextRecovering Legacy Addresses

Last updated 18 days ago

The configuration followed before, set your node as a full node, this page will guide you to upgrade your node into a validator.

Becoming a validator

Validators are mainly responsible

  • The build must be done on top of the upgrade tag (E.g. v1.0.1, v2.0.0)

  • Check the section on how to do it

Make sure that the binary has the correct version with:

kiichaind version

To add a new upgrade you must run the following command on Cosmovisor:

cosmovisor add-upgrade <upgrade-name> <path-to-binary>

Where:

  • <upgrade-name> is the on-chain upgrade name

  • <path-to-binary> is the full path for the binary

Example:

cosmovisor add-upgrade 1.3.0 /home/ubuntu/kiichain/build/kiichaind

validating and committing blocks. The main advantages of becoming a validator are:

  • Fees. Each transaction has fees, and validators are the main entry points of fee distribution. And due to his help on decentralization, part of the fee is exclusive for validators.

Creating a validator

  1. Key creation

To create a validator, you first must have a key available for transactions. A new key can be created with:

kiichaind keys add $VALIDATOR_KEY_NAME

You will get an output such as:

- name: asd
  type: local
  address: kii1507zhg2k7al477zqarzru7n4566lvcp9xnsxll
  evm_address: ""
  pubkey: '{"@type":"/cosmos.crypto.secp256k1.PubKey","key":"Ak5kTpx4OIzXYWAOPjEVNFnn/9O+6BUgSbYCYpnUpRU5"}'
  mnemonic: ""

**Important** write this mnemonic phrase in a safe place.
It is the only way to recover your account if you ever forget your password.

invite hollow salon dutch since six embrace squeeze label other pass bean size public lazy scissors spare blood safe nothing rapid list ritual license
  1. Transfer funds

Ensure your account has sufficient funds for fees and self-delegation.

  1. Create the validator

A validator will be created based on your consensus public key. You can check your current public key using:

kiichaind tendermint show-validator

To create a validator, first you will need to create a JSON with your validator information.

This template can be used when creating the validator:

{
    "pubkey": {"@type":"/cosmos.crypto.ed25519.PubKey","key":"C2xVqc+u101PQShdTJxGOF2HFCtYWwMDYLl4r2swiGE="},
    "amount": "1000000000000000000000akii",
    "moniker": "MY VALIDATOR",
    "identity": "optional identity signature (ex. UPort or Keybase)",
    "website": "validator's (optional) website",
    "security": "validator's (optional) security contact email",
    "details": "validator's (optional) details",
    "commission-rate": "0.1",
    "commission-max-rate": "0.2",
    "commission-max-change-rate": "0.01",
    "min-self-delegation": "1"
}

Where:

  • pubkey : Validator's public key used for signing blocks (ed25519).

  • amount: Amount of tokens to self-delegate (e.g., 1000 akii with 18 decimals).

  • moniker: Validator's display name.

  • identity (optional): Identity string (e.g., Keybase or UPort for verification).

  • website (optional): Validator’s website URL.

  • security (optional): Security contact email for incident disclosure.

  • details (optional): Additional description of the validator.

  • commission-rate :Initial commission rate (e.g., 0.1 = 10%).

  • commission-max-rate: Maximum commission rate allowed (e.g., 20%).

  • commission-max-change-rate: Max daily change in commission (e.g., 1%).

  • min-self-delegation: Minimum tokens validator must always self-delegate to stay active.

To apply, you can use the following command:

# Basic chain information
CHAIN_ID="oro_1336-1"
VALIDATOR_KEY_NAME=<my-validator-key>

# Apply the create validator transaction
kiichaind tx staking create-validator /
  ./validator.json /
  --chain-id=$CHAIN_ID /
  --gas="auto" /
  --gas-adjustment 1.3 /
  --gas-prices="1000000000akii" /
  --from=$VALIDATOR_KEY_NAME

The transaction must be done on the machine running the node

  • An additional flag --node can be passed to point to an available RPC node

Further instructions on how to run a validator can be found at .

Running a Validator
Binary Installation