Dash Core Source Documentation (0.16.0.1)
Find detailed information regarding the Dash Core source code.
params.h
Go to the documentation of this file.
57 LLMQ_TEST = 100, // 3 members, 2 (66%) threshold, one per hour. Params might differ when -llmqtestparams is used
60 LLMQ_DEVNET = 101, // 10 members, 6 (60%) threshold, one per hour. Params might differ when -llmqdevnetparams is used
74 // The minimum number of valid members after the DKK. If less members are determined valid, no commitment can be
75 // created. Should be higher then the threshold to allow some room for failing nodes, otherwise quorum might end up
79 // The threshold required to recover a final signature. Should be at least 50%+1 of the quorum size. This value
80 // also controls the size of the public key verification vector and has a large influence on the performance of
81 // recovery. It also influences the amount of minimum messages that need to be exchanged for a single signing session.
82 // This value has the most influence on the security of the quorum. The number of total malicious masternodes
83 // required to negatively influence signing sessions highly correlates to the threshold percentage.
86 // The interval in number blocks for DKGs and the creation of LLMQs. If set to 24 for example, a DKG will start
90 // The number of blocks per phase in a DKG session. There are 6 phases plus the mining phase that need to be processed
91 // per DKG. Set this value to a number of blocks so that each phase has enough time to propagate all required
92 // messages to all members before the next phase starts. If blocks are produced too fast, whole DKG sessions will
96 // The starting block inside the DKG interval for when mining of commitments starts. The value is inclusive.
97 // Starting from this block, the inclusion of (possibly null) commitments is enforced until the first non-null
98 // commitment is mined. The chosen value should be at least 5 * dkgPhaseBlocks so that it starts right after the
102 // The ending block inside the DKG interval for when mining of commitments ends. The value is inclusive.
103 // Choose a value so that miners have enough time to receive the commitment and mine it. Also take into consideration
104 // that miners might omit real commitments and revert to always including null commitments. The mining window should
105 // be large enough so that other miners have a chance to produce a block containing a non-null commitment. The window
106 // should at the same time not be too large so that not too much space is wasted with null commitments in case a DKG
110 // In the complaint phase, members will vote on other members being bad (missing valid contribution). If at least
111 // dkgBadVotesThreshold have voted for another member to be bad, it will considered to be bad by all other members
112 // as well. This serves as a protection against late-comers who send their contribution on the bring of
113 // phase-transition, which would otherwise result in inconsistent views of the valid members set
119 // Used for inter-quorum communication. This is the number of quorums for which we should keep old connections. This
169 // Default BIP9Deployment::nWindowSize value for deployments where it's not specified and for unknown deployments.
195 // This must be outside of all namespaces. We must also duplicate the forward declaration of is_serializable_enum to
Definition: params.h:20
int nMasternodePaymentsIncreaseBlock
Definition: params.h:135
If none of the specialized versions above matched and T is an enum, default to calling Serialize/Unse...
Definition: params.h:197
int nBudgetPaymentsWindowBlocks
Definition: params.h:141
bool fPowAllowMinDifficultyBlocks
Definition: params.h:174
int nMasternodePaymentsStartBlock
Definition: params.h:134
Definition: params.h:23
Definition: params.h:13
Definition: params.h:22
Definition: params.h:17
int64_t nFalloffCoeff
A coefficient which adjusts the speed a required number of signaling blocks is decreasing from nThres...
Definition: params.h:45
Definition: params.h:60
int nMinimumDifficultyBlocks
these parameters are only used on devnet and can be configured from the outside
Definition: params.h:185
int nInstantSendConfirmationsRequired
Definition: params.h:137
Struct for each individual consensus rule change using BIP9.
Definition: params.h:31
Definition: params.h:21
Definition: params.h:50
int64_t nWindowSize
The number of past blocks (including the block under consideration) to be taken into account for lock...
Definition: params.h:39
uint32_t nMinerConfirmationWindow
Definition: params.h:170
Definition: params.h:65
int64_t nThresholdMin
A minimum number of blocks, in the range of 1..nWindowSize, which must signal for a fork in order to ...
Definition: params.h:43
int64_t DifficultyAdjustmentInterval() const
Definition: params.h:180
Definition: params.h:52
int DIP0003EnforcementHeight
Block height at which DIP0003 becomes enforced.
Definition: params.h:160
Definition: params.h:54
Definition: params.h:18
int64_t nThresholdStart
A starting number of blocks, in the range of 1..nWindowSize, which must signal for a fork in order to...
Definition: params.h:41
uint32_t nRuleChangeActivationThreshold
Minimum blocks including miner confirmation of the total of nMinerConfirmationWindow blocks in a reta...
Definition: params.h:168
int nMasternodePaymentsIncreasePeriod
Definition: params.h:136
Definition: params.h:19
Definition: params.h:53
BIP9Deployment vDeployments[MAX_VERSION_BITS_DEPLOYMENTS]
Definition: params.h:171
int nMasternodeMinimumConfirmations
Definition: params.h:147
Definition: params.h:57