| 267 | { |
| 268 | public: |
| 269 | CTestNetParams() |
| 270 | { |
| 271 | consensus.nMajorityEnforceBlockUpgrade = 51; |
| 272 | consensus.nMajorityRejectBlockOutdated = 75; |
| 273 | consensus.nMajorityWindow = 100; |
| 274 | //consensus.BIP34Height = 227931; |
| 275 | //consensus.BIP34Hash = uint256S("0x000000000000024b89b42a942fe0d9fea3bb44ab7bd1b19115dd6a759c0808b8"); |
| 276 | |
| 277 | consensus.powLimit = ~uint256(0) >> 10; // LUX starting difficulty is 1 / 2^12 |
| 278 | // consensus.powLimit = uint256S("0x7fff000000000000000000000000000000000000000000000000000000000000"); |
| 279 | consensus.nPowTargetTimespan = 30 * 60; //36 * 60 * 60; // LUX: 1 36hrs |
| 280 | consensus.nPowTargetSpacing = 2 * 60; // LUX: 2 minute |
| 281 | consensus.fPowAllowMinDifficultyBlocks = false; |
| 282 | consensus.fPowNoRetargeting = false; |
| 283 | consensus.nRuleChangeActivationThreshold = 1368; // 95% of 1440 is |
| 284 | consensus.nMinerConfirmationWindow = 1440; // nPowTargetTimespan / nPowTargetSpacing |
| 285 | // Deployment of SegWit (BIP141 and BIP143) |
| 286 | consensus.vDeployments[Consensus::DEPLOYMENT_SEGWIT].bit = 1; |
| 287 | consensus.vDeployments[Consensus::DEPLOYMENT_SEGWIT].nStartTime = 577836800; |
| 288 | consensus.vDeployments[Consensus::DEPLOYMENT_SEGWIT].nTimeout = 2577836900; // Never / undefined |
| 289 | consensus.vDeployments[Consensus::DEPLOYMENT_CSV].bit = 0; |
| 290 | consensus.vDeployments[Consensus::DEPLOYMENT_CSV].nStartTime = 577836800; |
| 291 | consensus.vDeployments[Consensus::DEPLOYMENT_CSV].nTimeout = 2577836900; // Never / undefined |
| 292 | |
| 293 | consensus.nLastPOWBlock = 6000000; |
| 294 | consensus.RX2SeedHeight = 0; // starting on |
| 295 | consensus.RX2SeedInterval = 340; //seed changes every 6 hours (based on mainnet) |
| 296 | networkID = CBaseChainParams::TESTNET; |
| 297 | strNetworkID = "test"; |
| 298 | pchMessageStart[0] = 0x54; |
| 299 | pchMessageStart[1] = 0x67; |
| 300 | pchMessageStart[2] = 0x51; |
| 301 | pchMessageStart[3] = 0xab; |
| 302 | vAlertPubKey = ParseHex("000010e83b2703ccf322f7dbd62dd5855ac7c10bd055814ce121ba32607d573b8810c02c0582aed05b4deb9c4b77b26d92428c61256cd42774babea0a073b2ed0c9"); |
| 303 | nDefaultPort = 28333; |
| 304 | nMinerThreads = 0; |
| 305 | nMaturity = 10; |
| 306 | nModifierUpdateBlock = 51197; //approx Mon, 17 Apr 2017 04:00:00 GMT |
| 307 | |
| 308 | //! Modify the testnet genesis block so the timestamp is valid for a later start. |
| 309 | const char* pszTimestamp = "Lux - Testnet 1"; // Input Activation code to activate blockchain |
| 310 | CMutableTransaction txNew; |
| 311 | txNew.nVersion = 1; |
| 312 | txNew.nTime = 1528954643; |
| 313 | txNew.nLockTime = 0; |
| 314 | txNew.vin.resize(1); |
| 315 | txNew.vout.resize(1); |
| 316 | txNew.vin[0].scriptSig = CScript() << 0 << CScriptNum(42) << vector<unsigned char>((const unsigned char*)pszTimestamp, (const unsigned char*)pszTimestamp + strlen(pszTimestamp)); |
| 317 | txNew.vout[0].SetEmpty(); |
| 318 | |
| 319 | genesis.SetNull(); |
| 320 | genesis.vtx.push_back(txNew); |
| 321 | genesis.hashPrevBlock = 0; |
| 322 | genesis.hashMerkleRoot = BlockMerkleRoot(genesis); |
| 323 | genesis.nVersion = 1; |
| 324 | genesis.nTime = 1528954643; // 14 June 2018 @ 5:37am (UTC) |
| 325 | genesis.nBits = 0x1e0fffff; |
| 326 | genesis.nNonce = 7170961; |
nothing calls this directly
no test coverage detected