Register a validator

This document provides information on registering as the FirmaChain’s network Validator.

staking create-validator

If you join the network as a Validator, you will be signing on newly created blocks and will receive rewards as a result of such action.

1. Check validator public key

firmachaind comet show-validator
# output example: {"@type":"/cosmos.crypto.ed25519.PubKey","key":"<BASE64_KEY>"}

Retrieve your validator node's public key. You will use the key value from the output in the next steps.

2. Create validator config file

touch validator.json && vi validator.json

Create the file validator.json and open it with an editor. This file will contain your validator config.

3. Fill in validator information

{
    "pubkey": "{using pubkey}",
    "amount": "1000000ufct",
    "moniker": "myvalidator",
    "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"
}

Fill in the validator.json file with the following details:

Name

Type

Description

amount

ufct

Amount to delegate.

moniker

string

Custom username of your node.

details

string

Brief Introduction.

website

string

Your website address. (only if you have one)

security-contact

string

Your e-mail address.

commission-rate

float

Validator's commission rate

commission-max-rate

float

Validator's maximum commission rate.

commission-max-change-rate

float

Maximum rate of change of a validator's commission rate per day.

min-self-delegation

integer

Minimum amount of tokens that the node operator promises to keep bonded.

identity

string

keybase 64bit security code.

4. Submit validator registration

firmachaind tx staking create-validator validator.json \
--chain-id colosseum-1 \
--fees 20000ufct \
--from <key_name>

Run the above command to broadcast the validator registration transaction using the information defined in validator.json.

  • --chain-id: The chain ID of the network (here colosseum-1)

  • --fees: Transaction fee (e.g., 20000ufct)

  • --from: The key name that signs the transaction

How to get identity 64bit code

The process to retrieve this key data is relatively simple. Firstly, log in to keybase.io. Once you generate the key, copy and paste the code provided in the red box in the image below. * Do not include any space in the --identity field.

Last updated