From 0baa13581e373133b7405eb700b42fce1b23c704 Mon Sep 17 00:00:00 2001 From: Gregory Sanders Date: Wed, 27 Mar 2019 14:42:27 -0400 Subject: [PATCH] Only check 1 in 1000 block header sigs on load --- src/txdb.cpp | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/txdb.cpp b/src/txdb.cpp index 7871f86b66..5aac7860fb 100644 --- a/src/txdb.cpp +++ b/src/txdb.cpp @@ -320,7 +320,9 @@ bool CBlockTreeDB::LoadBlockIndexGuts(const Consensus::Params& consensusParams, pindexNew->nTx = diskindex.nTx; const uint256 block_hash = pindexNew->GetBlockHash(); - if (!CheckProof(pindexNew->GetBlockHeader(), consensusParams) && + // Only validate one of every 1000 block header for sanity check + if (pindexNew->nHeight % 1000 == 0 && + !CheckProof(pindexNew->GetBlockHeader(), consensusParams) && block_hash != consensusParams.hashGenesisBlock) { return error("%s: CheckProof: %s, %s", __func__, block_hash.ToString(), pindexNew->ToString()); }