当前位置:首页 > 物联网 > 区块链
[导读] Bitcoin Unlimited是比特现金的主要客户之一,该公司的一名匿名开发者透露,他是如何在过去八年中发现比特币最严重的漏洞的。 作为证据,他发现了这个漏洞,Aweman

Bitcoin Unlimited是比特现金的主要客户之一,该公司的一名匿名开发者透露,他是如何在过去八年中发现比特币最严重的漏洞的。

作为证据,他发现了这个漏洞,Awemany时间戳了哈希(如图),并进一步与PGP密钥签署了协议,用于对比特币核心和其他项目进行负责的披露。我们会在下文详细引述有关部分:“我当时正在努力在Bitcoin Unlimited客户机上实现新的CHECKDATASIG/-VERIFY操作码,该操作码将在11月启动比特币(Cash)。我一直在研究这些工具的潜在的巧妙的用例,并且有动机去完成这项工作。

大约中午时分(9月17日,星期一),我注意到在ABC的签名运算和比特币无限的(BU)的数字运算方式上存在着很大的分歧。早些时候,我和BU团队达成了一致,我将把大部分CDS/-V文件从ABC移植过来,但我感到不堪重负。我的想法是:好吧,这是可行的,但这需要更多的分析,也需要更多的访客来评论。而且需要更长时间。叹气。同时,我在ABC代码库中偶然发现了这个注释:

//检查重复的输入 —注意这个检查很慢,所以我们在检查快中跳过它。

我的第一反应有点儿,呃,怎么回事?还在说那个评论吗?然后,我查找了ABC中CheckRegularTransaction的用法,它是在Core(核心)中重命名的CheckTransacTIon的变体(但是我当时不知道。我翻遍了代码,试图理解其中的逻辑。

我注意到,块验证跳过了这个测试,因为它被假定已经在内存池入口发生。我的下一个想法是有点下沉的感觉和一个‘啊哦,我真的希望ABC的人们已经考虑了记忆池和块传输之间的区别,并且这些是进入系统的独特方式。这里可能有问题!”然后我想出了一个测试这个的方法。我修补了一个ABC节点,使其在-regtest模式下即使被请求并连接了一个未匹配的和一个补丁的节点,也不中继交易,并创建一个带有重复输入的交易(上面的测试跳过了这个交易)。

哇!断言(),中止…

我打开了致deadalnix(BitcoinABC维护者)的电子邮件,开始想到:‘好吧,实际上,这些东西是从哪里来的,什么时候从哪里来的,他们把它引入到代码中,我们可能很幸运,但这还没有发布吗?’

然后我注意到这些东西是来自核心的。我已经写了一份披露报告,重新检查了核心是否也很脆弱。

再一次,哇!断言(),中止…

作为一个负责任的公民,我随后给Wladimir(比特币核心维护者)、sickpig(Bitcoin Unlimited开发者)和其他一些人写了一封加密的公开邮件,附上了ABC和核心补丁的一个变体来利用这个问题来揭露我的信息。”

根据以上,只要看一眼代码就能发现这个错误,BU开发者似乎从看12PM到在2018年9月17日下午14:47PM发邮件给其他开发者。

因此,一系列事件似乎表明,取消双重支出检查是一件相当大的事情,而且几乎是立竿见影。

即使是一个非程序员,你可能也会想到一些东西,这就提出了一个问题:当5个比特币核心的开发者批准这个错误时,他们到底在想什么?

这是因为这个错误并不微妙或复杂,但它是如此的简单,只要看一眼就可以看出,根据上面的描述,取消双倍支出检查是一个相当大的问题。

这就提出了一个问题,即这个错误是如何精确地把比特币打印出来的,而比特币本来可以被矿工用稀薄的空气进行打印的,但它最终却被写入了代码。

据我们所知,这也对Blockstream可能存在的利益冲突提出了问题,即地雷问题。提出这个明显错误的开发人员当时正在为Blockstream工作,而批准它的两个开发人员也是如此。

对于比特币核心的代码是否正在接受充分的审查,还需要提出进一步的问题。这是因为,如果非比特币Core的开发者对漏洞一目了然,但仍然能够进入,那么很明显,评审过程已经失败了,而且非常糟糕。

值得庆幸的是,现在存在一些竞争,比特币核心的科里·菲尔兹(Cory Fields)之前在ABC上发现了一个漏洞,这是个严重的问题,但比这严重得多,因为它没有考虑到“有效”的双倍支出。

在辩论最激烈的时期,一些比特币公司的态度不那么友善,做出了非常不负责任的行为,这导致了比特币无限使用的漏洞。

Awemany并没有回报他的支持,而是进行了非常负责任的披露,这导致比特币生态系统的大部分快速升级。

到目前为止,矿商和企业可能已经升级,但在编写本文时,仍有数千个节点仍然容易受到通胀风险的影响。

在这种情况下,会向节点发送警报,要求它们快速升级。这样的警报系统被删除了,即使它只是在节点屏幕的角落说一些类似于你应该升级的东西,就像你已经发现了一个错误一样,可以在一些链接中读到更多的内容。

警报本身不会以任何方式干扰代码节点的运行,如果发出了错误的警报,其他开发人员可能会将其覆盖。所有的警报都是通知节点操作员,然后节点操作员就可以自己作出决定。

现在,节点操作员必须检查加密媒体或crypto twitter,如果他们在新闻发布期休假,那么他们可能会认为它们的bugy节点没有什么问题。

由于Awemany的披露,对于那些已经升级的人来说,这是一个更安全的节点。为此,在撰写本文时,他获得了价值200美元的0.03BTC捐款。比特币现金支付者已经慷慨了很多,给他寄去了将近36BCH的捐款,价值17000美元。

然而,这些开发者不应该依赖他人的善意,因为考虑到风险有多大,应该会有漏洞奖金。然而,比特币核心和比特币现金的客户似乎都没有这样的漏洞奖励,这可能意味着开发者并没有太多动力来揭露这些漏洞,因此这也许是为什么比特币在直播代码中保留了两年的原因。

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

据报道,全球前三大比特币和加密货币矿机制造商比特大陆、嘉楠耘智和比特微电子为规避美国关税政策影响,都计划在美国设立制造工厂并建立供应链。

关键字: 加密货币 比特币

业内消息,本周比特币盘中一度突破64000美元,续刷2021年11月以来新高。这是比特币自2021年11月以来最高价格,距离历史最高点68991美元仅一步之遥。随后,比特币涨势回落,截至发稿,比特币报60377.42美元...

关键字: 加密货币 爆仓 比特币 以太坊 狗狗币 BNB

比特币是一种去中心化、全球性的数字货币,它通过加密算法和分布式账本技术,实现了安全、快速、低成本的交易和转移资产。比特币的出现,打破了传统的金融模式,为人们提供了一种全新的支付方式和财富管理方式,同时也引发了人们对金融创...

关键字: 比特币 区块链

加密货币(Cryptocurrency)是一种数字资产,通过使用密码学技术确保安全性和匿名性。加密货币是一种去中心化的数字货币,不受任何政府或金融机构的控制。比特币是其中最著名的一种。

关键字: 比特币 加密货币 数字资产

比特币是一种数字加密货币,也称为加密电子货币,于2009年由中本聪创立。与传统货币不同,比特币交易不需要第三方机构参与,并且具有匿名性。

关键字: 比特币

区块链,就是一个又一个区块组成的链条。每一个区块中保存了一定的信息,它们按照各自产生的时间顺序连接成链条。这个链条被保存在所有的服务器中,只要整个系统中有一台服务器可以工作,整条区块链就是安全的

关键字: 块链 虚拟货币 比特币

比特币挖矿机就是用于赚取比特币的计算机。这类计算机一般有专业的挖矿芯片,多采用安装大量显卡的方式工作,耗电量较大。

关键字: 比特币 挖矿 挖矿芯片

世界前十大虚拟货币比特币、以太坊、瑞波币、?比特现金、?EOS6、莱特币、恒星币、艾达币、泰达币、IOTA一、比特币是2008年11月1日由日本人中本聪推出的,于2009年1月3日正式诞生!

关键字: 区块链 虚拟货币 比特币

区块链(Blockchain)是分布式数据存储、点对点传输、共识机制、加密算法等计算机技术的新型应用模式。所谓共识机制是区块链系统中实现不同节点之间建立信任、获取权益的数学算法。区块链是比特币的底层技术,像一个数据库账本...

关键字: 区块链 比特币 计算机

由于加密货币的兴起,越来越多的人开始看到区块链可以带来什么。虽然主流采用可能仍需要一些时间,但该技术正变得与不同行业相关。

关键字: 区块链 比特币 互联网平台
关闭