小心,DeFi 有可能侵蚀 PoS 区块链的安全
撰文: Haseeb Qureshi,区块链投资机构 Dragonfly Capital 合伙人
编译:詹涓
剥茧抽丝,一步步说明为什么竞争性的借贷市场对 PoS 的安全性具有重大影响。链上借贷 已经成为当今最流行的去中心化金融(DeFi)应用。 MakerDAO、Compound、dYdX 和 Nuo Network 这些借贷市场都在去年急剧成长。但 链上贷款可能不仅颠覆了传统借贷,它还可能颠覆权益证明 (PoS) 共识 。
权益证明是工作量证明 (PoW) 之外的另一种选择,在 PoS 中,区块链由已质押(stake)的加密资产保护,而不是由算力来保护。去年推出的许多主流网络都是 PoS 网络,比如 Tezos、Algorand、Cosmos 等,下一年预计还有更多这样的网络上线。
当大量代币在网络中处于质押状态时,PoS 系统就是安全的。 在大多数 PoS 算法中,只要所有抵押资产的 2/3 归诚实的参与者所有,该区块链就是安全的。
现在假设你是一名试图破坏某个 PoS 系统的黑客。你会怎么做?
在较高的层次上,有两种攻击途径:一种方法是, 你可以累积所有已发行权益(outstanding stake)的三分之一 ,但这么做不仅难度大,而且成本高昂。第二种方法是, 你可以说服当前的这批质押者停止抵押(staking),然后接管这个便宜得多的网络 。
第二种方法在原则上听起来很有吸引力,但是怎么才能使当前的这批质押者停止抵押呢?有一个简单的方法: 在其他地方给他们提供更有吸引力的收益 。
只有在持币者被激励去质押的情况下,PoS 才会运转起来,而且,持币者只有在奖励足够丰厚的情况下,才会被激励起来去质押。但如果他们能在其他地方获得更好的回报,那么可以想见,一个理性的投资者会将他们的资产解除质押,并将其转移到任何一个能获得更高回报的地方。如果这种虹吸效应吸走了抵押的资产,那么,该网络的安全性就会降低。
从字面意义上说, 链上贷款市场直接与质押竞争 ——这意味着,它们与协议的安全性在直接竞争!
这种直观的推断很简单。那么,我们能模拟出发生这种情况的可能性有多大吗?
模拟质押游戏
要模仿像以太坊 DeFi 这类复杂的经济系统,最佳方法是通过一种被称为 「基于代理人的模拟」(agent-based simulation) 的技术。在基于代理人的模拟中,你需要对一大批有不同策略和风险偏好的代理人进行建模,然后让它们彼此独立决策。通过观察这个初生系统如何演化(并使用不同的参数重复试验数千次),你就可以获得数据上的确信,知道该网络在不同场景下会如何运作。
区块链网络模拟平台 Gauntlet 的创始人 Tarun Chitra 在他的最新论文《质押和链上借贷之间的竞争均衡》 (Competitive equilibria between staking and on-chain lending) 中正是这么做的。他分析了链上借贷如何与 PoS 质押相互作用,前提是假设押注者在经济上是理性的。 (经济理性的含义是:每个代理人都有一个资产组合,这些资产可能被借出、被质押、被持有或者被交易,而且每个代理人的风险偏好略有不同。各代理人会重新平衡投资组合中的资产,以使其风险调整后的回报最大化。)
质押 ETH 的供应量与借贷 ETH 供应量的对比
上图是一个单一的模拟,假定在比特币式区块奖励通缩的情况下, Compound 中的 ETH (橙色线)和质押的 ETH (蓝线)是如何随时间变化的。
图中所表达的意思大概如此:最初,大多数 ETH 的持有者都质押他们的 ETH。但 随着时间的推移,区块奖励下降,相比借贷给 Compound,质押 ETH 的回报不再那么有吸引力,所以几乎所有人都将他们的 ETH 转入 Compound 。 (你可以忽略借贷和质押之间的最初翻转,这是由随机初始化造成的。)
Tarun 做了几个理论上的封闭式预测,并通过模拟试验得到了验证。其中最重要的一点是: PoS 链不能安全地使用通缩货币政策 。如果 PoS 区块的回报随着时间的推移而减少,那么它的长期均衡将是:几乎所有的资产被借出,而不是被质押。
让我们更进一步。知道这一点后,攻击者能做什么呢?
如果攻击者补贴了某个链上借贷市场,并支付一个更好的长期利率,这将会使质押者从质押转向借贷。 然后,一旦链上质押枯竭,他们就可以进入并控制这个业已贫瘠的质押市场。
以 Compound 为例,要想压低借款率,攻击者只需要从池子里借钱。其风险模型会自动向上调整利率。随着攻击者不断借钱,越来越多的质押者转向借贷,PoS 的安全性也慢慢地被耗尽。这可能会导致滚雪球效应:旁观者看到协议的安全性正在耗尽,他们会想着做空这一代币,这会进一步增加 Compound 的借贷需求。
你可以把这个质押网络想象成一件毛衣,攻击者拉着一根线头: 利率 。当攻击者开始拉线头,毛衣会对压力做出反应,线越拉越长,没过多久,攻击者就会将整件毛衣拆散。
当然,要完成这一点,攻击者需要借 Compound 里的资产,这意味着他们必须提供抵押品来借贷。但是,如果他们用 USDC 或代币化的比特币作为抵押,那么,攻击者在攻击网络时就不会承受对 ETH 的价格敞口。类似这种攻击如果发生在 PoW 链,将需要在链下占用大量空头头寸。但是 在 PoS 中,攻击者可以在执行这种攻击的同时对冲所有的价格风险,而且所有操作不需要任何人的许可,且完全在链上实现。
这是一个令人惊讶的结果!看起来 DeFi 和共识是完全垂直的领域,但是实际上, 竞争性的借贷市场对 PoS 的安全性具有重大影响。
好吧,这对 PoS 意味着什么?
首先,让我们花点时间反思一下:天啊,图灵完备的区块链实在太复杂了!将智能合约添加到区块链似乎应该是一个纯粹的应用层决定。而智能合约使 Compound 这样的复杂市场得以诞生,后者以不那么显而易见的方式与区块链的底层安全性进行交互(PoW 的 time bandit 或分叉攻击提供了类似范例)。我们经常谈论「第 1 层」或「第 2 层」,但是与传统计算的 OSI 模型不同, 区块链其实布满了有裂痕的抽象 。
它还提醒我们: 我们不能继续假装区块链是封闭系统,其唯一的激励因素在于协议内部。 区块链太过复杂且相互连接,因而无法在真空中进行分析。在这方面, 人们对 PoS 的实际安全性仍然知之甚少 。
只要 PoS 网络处于开放的生态系统中,任何链上借贷市场都可以通过提供更高的收益来蚕食其安全性 。事实上,即使某系统不直接支持智能合约(如 Cosmos ATOM),但只要质押资产可以代币化且跨链转移,那么,另一条链上的代币化借贷市场也会受到同样的影响!
担心这个是不是很傻?
我们讨论了主动攻击可能是什么样子,当然,这种攻击的资本成本可能太高,所以不太现实。但即使没有人做恶,这种情况也可能发生。比方说, 有某些风投资助的项目开始补贴各自的利率,试图相互竞争,这可能会无意中降低了网络安全。 最终结果将是一样的:一个危险而不安全的共识层。
PoS 系统该如何防范这种情况?
在较高的层面上,一个质押网络有两种选择: 要么迫使链上贷款市场设定利率上限,要么通过向质押者提供有竞争力的回报,与贷款市场展开竞争。
第一种策略类似于实施资本管制。 这在无需许可的区块链上显然是不可能的——即使存在资本管制,借款人和贷款人也可以在链下或通过相邻的互操作链建立相同的市场。
唯一现实的防范方法是, 在必要时使用灵活的货币政策,提供有竞争力的利率 。任何固定的通货膨胀制度都容易受到这种攻击,因为攻击者总能精确地知道,在贷款市场上提供多少补贴就可蚕食押注者。
这种防御类似于央行调整利率以实现其经济目标。 一个 PoS 网络必须使用它的发行率作为工具,以实时应对市场压力 。
从这个意义上说, 以太坊目前的基础还算不错,因为它没有承诺任何固定的货币政策。 但进一步说,所有的 PoS 网络都必须考虑到这一权衡问题。 链上治理和链下治理的方法都可以发挥作用,但是如果 PoS 协议想要永远保持安全,那么它必须具有自适应的货币政策。
要了解更多的细节,请查看这篇文章(https://docsend.com/view/697feid)。我也要向 Tarun 和 Gauntlet 团队的出色工作致以极高的敬意。
Gauntlet 是 Dragonfly Capital 的投资组合公司。感谢 Tarun Chitra、Ivan Bogatyy 和 John Morrow 对本文的反馈。
链闻获得作者授权发布该文中文版本。原文链接: https://medium.com/dragonfly-research/how-defi-cannibalizes-pos-security-84b146f00697