区块链技术与应用【肖臻老师】笔记整理之------23-ETH-TheDAO

注:没有全部复原,抽取了主体知识,加入了一些自己的理解,强烈建议去学习肖臻老师的课程,这绝对算得上是国内区块链讲解的顶级教程,纯学术和技术

以太坊实现了去中心化的合约

  • DAO:Decentralized Autonomous Organization去中心化的自治组织

  • The DAO:凸显民主,智能合约,伟大的尝试,引起了积极反响,众筹了当时价值1.5Y$的ether,可以用The Dao 的token决定你投哪个项目

  • 如果想要从The DAO 的token转为Ether?

    • 只能使用拆分的方式splitDAO,如果与其他人投资意见不一致,那么不一致的一小部分人就建立子基金,ChildDAO,之后会转回给你ether。

出问题的代码:

区块链技术与应用【肖臻老师】笔记整理之------23-ETH-TheDAO_第1张图片

  • 先转账后清零,导致重入攻击

too big to fail

The DAO 占了10%以上

以太坊团队的做法:

  1. 锁定黑客的账户
  2. 将盗取的ether退回去

如何锁定?

  • 发布了更新,凡是和The DAO相关的都不允许Tx

  • 这个属于软分叉,增加了一条规则,新Miner可能不认可旧的,但是旧的是认可新的

  • 又出现了新的Bug,与The DAO的账户相关的交易要不要Gas费用?

    • 应该要,但是以太坊没有收取Gas,The DAO账户一直发送交易,导致矿工受到干扰
    • 之后进行回滚,软分叉失败
  • 只能硬分叉

    • 通过软件升级的方法,将The DAO账户上所有的资金转到另一个智能合约,该合约之后只有退款功能,为什么是硬分叉?
    • 到192W个区块时自动升级,直接转到另一个合约,没有所有者的签名,所以旧的矿工是不会认可的,硬分叉。
    • 旧链ETC: Ethereum Classic
    • 新链还叫做ETH
    • ETC和ETH并存有很多问题,导致重放攻击。所以最后加入了ChainID,
  • 为什么当初硬分叉和软分叉的操作是针对所有The DAO的账户,而不是黑客的账户?

    • 智能合约一旦发布,不能修改,所有人都可以变为黑客去进行重入,封号是封不完的

你可能感兴趣的:(区块链,区块链,以太坊)