美文网首页比特币源码学习笔记
比特币源码阅读(工作量证明-检测)

比特币源码阅读(工作量证明-检测)

作者: 坠叶飘香 | 来源:发表于2018-08-06 10:39 被阅读0次
收到新区块后,需要检测区块的工作量证明是否真的完成了,检测代码如下:

代码文件:src/pow.cpp

/**
*
**/
bool CheckProofOfWork(uint256 hash, unsigned int nBits, const Consensus::Params& params)
{
    bool fNegative;
    bool fOverflow;
    arith_uint256 bnTarget;

    bnTarget.SetCompact(nBits, &fNegative, &fOverflow);

    //negative:负数
    //为负数;为0;溢出;大于最大限制
    // Check range
    if (fNegative || bnTarget == 0 || fOverflow || bnTarget > UintToArith256(params.powLimit)) //难度值是否合理
        return false;

    // Check proof of work matches claimed amount
    if (UintToArith256(hash) > bnTarget) //区块hash大于难度值
        return false;

    return true;
}

相关文章

  • 比特币源码阅读(工作量证明-检测)

    收到新区块后,需要检测区块的工作量证明是否真的完成了,检测代码如下: 代码文件:src/pow.cpp

  • 比特币的癌症:51%攻击

    比特币的心脏是工作量证明,没有了工作量证明,比特币就会死。 工作量证明(POW)其实是一种奖励机制,鼓励矿工维护比...

  • 区块链100讲:比特币,概率与随机性

    -比特币工作量证明机制(PoW)和这对骰子遵循相同的规律- 随机性构成了比特币工作量证明(PoW)的基石。但我们是...

  • 挖矿、资金盘、货币

    比特币挖矿,矿工提供工作量证明(PoW),即可获得比特币网络的奖励。 IPFS 挖矿,提供存储证明和宽带证明,即可...

  • POW、POS、如何规避分叉的思考

    POW即工作量证明共识机制,即整个旷工节点去计算数学题,最先运用工作量证明共识机制的项目是比特币,比特币是目前世界...

  • 区块链入门 | 区块链共识机制,POW、POS、POA 详解

    POW POW的全称为Proof of Work,翻译过来就是“工作证明”或者“工作量证明”。 比特币、狗狗币和莱...

  • 从比特币分叉事件来看看DPOS和EOS

    ### 比特币为什么会分叉 1、比特币采用的是工作量证明机制(POW,proof of work),每一个区块的产...

  • 区块链问答

    问:什么是比特币说的“挖矿”? 答:比特币中的“挖矿”实际上就是记账的过程,比特币的运算采用了一种称为“工作量证明...

  • 工作量证明

    工作量证明是比特币的共识机制,共识算法是区块链中非常重要的一环,甚至说是核心,比特币的共识POW是什么呢? 工作量...

  • 比特币源码研读

    forest21000版 比特币源码研读之一比特币源码研读之二比特币源码研读之三比特币源码研读之四比特币源码研读之...

网友评论

    本文标题:比特币源码阅读(工作量证明-检测)

    本文链接:https://www.haomeiwen.com/subject/tkewvftx.html