2016年,对于以太坊社区乃至整个区块链行业而言,是充满动荡与考验的一年,这一年,一个雄心勃勃的项目——The DAO(去中心化自治组织)——遭遇了史上规模最大的智能合约攻击之一,不仅导致数千万美元的资产损失,更引发了关于区块链治理、代码安全与去中心化理念的激烈辩论,甚至直接导致了以太坊的硬分叉,永久性地在区块链历史上刻下了“2016以太坊攻击”这一深刻印记。

The DAO:理想与雄心的产物

The DAO并非一个传统的公司或组织,而是一个建立在以太坊区块链上的去中心化风险投资基金,它的核心理念是通过智能合约实现完全透明的、无需信任的决策和资金管理,任何持有以太币的人都可以购买The DAO的“代币”,从而成为其“成员”,并参与提案投票,决定资金投向哪些项目,The DAO的诞生,被视为以太坊“代码即法律”(Code is Law)理念的一次伟大实践,旨在构建一个无需中心化机构、由社区共同驱动的投资生态系统。

在众筹阶段,The DAO取得了空前的成功,吸引了全球超过1万名参与者,筹集了相当于当时市值超过1.5亿美元的以太币,成为当时史上最大的众筹项目,这无疑为以太坊的早期发展注入了强心剂,也让人们对去中心化自治组织的未来充满了憧憬。

攻击爆发:精心策划的智能合约漏洞

The DAO复杂且庞大的智能合约代码中,隐藏着一个致命的漏洞,这个漏洞后来被研究者发现,并被人利用。

攻击者利用了The DAO智能合约中“递归调用”(Recursive Call)的缺陷,The DAO的“split function”(退出函数)允许投资者提取其资金,但在某些条件下,该函数在被调用时,可以再次触发对自身或其他合约的调用,而在这个过程中,The DAO的内部状态(如账户余额)并未得到及时更新,攻击者正是巧妙地构造了一系列交易,通过递归调用,在每次调用中都“提取”资金,但实际上这些资金在被“提取”前已经被锁定或转移,从而实现了对The DAO资金的重复“盗取”。

从2016年6月17日开始,攻击者开始利用这一漏洞,不断从The DAO中转移以太币,整个过程持续了数小时,最终导致The DAO约360万枚以太币(当时价值约5000万美元,按今日价值已数以十亿计)被转移到攻击者控制的“子DAO”地址中,消息传出,整个以太坊社区陷入恐慌,The DAO的成员和以太币持有者损失惨重。

激烈辩论与硬分叉:社区分裂的十字路口

The DAO攻击事件发生后,以太坊社区面临着前所未有的危机,核心问题摆在面前:是应该尊重“代码即法律”的原则,允许攻击者得逞,让市场自行消化这次事件的后果?还是应该采取干预措施,挽回损失,维护生态系统的稳定?

这导致了社区内部严重的分裂,形成了两大阵营:

随机配图