Nuevos parámetros de chainparams.cpp. ¿Qué poner en ellos y cómo generar?

¿Qué hacen estos parámetros y qué insertar allí?

        uint256S("00000fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff"); //what this do ? end what put to here

        consensus.nRuleChangeActivationThreshold = 6048; // 75% of 8064 //what this do end what put ?
        consensus.nMinerConfirmationWindow = 8064; // nPowTargetTimespan / nPowTargetSpacing * 4  //what this do ?
        consensus.vDeployments[Consensus::DEPLOYMENT_TESTDUMMY].bit = 28; //what this setting's do ? 
        consensus.vDeployments[Consensus::DEPLOYMENT_TESTDUMMY].nStartTime = 1199145601; // January 1, 2008
        consensus.vDeployments[Consensus::DEPLOYMENT_TESTDUMMY].nTimeout = 1230767999; // December 31, 2008

        // Deployment of BIP68, BIP112, and BIP113.
        consensus.vDeployments[Consensus::DEPLOYMENT_CSV].bit = 0;
        consensus.vDeployments[Consensus::DEPLOYMENT_CSV].nStartTime = 1485561600; // January 28, 2017
        consensus.vDeployments[Consensus::DEPLOYMENT_CSV].nTimeout = 1517356801; // January 31st, 2018

        // Deployment of SegWit (BIP141, BIP143, and BIP147)
        consensus.vDeployments[Consensus::DEPLOYMENT_SEGWIT].bit = 1;
        consensus.vDeployments[Consensus::DEPLOYMENT_SEGWIT].nStartTime = 1485561600; // January 28, 2017
        consensus.vDeployments[Consensus::DEPLOYMENT_SEGWIT].nTimeout = 1517356801; // January 31st, 2018

        // The best chain should have at least this much work.
        consensus.nMinimumChainWork = uint256S("0x000000000000000000000000000000000000000000000006805c7318ce2736c0"); //what this do end what put here ?

        // By default assume that the signatures in ancestors of this block are valid.
        consensus.defaultAssumeValid = uint256S("0x1673fa904a93848eca83d5ca82c7af974511a7e640e22edc2976420744f2e56a"); //1155631  //what this do ?

        nPruneAfterHeight = 100000;  //what this do ?

Necesito reconfigurar la moneda existente a la nueva billetera pero me quedé atascado en este parámetro.

Para todos los que votan negativamente, trato de encontrar información sobre este parámetro, pero no encuentro nada, o simplemente vota negativamente lo que no entiende.

Entiendo que es el tiempo de espera de inicio y finalización. Pero cómo funciona.

Respuestas (1)

uint256S("00000fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff"); //what this do ? end what put to here

La primera línea describe una dificultad mínima.

consensus.nRuleChangeActivationThreshold = 6048; // 75% of 8064 //what this do end what put ?
consensus.nMinerConfirmationWindow = 8064; // nPowTargetTimespan / nPowTargetSpacing * 4  //what this do ?

Las siguientes dos líneas dicen que los cambios de reglas requieren un 75 % de acuerdo, medido en 4 períodos de retargeting.

consensus.vDeployments[Consensus::DEPLOYMENT_TESTDUMMY].bit = 28; //what this setting's do ? 
consensus.vDeployments[Consensus::DEPLOYMENT_TESTDUMMY].nStartTime = 1199145601; // January 1, 2008
consensus.vDeployments[Consensus::DEPLOYMENT_TESTDUMMY].nTimeout = 1230767999; // December 31, 2008

// Deployment of BIP68, BIP112, and BIP113.
consensus.vDeployments[Consensus::DEPLOYMENT_CSV].bit = 0;
consensus.vDeployments[Consensus::DEPLOYMENT_CSV].nStartTime = 1485561600; // January 28, 2017
consensus.vDeployments[Consensus::DEPLOYMENT_CSV].nTimeout = 1517356801; // January 31st, 2018

// Deployment of SegWit (BIP141, BIP143, and BIP147)
consensus.vDeployments[Consensus::DEPLOYMENT_SEGWIT].bit = 1;
consensus.vDeployments[Consensus::DEPLOYMENT_SEGWIT].nStartTime = 1485561600; // January 28, 2017
consensus.vDeployments[Consensus::DEPLOYMENT_SEGWIT].nTimeout = 1517356801; // January 31st, 2018

Las siguientes once líneas describen los tiempos mínimos y máximos que pueden activarse tres bifurcaciones blandas y cómo deben señalarse utilizando bits de versión.

// The best chain should have at least this much work.
consensus.nMinimumChainWork = uint256S("0x000000000000000000000000000000000000000000000006805c7318ce2736c0"); //what this do end what put here ?

Las siguientes dos líneas especifican la cantidad mínima de trabajo en cadena que debe tener un cliente antes de que se considere sincronizado.

// By default assume that the signatures in ancestors of this block are valid.
consensus.defaultAssumeValid = uint256S("0x1673fa904a93848eca83d5ca82c7af974511a7e640e22edc2976420744f2e56a"); //1155631  //what this do ?

Las siguientes dos líneas deshabilitan las verificaciones de firmas en bloques que son ancestros del bloque especificado por ese hash de bloque.

nPruneAfterHeight = 100000;  //what this do ?

Las siguientes dos líneas deshabilitan la poda de bloques en bloques por debajo de cierta altura. En Bitcoin, esto se debe a que la mayoría de los bloques iniciales están vacíos. Esto está documentado en este compromiso .

aproximadamente 2, como entiendo que está en el bloque de tiempo * 4 pero está en minutos o segundos si tengo un bloque de tiempo de 2 minutos. consenso.nPowTargetTimespan = 10 * 60; // consenso de 10 minutos.nPowTargetSpacing = 5 * 60; // 5 minutos necesito poner el 8 o cómo calcular este parámetro correctamente
@tseries Tampoco, se expresa en términos de bloques.
Esto lo entiendo, pero si uso esta regla, tengo 8 segundos, creo que es demasiado bajo. Si este valor se reclama en estos parámetros o puede ser cualquier valor.
@tseries Disminuir ese valor hace que un cambio de regla se active más rápido. Aumentarlo hace que un cambio de regla se active más lentamente.