比特币最近这么热,有人分析过其源码么?

发布于 2022-08-27 12:50:47 字数 103 浏览 20 评论 0

从github上clone了bitcoin的源码,看src文件里大多是cpp文件,应该是用c++写的,但是没找到main函数,如果我想在windows上编译运行,如何做呢?有人分析过源码么?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

苦笑流年记忆 2022-09-03 12:50:47

文章来自知乎:深入浅出比特币 作者:Wu Hao

  • 第负一章 反馈
    • 第一节 风险警示
    • 第二节 删节版
  • 第零章 玩具
  • 第一章 账单
    • 第一节 撕纸游戏
    • 第二节 账单链
    • 第三节 游戏规则
    • 第四节 2100万
  • 第二章 支付
    • 第一节 匿名
    • 第二节 点对点
    • 第三节 重要的细节
  • 第三章 沙发 --总结以及FAQ
    • 第一节 主观臆断
    • 第二节 客观事实
    • 第三节 结语

作者在 2013-11-22 添加了「第负一章 第二节 删节版」,并提供了一段源码:

function mine()
{
    while(true)
    {
        longestChain = getLongestValidChain()

        -- A number that changes every time, so that you don't waste time 
        -- trying to calculate a valid blockHash with the same input.
        nonce = getNewNonce()

        currentTXs = getUnconfirmedTransactionsFromNetwork()

        newBlock = getNewBlock(longestChain, currentTX, nonce)

        -- http://en.wikipedia.org/wiki/SHA-2
        -- and this is what all the "mining machines" are doing.
        blockHash = sha256(newBlock)

        if(meetReqirements(blockHash))
        {
            broadcast(newBlock)
            -- Now the height the block chain is incremented by 1
            -- (if the new block is accepted by other peers),
            -- and all the TXs in the new block are "confirmed"
        }
    }
}
////////////////////////////////////////////////////////////////
function sendBTC(amount)
{
    sourceTXs = pickConfirmedTransactionsToBeSpent(amount)
    tx = generateTX(sourceTXs, targetAddrs, amount, fee)
    signedTx = sign(tx, privateKeysOfAllInputAddress)
    broadcast(signedTx)
}
////////////////////////////////////////////////////////////////

现在虽然没有分析,不过静待作者的更新吧。

----2013-12-10 13:16 更新---

非常遗憾,作者的回信是:“没有继续写的打算”。

余生共白头 2022-09-03 12:50:47

MAIN函数在 bitcoinGUI.cpp 或者bitcoind.cpp 里面。 查看DOC/BUILD-WIN.MD里面有编译方法

悸初 2022-09-03 12:50:47

在init文件了

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文