闪贷攻击将会对DeFi造成哪些安全威胁

前言:bZx事件发生之后,加密社区开始重视闪贷攻击。本文作者Haseeb认为闪贷用于套利不是其最大的用例,它最大的用例在于释放了闪贷攻击。闪贷攻击无法消失,且很难阻止。有些阻止攻击的措施看似合理,但成本很高,不切实际。而当前改进主要集中在价格预言机和治理代币机制上。比如价格采用通过TWAP或VWAP使用最后X个区块的加权平均值的机制。治理代币采用时间锁机制等。此外,如果闪贷攻击的利益足够高,矿工也可能会参与作恶。总之,面临闪贷攻击,DeFi还需要更好的应对。

闪贷最近成为加密社区关注的焦点。最近发生了两次使用闪贷对保证金交易协议bZx的攻击,第一次是35万美元的攻击,第二次是60万美元的模仿攻击。

用一句话来总结,这些攻击非常“华丽”。每次攻击中,攻击者不用花费一分钱立即借到数十万美元的ETH,然后通过一系列脆弱的链上协议,赚取数十万被盗资金,最后归还借来的数额巨大的ETH贷款。所有这些都是瞬间发生的。也就是说,在单个以太坊交易中完成。

闪贷攻击将会对DeFi造成哪些安全威胁

我们不知道这些攻击者是谁或他们来自哪里。他们进来时两手空空,离开时拿走数十万美元的价值,且都没有留下痕迹。

在这些攻击之后,我一直在思考闪贷及其对DeFi安全的影响。我认为这值得公开思考。简言之,我认为闪贷对DeFi是巨大的安全威胁。但是,闪贷并不会消失,我们需要仔细思考它们对未来DeFi安全的影响。

什么是闪贷

闪贷的概念最初由Marble 协议的创建者Max Wolff于2018年提出。Marble在市场上将自己宣称为“智能合约银行”,其产品非常简单,但极具DeFi创新:通过智能合约进行零风险贷款。(蓝狐笔记:关于什么是闪贷,可以参考之前的文章《加密闪贷:互联网货币的神奇新发明》《闪贷策略:攻击者能取走Maker的7亿美元抵押品吗?》《bZx事件的启示》)

怎么可能有零风险的贷款?

传统的贷方承担两种形式的风险。首先是违约风险:如果借款人卷款跑了,很糟糕。贷方的第二个风险是流动性不足的风险:如果贷方在错误时间贷出太多资产,或者没有及时收回还款,贷方可能会意外地缺乏流动性,且无法履行其义务。

闪贷减轻了这两种风险。闪贷基本上是这样运作的:我在单个交易中借给你想要数额的钱。但是,在这笔交易结束之前,你必须至少偿还我借给你的钱。如果你无法执行此操作,我会自动回滚你的交易。是的,智能合约可以做到这一点。

简言之,你的闪贷具有原子性:如果你无法偿还贷款,整个事情就会还原,就像是借贷从未发生过一样。这样的事情只能发生在蓝冠注册。例如,你无法在BitMEX上闪贷。这是因为智能合约平台一次只能处理单个交易,因此,在单个交易发生的所有事情都是作为批处理按次序执行。你可以将其看作为交易执行期间的“冻结时间”。另一方面,中心化交易所可能会出现竞争状况,以致于你的订单无法履行。在蓝冠注册上,可以确保的是,你的所有代码都是按次序运行。

因此,让我们思考一下这里的经济学。传统的放贷人在两个方面得到补偿:他们承担的风险(违约风险和流动性风险),以及他们借出资本的机会成本(例如,如果我能在其他地方获得2%的利息,那么,借款人必须向我支付高于2%的无风险费用)。

而闪贷不同。从字面意义上说,闪贷没有风险,且没有机会成本。这是因为借款人在其闪贷期间“冻结了时间”,因此,在其他人眼中,系统的资本从未有风险且无负担,它也无法在其它地方赚取利息(即,它没有机会成本)。

在某种意义上,这意味着成为闪贷的放贷人没有成本。这是非常反直觉的。那么,均衡时的闪贷成本应该是多少?(蓝狐笔记:这里说的均衡时,是指经过充分竞争且发展成熟稳定时)

基本上,闪贷应该是免费的。或者更恰当的做法是,支付小额费用,以分摊包括使得资产可实现闪贷的额外三行代码的成本。

闪贷攻击将会对DeFi造成哪些安全威胁

闪贷无法收取传统意义上的利息,因为这种贷款有效期为零(任何APR*0=0)。当然,如果闪贷放贷人收取更高的费用,他们很容易就被其他收取较低利率的闪贷池所超越。

闪贷使得资本变成真正的商品。这种竞争不可避免地会导致零费用或微不足道的象征性费用。dYdX当前对闪贷收取零费用。另一方面,AAVE对闪贷收取本金0.09%的费用。我怀疑这是不可持续的,确实,他们社区中的一些人呼吁将费用消减至零。(请注意,这两次攻击都没有使用AAVE作为他们的闪贷池)

闪贷有何用处?

闪贷最初的宣传是它们基本上用于套利。Marble的公告声称:

郑重声明:本文版权归原作者所有,转载文章仅为传播更多信息之目的,如作者信息标记有误,请第一时间联系我们修改或删除,多谢。