如何用预言机实现共同质押?
华胥
发表于 2023-2-1 12:22:19
1172
0
0
% z0 r5 o% Y: ^8 \" ?$ D
今天,ETH 持有者可以将其 ETH 放入 CDP,取出 RAI,以 1% DAI 的储蓄率将其转换为 DAI,并赚取约 10% 的利差,或约 5% 的年回报率(考虑到 2 倍的抵押保证金)。或者,他们可以只质押他们的 ETH,并以更低的风险赚取同样的 5% 年回报率。 如果 RAI 利率甚至增加到 -3%,计算结果将更加有利于 staking 质押。" }1 I2 V+ r' q2 R
有人正在探索多抵押品 RAI 作为此问题的解决方案。我个人对此的看法是,DAI 已经填补了作为任意(包括“现实世界资产”)多抵押算法稳定币的利基市场,因此 RAI 生态在该领域竞争毫无意义。因此,在我看来,只有当“多抵押品”指的是一种极为狭窄的多抵押品形式(ETH 和质押 ETH),则制作 RAI(或分叉)多抵押品才有意义。4 U( X+ e, A& Y6 i' F: V5 b
我们可以让任何(solo)质押者将他们的质押权益作为 CDP 抵押品双重使用吗?4 A3 [0 ?# o F/ f
Eigenlayer是一组工具,通过将提款地址设置为仅在满足某些条件情况下才返还资金的合约,它使质押者可以在其他应用中重新使用其质押权益。可以想象,人们可以制作一个使用 Eigenlayer 的 RAI 版本:用户通过将取款地址设置为一个合约,将他们质押的 ETH 存入 CDP 中,该合约只有在他们偿还 RAI 债务后才会返还。如果用户被清算,合约的逻辑会将 ETH 的所有权转移给清算人(当在协议中成为可能时,它也会立即触发提款)。
4 K2 g4 D! A& T0 J8 O1 y* g& U1 \
这种方法的主要挑战是,虽然它在正常情况下运行良好,惩罚非常罕见且非常低,但在极端情况下,它会大大降低系统的安全性。 特别是,如果攻击者打算进行 51% 攻击(或者甚至是涉及罚没一些提议者的更温和的攻击),那么他们将所有用于攻击系统的验证器放入 RAI-CDP 中,并尽可能多地取出 RAI 就变得合理了。
如果攻击者这样做,那么他们实际上是在从系统中“窃取”RAI,导致其产生以 RAI 计价的债务。 该系统可以尝试通过拍卖以使用 FLX 或 ETH 储备回购 RAI 来快速重新平衡,但它仍然有破产的风险。: a: B9 |3 ~, B7 N
. g% l, t: n( b) n5 r
RAI 可以只使用 Lido 的 stETH 吗?
9 ? L ?; ~" Z& b
这是一种在解决上述问题的同时,RAI 可能需要最少工作的方法。 然而,我会对这种方法感到担忧,因为进一步巩固像 stETH 这样的质押系统会导致以太坊级别的系统性风险。 如果它获得了更大的市场支配地位,那么这会给管理 stETH 的系统带来很多信任,从而将新的攻击向量引入到整个以太坊质押中。 对于 stETH 而言,这远不如中心化质押衍生品那么真实,但它仍然是一种风险。! L4 U' V) B! M7 m! M7 B
出于这个原因,我强烈倾向于尝试找到使用质押 ETH 作为抵押品的方法,以避免围绕单一主导流动性质押衍生品形成网络效应。 而且由于 RAI 不需要抵押资产的可替代性(因为 CDP 不可替代),RAI 实际上可以成为解决方案的一部分。" U. X A: m2 S j9 M) m: |
; |" o$ h: E8 H3 c3 w2 [) Y
想法 1:预言机作为质押者8 W3 ^/ W0 y0 h2 f
2 H% c1 ?8 L& V! r' s
任何拥有 RAI CDP(或RAI)的人都非常相信 RAI 的预言机系统不会窃取他们的资金。如果 RAI 预言机开始报告 ETH/USD 价格接近于零,则所有 CDP 将被清算,其持有者将一无所有。RAI 持有者(一个假想的攻击者可能会成为其中最大的一个)将能够进来购买 CDP,并以非常便宜的价格获取其中的 ETH。
8 R2 K# o- M S! c$ F
出于这个原因,对预言机系统的信任应该被极其重视。特别是,51% 的协议投机代币(此处为FLX)不可能在没有长时间延迟的情况下投票立即更改预言机提供商(否则,系统无法在风险资金总额超过 FLX 市场上限的环境中稳定运行)。我自己对最佳模型的看法大致是这样的。) l; r, f8 J$ v7 j! A
无论如何,一个关键的观察是,由于 RAI 持有者已经相信预言机不会以这种方式搞砸他们,如果我们也以其他风险较小的方式信任预言机,这似乎不会增加系统的脆弱性。
0 {3 L1 g- b: o# K" h
一个自然的选择是:RAI 本身创建了一个 Lido 副本,创建 CDP 的用户可以在其中质押这些资金,将 RAI 预言机设置为质押密钥(也许,RAI 预言机可以共同运行分布式验证器),但将 CDP 设置为取款地址。
这里的信任程度并没有看起来的那么高:糟糕的 RAI 预言机可能会导致资金被破坏,要么被罚没,要么遭到离线惩罚(inactivity-leaked),但它们无法窃取资金,只有极少数例外情况,比如进行某种特殊的 MEV 攻击,攻击者因双重提议而被罚没。+ G/ Y& {/ o; H E& d: f
$ {3 Y' a" a$ \4 g+ i6 [
但这仍然不完美:这种罕见的特殊攻击是可能的,而且还不清楚预言机是否愿意成为质押者。 质押的法律风险似乎高于成为预言机提供者的法律风险,后者在许多司法管辖区属于明确的言论自由“仅提供信息”类别。 这还会产生更大的动机来攻击它们。
4 A' L- D0 H1 A
想法 2 :预言机作为 2-of-2 质押者3 g# k* [: q- b$ r, t% |% ~0 @
( I% M d- u6 ?! k D; t: {
这是一种替代方案,可以让用户保持更多控制权并减少对预言机的信任。代替属于预言机的质押密钥,质押密钥是P + Q,其中Q是属于预言机的密钥,P是 CDP 持有者持有的密钥。由于 BLS 签名的算法特性,预言机可以用Q签名,CDP 持有者可以用P自己签名,并将两个签名加在一起创建一个验证P + Q的签名。这基本上就是 2-of-2DVT 。" d0 Q. P; T( ~# a S3 K: m
) M, d% b- y% X0 W
这加强了信任属性,如下所示:
仅靠预言机不能罚没 CDP 持有者;预言机本身不能进行提议者攻击,因为区块提议需要 CDP 持有者签名;CDP 持有者不会被罚没或进行攻击,因此无法以这种方式破坏系统的抵押品;预言机或 CDP 持有者可以离线; 在这种情况下,另一方将触发退出并退出 CDP,而损失很小;极端情况是预言机或 CDP 持有者在不活动泄漏期间( inactivity leak)离线。 在这种情况下,任何一方都可能让另一方遭遇损失。
- Q6 B) x! C# ]6 m8 o E1 {/ z( u
执行
这种设计是 DVT 的一种特殊情况:
! `1 S, l: g) F0 q E
这是 2-of-2,所以从网络角度来看,这是最简单的情况;2 个中的 1 个(预言机)正在为数以千计的合作伙伴提供服务。但是,它可以简单地签署相同的数据,并将其发布给所有与之合作的 CDP 以供下载;为了保持区块生产的自主性,在这种特定情况下,它可以使用一个系统,提议者选择要签名的内容,并将其发送给预言机进行共同签名。预言机不应该在同一个域的同一个 slot 中同时签署两个不同的数据,因为这可能会与致盲技巧(blinding tricks )相结合,以罚没 CDP 。
6 Y$ `2 s+ _+ `- R' R7 q
这是需要实施的新技术,因此可能需要 DVT 团队的合作才能真正实现。一旦建成,它应该不会太难操作。
想法 2 的弱点8 N: X2 V- F4 Q' f2 I8 @4 ~
( i, ^; k% w9 W" K; C
该系统最大的漏洞是 inactivity leaks,因为这些漏洞可能仅由预言机离线触发。然而,我认为接受这种风险是可以的。如果余额低于 16 ETH,验证器将自动退出并撤回 ETH。因此,我们可以简单地接受具有 2 倍抵押品要求的质押 ETH,而不是提供常规 ETH 的 1.5 倍。
Q, q- H) |) C6 m! `/ h
有一种极端情况,如果很多验证器同时泄露,一次只有少数人可以退出,因此一些验证器会在 16 ETH 以下进一步被泄露惩罚,但如果有需求,这是以太坊质押协议中可能会发生的变化。即使没有修复,也需要非常极端的攻击(超过 50% 的人离线),在诚实的验证器控制的余额比例返回到 2/3 以上之前,大量的验证器泄漏远远低于 16 ETH。. n* ?! \7 O3 O% r, p. I
, e1 Y+ _! [- A
另一个主要缺点是,在一个主要担心不是预言机恶意罚没,而是预言机恶意或不小心下线的世界中,它无法很好地工作。这可能是因为我们要么(i)期望预言机是低质量的质押者,因为我们是为了诚实而非技术熟练度而进行优化,要么(ii)预言机使用可信硬件,并且用户接受这是一个(部分)信任假设(参见Puffer )。为了解决这些弱点,我们提出了下面的想法 3。% t. a) c% B4 X4 v. B
% T' n- H. H+ ~( z, L
想法 3 :用于分级安全性的半可信预言机" v# O: o0 j; N0 Q3 y, g4 z4 A) X
. d D) i9 q! \3 I, _8 \4 P7 G" Y
在你可以保证大多数预言机是诚实的情况下,另一种方法消除了剩余的信任问题。8 O, ~* n5 \% V# y- C3 a1 i
+ M9 ]2 b/ o0 f. K" M. S
我们定义了三个常数:+ a2 Z+ K; i$ S) \2 R& D* b
" E$ \5 f" L% W
N:预言机系统中的预言机总数;' u$ o8 l! `+ r9 {1 ]( N, d
5 p# ~% W( s! W' H' R/ {4 }1 t
k1:可以与 CDP 持有者一起签署消息的预言机数量(例如 k1 ~= 0.2 * N)+ p# j/ g" ]7 p j% H8 F
k2:在没有 CDP 持有者的情况下可以协同工作以签署消息的预言机数量(例如 k2 ~= 0.8 * N)
我们要求预言机维护两个秘密共享密钥:- c+ ?" q& {6 M( x4 Z0 s5 u q
Q1,在 k1-of-N 秘密共享中P + Q2,在 k2-of-N 秘密共享中(后者为每个 CDP 持有者一份)0 V9 X; K. r2 B7 y' |( K/ u% o
对于 Q1,预言机可以与 CDP 持有者共同签名,对于 Q2,他们可以独立签名。
. p$ r' h' v% C$ j9 H
在 k1 + k2 = N 的情况下(例如 k1 = N/5 和 k2 = 4N/5),这可以确保在两种情况下都不会发生罚没和 inactivity 泄漏:) b" Y- j1 |6 `. o+ w
" ?9 N$ `! M+ v! z% N
超过 k2 的预言机是诚实的(因为它们可以独立签署消息,恶意 CDP 持有者无法找到 k1 的法定人数来共同签名);至少 k1 个预言机是诚实的,并且 CDP 持有者是诚实的(因为这两个群体可以一起签署消息,而其余的预言机不能签名也不能阻止它们);
这种风格类似于 Rollup 的第 1 阶段训练轮,在两个安全模型之间创建线性混合,作为一种部分信任两者但不过分信任其中一个的方式。
请注意,这个设计可以看作是想法 1 和 2 的概括(甚至是“CDP 持有者可以自己签名”的提议):k1 和 k2 可以根据需要进行调整,以探索信任谁的整个权衡空间。
) V& Y5 X8 n5 z
这些方法的一般好处(2 或 3 中的想法 1)% o1 ]* N& c3 h7 A. c
可信中立,并且不引入外部依赖:它只会信任参与者,而它已经被给予了更高程度的信任;实现了用户能够同时质押和持有 CDP 的收益;避免不必要地促进现有流动性质押衍生品的网络效应。相反,该计划维持的稳定币是(稳定的)流动质押衍生品。8 [6 l' c) i; s! B J8 Y: m9 z
9 d1 w* K! z& E0 @ p
比较想法 1、想法 2 以及 想法 3
根据实施简单程度进行排名,想法 1 > 想法 2 > 想法 3根据防止坏预言机进行排名,想法 3 > 想法 2 > 想法 1根据对不良 CDP 持有者的保护进行排名,想法 3 > 想法 2 > 想法 1根据避免预言机害怕运行它进行排名,想法 2 > 想法 3 > 想法 1) D0 h& ?- A" y- @3 b' P
总而言之,想法 1 似乎在短期内更易于实施,并且将成为“同时赚取其他质押收益”空间的有趣补充。但是想法 2 和想法 3 似乎更无需信任,也更持久,对预言机的信任度较低,并且更好地维护了 staking 去中心化,因此从长远来看,它们似乎更吸引我。6 h, |( ^5 S2 ?
成为第一个吐槽的人