为什么会有ETH和ETC?the DAO攻击事件2周年祭

The Dao黑客事件,不得不去回看的“历史″ 距 DAO 攻击发生已经快2年时间,TheDao攻击,从本质上来说是一个技术失误,但是从加密经济学上来看问题的话,也许更像一个系统问题,甚至可以是哲学问题。​知识库—The DAO事件The DAO 事件是区块链历史上的著名事件,由于智能合约的漏洞造成资金被黑客转移,而近期也有几起被黑客攻击的事件。可以预见,未来智能合约还会有更多的安全问题。类似的事件给我们的启示是:区块链项目安全问题很重要,但并... 阅读详情

image

前两天,跟一位HiBlock区块链社区的用户私聊,他问我一个问题,同样是智能合约,为什么会有以太坊和以太经典,又为什么会有相应的ETH和ETC,两者价格还相差如此之大。

转给他一篇the DAO事件的文章后突然发现,the DAO攻击事件已经过去2年了,今年的6月17日大家都在关注父亲节、端午节以及德国和墨西哥队的比赛爆冷,无论币圈还是链圈,没有人提及the DAO。

也许今年的6月17日有人因重注墨西哥队而大赚一笔,但无论如何也比不上2年前6月17日黑客攻击the DAO转走了300多万以太币资产,当时价值6千万美元,而以今年6月18日的ETH价格计算,则价值15亿美元。

1

the DAO攻击事件回顾

DAO代表的是去中心化自治组织,是区块链法则里不可少的一环,而the DAO含义为“DAO之母”,是建立在以太坊上的一个应用,功能类似于投资机构。参与者可以使用以太币来换取DAO,也就是the DAO的token,持有DAO可以对the DAO的投资决策提出自己的意见。

the DAO在2016年5月初成立,到2016年6月16日成功募集到在当时价值1.5亿美元的以太币,短期高速发展让the DAO成为了一个明星项目,但6月17日发生了黑客攻击事件,事件的根本原因在于一行早已被发现的代码漏洞。

康奈尔大学计算机科学系副教授Emin Gün Sirer在给他的一位学生发邮件时提到他正在研究智能合约第666行代码可能存在的问题,甚至在2016年5月份也呼吁过投资者停止对DAO的投资,因为存在这样的安全漏洞。

但是,Gün教授对于代码漏洞无能为力,因为代码发布在以太坊区块链上就无法修改。事实上,发现这行代码漏洞的并不止Gün教授,2016年6月9日,在互联网上出现了与这次黑客攻击相同手法的预警,6月10日智能合约语言Solidity的作者 Christian在以太坊官方博客上发表文章说明这个问题,the DAO团队也接到了安全报告,但做出了不会受到攻击的结论。

2

the DAO被攻击的手段

说起the DAO被攻击的手段需要讲一下the DAO的运行机制。the DAO社区的每一位成员都可以利用自己手中的DAO进行投票,那么就会有一个问题,持有DAO数量越多,投票的占比就越大,会让投资决策出现偏颇,导致基金运行亏损。

所以the DAO就设计了一个“子DAO”的机制,你可以申请创建一个子DAO,审查通过后你的DAO就可以通过代码自动打入子DAO,从总资金池中剥离出来,而攻击漏洞也由此开始。

正常情况下你的DAO打入子DAO后就会从总的资金池中删除掉,但是看下图这行代码,里面的withdrawRewardFor是将钱从总dao打到你的子dao合约,注意前面提到的fallback函数,发送金额到你子dao合约时会触发fallback函数,但是如果你特别写了fallback是再调用总dao的withdrawRewardFor呢?代码会重新运行withdrawRewardFor再给你打钱,而扣钱的代码就永远不会运行到,如果你想,可以将总资金池中的DAO全部转空。

image

攻击者组合了2个漏洞,第一个漏洞是递归调用splitDAO函数,在第一次被合法调用后,会再次非法调用自己的DAO;第二个漏洞是DAO资产分离后避免从总资金池中销毁,攻击者在递归调用结束前将自己的DAO资产转移到了其他账户,就可以避免这部分DAO资产被销毁。

3

the DAO被攻击后的补救措施

那么,the DAO被攻击后,是如何应对解决的呢?在攻击事件发生后,攻击者并不能马上转走这些资产,而是有一个28天的等待期,在这28天里白帽黑客登场,V神提出方案,目的是要阻止黑客转出这些资产。

事件发生后,以太坊创始人Vitalik在以太坊官方博客发布文章,提出以软分叉的方案解决这次事件,软分叉将从高度1760000开始把任何与the DAO和child DAO相关的交易认做⽆效交易,以此来组织攻击者提现,软分叉之后会进行一次硬分叉找回被转走的以太币。

但因为软分叉的方案需要取得矿工们的同意,方案发布后黑客攻击者暂停了攻击,宣布对不支持软分叉的矿工给与100万以太币奖励。当然,软分叉方案还是顺利通过了,以太坊官方推出了针对TheDAO的软分叉版本Gethv1.4.8,但这个软分叉版本却又一次出现了漏洞。

这个漏洞比较明显,简单地说,每个以太坊上的交易,验证节点(矿工)都会检查是否与TheDAO智能合约及其子DAO的地址相关。如果是则拒绝这个交易,从而锁定TheDAO(包括黑客在内)的所有资金。这个逻辑实现本身并没有问题,但是却没有收取执行交易的手续费,这就像节假日高速免费一样,导致以太坊成为了DoS的攻击目标,攻击者可以零成本发起大量交易,导致以太坊网络瘫痪,由此各个节点回滚了软件版本,软分叉方案宣告失败。

之所以提出软分叉,是为了避免回滚,软分叉失败后只能进行硬分叉,而距离黑客可以转出提现的时间只有2周,同时还要进行所有矿工的投票来通过这次硬分叉方案。最终有大约450万以太币参与了投票,近90%表示同意硬分叉。程序预设在1920000个区块时进行切换,2016年7月20日晚,第1920000个区块在中国产生,TheDAO合约里的所有资金,包括被黑客控制的资金,约1200万以太币,全部转移到了一个新的智能合约中,该合约只有一个功能:退回TheDAO众筹参与人的以太币,众筹参与人只要调用withDraw方法,就可用DAO币换回以太币。

4

the DAO事件的影响

硬分叉之后,被盗的币找回来了,同时以太坊分为了两个链,一条为原链(ETC),一条为新的分叉链(ETH),也就有了现在的ETC(以太经典)和ETH(以太币)两种TOKEN,分别代表新旧社区的共识和价值观。

对于the DAO来说,这次事件无疑意味着项目的终结,甚至直接关联到2017年7月,美国证券交易委员会发布报告时提出,DAO提供和出售的代币是证券,因此受联邦证券法的约束,DAO违反了联邦证券法,所有的投资者也违法了。

5

为什么ETH和ETC会同时存在

两年过去了,当初硬分叉产生的ETH和ETC仍然同时存在,虽然ETH在2018年6月18日的价格不到100人民币,远不及ETC3200人民币,但ETH仍然代表了一部分人对区块链的共识和价值观。

在当初硬分叉投票时,有大约10%的投票参与者反对硬分叉,这部分矿工仍然维持着旧链的算力,他们认为不能为了一己私利就随意篡改代码,代码就是法律,这才是去中心化不可篡改的真谛,而硬分叉代表着代码可以随意修改,决策仍然是中心化的。

而随后,P网宣布支持旧版以太币的交易,代号为ETC,由于价格低,有愿意冒风险的投资人买入,但由于支持人数少,并且依托于旧链的项目少,更新少等问题,价格一直不能和ETH相比。但ETC和ETH代表了区块链世界里的两种价值观。

6

两年过去了,*the DAO带给我们什么思考*

距离the DAO攻击事件已经过去了2年,这次事件让我们认识到区块链应用安全的重要性。the DAO被攻击的漏洞是项目本身产生的,与智能合约无关,就像某一个网站出现了bug,不能说是互联网技术的问题一样。

2年里,类似这样的安全事故还有很多,2017年Parity钱包漏洞导致15万个ETH被盗,导致几家公司的ICO受阻,当时价值约三千万美元。此外还有类似于CoinDash ICO攻击、Enigma项目欺诈、Tether代币攻击、比特币黄金欺诈以及EOS上线前被发现的安全漏洞。

关于区块链安全,一直是一个绕不开的话题,传统互联网上是信息的存储和传递,而区块链的信息中,包含了大量与金融相关的数据,我们可以不在乎个人信息被各种“贩子”们倒来倒去,但我们不可能不在乎自己银行账户里的钱被随意转来转去。

区块链的去中心化特点带给我们很多未来应用的场景和创意,但去中心化组织在管理逻辑和生态上更加复杂,也就意味着更加容易出现漏洞。

区块链的基础架构由数据层、网络层、共识层、激励层、合约层、应用层六部分组成,技术本身的安全需要做好这六个方面的防护体系,而除了技术本身,还有类似于the DAO事件这样由于代码漏洞产生的安全问题,需要每一个区块链开发者来维护安全,这该如何做到?是否又能有一个公链或组织来保护区块链应用的安全呢?这个问题,欢迎加入HiBlock区块链社区用户群进行讨论。

以下是我们的社区介绍,欢迎各种合作、交流、学习:)

image

以太坊合并-DAO攻击事件的启示 阅读详情

相关推荐

如何防范 DAO 中的治理攻击?

从理论上来看,建立在区块链之上的 DAO有着很高的安全性。但是,区块链作为一项发展时间仅十余年的技术,很多地方都还存在缺陷,这也让实际运行中的区块链生态并没有达到理想中的安全性。...

xfilesystem的博客 519

ETC遭受51%算力攻击,压垮PoW的最后一根稻草

专家口中遥不可及的51%算力攻击,如今正攻城略地虚惊一场?ETC算力攻击事件始末北京时间2019年1月5日傍晚8点,ETC高度为7245623的区块发生异动,彼时尚无人知...

区块链大本营 6363

Solidity - 安全 - 重入攻击(Reentrancy)

首先简要说明下一个很有名的重入攻击事件,再模拟重入攻击。The DAO是分布式自治组织,2016年5月正式发布,该项目使用了由德国以太坊创业公司Slock.it编写的开源代码。2016年6月17上午,被攻击的消息开始在社交网站上出现,到6月18日黑客将超过360万个以太币转移到一个child DAO项目中,child DAO项目和The DAO有着一样的结构,当时以太币的价格从20美元降到了13美元。当时,一个所谓的”递归调用“攻击(现在称为重入攻击)名词随之出现,这种攻击可以被用来消耗一些智能合约账户。这

ling1998的博客 2879

TheDAO被攻击事件考察报告

作者 ChinaLedge联盟 段玺(Andy Dan) 简介     北京时间2016年6月17日发生了在区块链历史上留下沉重一笔的攻击事件。由于 其编写的智能合约存在着重大缺陷,区块链业界最大的众筹项目TheDAO(被攻击前 拥有1亿美元左右资产)遭到攻击,目前已导致300多万以太币资产被分离出TheDAO 资产池。TheDAO编写的智能合约中有一个splitDAO函数,攻击者通过

李赫的专栏 1万+

以太坊十年:智能合约与去中心化的崛起

在短短的几年内,以太坊不仅成为了去中心化应用和智能合约的主导平台,而且也见证了区块链技术和应用的多次重大革命。本文详细回顾了自2016年至今,以太坊生态所经历的几个关键时刻与技术浪潮,包括DAO事件、ICO热潮、DeFi的崛起、NFT市场的兴起,Layer 2技术和跨链解决方案,以及对数据隐私和计算的关注。目录:起源与创世(2013–2015)Vitalik Buterin 提出以太坊概念、基金会成立、主网上线危机与泡沫(2016–2018)

知识的共享,拓宽视野,深化思考,获得新的启发. 439

泛微ecology9二次开发-附件上传接口实战:从表单创建到数据库存储解析

本文详细解析了泛微ecology9二次开发中的附件上传接口实战,从测试环境搭建、数据库表结构解析到接口代码实现,提供了全面的开发指南。重点介绍了文件上传的核心逻辑、常见问题排查及高级应用场景,帮助开发者高效实现附件上传功能并优化系统性能。

weixin_30836759的博客 477

通过eth与etc的前世今生,了解什么是分叉币

版权归作者所有,任何形式转载请联系作者。 作者:梭哈区块链(来自豆瓣) 来源:https://www.douban.com/note/683639907/   eth:以太币,大以太,大姨太   etc:以太经典,小以太,小姨太   新手接触到eth和etc难免会产生误解,对它们两个产生混淆,那eth和etc到底是什么关系呢?又有什么恩怨纠葛呢?这次币通哥就带大家一起通彻的剖析这两...

qq_30634311的博客 2483

国产AI芯动力:复旦微FMQL100TAI900 FPGA原型验证板全解析

本文全面解析了复旦微FMQL100TAI900 FPGA原型验证板在国产AI硬件领域的创新突破。该板卡采用全栈国产化设计,具备出色的AI推理性能、视频处理能力和接口生态,特别适合工业质检、智能交通等场景。文章详细介绍了其芯片架构、存储子系统、接口扩展及电源设计,并分享了实战开发经验,为开发者提供了一套可靠的国产计算平台解决方案。

weixin_29250573的博客 457

[区块链]回顾史上最大智能合约漏洞事件——The DAO事件

乐扣老师讲解The DAO事件 在区块链技术领域,The DAO事件可以算是一个以太坊的丑闻,当然也直接导致了硬分叉。在现实面前,面对黑客当着面利用漏洞源源不断从1.5亿美金的以太币池中拿走资金,而且还没办法。 本文面对这样的一个场景,主要是描述该场景中提到的攻击事件代码,围绕攻击的前因后果。项目进行的始末,最终通过剖析整个事件,达到历史经验借鉴,为未来利用智能合约时铭记安全意识的最终目的。...

ECNU乐扣老师——区块链、可计算情感 2万+

DFT实战:如何用Synopsys工具搞定多时钟域Scan Chain设计(附避坑指南)

本文详细解析了使用Synopsys DFT Compiler工具链实现多时钟域Scan Chain设计的全流程,包括时钟混合策略、跨时钟域平衡技巧和实战脚本剖析。通过量产验证的工程实践方案,帮助DFT工程师有效解决复杂SoC设计中的Scan Chain挑战,提升测试效率和质量。

mm9012的博客 1035

KUKA .RSI 软件包

KUKA RSI软件包通过XML文件使得机器人与外部设备(传感器通讯)通讯成为了可能,但仍存在诸多限制,该模块最多允许9台设备进行连接,有限的IO口,匮乏的功能,并且需要投入大量精力琢磨相关说明文档。为此开发人员针对KUKA实时通讯,做了一些开源的接口使得上位机与机械臂的通讯更为简单。

huhu7777的博客 3295

以太坊十年:以下是它的繁荣和萧条如何塑造历史

2023 年 3 月,Arbitrum 期待已久的空投上线,向早期用户分发了 Arbitrum (,分发 Arbitrum) 代币,并重新点燃了整个生态系统的兴奋。但这一次被人们铭记为以太坊历史上的一个关键分叉,因为开发人员和社区做出了一个有争议的决定,即硬分叉区块链并将网络逆转到盗窃前的那一刻。与此同时,Lido、Rocket Pool 和 Coinbase 的 cbETH 等流动性质押代币成为质押 ETH 的主要方法,因为它们允许用户在保持流动性的同时赚取收益。但大量的活动暴露了以太坊的局限性。

danaodai99的博客 2573

Linux Component概述和高通component的使用

为了让subsystem按照一定顺序初始化设备才提出来的。subsystem中由很多设备模块,内核加载这些模块的时间不确定。子系统内有些模块是需要依赖其它模块先初始化才能进行自己初始化工作(例如v4l2 subdev和v4l2 video device),这时就要用到component框架。例如v4l2 subdev和v4l2 video device中,谁依赖谁先创建?

lz_1990的专栏 1610

重入攻击和 DAO 被黑事件

在 2015 年之前,还在早期的以太坊社区就开始讨论了。DAO 想要做到的是通过可验证的代码(具体来说,就是运行在以太坊区块链上的智能合约)来实现人与人之间的协作,同时通过社区的协议来进行去中心化的决策。在 2016 年,也就是以太坊主网运行了一年以后,一个名叫 “The DAO” 的 DAO 被创建了。它是一个去中心化的,由社区控制的投资基金。它通过销售自己的社区通证募集了价值 1 亿 5000 万的美元的 ether(大概有 354 万 ETH)。

smartContractXH的博客 980

【RT-DETR涨点改进】全网独家创新、细节涨点改进篇 | ICML 2024 | RT-DETR引入ICB交互式卷积模块和ASB自适应频谱模块,助力目标检测、异常检测有效涨点、含多种创新改进点

RT-DETR目标检测模型通过引入ICB和ASB模块实现性能提升。ICB模块采用多尺度卷积交互,有效捕获局部和长程依赖特征;ASB模块通过自适应频域滤波优化特征表示,降低噪声干扰。两者结合使模型在复杂场景中表现更优,显著提升检测精度和鲁棒性。文章详细介绍了模块原理、代码实现及配置方法,并提供了8种改进版本的YAML配置文件,适用于不同网络结构。这些创新改进为RT-DETR模型提供了高效涨点方案,特别适合复杂背景和高噪声环境下的目标检测任务。

Ai缝合怪、助力小伙伴高效发论文 214

CANoe-vTESTstudio之Test Diagram编辑器

总之,CANoe-vTESTstudio的Test Diagram编辑器提供了一个直观且强大的工具,用于创建和管理测试用例。通过图形化的界面和丰富的功能,测试工程师可以更轻松地编写复杂的测试脚本,并有效地进行测试开发。在上面的示例中,我们创建了一个名为"MyTestCase"的测试用例,并定义了两个测试步骤"Step1"和"Step2"。在上面的示例中,我们在执行"Step1"之后使用条件语句来确定是否执行"Step2"。在每次迭代中,我们创建一个新的测试步骤,并根据迭代次数动态生成相应的日志和验证消息。

TcData的博客 249

区块链安全 - DAO攻击事件解析

0x00 前言最近关注了一下区块链方面的安全,因此翻出来之前的DAO攻击事件研究了一番,形成此文。之后可能还会发一些其他的安全分析文章。0x00 基础知识1.跨合约调用智能合约之间的调用本质上是外部调用,可以使用message call或者创建智能合约对象的形式进行调用。(1)使用message call比如合约1调用合约2的某个方法:bytes4 methodId = bytes4(keccak...

Exploit的小站~ 2万+

《基于FPGA的数字信号处理》专栏的导航与说明

《基于FPGA的数字信号处理》专栏的导航与说明

孤独的单刀 4162

智能合约安全专题(一):什么是重入攻击?——从 DAO 事件谈起

DAO 攻击的本质,是一个简单但致命的逻辑顺序错误。本文将带你看懂什么是重入攻击,它是如何发生的,又该如何避免它。

持续分享有趣的技术干货 1720

迈瑞BS系列全自动生化分析仪LIS协议接口手册(内含HL7和ASTM)

迈瑞BS系列全自动生化分析仪LIS协议接口手册,内含HL7和ASTM)

WINCC7.3破解文件

WINCC7.3硬件够破解文件,有需要的下载!WINCC7.3硬件够破解文件,有需要的下载!

【智能合约安全权威解析】:深度剖析The DAO攻击事件与防范启示

深入解析区块链智能合约安全风险,以The DAO攻击事件为例揭示漏洞成因与防御策略。涵盖智能合约设计原则、代码审计方法及防范机制,提升项目安全性,值得收藏。

StepLens的博客 579

android 蓝牙通讯demo

android 下蓝牙通讯demo,实现了发现蓝牙,使能蓝牙,通过蓝牙发送消息。

The DAO事件始末

但是以太坊社区质疑的声音还是一直存在,有人说投票不能代表所有还有好多人没有参与投票,这样非法的交易已经违反了我们建立以太坊的初衷了,这就是强盗行径,别人把就算钱存在银行被扣留了我还可以去法院辩解,现在就你们投票就把我的钱给强行转走了。幸好有28天的锁定期,这就有了操作的空间了。到现在应该算是及时止损了吧。大家都以为这个事情就告一段落了,但是情况又有了新变化,以太坊出现了大量的关于黑客账户的转账交易,很多挖矿的节点执行这样的交易之后没有汽油费得,旷工发现这样下去吃力不讨好啊,很多节点由于不堪重负就回退了。

qq_38013013的博客 3431

如何连接etc/eth池,最安全的方法是什么?

加密安全连接etc/eth池

Mining_expert的博客 3452

Dao漏洞学习

Dao漏洞

Timmbe的博客 1万+

北大肖臻-第23讲-THE_DAO

第23讲-THE_DAO

文杰的博客 340

a16z:如何避免 DAO 治理攻击?

撰文:Pranav Garimidi, Scott Duke Kominers & Tim Roughgarden编辑:DeFi之道很多 Web3 项目使用可互换且可交易的原生代币来进行无须许可的投票 (permissionless voting),无须许可的投票可以提供很多的好处,从降低准入门槛到增加竞争。代币持有者可以使用他们的 Token,对一系列问题进行...

qq452474654的专栏 406
上一篇: 区块链最大的难题和不同解决方案的剖析
下一篇: 众说区块链:区块链20个你问我答,你想问什么问题?
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值