diff --git a/src/consensus/params.h b/src/consensus/params.h index ed0ed21ff1..9582069945 100644 --- a/src/consensus/params.h +++ b/src/consensus/params.h @@ -79,13 +79,6 @@ struct Params { * - fail if the default script verify flags are applied. */ std::map script_flag_exceptions; - /** Block height and hash at which BIP34 becomes active */ - int BIP34Height; - uint256 BIP34Hash; - /** Block height at which BIP65 becomes active */ - int BIP65Height; - /** Block height at which BIP66 becomes active */ - int BIP66Height; /** Block height at which CSV (BIP68, BIP112 and BIP113) becomes active */ int CSVHeight; /** Block height at which Segwit (BIP141, BIP143 and BIP147) becomes active. diff --git a/src/kernel/chainparams.cpp b/src/kernel/chainparams.cpp index 2cdcbc0cd0..2d886a083a 100644 --- a/src/kernel/chainparams.cpp +++ b/src/kernel/chainparams.cpp @@ -323,16 +323,19 @@ class SigNetParams : public CChainParams { if (!options.challenge) { bin = ParseHex("512103ad5e0edad18cb1f0fc0d28a3d4f1f3e445640337489abb10404f2d1e086be430210359ef5021964fe22d6f8e05b2463c9540ce96883fe3b278760f048f5189f2e6c452ae"); + /* vSeeds.emplace_back("seed.signet.bitcoin.sprovoost.nl."); // Hardcoded nodes can be removed once there are more DNS seeds vSeeds.emplace_back("178.128.221.177"); vSeeds.emplace_back("v7ajjeirttkbnt32wpy3c6w3emwnfr3fkla7hpxcfokr3ysd3kqtzmqd.onion:38333"); - - consensus.nMinimumChainWork = uint256S("0x000000000000000000000000000000000000000000000000000001899d8142b0"); - consensus.defaultAssumeValid = uint256S("0x0000004429ef154f7e00b4f6b46bfbe2d2678ecd351d95bbfca437ab9a5b84ec"); // 138000 */ + + vSeeds.clear(); + + consensus.nMinimumChainWork = uint256S("0x00"); + consensus.defaultAssumeValid = uint256S("0x00"); m_assumed_blockchain_size = 1; chainTxData = ChainTxData{ // Data from RPC: getchaintxstats 4096 000000187d4440e5bff91488b700a140441e089a8aaea707414982460edbfe54 @@ -360,20 +363,21 @@ class SigNetParams : public CChainParams { m_chain_type = ChainType::SIGNET; consensus.signet_blocks = true; consensus.signet_challenge.assign(bin.begin(), bin.end()); - consensus.BIP34Height = 1; - consensus.BIP34Hash = uint256{}; - consensus.BIP65Height = 1; - consensus.BIP66Height = 1; + consensus.nMaxReorganizationDepth = 500; consensus.CSVHeight = 1; consensus.SegwitHeight = 1; - consensus.nTargetTimespan = 14 * 24 * 60 * 60; // two weeks - consensus.nTargetSpacing = 10 * 60; + consensus.nTargetTimespan = 16 * 60; // 16 mins + consensus.nTargetSpacingV1 = 64; + consensus.nTargetSpacing = 64; consensus.fPowAllowMinDifficultyBlocks = false; consensus.fPowNoRetargeting = false; + consensus.fPoSNoRetargeting = false; consensus.nRuleChangeActivationThreshold = 1815; // 90% of 2016 consensus.nMinerConfirmationWindow = 2016; // nPowTargetTimespan / nPowTargetSpacing consensus.MinBIP9WarningHeight = 0; - consensus.powLimit = uint256S("00000377ae000000000000000000000000000000000000000000000000000000"); + consensus.powLimit = uint256S("0000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff"); + consensus.posLimit = uint256S("00000fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff"); + consensus.posLimitV2 = uint256S("000000000000ffffffffffffffffffffffffffffffffffffffffffffffffffff"); consensus.vDeployments[Consensus::DEPLOYMENT_TESTDUMMY].bit = 28; consensus.vDeployments[Consensus::DEPLOYMENT_TESTDUMMY].nStartTime = Consensus::BIP9Deployment::NEVER_ACTIVE; consensus.vDeployments[Consensus::DEPLOYMENT_TESTDUMMY].nTimeout = Consensus::BIP9Deployment::NO_TIMEOUT; @@ -385,13 +389,21 @@ class SigNetParams : public CChainParams { consensus.vDeployments[Consensus::DEPLOYMENT_TAPROOT].nTimeout = Consensus::BIP9Deployment::NO_TIMEOUT; consensus.vDeployments[Consensus::DEPLOYMENT_TAPROOT].min_activation_height = 0; // No activation delay + consensus.nProtocolV1RetargetingFixedTime = 1707168541; + consensus.nProtocolV2Time = 1707168542; + consensus.nProtocolV3Time = 1707168543; + consensus.nProtocolV3_1Time = 1707168544; + consensus.nLastPOWBlock = 0x7fffffff; + consensus.nStakeTimestampMask = 0xf; + consensus.nCoinbaseMaturity = 10; + // message start is defined as the first 4 bytes of the sha256d of the block script HashWriter h{}; h << consensus.signet_challenge; uint256 hash = h.GetHash(); std::copy_n(hash.begin(), 4, pchMessageStart.begin()); - nDefaultPort = 38333; + nDefaultPort = 45714; genesis = CreateGenesisBlock(1393221600, 216178, 0x1f00ffff, 1, 0); consensus.hashGenesisBlock = genesis.GetHash(); @@ -400,25 +412,20 @@ class SigNetParams : public CChainParams { vFixedSeeds.clear(); - m_assumeutxo_data = { - { - .height = 160'000, - .hash_serialized = AssumeutxoHash{uint256S("0xfe0a44309b74d6b5883d246cb419c6221bcccf0b308c9b59b7d70783dbdf928a")}, - .nChainTx = 2289496, - .blockhash = uint256S("0x0000003ca3c99aff040f2563c2ad8f8ec88bd0fd6b8f0895cfaf1ef90353a62c") - } - }; + m_assumeutxo_data = {}; base58Prefixes[PUBKEY_ADDRESS] = std::vector(1,111); base58Prefixes[SCRIPT_ADDRESS] = std::vector(1,196); base58Prefixes[SECRET_KEY] = std::vector(1,239); - base58Prefixes[EXT_PUBLIC_KEY] = {0x04, 0x35, 0x87, 0xCF}; - base58Prefixes[EXT_SECRET_KEY] = {0x04, 0x35, 0x83, 0x94}; + base58Prefixes[EXT_PUBLIC_KEY] = {0x04, 0x88, 0xB2, 0x1E}; + base58Prefixes[EXT_SECRET_KEY] = {0x04, 0x88, 0xAD, 0xE4}; - bech32_hrp = "tb"; + bech32_hrp = "tblk"; fDefaultConsistencyChecks = false; m_is_mockable_chain = false; + + vDevFundAddress = {}; } };