聊聊区块链背后存在的问题(四):代码漏洞
- +1 你赞过了
前面几篇文章,笔者谈到了区块链背后的问题,比如分叉、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时代的典型代表,以太坊是运行着智能合约的基础平台,可被视为去中心化应用的“操作系统”。
但是,随着以太坊上面的各种应用越来越多,区块链的代码漏洞会得到凸显,因此代码漏洞必会成为区块链发展最大的阻碍之一。(注:部分内容参考《白话区块链》作者:蒋勇)
附:聊聊区块链背后存在的问题系列文章
聊聊区块链背后存在的问题(一):分叉
//cloud.yesky.com/347/640913847.shtml
聊聊区块链背后存在的问题(二):51%的攻击
//cloud.yesky.com/481/643401981.shtml
聊聊区块链背后存在的问题(三):私钥丢失
最新资讯
热门视频
新品评测