考虑到区块链安全性的名声越来越响,The DAO攻击事件的影响恐怕不仅是The DAO和以太坊的灾难,还是R3银行联盟及其成员的灾难。
假如智能合约失败了,会怎样呢?
‘硬分叉’意味着将会回滚所有的交易到被盗之前的某个时间点。使用‘软分叉’就等于封闭所有来自攻击者地址的交易。另一种选择就是什么都不做,因为‘这一切都是正常运作’。
当然,既不硬分叉也不软分叉,什么都不做这不在选择范围内,因为DAO代币持有者希望能够把他们的资金找回来。然而,硬分叉,听起来是那么稳固,完全有悖于分布式自治账本的基本原则。
哈佛大学伯克曼中心的一名律师兼研究员帕特里克·默克(Patrick Murck)说:
“智能合约就是代码,它是不可阻挡的代码,它是牢不可破的,它是自动执行的和自治的——直到一切出现错误。然后,‘不不不不,这是盗窃’这是我们附加给代码的某些社会规范,而不是代码本身所有的,然后我们就要停止整个系统。那么是不是每次智能合约出错我们都要这么做啊?或者只是The DAO中有很多以太坊的内部人士同样遭受了损失才这么做的?”
换句话说,如果漏洞位于代码中,那么它实际上属于合约的一部分。如果一种自给自足的智能合约出现回退,那么所谓的智能又是什么?
以太坊创始人Vitalik Buterin提议进行软分叉:
“矿工和矿池应当向往常一样进行交易,如果他们同意以太坊生态系统走这条路,就应该等待软分叉代码,随时准备下载并运行。DAO代币持有者和以太坊用户应该静观其变,保持冷静。交易所应该对恢复以太币交易感到安全。”
目前的进展
以太坊基金会主要开发者Alex van de Sande已经对所发生的事情的进展公布在了Reddit上——出现了白帽反击。
因为攻击者正在持续从DAO社区吸取以太币,所以自称‘罗宾汉’的独立开发者进行了一次白帽反击,现在已经从the DAO自身的‘child DAO’中转移了超过700万以太币。
分布式应用开发者Fabian Vogelsteller在推特上说,目前正在进行软分叉来拯救这些被盗的以太币。
以太坊基金会已经公开发布了新版Geth客户端软件,提供更新用以冻结The DAO被盗的所有资金,有效地将这些资金变得无法使用。黑客将无法将这些资金取走。
R3区块链联盟如何对the DAO攻击做出回应?
R3联合创始人兼产品主管Todd Mc’Donald在R3CEV博客上写道‘The DAO危机就像是过早地判定一个年轻人的篮球发展前景。’他指出,通过一个非常年轻的平台筹集超过1亿美元资金并假设没有人会尝试攻击这个平台,这简直是不可想象的。正如《美国银行家》所说,人为的干预看起来人家有必要,虽然去中心化自动系统在今天听起来如此吸引人。
R3高级战略研究员凯思琳•布雷特曼(Kathleen Breitman)同样认为区块链社区是时候醒一醒并更彻底地思考分布式账本的安全性和管理。根据布雷特曼所说:
“尽管一些计算机科学家发现了The DAO的一些不足之处并要求暂停该项目,但是The DAO管理团队仍旧不听劝阻,结果很快就被攻击了。”
所以,R3看起来将The DAO事件的罪魁祸首归咎于the DAO的管理层,而不是区块链本身。接下来可能发生的是:这次的黑客攻击将会为未来避免这类问题提供借鉴。