Skip to content

Regtest Configuration

Eric Voskuil edited this page Dec 3, 2017 · 17 revisions

The regression testing network is a local network which reduces mining difficulty to the lowest possible value. This allows for rapid creation of blockchains for automated testing.

The following configuration settings are used to configure regtest.

[network]
# The magic number for message headers.
identifier = 3669344250

# The port for incoming connections.
inbound_port = 18444

# Disable seeding, otherwise manually populate hosts.cache file.
host_pool_capacity = 0

# Optionally connect to one or more peers on a private regtest network.
peer = regtest1.bitware.co:18444
peer = regtest2.bitware.co:18444

[blockchain]
# Disable default (mainnet) checkpoints.
checkpoint = 0f9188f13cb7b2c71f2a335e3a4fc328bf5beb436012afca590b1a11466e2206:0

[flags]
# Retarget difficulty, defaults to true (use false for regtest).
retarget = false

# Require coinbase input includes block height (disabled on satoshi client).
bip34 = false

The following are unique considerations for regtest.

  • flags.retarget = false requires at least version 3.4 (required for regtest).
  • flags.bip34 = false matches satoshi client regtest behavior but follows bip34 activation if enabled.
  • flags.bip68, flags.bip112 and flags.bip113 (check-signature-verify) and flags.bip141, flags.bip143 and flags.bip147 (segregated-witness) activate at genesis if enabled. However, on the satoshi client these follow a bip9-style activation which will activate them at height 432 if signaled on blocks 1 through 432.
Clone this wiki locally