Ergo Node Devnet Configuration Documentation#
This document describes the main sections and fields of the Ergo node configuration file for the Development Network. This configuration serves the need for protocol-breaking changes testing.
Ergo Configuration Section#
Network Type#
ergo.networkType = "devnet"
This setting defines the network type. For development purposes, it's set to "devnet".
Chain Configuration#
ergo.chain
This section includes parameters related to the blockchain.
protocolVersionsets the protocol version.addressPrefixis the prefix for network addresses. Reserved values include 0 (for mainnet), 16 (for testnet), and 32 (for devnet).initialDifficultyHexsets the initial difficulty for the network.epochLengthdefines the length of an epoch in difficulty recalculation. A value of 1 means difficulty is recalculated every block.blockIntervalis the desired time interval between blocks.monetary.minerRewardDelaysets the delay between when a block is mined and when the reward can be spent.votingcontains parameters related to the voting mechanism, such as the length of a voting epoch, the number of epochs for soft-fork voting, and activation epochs for a soft-fork after acceptance.genesisStateDigestHexis the Base16 representation of the genesis state roothash.
Wallet Configuration#
ergo.wallet.secretStorage.secretDir
Sets the directory for the wallet's secret storage.
Scorex Configuration Section#
Network Configuration#
scorex.network
This section includes parameters related to the network settings.
magicBytesis a unique identifier for the network protocol.bindAddresssets the IP address and port number where the node will accept incoming connections. By default, it listens on all available network adapters.nodeNameassigns a visible name to your node for other participants in the P2P network.knownPeersis a list of bootstrap nodes that your node will connect to upon initialization.
REST API Configuration#
scorex.restApi.apiKeyHash
This parameter represents the hash of your API key. In the devnet configuration, it is set to null. The API key protects the invocation of critical API methods.
Note: Even though it is set to null for development, you must ensure to secure the transmission of the API key in a real-world scenario, as it is transmitted as plain text in the HTTP header and can be intercepted during network transit!