Cellframe-Node Chain Configuration File is located in
`<Config.dir> /opt/cellframe-node/etc/network/netname/chainname.cfg`
Config consists of sections and their parameters with the following structure:
```ini
[section]
key=value
value: string/boolean/array/integer
```
Value types description:
```ini
boolean - 1/0/true/false
integer - numbers
string - words, sentences, numbers or chars
float - fractional numbers
array - [ ]
```
[[Cellframe Node Chain Config#Zerochain configuration|Zerochain]] config sections:
- [[Cellframe Node Chain Config#Section [chain]|chain]] - chain configuration settings
- [[Cellframe Node Chain Config#Section [files]|files]] - file location settings
- [[Cellframe Node Chain Config#Section [dag]|dag]] - [[DAG]] configuration
- [[Cellframe Node Chain Config#Section [ledger]|ledger]] - [[Ledger]] configuration
- [[Cellframe Node Chain Config#Section [dag_poa|dag_poa]] - [[Proof of Authority (PoA)]] consensus settings
[[Cellframe Node Chain Config#Mainchain configuration|Mainchain]] config sections:
- [[Cellframe Node Chain Config#Section main [chain]|chain]] - chain configuration settings
- [[Cellframe Node Chain Config#Section main [files]|files]] - file location settings
- [[Cellframe Node Chain Config#Section main [blocks]|blocks]] - blocks configuration
- [[Cellframe Node Chain Config#Section main [esbocs]|esbocs]] - esbocs consensus settings
## Zerochain configuration
### Section: [chain]
Chain configuration settings
#### Parameters
```ini
id
values: str - number in HEX format (0x0000000000000000 by default)
```
- unique chain ID
```ini
shard_id
values: str - number in HEX format (0x0000000000000000 by default)
```
- ID of the [[Cell (Shard)|shard]]
```ini
name
values: str (zerochain by default)
```
- name of the chain
```ini
load_priority
values: int (0 by default)
```
- priority of config loading
```ini
datum_types
values: str array ([token,emission,ca,custom,decree] by default)
```
- types of allowed [[Data element (Datum)|datums]], possible values: `token, emission, transaction, ca, signer, decree, anchor, custom`
```ini
default_datum_types
values: str array ([token,emission,ca,custom,decree] by default)
```
- list of default [[Data element (Datum)|datums]]
```ini
mempool_auto_types
values: str array ([] by default)
```
- type of datums afforded for auto-processing
```ini
consensus
values: str (dag_poa by default)
```
- type of used consensus ([[Proof of Authority (PoA)]] in zerochain)
### Section: [files]
Files path settings
#### Parameters
```ini
storage_dir
values: str (../../../var/lib/network/scorpion/zerochain/ by default)
```
- path of zerochain files (DAG itself)
### Section: [dag]
[[DAG]] chain settings
#### Parameters
```ini
is_single_line
values: boolean (true by default)
```
- type of graph
```ini
is_celled
values: boolean (false by default)
```
- [no description]
```ini
is_add_directly
values: boolean (false by default)
```
- directed file record during validation
```ini
datum_add_hashes_count
values: int (1 by default)
```
- [no description]
```ini
is_static_genesis_event
values: boolean (true by default)
```
- enables genesis event
```ini
static_genesis_event
values: str - number in HEX format (0x6DD5EB423B94EECE44F6DA39D82D7BD2B4DD33744AC4DFB1D2E2971DAB40431A by default)
```
- hash of the genesis event
### Section: [ledger]
[[Ledger]] configuration
#### Parameters
```ini
hard_accept_list
values: str array ( [0xED2CDC9BBE884E2C6A3D974F2191D204326D177C1B24E811D576E1C1217484E1, ...] by default)
```
- list of blocks which are unconditionally accepted in chain
### Section: [dag_poa]
[[DAG]] chain settings related to [[Proof of Authority (PoA)]]
#### Parameters
```ini
auth_certs_prefix
values: str (scorpion.root by default)
```
- prefix for name of the root certificates
```ini
auth_certs_number
values: int (5 by default)
```
- quantity of root certificates
```ini
auth_certs_number_verify
values: int (3 by default)
```
- minimal certificates quantity for signing the event
```ini
confirmations_timeout
values: int (60 by default)
```
- time of the [[Round]]
```ini
auto_confirmation
values: boolean (true by default)
```
- automatic confirmation
```ini
auto_round_complet
values: boolean (true by default)
```
- automatic round completion
```ini
wait_sync_before_complete
values: int (120 by default)
```
- time given for signatures synchronization between root nodes
```ini
hard_accept_list
values: str array ( [0x0CB3A86F98E81E425CF4FA2DE126F4CD191E06365189925F8557A917B2856AA2,... by default)
```
- list of events which are unconditionally accepted in [[DAG]]
## Mainchain configuration
### Section: main [chain]
Chain configuration settings
#### Parameters
```ini
id
values: str - number in HEX format (0x0000000000000002 by default)
```
- unique chain ID
```ini
shard_id
values: str - number in HEX format (0x0000000000000000 by default)
```
- ID of the [[Cell (Shard)|shard]]
```ini
name
values: str (main by default)
```
- name of the chain
```ini
load_priority
values: int (2 by default)
```
- loading priority
```ini
datum_types
values: str array ([transaction,anchor] by default)
```
- types of allowed [[Data element (Datum)|datums]], possible values: `token, emission, transaction, ca, signer, decree, anchor, custom`
```ini
default_datum_types
values: str array ([transaction,anchor] by default)
```
- list of default [[Data element (Datum)|datums]]
```ini
mempool_auto_types
values: str (all by default)
```
- type of datums afforded for auto-processing
```ini
consensus
values: str (esbocs by default)
```
- type of applied [[Consensus]]
### Section: main [files]
Files path settings
#### Parameters
```ini
storage_dir
values: str (../../../var/lib/network/scorpion/main/ by default)
```
- path of mainchain files (blockchain itself)
### Section: main [blocks]
Configuration related to [[Block|blocks]]
#### Parameters
```ini
is_celled
values: boolean (false by default)
```
- [no description]
```ini
is_static_genesis_block
values: boolean (true by default)
```
- enables [[Genesis block]]
```ini
static_genesis_block
values: str - number in HEX format (0xD3E07282FC1C4FC733AEE7898BA1017DF7659CA7B64047886FA12EDD82759C23 by default)
```
- hash of the genesis block
```ini
hard_accept_list
values: str array ([0x88919EB894DFF88BF76BD33F9875F18090373E12DA16F9052D5F681A84D2CFEB,0x28D8106BF04511CE25F51F08FBACD0F346C08A53EE13CC01F9355CED892B3D4D,0xAF215CF026E6BED417F15649A8296D9E8ADBFC93BAF3BD3DA6E16F02E4D0FBC5] by default)
```
- list of blocks which are unconditionally accepted in blockchain
### Section: main [esbocs]
Esbocs [[Consensus]] configuration
#### Parameters
```ini
consensus_debug
values: boolean (true by default)
```
- shows consensus debug information
```ini
poa_mode
values: boolean (true by default) - commented
```
- [[Proof of Authority (PoA)]] mode
```ini
min_validators_count
values: int (1 by default)
```
- minimal validators quantity in the network
```ini
auth_certs_prefix
values: str (scorpion.master by default)
```
- prefix for name of the root certificates
```ini
validators_addrs
values: str array ([DFAB::CDC2::A6BA::48FB,BC53::9462::EF3A::E47D,D05E::E083::A665::37A8] by default)
```
- addresses of accepted validators
```ini
new_round_delay
values: int (30 by default)
```
- time delay between rounds
```ini
preset_reward
values: int (2851988815387151461 by default)
```
- preset reward