闪光贷款「闪借贷款」

博主:晨昊晨昊 2021-09-24 94

Haseeb Qureshi是跨国加密风险基金蜻蜓资本(Dragonfly Capital)的管理合伙人。文章的较长版本出现在Medium上。

闪光贷款

短期贷款最近一直是人们关注的焦点。最近,两名黑客利用flash贷款攻击了保证金交易协议bZx,先是35万美元的攻击,后是60万美元的模仿攻击。

总而言之,这些袭击是非常壮观的。在每次攻击中,一个身无分文的攻击者瞬间借入数十万美元的ETH,通过一系列易受攻击的on-chain协议,从被盗资产中提取数十万美元,然后偿还他们的巨额ETH贷款。所有这些都发生在一瞬间,也就是说,在一个以太坊事务中。

我们不知道这些袭击者是谁,也不知道他们来自何方。两人一开始基本上什么都没有,然后带着几十万美元的身价离开了。也没有留下任何痕迹来证明自己的身份。

在这些攻击之后,我一直在想很多关于快速贷款及其对DeFi安全性的影响。我认为这值得在公众面前仔细考虑。

简而言之:我相信快速贷款是一个巨大的安全威胁。但短期贷款并没有消失,我们需要仔细考虑它们对未来DeFi证券的影响。

什么是快速贷款?

快速贷款的概念在2018年由Marble Protocol首次提出。大理石公司将自己标榜为“智能合约银行”,其产品是一个简单而卓越的DeFi创新:通过智能合约提供零风险贷款。

贷款怎么可能零风险呢?

传统的贷款人承担两种形式的风险。首先是违约风险:如果借款人带着钱跑了,那显然很糟糕。但贷款人面临的第二个风险是非流动性风险:如果贷款人在错误的时间出借了太多资产,或者没有及时收到还款,贷款人可能会出人意料地缺乏流动性,无法履行自己的义务。

快速贷款减轻了这两种风险。快速贷款的基本原理是这样的:我会借给你多少钱,只要你想这笔交易。但在这笔交易结束前,你必须至少付给我我借给你的钱。如果您不能这样做,我会自动回滚您的交易!(没错,智能合约可以做到这一点。)

简单地说,你的闪电贷款是原子的。如果你没有还清贷款,整个事情就好像贷款从来没有发生过一样。

这样的东西只能存在于区块链上。你不能在BitMEX上做快速贷款。这是因为智能合约平台一次处理一个事务,因此事务中发生的所有事情都作为批处理操作串行执行。您可以将其视为执行时的事务“冻结时间”。另一方面,集中交换可以有竞争条件,这样您的订单中的一段就不能满足。在区块链上,你保证你的所有代码一行接一行地运行。

闪光贷款

所以让我们考虑一下这里的经济学。传统的贷款者得到了两方面的补偿:他们承担的风险(违约风险和非流动性风险),以及他们借出的资本的机会成本(例如,如果我可以从其他地方获得该资本2%的利息,贷款者必须支付给我超过无风险2%的利息)。

快速贷款是不同的。短期贷款没有风险,没有机会成本!这是因为借款人在其短期贷款期间“冻结时间”,所以在其他人看来,该系统的资本从未处于风险之中,也从未受到担保,因此它不可能在其他地方赚取利息(即,它没有机会成本)。

这意味着,在某种意义上,做一个快速放贷者是没有成本的。这完全违背直觉。那么,在均衡状态下(即市场供求平衡时),一笔闪电贷款的成本应该是多少?

基本上,快速贷款应该是免费的。或者,更恰当地说,应该有一笔足够小的费用来分摊包含三行额外代码的成本,以使资产可以快速借出。

Flash贷款不能收取传统意义上的利息,因为贷款的有效期为零(任何APR*0=0)。当然,如果闪贷机构收取更高的利率,他们很快就会被其他收取更低利率的闪贷池所超越。

快速放贷使资本成为真正的商品。这种恶性竞争不可避免地会导致零收费或少量象征性收费。dYdX[交易平台]目前对闪贷收取零费用。另一方面,AAVE对短期贷款的本金收取0.09%的费用。我怀疑这是不可持续的,事实上,他们的社区已经呼吁削减费用为零。(请注意,我们看到的两次攻击都没有使用AAVE作为其flash贷款池。)

Flash攻击有很大的安全隐患

我越来越相信,flash loans真正开启的是flash攻击——由flash loans资助的资本密集型攻击。我们在最近的bZx黑客攻击中看到了这一点,我怀疑这只是矛尖。

闪贷对攻击者特别有吸引力的主要原因有两个。

一。许多攻击需要大量的前期资金(例如oracle操纵攻击)。如果你在1000万美元的ETH上获得了正的投资回报率,这可能不是套利——你可能会胡说八道。

2。快速贷款最大限度地减少了攻击者的污点。如果我知道如何用1000万美元的乙醚来操纵甲骨文,即使我拥有那么多乙醚,我也不想用自己的资本去冒险。我的ETH将被污染,交易所可能拒绝我的存款,这将很难洗钱。太冒险了!但如果我以1000万美元的价格贷款,那谁在乎呢?一切都是好的。这不像dYdX的抵押品池会被认为是受污染的,因为那就是我贷款的来源——dYdX的污染只是消失了一些。

你可能不喜欢现在的交易所黑名单是区块链安全模型的一部分。它相当柔软和集中。但这是一个重要的现实,它揭示了这些攻击背后的微积分。

在比特币白皮书中,Satoshi曾著名地宣称比特币(BTC)是安全的,不会受到攻击,因为:

“[袭击者]应该发现遵守规则[……]比破坏自己财富的制度和合法性更有利可图。”

有了flash贷款,攻击者不再需要在游戏中有任何皮肤。快速贷款实质上改变了攻击者的风险。

闪光贷款

记住,快速贷款可以堆积如山!受限于天然气限额,你可以在一次交易中(超过5000万美元)将每个flash可贷池的资金按字面意思聚合起来,然后将所有的资金投入到一个脆弱的合同中。这是一个价值5000万美元的重锤,现在任何人都可以砸到任何一个链上的皮纳塔,只要钱出来。这太可怕了。

从长远来看,这一切意味着什么?

我相信bZx的袭击改变了一切。

这不会是最后一次闪电攻击。第二次bZx攻击是第一次模仿,我怀疑它将在未来几个月掀起一波攻击浪潮。现在,来自世界最偏远地区的数千名聪明的青少年正戳破所有这些DeFi乐高积木,在显微镜下对它们进行检查,试图发现是否有某种方法可以让它们发动闪电攻击。如果他们能够利用一个漏洞,他们也可以赚到几十万美元——这在世界大多数地区都是一笔改变人生的钱。

对于协议,flash攻击意味着威胁模型现在已经改变。在bZx黑客攻击后被闪电攻击将和在DAO黑客攻击后被再次进入攻击一样尴尬:你将成为加密的笑柄。你应该看到它来了。

最后,这些事件让我想到了密码中的一个旧概念:miner可提取值(MEV)。MEV是矿工可以从区块链系统中提取的总价值。这包括区块奖励和费用,但也包括更恶作剧的价值提取形式,如重新排序交易或将恶意交易插入区块。

归根结底,你应该把所有这些flash攻击都看作是mempool中的单笔交易,可以赚大钱。例如,第二次bZx攻击导致ETH在单个事务中获得64.5万美元的利润。如果你是一个采矿者,并且你即将开始开采一个新的区块,想象一下看上一个区块的交易,然后对自己说:“等等,什么?为什么我要尝试开采一个新的区块大约500美元,而最后一个区块包含64.5万美元的利润??”

我们离建立未来金融体系的可持续架构还很远。

与其扩展这个链,不如回去尝试重写历史,让你成为flash攻击者。想想看:光是这笔交易就价值4个多小时的以太坊矿块!

这类似于拥有一个特殊的超级区块,包含1000倍的正常区块奖励-正如你所料,这样一个超级区块的合理结果应该是一堆矿工竞相孤立链的顶端,并为自己偷走这个区块。

在平衡状态下,所有的闪光攻击最终都应该由矿工来完成。(请注意,他们最终也应该窃取所有的链上套利和清算)具有讽刺意味的是,这将对flash攻击起到威慑作用,因为这将使攻击者无法将他们发现的这些漏洞赚钱。也许最终矿工们将开始通过私人渠道征集攻击代码,并向潜在攻击者支付一笔搜索费。从技术上讲,这可以通过零知识证明来实现。(想起来很奇怪,对吧?)

但现在这些都是科幻小说。矿工们今天显然不会这么做。

为什么不是呢?

很多理由。这很难,这是很多工作,以太坊虚拟机很难模拟,这很危险,会有导致资金损失或孤立区块的漏洞,会引起轩然大波,流氓采矿池可能会出现公关危机,并被冠以“以太坊的敌人”的称号。目前,矿工可能会在商业上损失更多,成为孤立的比他们试着做得到的还多。

今天是真的。不会很久的。

这为以太坊提供了另一个加速向以太坊2.0过渡的动力。以太地上的DeFi,虽然令人惊异和着迷,但绝对和不可挽回地被打破。DeFi在战俘链上是不稳定的,因为所有的高价值交易都会被矿工重新分配(也称为时间强盗攻击)。

为了使这些系统能够大规模地工作,您需要最终性——矿工无法重写已确认的数据块。这将保护以前的区块不被重新分配。另外,如果DeFi协议存在于单独的以太坊2.0碎片上,它们将不易受到flash攻击。

据我估计,flash攻击给了我们一个小但有用的提醒,那是早期的事情。我们离建立未来金融体系的可持续架构还很远。

目前,闪贷将是新常态。也许从长远来看,以太坊上的所有资产都可以用于快速贷款。交易所、Uniswap持有的所有抵押品,可能都是ERC-20本身。

谁知道呢-只有几行代码。(本文素材来源于网络,如有侵权,请联系作者删除!)

The End

发布于:2021-09-24,除非注明,否则均为佳达财讯原创文章,转载请注明出处。