Skip to content

Commit 4709595

Browse files
committed
fixup Witness commitment validation: revert adding of commitment in IncrementExtraNonce
1 parent c744a1e commit 4709595

File tree

4 files changed

+5
-5
lines changed

4 files changed

+5
-5
lines changed

src/miner.cpp

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -306,7 +306,7 @@ CBlockTemplate* CreateNewBlock(const CChainParams& chainparams, const CScript& s
306306
return pblocktemplate.release();
307307
}
308308

309-
void IncrementExtraNonce(CBlock* pblock, const CBlockIndex* pindexPrev, unsigned int& nExtraNonce, const std::vector<unsigned char> vchCoinbaseCommitment)
309+
void IncrementExtraNonce(CBlock* pblock, const CBlockIndex* pindexPrev, unsigned int& nExtraNonce)
310310
{
311311
// Update nExtraNonce
312312
static uint256 hashPrevBlock;
@@ -318,7 +318,7 @@ void IncrementExtraNonce(CBlock* pblock, const CBlockIndex* pindexPrev, unsigned
318318
++nExtraNonce;
319319
unsigned int nHeight = pindexPrev->nHeight+1; // Height first in coinbase required for block.version=2
320320
CMutableTransaction txCoinbase(pblock->vtx[0]);
321-
txCoinbase.vin[0].scriptSig = (CScript() << nHeight << vchCoinbaseCommitment << CScriptNum(nExtraNonce)) + COINBASE_FLAGS;
321+
txCoinbase.vin[0].scriptSig = (CScript() << nHeight << CScriptNum(nExtraNonce)) + COINBASE_FLAGS;
322322
assert(txCoinbase.vin[0].scriptSig.size() <= 100);
323323

324324
pblock->vtx[0] = txCoinbase;

src/miner.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,7 @@ struct CBlockTemplate
3030
/** Generate a new block, without valid proof-of-work */
3131
CBlockTemplate* CreateNewBlock(const CChainParams& chainparams, const CScript& scriptPubKeyIn);
3232
/** Modify the extranonce in a block */
33-
void IncrementExtraNonce(CBlock* pblock, const CBlockIndex* pindexPrev, unsigned int& nExtraNonce, const std::vector<unsigned char> vchCoinbaseCommitment);
33+
void IncrementExtraNonce(CBlock* pblock, const CBlockIndex* pindexPrev, unsigned int& nExtraNonce);
3434
int64_t UpdateTime(CBlockHeader* pblock, const Consensus::Params& consensusParams, const CBlockIndex* pindexPrev);
3535

3636
#endif // BITCOIN_MINER_H

src/rpc/mining.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -117,7 +117,7 @@ UniValue generateBlocks(boost::shared_ptr<CReserveScript> coinbaseScript, int nG
117117
CBlock *pblock = &pblocktemplate->block;
118118
{
119119
LOCK(cs_main);
120-
IncrementExtraNonce(pblock, chainActive.Tip(), nExtraNonce, pblocktemplate->vchCoinbaseCommitment);
120+
IncrementExtraNonce(pblock, chainActive.Tip(), nExtraNonce);
121121
}
122122
while (nMaxTries > 0 && pblock->nNonce < nInnerLoopCount && !CheckProofOfWork(pblock->GetHash(), pblock->nBits, Params().GetConsensus())) {
123123
++pblock->nNonce;

src/test/test_bitcoin.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -109,7 +109,7 @@ TestChain100Setup::CreateAndProcessBlock(const std::vector<CMutableTransaction>&
109109
block.vtx.push_back(tx);
110110
// IncrementExtraNonce creates a valid coinbase and merkleRoot
111111
unsigned int extraNonce = 0;
112-
IncrementExtraNonce(&block, chainActive.Tip(), extraNonce, pblocktemplate->vchCoinbaseCommitment);
112+
IncrementExtraNonce(&block, chainActive.Tip(), extraNonce);
113113

114114
while (!CheckProofOfWork(block.GetHash(), block.nBits, chainparams.GetConsensus())) ++block.nNonce;
115115

0 commit comments

Comments
 (0)