【AICon】AI 基础设施、LLM运维、大模型训练与推理,一场会议,全方位涵盖! >>> 了解详情
写点什么

10 天上线、37 小时后倒闭,一行代码毁掉一个 DeFi 明星项目

  • 2020-08-15
  • 本文字数:2686 字

    阅读完需:约 9 分钟

10天上线、37小时后倒闭,一行代码毁掉一个DeFi 明星项目


DeFi 的火热催生了很多项目,但轰动了整个加密社区的明星项目 Yam,却在启动了仅仅 37 个小时就黯然落幕了。

一行代码毁了一个项目

8 月 12 日凌晨三点,DeFi 项目 Yam 正式开启流动性挖矿(即通过为 DeFi 提供流动性赚取收益)。


Yam 全称 Yam Finance,是一个由社区孵化的 DeFi 协议。根据 官方介绍,YAM 引用了 Ampleforth(AMPL)的弹性供应机制和 YFI 的代币发行理念,并且采用了时下 DeFi 项目最流行的去中心化治理(DAO),其 YAM 就是社区治理代币。


YAM 本质上是一种有弹性供应的加密货币,Yam 每天根据价格会进行 rebase,对代币供应量进行调整。同时,YAM 非常去中心化,没有预售和预挖行为,创始人团队也没有股份,所有人都可参与。YAM 总量为 500 万枚,YAM 官方初始定价为 1 美元。


Yam 将挖矿的用户称为“农民”,YAM 代币图标为“山药”,大家将此项目称为“挖山药”,项目一启动就搅动了整个加密社区。


尽管该项目在项目启动前就警告称,尚未对其合约进行任何审计,但“农民”们还是在不到一小时内就向该项目存入了 7600 万美元,项目启动 8 小时后,Yam 总锁仓价值就突破了 2 亿美元。


随后,BKEX Global、币赢 CoinW 等交易所先后上线了 YAM/USDT 交易对。15 个小时后,BitMEX 创始人 Arthur Hayes 声称自己参与了 Yam 流动性挖矿,据悉还有很多人参与到了该项目中。此时,Yam 锁仓价值已超过 3 亿美元。8 月 13 日零时,Yam 锁仓价值达到 4.6 亿美元,YAM 代币价格涨至 167 美元的历史高点。



YAM 价格走势,来源:CoinMarketCap


但到了 8 月 13 日 5 时,Yam 发布推文称在 Rebase 合约中发现 bug,这将导致产生比预期更多的 YAM。


Yam 官方给出了两个修复建议,并号召 YAM 持有人通过代理投票方式帮助修复提案通过。消息一出,YAM 代币价格跌超 90%,至 14 美元。


不过,用了 8 个小时左右的时间,Yam 投票数就达到了 18 万枚 YAM,超过了 16 万枚的最低门槛。Yam 项目方表示,参与投票的用户将会获得一定的奖励。


下午 15 点时,Yam 锁仓价值超过 7.3 亿美元。Yam 官方建议用户在 16 时 rebase 前退出 Uniswap YAM/yCRV 池,原因是存在可能会阻止提案执行的潜在缺陷。如果治理不能通过该提案,那么在 rebase 期间累积的 yCRV 将面临无法移动的风险。


但 Yam 项目还是没有抢救过来。一个小时后,Yam 核心开发者 belmore 在推特上表示,“对不起大家。我失败了。谢谢你们今天的大力支持。我太难过了。”Yam 官方表示,该项目中存储的约 75 万美元的 Curve 代币也全部丢失。



事后,YAM 在发布的 博客中指出了发生错误的代码:


totalSupply = initSupply.mul(yamsScalingFactor);


而这一行代码本来应该是:


totalSupply = initSupply.mul(yamsScalingFactor).div(BASE);


区块链安全公司 Quantstamp 首席执行官 Richard Ma 表示,加上“ div(BASE)实质上是将 totalSupply 除以一个非常大的数字——10^18。没有这个除数,这个网络将会产生“津巴布韦式”通货膨胀。


比特币开发者 James Prestwich 表示,这个 rebase 漏洞导致向治理库铸造了数十亿个 YAM。这些 YAM 确实存在但无法进行投票。鉴于 YAM 的治理模块,这意味着没有任何投票提案可以被通过,因为提案永远无法达到需要的投票数量。


根据 Ma 的说法,这个漏洞目前没有办法修复。价值大约 75 万美元的加密货币将被永久锁定。

不审计成为一种营销手段?

这是一个从开始到启动仅用了 10 天的项目。


项目发布之前,Yam 就在官方博客中明确表示项目代码是没有经过审计的:“虽然 Yam 协议的初始创建者已经尽力确保合约的安全,包括从现有审计良好的项目中派生出大量代码基,并征求了朋友的意见,但 Yam 协议目前还没有进行任何接近正式的严格审计。“


但这并没有影响投资者们的热情,因为不经审计便启动项目在业内已经不是新鲜事了。


Ma 在接受媒体采访时表示,许多 DeFi 项目未经审计就启动了,像 Yearn Finance、Cream 和 Yearn Finance II 都是以这样的方式推出的。


“目前不进行审计被认为是利用逆向心理进行营销的一种好方法,”Ma 补充说:“这会使人感觉到这些项目非常抢手,而你在别人还没听说之前就已经抢先一步了。”


Ma 表示:“最大的危险在早期。”如果一个项目在早期的成长过程中幸存下来,就会开始积累许多非正式的安全审查。比如 Yearn Finance 项目,Quantstamp 后来进行了一次正式的安全审计,只是 Yam 没有那么幸运能够走到那个阶段。


其实,Yam 启动后,也有开发人员对其进行了审核,但可惜并没有发现该漏洞。


8 月 12 日,Aave 开发人员 Emilio Frangella在推特上发布自己对 Yam 的审核,他认为该协议“很大程度上基于原始的 Synthetix 奖励合同”,配置设置的更改很少,对安全性没有任何影响。

项目不死,计划推出 YAM 2.0

宣布项目失败后,Yam 官方表示,只要以太坊继续支持这份合约,Yam 将继续生存下去。


Yam 不能再通过治理进行修改,因此在技术层面上将以类似于其他 rebasing 资产(如 AMPL)的方式运行。而 YAM / yCRV Uniswap V2 池将永远保持不安全的状态。尽管 YAM 在第二次 rebase 前已从池中取出了 75%的流动性,但任何剩余的流动性都应尽快移除。


同时,Yam 还表示,YAM 社区应该有机会坚持下去。Yam 将设立 Gitcoin 捐赠,以协调由社区资助的对 Yam 合约的审计。如果资金目标达到,在审计完成后,Yam 将启动迁移计划,让社区控制项目,并推出 Yam 2.0。


如果获得社区支持, Yam将在未来几周内通过两个阶段的启动程序推动 Yam 协议迁移到审计合约版本。


第一阶段,Yam 部署地址将建立一个迁移合约,Yam 持有者将在一定的期限内销毁此前代币同时铸造新的 Yamv2 代币。在第二阶段,完整的 Yam 系统预计将通过审核,并重新部署为 Yamv3。Yamv2 持有者将通过附加的合约迁移到更新后 Yamv3 代币地址。


Yam Finance 表示,在任何时候都没有也不打算对协议进行管理和控制。在成功迁移之后,计划奖励一些代币持有者,但这需要获得投票批准。目前,Yam 代币持有人无需采取任何行动。


针对此事件,区块链安全公司慢雾团队建议,项目中去中心化治理应循序渐进,在项目开始阶段,需要设置适当的权限以防发生黑天鹅事件。由于 DeFi 合约的高度复杂性,任何 DeFi 项目都需在经过专业的安全团队充分审计后再进行上线,降低合约发生意外的风险。


8 月 13 日,Yam 核心开发者 belmore 在推特上称,用户现在看到的任何 Yam 分叉几乎可以肯定都是骗局,不要参与。如果想要获取收益,请转向定期进行审核且信誉良好的 DeFi 产品。


受 YAM 事件影响,协议中可用于投资的其他代币,如 WETH、LINK、YFI、AAVE、SNX、MKR 和 COMP 的价格也受到了影响。


不过,Ma 认为 Yam 的崩溃不会破坏 DeFi,因为 DeFi 用户可以很好地应对波动。


2020-08-15 08:005994

评论

发布
暂无评论
发现更多内容

GitHub star过万!仅靠这份图解算法进阶指南,成功拿下字节offer

Geek_0c76c3

Java 数据库 开源 程序员 架构

字节奋战8年,回头一看只剩下这份1857页的算法笔记了

Geek_0c76c3

Java 数据库 开源 程序员 开发

【高并发】ScheduledThreadPoolExecutor与Timer的区别和简单示例

冰河

并发编程 多线程 高并发 协程 异步编程

2022全网独一份Java面试题整理,包含30个技术栈, 1575 道Java 架构师面试题

Geek_0c76c3

Java 数据库 开源 程序员 开发

Java后端没这些东西都不敢跳!对标阿里P7技术路线你值得拥有

Geek_0c76c3

Java 数据库 程序员 架构 开发

英特尔Josh Newman: 真正满足用户所需,让人们享受专注与互联的PC体验

科技之家

OpenKruise v1.3:新增自定义 Pod Probe 探针能力与大规模集群性能显著提升

阿里巴巴云原生

阿里云 云原生 OpenKruise

【导航】ESP32-C3 入门教程目录 【快速跳转】

矜辰所致

目录 ESP32-C3 10月月更

【Go】Go 操作 excel 代码封装

非晓为骁

Excel go语言

在数字化浪潮中,为企业建造一艘“方舟”

元年技术洞察

微服务 云原生 企业数字化 PaaS 平台

TDengine | taosdump的使用方法和注意事项

TDengine

数据库 tdengine 开源 时序数据库 taosdump

精彩演讲推荐|智能化变更防控方法、架构与组织实践

TRaaS

大型企业选择低代码的主要原因是什么?

优秀

低代码 低代码平台

真的香!Github一夜爆火被各大厂要求直接下架的面试题库也太全了

Geek_0c76c3

Java 数据库 开源 程序员 开发

vue组件通信方式有哪些?

bb_xiaxia1998

Vue

vue组件通信6种方式总结(常问知识点)

bb_xiaxia1998

Vue

大杀四方!腾讯强推599页Netty进阶神技,彻底解析Netty

Geek_0c76c3

Java 数据库 程序员 架构 开发

Java:锁定 Excel 中的特定单元格

Geek_249eec

Java Excel 单元格

熟读阿里总结的Java10w字总结,15天拿下5个大厂offer(阿里,美团,字节...)

Geek_0c76c3

Java 数据库 开源 程序员 开发

肝下50万字的《Linux内核精通》笔记,你的底层原理水平将从入门到入魔【建议收藏】

简说Linux内核

内存管理 嵌入式 Linux内核 进程管理 驱动开发

金三银四跳槽季,美团、字节、阿里、腾讯Java面经,终入字节

Geek_0c76c3

Java 数据库 开源 程序员 开发

Koordinator v0.7: 为任务调度领域注入新活力

阿里巴巴云原生

阿里云 云原生 Koordinator

ironSource ROAS 智能优化工具大升级,用户现可查看每日 KPI 数据及趋势走向

Geek_2d6073

太全了!华为大神珍藏版SpringBoot全优笔记,首次分享

Geek_0c76c3

Java 数据库 开源 程序员 架构

见大牛、聊感悟、拿好礼...开发者一起来微软Ignite赴约!

InfoQ写作社区官方

热门活动

短期内跳槽的Java程序员必看的八项知识点+两大项目实战

Geek_0c76c3

Java 数据库 开源 程序员 开发

进击的PyTorch,和它背后的开源领袖

OneFlow

人工智能 机器学习 深度学习 开源

一文读懂 MySQL 锁

说故事的五公子

MySQL 数据库

阿里资深架构师把大厂高频 2000+ 道 Java 面试题全部总结出来了,分分钟拿捏面试官

Geek_0c76c3

Java 数据库 开源 程序员 开发

学了阿里大佬的 SpringCloud微服务项目真香!即刻涨薪35K

Geek_0c76c3

Java 开源 程序员 架构 面试

阿里大佬手码的SpringCloud+Alibaba笔记开源了,堪称保姆式教学

Geek_0c76c3

Java 数据库 开源 程序员 开发

10天上线、37小时后倒闭,一行代码毁掉一个DeFi 明星项目_区块链_褚杏娟_InfoQ精选文章