/// <summary> /// Check proof of work and merkle root /// </summary> /// <param name="consensus"></param> /// <returns></returns> public bool Check(Consensus consensus) { if (consensus.NetworkOptions.IsProofOfStake) { return(BlockStake.Check(this, consensus)); } return(this.CheckMerkleRoot() && this.Header.CheckProofOfWork(consensus)); }
/// <summary> /// Check proof of work and merkle root /// </summary> /// <param name="consensus"></param> /// <returns></returns> public bool Check(Consensus consensus) { if (Block.BlockSignature) { return(BlockStake.Check(this)); } return(CheckMerkleRoot() && Header.CheckProofOfWork(consensus)); }