# Create a validator

Validators are responsible for committing new blocks in the blockchain. These validators participate in the consensus protocol by broadcasting *votes* which contain cryptographic signatures signed by each validator's private key.

Some Proof-of-Stake consensus algorithms aim to create a "completely" decentralized system where all stakeholders (even those who are not always available online) participate in the committing of blocks. Tendermint has a different approach to block creation. Validators are expected to be online, and the set of validators is permissioned/curated by some external process. Proof-of-stake is not required, but can be implemented on top of Tendermint consensus. That is, validators may be required to post collateral on-chain, off-chain, or may not be required to post any collateral at all.

Validators have a cryptographic key-pair and an associated amount of "voting power". Voting power need not be the same.

## Create your validator

You need to add your `wallet key` using `mnemonic` or create a new key and tranfer `uheli` to its address

```
 helichaind keys add <key_name> 
```

Your `helivalconspub` can be used to create a new validator by staking tokens. You can find your validator pubkey by running:

```
$ helichaind tendermint show-validator
```

To create your validator, just use the following command:

```
helichaind tx staking create-validator \
  --amount=<staking-amount> \
  --pubkey=$(helichaind tendermint show-validator) \
  --moniker="choose a moniker"  \
  --chain-id=<chain-id> \
  --commission-rate="0.10" \
  --commission-max-rate="0.20" \
  --commission-max-change-rate="0.01" \
  --min-self-delegation="1000000" \
  --gas="auto" \
  --gas-prices=<choose gas price> \
  --from=<key_name>
```

You can confirm that you are in the validator set by using a third party explorer or `helichaind cli`

```
helichaind query staking validators
helichaind query tendermint-validator-set
```


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://helichains-organization.gitbook.io/helichain-white-paper-v2.0.1/run-node/create-a-validator.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
