虚拟币钱包开发

新闻资讯

产品分类

热门产品

掌握钱包私钥掌握一切吗?
掌握钱包私钥掌握一切吗?
一般而言,如果一笔区块链交易的交易费设置的很低,它是不会被网络纳入的,但在某些情况下,零

杭州软件开发公司
杭州软件开发公司
杭州区块链软件开发公司哪里比较靠谱,区块链软件开发钱包,区块链商城系统开发,区块

GO开发者:如何成为区块链开发者?
GO开发者:如何成为区块链开发者?
可以这样说,2018年是区块链应用元年,区块链相关概念被炒得沸沸扬扬,作为一项新生技术,虽

稳定币之争
稳定币之争
毫无疑问,在加密货币市场有一个占主导地位的稳定币。 从理论上来说,Tether的代币USDT价

河南省首家区块链技术研究院成立
河南省首家区块链技术研究院成立
10 月 30 日消息据凤凰网商业消息,10 月 10 日,河南省未来区块链技术研究院在中国郑州正

软件开发-钱包开发
软件开发-钱包开发
沧州区块链软件开发钱包,区块链商城系统开发,区块链应用技术开发,区块链钱包开发,区块

宜昌软件开发钱包
宜昌软件开发钱包
宜昌区块链软件开发钱包,区块链商城系统开发,区块链应用技术开发,区块链钱包开发,区

临沂区块链钱包开发
临沂区块链钱包开发
临沂区块链软件开发钱包,区块链商城系统开发,区块链应用技术开发,区块链钱包开发,区

您的当前位置:首页 > 区块链钱包

比特币惊现重大漏洞后,代码审查工作将更加严


时间:2018-09-16 10:56:56  来源:原创  作者:admin  点击次数:


  自从上周发现并修复了比特币最严重的漏洞之一以来,社区的情绪用“震惊”这个词来形容是最恰当不过了。

in-wake-of-major-failure-bitcoin-code-review-comes-under-scrutiny-1000x600

  这一潜藏了两年的漏洞可能被利用来产出比硬编码2100万枚更多的比特币,随着这些比特币浮出水面,社区对此大加讨论,而开发人员也正绞尽脑汁:有没有什么办法防止类似严重的漏洞再次被添加到代码中去?

  漏洞发现后几天,社区尚未提出任何正式的解决方案。但它引发了大量有关比特币的讨论:它如何工作?当加密货币货币中最流行的软件客户端(software implementation)比特币核心钱包(bitcoin Core)再次出现类似的漏洞时,如何才能识别出来并获得解决?

  重要的问题还包括:如果一个恶意的参与者首先发现了这个漏洞,结果会怎样?如果现在代码中还有其他隐藏的漏洞怎么办?

  在这一点上,化名“Theymos”的reddit社区比特币子版版主敦促社区不要忘记这个漏洞。他在一篇传读很广的帖子中称这是“一次不可否认的重大故障”,并补充道:

  “如果比特币核心团队的所有策略和做法都保持不变,那么最终类似的故障将不可避免地再次发生,而我们下次可能也不会那么幸运地看到这一次类似的结果。”即便如此,有一种观点认为,在开放的全球参与的网络的推动下,比特币核心团队现在拥有了比该技术历史上任何时候都更强大的代码审查过程。

  现在,对开源代码库做贡献的开发人员比以往任何时候都要多。而且它被测试了很多次;据估计,代码测试约占代码贡献的20%。

  “错”在整个社区

  尽管如此,开发人员仍然认为,要确保该数字货币顺利运行,还有更多的工作需要去做。

  Theymos认为,一种方法是建立“更复杂”的测试,专门测试并定位严重但很难发现的漏洞,比如上周的测试。他补充道:,并补充道:

  “社区应该希望所有大型比特币公司派出技术测试专家进入比特币核心团队,目前很多公司没有为核心开发做出过任何贡献。”

  比特币核心贡献者James Hilliard也强调了这一点,他认为开发人员可以提高测试的“数量”和“质量”。不过,说起来容易做起来难。比特币核心贡献者Greg Maxwell对Theymos的思路表示赞同,认为测试固然重要,但是测试的质量和细节才是关键。Maxwell说道:

  “将更多的精力用于测试对我们来说是一个长期的挑战,一方面是因为测试的艺术性和科学性不亚于系统工程的任何其他方面。测试涉及的技能和能力并非每个人都具备。”

  但这种专业人才很难找到。Hilliard告诉CoinDesk:

  “比特币的发展在很大程度上受到了代码审查的限制,而且没有多少人能够胜任这一工作。”

  然而,许多人认为责任不应该只落在开发人员身上。人们普遍认为,作为一个没有领导者的去中心化项目,保持比特币的无差错是大家共同的责任。化名为Shinobimonkey的比特币爱好者告诉CoinDesk:

  “我的主要问题是,很多人对特定的开发人员提出批评指责,但整个项目是开放的,它不是‘会员制’,用户有责任审核代码,就像开发者积极贡献代码一样。”

  比特币核心维护者Wladimir van der Laan也表达了同样的观点,他在推特上写道:

  “出现有漏洞的代码是不对的。是的,是‘我们’搞砸了,但这个‘我们’概念很宽泛。应该是整个社区因为没有彻底审查共识变化而将它搞砸了。”区块链代码工程师John Newberry同意该观点。尽管他没有编写漏洞百出的代码,但他辩称,作为比特币世界的一名开发者,出现这样的错误他也有责任,因为他没有对代码进行仔细审查。

  他甚至表示,他此前看到该有问题的代码时只是觉得很可笑。但他认为其他人可能已经检查过了。他说道:

  “我没有亲自去验证,而是相信那些比我更聪明、更有智慧的人已经验证过了。我想当然地认为是其他人已经做了这一工作。”

  允许存在多个比特币核心代码客户端

  尽管如此,一些人仍然认为有存在漏洞的风险。Blockstream首席运营官Samson Mow在推特上说:

  “比特币以前也出现过漏洞,而且还会再次出现漏洞。它只是一个软件。这没什么大惊小怪的。”除了这些思路外,还有另一个流行的想法。目前比特币社区的主要比特币软件比特币核心在95%的比特币节点上运行。(至少这是根据一项统计数据得出的——有趣的是,没有办法看到每个比特币节点,因为有些节点想要更多的隐私,不会向网络的其他部分大事宣扬它们的存在。)

  因此,一个想法是要允许更多的比特币代码客户端存在。这样的话,如果一个代码客户端有灾难性的错误导致网络崩溃时,其他代码客户端仍然可以运行,从而保持比特币作为一个整体一直运行。

  从某种程度上讲,这已经存在了。目前存在一些不太为人所知的代码客户端,如Bitcoin Knots和Btcd。它正在加密货币领域的其他地方成为常态。例如,以太坊有两个主要的客户端,Geth和Parity,每一个都可以供任何运行该软件的人使用。


本文来自区块链开发官网 转载请注明

上一篇 下一篇


发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表
网站首页| 关于沙僧科技| 区块链开发| 产品案例| 新闻中心| 售后服务| 联系我们