区以太坊发展路上的挫折:黑客攻击事件

  以太坊黑客攻击事件是一起典型的黑客组织利用以太坊网络漏洞盗取以太币的攻击事件,直接导致以太币被盗取和以太币价格大跌近腰斩。这一事件警示着所有区块链项目及相关产业网络安全问题一直是一个永久性问题。

  以太坊黑客攻击事件也称“The DAO”事件,DAO是去中心化自治组织,其目的是为组织规则以及决策机构编写代码,从而消除书面文件的需要,以及减少管理人员,进而创建出一个去中心化管理架构.

  有初始融资阶段,在这一阶段人们添加资金来购买代币,来代表其所有权——这个过程叫众销,或者首次代币发行行——为其提供所需资源;

  之后人们就开始向DAO建言献策该如何使用这笔钱,购买DAO的成员就有资格对这些提案进行投票。

  有一点我们需要知道。很多人在关注“不将这些代币变成股票形式”这一问题——这种形式更像是人们为获得投票权而做出的贡献,而非所有权。在大多数案例中,DAO不是由某人所有的,它只是一个在以太坊网络运行的软件。最初的DAO就是比特币,它由核心团队及矿工网络的共识进行控制,其他DAO都发布在以太坊平台。

  “The DAO”是一个特定DAO组织的名字,由德国初创公司Slock.it背后的团队构想创建而成——Slock.it是一家专注“智能锁”的公司,能够让人们在去中心化版本的空中食宿中交换事物(如契约、船只和公寓等)。

  “The DAO”项目子2016年4月30日开始,融资窗口开放了28天。截至5月15日这个项目筹得了超过1亿美元,而到整个融资期结束,共有超过11000位热情的成员参与进来,筹得1.5亿美元,成为历史上最大的众筹项目。“The DAO”所筹集的资金远远超过其创建者的预期。

  在众筹期间,就有人担心“The DAO”项目的代码会受到攻击。众筹阶段结束后,在开始资助提案项目前,大多数讨论都是围绕解决系统缺陷进行的。尤其是DAO项目创始人之-——Stephan Tual(史蒂芬-图阿尔)于6月12日宣布,他们发现了软件中存在的“递归调用漏洞”问题,不过对DAO资金来说则不会产生影响。

  其实所有网络系统都有可能会遭到各种各样的攻击。而支撑价值超过10亿美元(根据市值计算)的以太币的以太坊网络还没有遇到过黑客攻击,而且它同时还在运行很多其他智能合约。但是如果某系统可以转移大现金,那么它就有可能遭到攻击。

  不幸的是,在程序员修复这一漏洞及其他问题期间,一个不知名的黑客开始利用这一途径收集“The DAO”项目在销售中所得的以太币。

  6月18日也就是星期六,黑客成功盗取了超过360万个以太币,并投人一个DAO子组织(以下简称“子DAO”)中,这个组织和“The DAO”有同样的结构。当日以太币的价格从20多美元直接跌破13美元。很多人都在尝试从“The DAO”项目中脱离出来,以防止以太币被盗,但是他们无法在短期内就获得所需票数。因为设计人员从来没想过被盗金额会这么大,所有以太币都存放在一个单一地址中,这一点太糟糕了。实际上,这种或者其他相似的攻击,随时都有可能继续。

  因为“子DAO”和其母体有同样的结构、限制以及缺陷,所以这个新生组织中的以太币在28天内是取不出来的,因为28天是其初始融资期。

  每个人都可以看到“子DAO”中的以太币——任何试图将其提现的行为都会引发警报及调查。也就是说,黑客也将永远无法取现或使用任何一个以太币。但是攻击者在发动攻击时,很可能拥有大量以太坊空头,在以币数量减半后用来套现了。也就是说,黑客已经从“The DAO”项目之外赚到了钱,所以也就无所谓“The DAO”里的以太币了。

  “The DAO”项目持有近15%的以太币,因此“The DAO”项目的问题对以太坊网络及其加密币都产生了负面影响。

  需要注意的是,有数十家初创公司在研究DAO及其管理产品,而许多智能合约都有相似的缺陷,而利用智能合约来构建复杂的软件还处于初步阶段。对于接下来会发生的事情,每个人都会遇到风险。

  现在所有人都在关注“The DAO”项目和以太坊基金会,希望找到一个决方案,能够让这个生态系统步入之前的发展道路上。

  为了了解上面提到的问题,需要先了解区块链的基础知识:节点网络将交易输入区块上,然后各区块连接成一个单一的链,来代表所发生事件的“真相”。如果有两笔竞争中的交易同时开始,那么网络就会选择一笔,拒绝另一笔,从而化解冲突,因此所有节点都有整个分布式账本的相同副本。

  唯一“重写历史”的方法就是让超过51%的节点同意这个决定,但是比特币或以太坊都还没有这种先例。去中心化网络的目标就是没有人有权做这件事情,不然网络本身就会变得不可信。

  6月17日,以太坊基金会的Vitalik Buterin更新了一项重要报告,他表示,“The DAO”项目正在遭受攻击,不过他已经研究出了解决方案:软件分叉解决方案,通过这种软件分叉,任何调用代码或委托调用的交易,也就是借助代码(“The DAO”和“子DAO”)来减少账户余额的交易都会被视为无效。

  以太坊代码会创建一份黑名单,来防止不法分子借此获利。在这种“冻结资产”的场景中,Buterin呼吁一起探讨,如何帮助“The DAO”代币持有者恢复他们最初的投资。这个看似无害,且颇有“解围”意义的提议也需要以太坊网络节点大部分人都接受才能奏效,但是它已经引起了巨大的非议。

  黑客也对这个计划(软分叉)做出了回应,他在给“The DAO”项目和以太坊社区的一封公开信中声称他的“奖励”是合法的,并且如果有任何人想要无视他的工作的话,他都会采取法律手段来维护。他表达得很明确,而且从某个角度来看,也引起了共鸣:智能合约的前挺是,他们是自已的仲裁人,任何其他外部节点都不能“改变这一交易的规则”。

  之后,黑客通过一个中介表示,他会暂停这个有组织地对他财产的“盗窃”,他会奖励不支持这项软分叉提议的矿工(节点)他说:“很快我们就会有一个智能合约来奖励矿工,奖励那些反对软分叉并进行挖矿的人。共计100万个以太币,以及100个比特币会分享给矿工。”这样,想通过投票的办法来达成一致变得十分困难。

  还有一项提议也引起了争论,即要求矿工彻底解除盗窃并且归还“The DAO”项目所有的以太币,这样就能自动归还给代币持有人,从而结束“The DAO”项目

  正如Stephan Tual在他的博客中写的:当地时间下午4点,达成的共识是,如果27天都使用软分叉,那么攻击者就不能索回他塞到“子DAO”中的资金了。而之后硬分叉甚至可以追回所有以太币,包括“The DAO”的“额外余额”以及被盗资金,都将归还到智能合约上,这个智能合约将包含一个简单函数: withdraw.

  这样每个人都有可能参与“The DAO”项目,以提取他们的资金:“多亏有矿工的支持,因为目前还没有花掉一个币,也不会出现任何损失。”

  最终,以太坊团队还是采用硬分叉技术来解决问题。他们通过修改以太坊软件的代码,在第1920000区块强行把“The DAO’项目及其“子DAO”的所有资金(包括黑客控制的部分)全部转到一个特定的退款合约地址。这个合约唯一的功能就是把众筹人手上的DAO币按照100:1换回原来的以太币。“The DAO”项目将会死去,而DAO代币持有者将会得到他们所投入的部分以太币。这样一来,硬分叉产生了以太坊ETH(新版以太坊)和ETC(经典以太坊)两个平行世界。那么就有人疑问,这种硬分叉是否是一币双卖?是否在新链上发送交易同样会被广播到旧链上重放?

  ETH和ETC同源的两条区块链并存,交易互相交错, 必然会带来使用上的混乱,在任何一条链上做交易,都要考虑在另一条链上是否有重放影响。最好的办法还是把ETH和ETC存放在不同的地址上,从而互不影响。以太坊官方推荐了第三方的智能合约,可以把原来同地址的ETH和ETC发向不同的新地址,即本来在双链上都存放在地址x的以太币,分别转到ETH的地址Y和ETC的地址Z。接下来是安全分拆合约代码,在split方法(java中split() 方法用于把一个字符串分割成字符串数组。)中判断合约运行在哪条链上,然后把ETH/ETC转到不同的目标地址上。这个代码有点像操作系统进程fork(程序设计中的分叉函数)调用之后,判断代码到底在子进程还是父进程运行。代码中用到了另一个称为oracle(预言家)的合约AmIOnTheFork, 地址是Ox2bd2326c993dfaefB4f696526064ff22ebaSb362。这个合约在硬分叉前发布到区块链上,并且在硬分叉后,根据“TheDAO”黑客合约的余额,立刻记录下合约到底是处于新链还是旧链,从而给其他合约提供判断依据。

  尽管长期趋势不明朗,但至少ETC短期已经存活下来。ETC的币值也逐渐上涨,并伴随着巨大的换手量,甚至有人还估计ETC,将来价格会比ETH更高。那么谁是ETC 的幕后推手呢?一种猜测是比特’币的圈里人。比特币在加密货币里是当之无愧的老大,当然不希望有个小弟变得越来越强大,以致最终成为自己的对手。现在,以太坊这个小弟的快速成长,已经有超越比特币的苗头,比特币怎能坐视不理?比特币社区对以太坊的硬分叉基本都是谴责的,现在又出现了ETC这个难得的机会,比特币的大佬们忍不住狂吃廉价ETC筹码(大量的ETC被用人BTC买走),用很少的成本就能够控制一条和ETH对抗的链,这可能是非常好的上车机会。

  另外,比特币社区里一直就有大区块和小区块两派之争,大区块可解决比特币网络吞吐量低的问题,但是要靠硬分叉来实现,这点遭到小区块派的强烈反对。此次以太坊硬分叉的成败,对比特币以至整个区块链社区都有极重要的参考意义,小区块派当然希望ETC能够活下来,从而证明硬分叉具有很大风险,小区块派应该是ETC最忠实的支持者。各大交易所基本都是从事比特币起家,深受各种比特币势力的影响,支持ETC的交易也不足为奇了。

  以太坊无疑是区块链技术发展之路你上的伟大之作,但同样遭受黑客的威胁,这也给以后的区块链技术发展敲响了警钟,安全,是所有技术发展路上的重中之重。返回搜狐,查看更多

分享: