# Participate as Validator

## Prerequisite

1. Qualified hardware and network environment
2. Have enough DX

### Hardware

#### Minimal configuration

```
8core
16g
ssd iops>5k
network performance > 10 Gigabit
```

#### Recommendation

```
16core
32g
ssd iops>5k
network-performance > 25 Gigabit
```

### Network and Port

* Public IP
* Open Port TCP/UDP: 32668

## Get DX node Executable

1. [Compile](/dxchain-wiki/stake-and-trade/develop-on-dxchain/compile-and-run.md) from source code, or
2. Download from DxChain [Github](https://github.com/DxChainNetwork/dxc/releases)

## Start running the Executable

[Start node](/dxchain-wiki/stake-and-trade/develop-on-dxchain/compile-and-run.md#run), and make sure the data is updated to the latest block height.

<mark style="color:red;">For asset security concerns, it's not recommended to enable</mark><mark style="color:red;">`--http`</mark> <mark style="color:red;"></mark><mark style="color:red;">service.</mark>

## Create Account

Access the working directory `/directory/of/geth`

```shell
$ ./geth account new --datadir ./data
```

Or,

1. Open the console `./geth attach --datadir ./data`
2. Create account `personal.newAccount('password')`

The `keystore` file of the new account is located in the `data/keystore` folder under the `/directory/of/geth` directory.

## Start Mining

1. Open the console `./geth attach --datadir ./data`
2. Unlock miner account `personal.unlockAccount("miner address","password",0)`
3. Start mining `miner.start()`

## Node Application

1. Make sure there is a sufficient amount of DX to apply for a node
2. Fill the application here: <https://staking-testnet.dxchain.com/apply>
3. Once the application is approved by other nodes, your node is eligible to participate in the election from the next epoch. If the node is selected as a validator, nodes will generate blocks in order. Please keep the nodes mining during this period.


---

# 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://dxchain.gitbook.io/dxchain-wiki/stake-and-trade/develop-on-dxchain/participate-as-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.
