DAO只是Mt. Gox 2.0,它并没有被攻击

2016-06-22 11:16 来源:巴比特 阅读:7996
直到最近我才厘清自己对DAO事件的看法。究竟以太坊该进行软分叉、硬分叉还是什么都不做呢?我认为以太坊社区最好什么都不做。以下是我的理由。

直到最近我才厘清自己对DAO事件的看法。究竟以太坊该进行软分叉、硬分叉还是什么都不做呢?我认为以太坊社区最好什么都不做。以下是我的理由。

事实就是,以太坊和DAO是彼此独立的。以太坊是建立在独有的区块链平台上的电脑协议。它的存在只有一个目的:在大型网络中执行代码。

DAO是第一个使用以太坊网络的平台。DAO的全称是去中心化的自治组织(Decentralized Autonomous Organization),这是一种新型公司,运作模式是自治的。

注意了,DAO是一家公司,一家没有人为干预的公司。DAO是由代码组成的,只不过投资者可以选择在这个平台上进行投资。

这样说来,DAO根本没有被攻击,只是执行了代码,正是因为准确执行了代码导致其破产。从投资角度看,DAO是一种失败的经营模式。从技术角度看,DAO只是在准确执行代码。

DAO和Mt Gox

 

Mt. Gox 2.0

 

DAO破产令人想起Mt. Gox事件。整个比特币社区都知道媒体在报道Mt. Gox事件上出现失误。当年,大量的头条都写着“比特币破产了!”或者“比特币被攻击了!”,这当然不是真的,Mt. Gox只不过是一家使用比特币协议的公司而已。

人们曾那么信任Mt. Gox,不过很不幸,它还是破产了。投资者大把大把的钱都打了水漂。真是太遗憾了。从Mt. Gox的失败经历中我们可以学到很多,不过从长远看来,这也许是件好事。

DAO也不例外。众筹初期,参与者无条件相信它,甚至不做任何调查。他们把钱投入到这家公司,然后这家公司倒闭了。(我认为)这一切与以太坊代码无关。

这样看来,以太坊社区为DAO设计分叉预案看起来毫无道理。

没错,这次攻击窃取了很多资金。但起因并不是以太坊的技术问题。想当年Mt. Gox破产造成投资者大量的资金损失,比特币社区也没有为此进行分叉。

我认为进行这个分叉预案最离谱的原因是为以太坊开发者买单,因为他们也投资了DAO。试想一下,如果一家比特币公司破产了,即使问题不出在代码和合约执行上,开发者还是想方设法进行硬分叉,不为别的,就是为了把自己投的钱拿回来!这是一个十分危险的先例。

 

新的51%攻击

 

最终决定分叉的不是以太坊社区,而是矿工,这算是一件好事。不过,我们即将见证区块链技术上一种新型攻击——内部51%攻击。

社区考虑硬分叉不是为了修复什么小故障,而是想要把因破产而损失的资金拿回来。他们投资了一家公司,这家公司不幸破产,而现在他们居然想要通过某种手段强行拿回自己的钱。

我再说一次,这会开创一个危险的先例。不管这个过程是否民主,这件事实在太过火。

 

技术故障VS破产问题

 

假设你在史考特证券(美国知名的网络证券公司)开户,存入1000美金,然后发生了以下两种情形:

(1)由于史考特证券内部技术故障,你损失了这1000美金。
(2)你买了某个公司的股票,然后这家公司因技术故障破产,你损失了这1000美金。

第一种情况起因是史考特证券内部软件问题,因此由它来解决问题是很合理的。也就是说,这种情况下他们可以通过“硬分叉”自己的软件来找回你的资金。

第二种情况起因是另外一家公司的技术故障,这样还由史考特证券来解决问题就不太合理了。事实是,你已经投资了另一家公司的股票,史考特证券不能“硬分叉”自己的软件帮你找回资金当作一切都没发生过一样。

以太坊和以上所说的史考特证券一样,都只对自己的技术故障负责。他们根本不应该因为客户的投资失败去修改代码。

 

合约&代码

 

我再举一个关于DAO技术失误的例子。

假如你自愿签署了一份合约,合约规定,你的邻居每敲一次门,你的银行账户会自动转账给他5美元。

刚刚签完这份合约的时候,一切看似正常。直到你的邻居开始不断敲门。你第二天醒来的时候,银行账户已经被掏空。那么谁该负责任,这些钱是你邻居偷的吗?是他黑入了系统吗?

我觉得这个例子和DAO事件十分相似。DAO通过分割(splitting)功能分发代币,持续下去参与者的银行账户肯定会空了。从DAO破产可以看出这种经营模式是失败的。

那么通过分叉来将攻击者的地址加入黑名单,或者更极端一点,直接让交易无效来把钱拿回来合理吗?我这么说不是为了说明攻击者在道德上是清白的。不过基于DAO是由智能合约组成的自治组织,我认为这不是一场犯罪。

 

结束语

 

我不是在暗示这个事件很容易解决。由于区块链技术还处于发展初期,社区出面挽救重大失误也是可以理解的。我不支持分叉预案,是因为这是一个危险的先例,但未必此次事件会百分百判以太坊死刑。

其实要是漏洞发生在以太坊代码本身,一切就简单多了。可惜事实并不如此。

我希望这次失败能带来一些教训。第一,未来我们要知道,向一些实验性的项目投一大笔钱是不明智的;第二,假如以太坊社区坚决进行硬分叉取回资金,我希望这是第一次也是最后一次。


声明:此文出于传递更多信息之目的,并不意味着赞同其观点或证实其描述。本网站所提供的信息,只供参考之用。

点击阅读全文