云计算 已评论

聊聊区块链背后存在的问题(四):代码漏洞

2018-5-15 17:02    吾王

  【天极网云计算频道】前面几篇文章,笔者谈到了区块链背后的问题,比如分叉、51%算力攻击和私钥丢失。

  今天,我们来看看区块链背后的新问题——代码漏洞。首先,从比特币到区块链,“Everything”都是建立在代码之上。如果把区块链比喻成一栋楼,那么代码可称之为“钢筋混泥土”。以至于,在区块链的世界,遵行着“代码即法律”的规则。

聊聊区块链背后存在的问题(四):代码漏洞

  既然区块链是建立在代码之上,代码是由人编写的,那么区块链也会存在一些问题——代码漏洞。

  如果区块链存在代码漏洞,一旦被黑客发现,那么后果很严重。先来回顾一下TheDAO事件。

  DAO全称是Decentralized Autonomous Organization,即“去中心化的自治组织”,其中TheDAO则是最大一个,被誉为“DAO之母”。TheDAO是通过智能合约技术创建并运行在以太坊上的智能合约,它是由区块链物联网公司Slock.it发起的一个众筹项目。

聊聊区块链背后存在的问题(四):代码漏洞

  该众筹合约一度融资众筹达到1.5亿美元,每个参与众筹的人向众筹合约投资以太坊,并且根据出资额获得相应的DAO代币,出资人具有审查项目和投票表决的权利。

  但是,TheDAO合约的源码中存在着一个函数调用的漏洞,使得攻击者可以将TheDAO资产池中的以太币非法转移给自己。该问题被发现后,TheDAO监护人立即提议社区发送垃圾交易阻塞以太坊网络,减缓TheDAO资产被转移出去的速度。

  于是,2016年7月,以太坊官方修改了以太坊的源码,在区块高度1920000强行把TheDAO及其子DAO的资金转移到了另外一个合约地址,通过这种方式夺回被攻击者控制的DAO合约中的币。

  结果,导致以太坊出现分叉,变成了两条链:一条为原始的区块链(ETC),一条是分叉出来的新链(ETH)。

聊聊区块链背后存在的问题(四):代码漏洞

  正如《白话区块链》一书提到,“智能合约还处于发展的初始阶段,区块链应用有很好的创新,很好的技术机制,但当复杂度提高以后,建立在上面的应用也会伴随着各种风险。”

  作为区块链2.0时代的典型代表,以太坊是运行着智能合约的基础平台,可被视为去中心化应用的“操作系统”。

  但是,随着以太坊上面的各种应用越来越多,区块链的代码漏洞会得到凸显,因此代码漏洞必会成为区块链发展最大的阻碍之一。(注:部分内容参考《白话区块链》作者:蒋勇)

  附:聊聊区块链背后存在的问题系列文章

  聊聊区块链背后存在的问题(一):分叉

  http://cloud.yesky.com/347/640913847.shtml

  聊聊区块链背后存在的问题(二):51%的攻击

  http://cloud.yesky.com/481/643401981.shtml

  聊聊区块链背后存在的问题(三):私钥丢失

  http://cloud.yesky.com/212/648431212.shtml

#+1你赞过了
人已赞
#
分享

取消

年末该感谢的人是?华为云12.12卷来一股回馈风
#
效率提升100倍,生命的密码在云中开启
#
进军混合云领域 亚马逊AWS亮出混合云产品Outposts
#
直击悠络客腾讯云战略合作发布会 共推智慧零售解决方案
#

©2018 天极网旗下网站

#