V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
woshipanghu
V2EX  ›  Bitcoin

好奇比特币为什么能一直运行没有 bug?

  •  
  •   woshipanghu · 2023-07-28 17:50:50 +08:00 · 2246 次点击
    这是一个创建于 484 天前的主题,其中的信息可能已经有所发展或是发生改变。

    比特币出来有十几年了,为什么这套系统能运行的这么稳定 没有 bug ?

    还是说他的代码也一直在被开源社区维护着?

    大佬来帮我解惑下

    9 条回复    2023-07-30 09:11:29 +08:00
    0o0O0o0O0o
        1
    0o0O0o0O0o  
       2023-07-28 17:53:07 +08:00 via iPhone

    chenjia404
        2
    chenjia404  
       2023-07-28 18:01:52 +08:00   ❤️ 2
    比特币源码地址:github.com/bitcoin/bitcoin 可以看到不断的更新。
    比特币出过溢出 bug ,2010 年 8 月 15 日比特币区块链的第 74638 块上出现了 184,467,440,737.09551616 个比特币,然后修复 bug 分叉解决了。
    wangkun025
        3
    wangkun025  
       2023-07-28 18:03:56 +08:00
    哈哈,这是个非常有趣的问题。
    我知道怎么回事,但我表达不好。
    所以等其他人回答。
    lxzxl
        4
    lxzxl  
       2023-07-28 18:05:39 +08:00 via Android   ❤️ 1
    会有 bug 。 有版本更新。
    比特币的基础是共识
    wangkun025
        5
    wangkun025  
       2023-07-28 22:51:24 +08:00
    大家默认的比特币可能是叫做 bitcoin core 的软件。这个软件叫做钱包。
    类似的钱包,光在 bitcoin.org 上就有十几个。

    最最早期,可能只有一个比特币钱包软件,所以出现了 Bug 会导致系统性的问题。
    现在应该不需要担心这个问题了。
    如果有人在比特币链上添加一个 10 亿个比特币的区块,这个区块所产生的分支必然会被废弃掉。
    acess
        6
    acess  
       2023-07-30 09:04:48 +08:00
    acess
        7
    acess  
       2023-07-30 09:07:38 +08:00
    CVE-2018-17144 还是惊天级别的通胀 bug ,可以复制币(或者换一个等价说法就是可以凭空造币),而且躺了 2 年才被发现,好在没人恶意利用。

    (我这个说法有点标题党,因为实际上首先并不是所有客户端受影响;其次受影响的,也只有一部分版本是放行通胀,另一部分则是 DoS ,也就是检验这种非法区块的时候程序会 assert 崩溃)
    acess
        8
    acess  
       2023-07-30 09:09:18 +08:00
    CVE-2018-17144 的利用方式也不复杂,只是没人会往那个方向想,所以当初测试里也没加这个。
    acess
        9
    acess  
       2023-07-30 09:11:29 +08:00
    @wangkun025 bitcoin core 是节点+钱包,而且其实一直都在做钱包与节点的逻辑分离。
    而且 BTC 社区这边我记得并不太鼓励多客户端实现,主要用的还是 bitcoin core 。(虽然也有 btcd 之类其他的实现)
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2701 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 24ms · UTC 03:56 · PVG 11:56 · LAX 19:56 · JFK 22:56
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.