Bitcoin Core 28.99.0
P2P Digital Currency
Public Member Functions | Public Attributes | List of all members
Consensus::Params Struct Reference

Parameters that influence chain consensus. More...

#include <params.h>

Collaboration diagram for Consensus::Params:
[legend]

Public Member Functions

std::chrono::seconds PowTargetSpacing () const
 
int64_t DifficultyAdjustmentInterval () const
 
int DeploymentHeight (BuriedDeployment dep) const
 

Public Attributes

uint256 hashGenesisBlock
 
int nSubsidyHalvingInterval
 
std::map< uint256, uint32_t > script_flag_exceptions
 Hashes of blocks that. More...
 
int BIP34Height
 Block height and hash at which BIP34 becomes active. More...
 
uint256 BIP34Hash
 
int BIP65Height
 Block height at which BIP65 becomes active. More...
 
int BIP66Height
 Block height at which BIP66 becomes active. More...
 
int CSVHeight
 Block height at which CSV (BIP68, BIP112 and BIP113) becomes active. More...
 
int SegwitHeight
 Block height at which Segwit (BIP141, BIP143 and BIP147) becomes active. More...
 
int MinBIP9WarningHeight
 Don't warn about unknown BIP 9 activations below this height. More...
 
uint32_t nRuleChangeActivationThreshold
 Minimum blocks including miner confirmation of the total of 2016 blocks in a retargeting period, (nPowTargetTimespan / nPowTargetSpacing) which is also used for BIP9 deployments. More...
 
uint32_t nMinerConfirmationWindow
 
BIP9Deployment vDeployments [MAX_VERSION_BITS_DEPLOYMENTS]
 
uint256 powLimit
 Proof of work parameters. More...
 
bool fPowAllowMinDifficultyBlocks
 
bool enforce_BIP94
 Enforce BIP94 timewarp attack mitigation. More...
 
bool fPowNoRetargeting
 
int64_t nPowTargetSpacing
 
int64_t nPowTargetTimespan
 
uint256 nMinimumChainWork
 The best chain should have at least this much work. More...
 
uint256 defaultAssumeValid
 By default assume that the signatures in ancestors of this block are valid. More...
 
bool signet_blocks {false}
 If true, witness commitments contain a payload equal to a Bitcoin Script solution to the signet challenge. More...
 
std::vector< uint8_t > signet_challenge
 

Detailed Description

Parameters that influence chain consensus.

Definition at line 74 of file params.h.

Member Function Documentation

◆ DeploymentHeight()

int Consensus::Params::DeploymentHeight ( BuriedDeployment  dep) const
inline

Definition at line 136 of file params.h.

Here is the caller graph for this function:

◆ DifficultyAdjustmentInterval()

int64_t Consensus::Params::DifficultyAdjustmentInterval ( ) const
inline

Definition at line 123 of file params.h.

Here is the caller graph for this function:

◆ PowTargetSpacing()

std::chrono::seconds Consensus::Params::PowTargetSpacing ( ) const
inline

Definition at line 119 of file params.h.

Here is the caller graph for this function:

Member Data Documentation

◆ BIP34Hash

uint256 Consensus::Params::BIP34Hash

Definition at line 86 of file params.h.

◆ BIP34Height

int Consensus::Params::BIP34Height

Block height and hash at which BIP34 becomes active.

Definition at line 85 of file params.h.

◆ BIP65Height

int Consensus::Params::BIP65Height

Block height at which BIP65 becomes active.

Definition at line 88 of file params.h.

◆ BIP66Height

int Consensus::Params::BIP66Height

Block height at which BIP66 becomes active.

Definition at line 90 of file params.h.

◆ CSVHeight

int Consensus::Params::CSVHeight

Block height at which CSV (BIP68, BIP112 and BIP113) becomes active.

Definition at line 92 of file params.h.

◆ defaultAssumeValid

uint256 Consensus::Params::defaultAssumeValid

By default assume that the signatures in ancestors of this block are valid.

Definition at line 127 of file params.h.

◆ enforce_BIP94

bool Consensus::Params::enforce_BIP94

Enforce BIP94 timewarp attack mitigation.

On testnet4 this also enforces the block storm mitigation.

Definition at line 115 of file params.h.

◆ fPowAllowMinDifficultyBlocks

bool Consensus::Params::fPowAllowMinDifficultyBlocks

Definition at line 110 of file params.h.

◆ fPowNoRetargeting

bool Consensus::Params::fPowNoRetargeting

Definition at line 116 of file params.h.

◆ hashGenesisBlock

uint256 Consensus::Params::hashGenesisBlock

Definition at line 75 of file params.h.

◆ MinBIP9WarningHeight

int Consensus::Params::MinBIP9WarningHeight

Don't warn about unknown BIP 9 activations below this height.

This prevents us from warning about the CSV and segwit activations.

Definition at line 99 of file params.h.

◆ nMinerConfirmationWindow

uint32_t Consensus::Params::nMinerConfirmationWindow

Definition at line 106 of file params.h.

◆ nMinimumChainWork

uint256 Consensus::Params::nMinimumChainWork

The best chain should have at least this much work.

Definition at line 125 of file params.h.

◆ nPowTargetSpacing

int64_t Consensus::Params::nPowTargetSpacing

Definition at line 117 of file params.h.

◆ nPowTargetTimespan

int64_t Consensus::Params::nPowTargetTimespan

Definition at line 118 of file params.h.

◆ nRuleChangeActivationThreshold

uint32_t Consensus::Params::nRuleChangeActivationThreshold

Minimum blocks including miner confirmation of the total of 2016 blocks in a retargeting period, (nPowTargetTimespan / nPowTargetSpacing) which is also used for BIP9 deployments.

Examples: 1916 for 95%, 1512 for testchains.

Definition at line 105 of file params.h.

◆ nSubsidyHalvingInterval

int Consensus::Params::nSubsidyHalvingInterval

Definition at line 76 of file params.h.

◆ powLimit

uint256 Consensus::Params::powLimit

Proof of work parameters.

Definition at line 109 of file params.h.

◆ script_flag_exceptions

std::map<uint256, uint32_t> Consensus::Params::script_flag_exceptions

Hashes of blocks that.

  • are known to be consensus valid, and
  • buried in the chain, and
  • fail if the default script verify flags are applied.

Definition at line 83 of file params.h.

◆ SegwitHeight

int Consensus::Params::SegwitHeight

Block height at which Segwit (BIP141, BIP143 and BIP147) becomes active.

Note that segwit v0 script rules are enforced on all blocks except the BIP 16 exception blocks.

Definition at line 96 of file params.h.

◆ signet_blocks

bool Consensus::Params::signet_blocks {false}

If true, witness commitments contain a payload equal to a Bitcoin Script solution to the signet challenge.

See BIP325.

Definition at line 133 of file params.h.

◆ signet_challenge

std::vector<uint8_t> Consensus::Params::signet_challenge

Definition at line 134 of file params.h.

◆ vDeployments

BIP9Deployment Consensus::Params::vDeployments[MAX_VERSION_BITS_DEPLOYMENTS]

Definition at line 107 of file params.h.


The documentation for this struct was generated from the following file: