Store the Equihash solution in minimal representation in the block header

The genesis blocks and miner tests have been regenerated, because changing the
block header serialisation format changes the block hash, and thus validity.

The Equihash solutions have been removed from the bloom test inputs for
simplicity (block validity is not checked there; only a valid serialisation is
necessary).
This commit is contained in:
Jack Grigg
2016-08-14 15:04:13 +12:00
parent 20abe2083c
commit 5be6abbf84
15 changed files with 284 additions and 230 deletions

View File

@@ -96,6 +96,10 @@ unsigned int CalculateNextWorkRequired(uint32_t nBits, int64_t nLastBlockTime, i
bool CheckEquihashSolution(const CBlockHeader *pblock, const CChainParams& params)
{
// Don't validate genesis
if (pblock->hashPrevBlock.IsNull())
return true;
unsigned int n = params.EquihashN();
unsigned int k = params.EquihashK();