来源 | 巴比特
原文作者:Hasu
写在前面:
DeFi 领域目前充斥着各式各样的新协议,例如最近爆火的 YFI (yearn.finance)就是其中之一,但本质上,它并不属于真正的 DeFi 协议,据加密货币研究员 Hasu 分析表明,类似 YFI 这样重治理的协议,或多或少都存在托管问题,而这就会涉及到用户资金的安全问题,因此他建议参与者将 YFI (yearn.finance)视为一个托管型投资基金。
1
DeFi 如何在治理与存款安全之间取得平衡?
长话短说:
在 7 月 25 日-8 月 6 日这段时间,yearn.finance 开发者 Andre Cronje 控制了 4000 万美元的客户资金;
8 月 6 日,在与我讨论这篇文章的早期草稿时,Andre Cronje 将相关的治理权移交给了 9 名社区利益相关者,并通过 6-of-9 多重签名机制进行控制;
大多数用户并没有意识到,所有重治理的协议,比如 yearn.finance、Compound 或者 Aave,或多或少都存在托管资金的问题;
根据 yearn.finance 的官方描述,它是作为一个收益聚合协议,但我喜欢把它想象成一个任何人都可以参与投资的基金,然后一名投资经理(或一组经理)将这些资本引导到 DeFi 领域中最高收益的机会中。
自 7 月中旬推出治理代币 YFI 以来,yearn.finance 的人气激增,虽然其代币因公平推出而受到称赞,但市场普遍存在一种误解,即很多人会认为资金是由 YFI 代币持有者,或者至少是由代表他们利益的多重签名钱包所控制的。
但实际上,治理是这样运作的:
YFI 代币持有人可以就新提案进行投票,这些投票是非正式的,当一项提案获得批准时,yearn.finance 的开发者 Andre Cronje 就会去实施它。与此相对的 Compound,是先实施提案,然后通过正式投票激活。
自 7 月 21 日开始,9 名 YFI 社区利益相关者,通过 6-of-9 多重签名的方式控制了额外 YFI 代币的铸造;
有一名控制者负责所有的投资决策,因此他实际上相当于控制了客户资金;
**
为了了解资金的保管方式,我们就需要了解金库和策略。金库基本上是存放投资者资金的盒子,而策略则是执行投资策略的智能合约,例如将币借给年化收益最高的货币市场。任何人都可以部署它们,但要分配人们的钱,金库必须与特定的策略相连接。
而金库与策略之间的这种连接,是由一个称为控制器(Controller)的中央智能合约来实现的。截至 8 月 6 日,这个控制器的治理地址就是 Andre Cronje 的地址:
我们将简要介绍更改一个金库策略的步骤。
首先,调用 setStrategy
函数:
只有在 msg.sender
设置为控制器管理者,这个函数才会执行。
更改策略首先从现有策略中提取所有资金,然后将其送回到金库:
在下一步中,你会在金库中调用 earn
,这会调用控制器的 earn
函数:
…从而将资金转入新策略。
你可以在这里亲自检查控制器。
简而言之,控制器可以设置每个金库的策略,也可以更改现有金库的策略。
控制器的这种功能,允许进行非常简单,但十分强大的攻击。在任何时候,它都可以决定将金库与耗尽所有客户资金的策略连接起来。策略可以简单到将这些资金转移到对手控制的账户上,而对于用户来说,不会有警告或反应的时间。
与常规的管理密钥(admin key )攻击向量一样,主要的风险不一定是 Andre Cronje 本人变成恶意者,而是这个管理密钥被第三方所窃取。
在 8 月 6 日的快照中,有 1.65 亿美元的资金锁定在 yearn.finance 中,其中大部分都锁在 YFI 相关的曲线池中,因此它们不易受到治理攻击,而剩余有 4000 万美元的资金锁定在金库中,这些钱就暴露在控制者面前。
8 月 6 日,我与 Andre Cronje 讨论了本文的早期草稿,以确认我的分析是正确的。在讨论过程中,他决定调用控制器的 setGovernance
函数。
通过这个操作,他将金库资金的控制权交给了社区控制的多重签名钱包,并将他自己作为一个风险因素排除在外。
但实际上,我并不是打算让 Andre Cronje 放弃对资金的控制权。协议以这种方式建立,是有充分理由的,在不同的时区等待 9 位社区持有者中的 6 位,会给平台的运行增加大量的开销和延迟,因此,这会导致:
对漏洞做出反应会变得更困难,而漏洞在复杂的初期协议中是很常见的;
对于新金库和策略的原型制作,显然会变得更加困难;
在 DeFi 快速变化的市场环境中,这将极大地损害收益率_;_
相反,我只是想让投资者更清楚地了解,使用诸如 yearn.finance 这样的协议,会面临着怎样的信任假设。
在现在大肆宣传的 DeFi 运动中,大家很容易会忽视我在这里描述的问题:理论上可通过治理来耗尽用户的资金,而这样的问题也存在于很多其它 DeFi 协议中。
例如,在 Compound 中,持有绝大部分治理代币的人,就可以投票任意的新逻辑,虽然这个逻辑需要 48 小时才能启动,但 8 亿美元的资金,不太可能及时全部收回。依赖于主动管理的协议,很难在必要的治理权限和客户资金的安全性之间取得平衡。
像 yearn.finance 这样依赖于快速适应市场环境做法的协议,很可能永远会站在需要更多控制权的一边,而这会牺牲存款安全为代价。因此,用户应停止将其视为非托管系统,而应该将其视为主动管理的基金,其中控制者就是基金经理。在此之前,这个基金的管理者是 Andre Cronje,而在今天,这个基金的管理者是 9 名社区参与者,他们使用了 6-of-9 多重签名机制。
而系统中存在的治理越多,那系统就越可能会被捕获。未来安全的 DeFi 系统,应该在设计时使用最小的治理杠杆,以便最大限度地提高安全性,并减少寻租。
End
扫码关注~
你就是圈子里的 DeFi 大咖!
欢迎加入社群,与我们讨论如何参与更多 DeFi 项目、探索 DeFi 规则原理~
加入方式:扫码关注,后台点击【加入社群】
DeFi 之道公众号后台
回复“财富”获取 DeFi 热门项目白皮书合集 !
回复“研究”获取 DeFi 研究报告合集!
回复“论文”获取 DeFi 相关论文合集!
干货持续更新中,敬请关注……
声明:本内容为作者独立观点,不代表 CoinVoice 立场,且不构成投资建议,请谨慎对待,如需报道或加入交流群,请联系微信:VOICE-V。
简介:专业性+洞察力的中文区块链媒体,致力于探索Web 3.0前瞻内容和深度解读。
评论0条