Kraken 暫停質押業務,一文了解 4 種 Staking 方案之間的關係和異同

0xTodd
2023-02-10 22:44:28
收藏
效率和安全的取捨,造成了不同的staking方案。

撰文:0xTodd,Nothing Research 合夥人

文章来源:深潮

今天借著 Kraken 暫停 Staking 這個新聞,想做一個 Staking 的科普\&分析:

1)本質上,Staking 最重要的就是看 2 把私鑰的歸屬權。

2)由於 2 把私鑰的歸屬權不同,又誕生了 4 類 Staking 方案。

我相信有這篇文章後,你對於 Lido,Rocket,Coinbase,Kraken,SSV 以及 Ebunker 能有一個更深的理解。

image

如果把以太坊看作是一家公司的話,負責 Staking 的驗證者(Validator)就是員工。它的工作就是驗證交易的合法性,然後打包區塊上鏈(雖然構建區塊這活兒,如今也已經慢慢外包給 MEV 服務商了)。

1)首先,作為驗證者,你需要證明你的員工身份。畢竟不是誰都可以來隨便驗證,交了 32 枚 ETH 押金後,你需要持證上崗(即:【驗證 key】)。理論上,做 Staking 的第一步就是創建一個驗證 key。隨後,你拿著你的驗證 key,也就是你的工作證,才能給每一個交易蓋戳。

2)第二,以太坊貼心地設計出了第二把私鑰,用於接收剛剛提到的押金(32 ETH)。當你去做驗證者時,你會要填一個"提現地址"。它是未來你提取本金和工資的地址,而那個地址的私鑰理論上應當在你的手裡(即:【提現 key】)。打個比方,這是你的工資卡。

這樣 2 把私鑰:①驗證key(工作證)、②提現key(工資卡)的用途,我想大家都明白了。

接下來,根據 2 把私鑰的不同歸屬,才誕生了四種 Staking 解決方案:

-CEX 類

-大池子類(Pooled Staking)

-SaaS 類(Staking as a Service)

-Solo 類

image

方案一:CEX類/全托管

如果你使用交易所 Staking 方案,例如 Binance,Coinbase 或者今天剛宣布停止 Staking 服務的 Kraken。你會發現,你根本沒有創建過【驗證 key】,也沒有填過【提現 key】,那這種就是標準的"全托管"。

那這兩把鑰匙分別在哪呢?

1)驗證 key 在 Binance Pool 或 Coinbase Pool

2)提現 key 則在 Binance 和 CB 的冷錢包。

你根本不用上班(參與驗證),工資卡也給了交易所幫你保管。這種方案最省心,而且有保底

但是不適用於對去中心化有追求的人,畢竟 FUD 三天兩頭有,而且現在看美國甚至可能不允許你這樣搞。

方案二:大池類 Staking(Pooled Staking)

這就是 Lido 和 Rocket Pool 的 Staking 方案。你仍然不用創建那兩把 keys,由 Lido 和 Rocket 管理,那它和交易所的區別在哪呢?

先聊聊驗證 key:

交易所:顯然,它旗下就1家運營商,即自己。

Lido:Lido 1.0旗下有29家運營商,Lido把ETH都委由他們管理,所以驗證key是相對分散的,29家運營商各拿一些。等於說Lido是一個集團,旗下強力打工天團29人,你自己不用打工,讓打工團專業人士幫你上班。所以運營商抽 5% 分成,Lido 再抽 5%。

Rocket Pool:Rocket Pool旗下可以有無數家運營商,任何人帶著機器/雲伺服器+16個ETH都可以來當運營商。等於說Rocket Pool是眾包平台,旗下一堆美團騎手,自帶電動車(機器/雲伺服器)和機房,幫你跑節點。理所當然,他們也要抽成。

再聊聊提現 key:

這裡有必要再補充一個原理:Staking 提現到底是個什麼流程?我之前的帖子又簡單介紹過上海升級以及提現

眾所周知,以太坊是兩條鏈:

  • 以太坊1.0(執行層)

  • Beacon Chain(共識層)

當你去 Stake 時,第一步是把 ETH 匯款到以太坊 1.0 Beacon 金庫地址鎖倉,然後 Beacon Chain 給你在共識層生成對應的 ETH。

注意這些 ETH 是鎖住,而非在 1.0 上銷毀或是被跨鏈到 beacon chain 上,它只是鎖住-映射而已。 示意圖如下:

image

而上海升級後,提現將是一種新的交易類型。當你提現時

1.你的節點通知Beacon Chain,發出提現信號。

2.排隊。

3.排隊到你後,Beacon Chain通知以太坊1.0的金庫。

4.以太坊1.0的金庫地址給你指定的地址匯款,比如0xTodd.eth。

所以,所謂我的【提現key】,本質上是"0xTodd.eth"這個地址的私鑰。

而 Lido\Rocket 的提現,是又多包了 3 層

1.你通知Lido\RPL,我要提現。

2.Lido\RPL通知運營商,某某節點要提現。

3.運營商通知Beacon Chain,某某節點要提現。

4.排隊。

5.Beacon Chain通知以太坊1.0金庫。

6.以太坊1.0的金庫地址給Lido\RPL提現金庫匯款。

7.你銷毀stETH\rETH,Lido\RPL智能合約給你地址匯款。

PS:如果換成交易所,第 7 步就是 CZ\阿姆斯特朗給你的 Binance\Coinbase 中心賬戶直接加餘額。

對於大池子類方案,第 1、4、5、6、7 步都無懈可擊,是純粹鏈上操作。

而薄弱環節在第 2、3 步。

理論上,大池子類方案可以拒絕你的提現,比如你因為使用龍卷風被美國 OAFC 制裁了,那麼第 2、3 步不給你傳信就能做到。

我為什麼叫它"大池子"方案,因為它所有節點的提現地址,填的都是同一個地址,即Lido\RPL的提現金庫智能合約地址。

當然,對於 CEX 而言,它們仍然有較大的進步。

但是由於第 2、3 步的操作空間的存在,也讓這類方案成為了一個很接近"全托管"的方案。畢竟,提現 key 理論上仍然為大池子所有,你手中持有的只是"提現地址"的"提現地址"。

所以,對於不掌握最終資金去向的方案,我都傾向於劃歸"全托管"。

部分 Rocket Pool 支持者經常聲稱它是完全去中心化的,這個廣告語深入人心。

但是當你看完此文章,你會知道,它是在驗證 key 部分,做到了去中心化,任何人都可以當驗證者(Lido V2 也正在努力實現)。

而在提現 key 這個部分,作為用戶,仍然無法參與,你的資產仍然靜靜地躺在第三方的錢包當中。

當然,Lido、Rocket Pool 相比交易所來說,僅多操作一兩步,卻更加去中心化,仍是不错的折中方案。尤其是 Lido,stETH 流動性非常讚(目前遠超其他所有LSD方案),是重要加分項。

方案三:SaaS(Staking as a Service)類/小池子類

到了第三步,Staking 就更加原教旨主義了。我個人是有一定的去中心化潔癖的,尤其是經歷了一系列 CEX 暴雷後。

剛才做了比喻,驗證 key 是工作證;提現 key 是工資卡。那么,人們天然就會想,有沒有一種方案,就讓別人替我打工,同時我自己領工資呢?

現實生活沒有這種美事兒,但以太坊網絡有,就是 SaaS 或叫 VaaS(Validator as a Service)。我們以非托管礦池@ebunker_eth為例。

我們首先要做的,是把驗證 key 做成 keystore 給到 Ebunker Pool。接下來,由專業礦池來維護這個節點的出塊。同時,提現地址填我自己的,即我掌握最終以太坊的提現權。

總結下:

  • 【驗證key】,我和礦池各一份;

  • 【提現key】,只有我有。

即:礦池打工/我拿錢/礦池拿抽成。

這個方案和大池子類有什麼區別呢?區別在:

  • Pooled類,提現地址是統一的(即Lido\RPL金庫),所以它是"大池子"。

  • SaaS類,提現地址是每個人都填自己的,所以它是"小池子"。

PS:大池子,小池子的說法是我起的,我覺得這個很形象,便於理解。

那你可能會問,那像SaaS類,如果礦池不幫你去Beacon chain廣播,你還是無法提現啊?

關鍵來了,因為你手裡有你的【驗證key】,如果最差情況發生,例如礦池rug了,你還可以親自去跑這個節點,親自廣播。

同時,你手裡還有【提現key】,所以你可以親自提現,完好無損取回本金。

而在大池子類方案裡,最壞情況發生後,你是沒有這個能力的,因為你既沒有【驗證key】也沒有【提現key】。

那你可能會問第二個問題,SaaS方案中,小池子礦池能否做到卷我錢跑路?

這是以太坊Staking設計的精巧之處,因為你在創建節點時,會填入自己的提現地址,礦池無法篡改它。所以,即便礦池rug了,你的本金絕對無法被礦池拿走,因為偷走它的難度≈攻擊以太坊本身。

而在大池子方案裡,最壞情況發生後,理論上它可以攜款跑路。很簡單,它只要升級它的金庫合約,將它的ownership轉移給攻擊者。當然這是最壞情形,發生的概率很小。

為了反制這一點,Lido引入了多簽來管理智能合約升級;而Rocker Pool似乎對此事讳莫如深,暫時沒有找到它討論合約升級的相關內容。

所以,對於不想打工(畢竟7*24運維節點不是個輕鬆活),又有安全性要求(不給第三方管理資金),選擇SaaS服務是個不錯的選擇。除了@ebunker_eth之外,還有一些礦池提供類似的"非托管"服務,可以到Rated上查詢。

當然,缺點也有,所有的非托管 SaaS 類,均沒有 LSD 方案。

道理也很淺顯,人家不掌握你的私鑰,怎麼敢給你發存折(LSD)?當然,有些 SaaS 礦池也會提供大池子方案,大池子方案就可以給 LSD。

再用精簡的話說:誰掌握私鑰決定了是否可以 LSD。CEX、大池子方案都可以,小池子,Solo 都不行。

上海升級後,以太坊提現最久 1-2 個月,SaaS 類小池子方案,流動性也得到了一定的保障,所以,這也是我個人最喜歡的方案,省心/稍費事/不把私鑰給別人/APR 不錯。

第四類解決方案:Solo類

最後,給大家介紹一下最終的聖杯,Solo Staking。

Solo 顧名思義,自己玩,不引入任何第三方,去中心化和安全性拉到滿星的方案

Solo 礦工,自己【獨自】占有【驗證key】和【提現key】。

  • 優點顯而易見:安全、沒人抽成,給以太坊增加多樣性,而且…滿足精神世界的需求!

  • 缺點也同樣顯而易見:自己親自打工,需要成本:時間成本(維護它),資金成本(租賃伺服器/搭建物理機房)。若不24小時維護,你的APR會略低一些,因為有懲罰。

這是做一個礦工(能跑就行)和做一個好礦工(追求高收益)的區別。

例如,目前全網出塊有效率為97%,Vitalik可能就是一個Solo礦工,專業如他,也只能做到96%有效率,Rocket Pool更低,它是眾包的,有效率只有95%。

image

而且,Solo是永恆的聖杯。如果數量足夠大,我是強烈建議研究一下Solo。

數量低於100K,建議重溫一下第2類和第3類。

另外,插入一個支線。ssv network 是幹嘛用的?SSV 其實是 DVT 這門技術的研究者,它暫時和上述四類方案不是競爭對手,而是合作關係。DTV 是用於拆分驗證 key 的

當你的驗證 key 被拆成 4 份之後,妙處在於:

①一個運營商掉線,那其他運營商可以立刻補上;

②同時每個運營商都不清楚完整的驗證 key,這個讓驗證這個環節更去中心化,它可以讓Lido類、SaaS 類和 Solo 方案變得更強。

終於寫完了這篇!雖然很長,希望這篇分析能幫大家徹底理清所有 Staking 方案之間的關係和異同。歡迎大家 mark,隨時複習。也歡迎分享你喜歡的 Staking 方案,加入討論。

鏈捕手ChainCatcher提醒,請廣大讀者理性看待區塊鏈,切實提高風險意識,警惕各類虛擬代幣發行與炒作,站內所有內容僅係市場信息或相關方觀點,不構成任何形式投資建議。如發現站內內容含敏感信息,可點擊“舉報”,我們會及時處理。
banner
ChainCatcher 與創新者共建Web3世界