以太坊Layer-2簡介
Layer-2擴展技術(shù)將交易移出鏈上(與layer-1擴展技術(shù)相反,后者旨在提高基礎(chǔ)鏈的交易吞吐量)。如果構(gòu)建得當(dāng),Layer-2解決方案可利用區(qū)塊鏈的諸多好處(安全性、不可變性、去中心化性等),而不會造成相同的代價(確認(rèn)時間慢、波動性和高交易成本等),這種權(quán)衡和假設(shè)是值得的。
在以太坊上構(gòu)建的layer-2擴展技術(shù)的驅(qū)動原理是使用欺詐證明,而非有效性證明。有效性證明(如zk-S[NT]ARKS)可用于防止鏈外發(fā)生不正確的狀態(tài)轉(zhuǎn)換。不幸的是,除了資源極為密集之外,有效性證明是壟斷性的,其非競爭性生成,因此以有效性證明為中心的系統(tǒng)會趨向于被許可,因此不會去中心化。要了解“去中心化”意味著什么,請參閱前面關(guān)于可擴展性問題的文章。也許更重要的是,有效性證明只有在實現(xiàn)無缺陷的情況下,才有其良好的屬性,否則它們的表現(xiàn)無法比欺詐證明更好!
另一方面,欺詐證明在本質(zhì)上是樂觀的:我們假設(shè)在挑戰(zhàn)證明不正確之前,一切都是正確的。這些證明的生成,通常是簡單和廉價的(特別是與生成有效性證明相比),因此任何人都可以參與。
過去幾年,以太坊的兩大主要擴展提案分別是子鏈(即Plasma)和狀態(tài)通道(例如雷電網(wǎng)絡(luò)等)。
Plasma
Plasma是子鏈設(shè)計的一個框架。Konstantopoulos將Plasma子鏈描述為“非托管側(cè)鏈”。
該定義規(guī)定:1)該側(cè)鏈不能竊取你的資金,2)該側(cè)鏈不能阻止你申請資金。這是通過使用一個無需信任(或者說幾乎是無需信任的)的雙向錨定來實現(xiàn)的。
子鏈的一個更精確的定義是:“無需信任的側(cè)鏈通過定期承諾,從其父鏈借用安全性。”
雙向錨定一直是最大的挑戰(zhàn)。前向錨定(父鏈→側(cè)鏈)的實現(xiàn)是很簡單的:其只需將資金鎖定到父鏈上的合約當(dāng)中。但是,由于側(cè)鏈比父鏈更容易受到攻擊/操作,因此,后向錨定(側(cè)鏈→父鏈)是問題的根本原因。為解決這一問題,研究者們提出了幾種方法(列出的方法非詳盡):
1. 只支持單向錨定。這可以防止側(cè)鏈上的任何人惡意竊取父鏈上的資金。這種設(shè)計目前正被建議用于以太坊2.0中的信標(biāo)鏈,以太幣(ETH)在父鏈(PoW以太坊鏈)上燃燒,同時在側(cè)鏈(PoS信標(biāo)鏈)上標(biāo)記為等值的BETH,這是沒有辦法反轉(zhuǎn)的(譯者注:至少在幾年內(nèi)是這樣)。
2. 使用聯(lián)合錨定。在該方案中,一個或多個操作員通過多重簽名方案控制后向錨定過程。換句話說,運營者決定何時可在父鏈上解鎖資金。不幸的是,這種方案導(dǎo)致了側(cè)鏈被有效地托管,聯(lián)合側(cè)鏈的所有意圖和目的與中心化交易所是類似的;
3. Plasma(這篇文章的一半的主題)! Plasma允許幾乎無需信任的雙向錨定,特別是將資產(chǎn)從子鏈反向錨定回父鏈。它通過使用一個退出游戲來實現(xiàn)這一點,退出游戲隱式或顯式地使用欺詐證明,依賴于必須在給定超時內(nèi)發(fā)出的挑戰(zhàn)(challenge)變化。請注意,與流行的觀點相反,Plasma本身并不支持低延遲交易,其只通過樂觀地承諾(commitment)將很多交易作為以太坊鏈上的單個哈希來增加吞吐量。實際上,子鏈交易的延遲可以被認(rèn)為比沒有任何類似通道功能的父鏈交易的延遲要高。
附加說明
與所有依賴欺詐證明而非有效性證明的layer-2方案一樣,對于父鏈上的大多數(shù)區(qū)塊生產(chǎn)者,會有一個多數(shù)為誠實的信任假設(shè)。大多數(shù)礦工(在一個PoW鏈)可以審查交易:在防欺詐的情況下,如果挑戰(zhàn)被審查,那么資金就可能被偷。這就是為什么Plasma并不是完全無需信任的原因,實際上這是子鏈設(shè)計的一個基本附加說明。
Plasma的研究咋樣了?
關(guān)于Plasma研究進展,可以追溯到2018年9月份,讓我們看看Plasma在過去6個月的發(fā)展情況。
Plasma Cash(誕生于2018年3月)是Plasma的一個變體,它使用了一個不可替代的、類似通道的數(shù)據(jù)模型,而Plasma MVP(2018年1月)使用了一個可替代的UTXO數(shù)據(jù)模型(類似于比特幣)。與支付通道網(wǎng)絡(luò)不同,Plasma Cash允許用戶加入網(wǎng)絡(luò),在不進行鏈上交易的情況下發(fā)送和接收幣。不幸的是,與支付通道網(wǎng)絡(luò)不同,這是通過要求在交易幣時傳遞不斷增長的幣歷史來實現(xiàn)的,并作為幣所有權(quán)的證明。這段歷史隨著Plasma鏈區(qū)塊的數(shù)量而線性增長。
Plasma Prime(誕生于2018年10月)是Plasma研究的下一個重要里程碑。其使用RSA累加器對Plasma Cash 幣歷史數(shù)據(jù)進行壓縮,而RSA累加器最初被建議用于批處理比特幣的UTXO。Konstantopoulos在這里優(yōu)雅地寫了一篇關(guān)于RSA累加器的深入解釋文章,Bünz則給出了一次技術(shù)性討論演講。從高層次講,累加器是一個固定大小的整數(shù),它可以證明由唯一素數(shù)標(biāo)識的集合元素的成員身份或非成員身份,并且我們可以在此基礎(chǔ)上執(zhí)行加法和除法操作。這有助于使以前Plasma Cash的線性幣歷史變成固定大小(無論其Plasma區(qū)塊數(shù)有多少)!
Plasma Group,該組織于2019年1月份被公開,這是一家從事于Plasma基礎(chǔ)研究和開發(fā)的新型非營利性組織。他們首先發(fā)布了Plasma Cashflow鏈的規(guī)范。這解決了在Plasma Cash中發(fā)現(xiàn)的幣碎片問題,但其沒有解決幣歷史的大小問題。最近,他們發(fā)布了一個使用predicates的通用Plasma設(shè)計。這種“plapp”設(shè)計的要點是,單個Plasma鏈可執(zhí)行部署在以太坊父鏈上的合約狀態(tài)轉(zhuǎn)換。這意味著開發(fā)人員不再需要設(shè)置自己的Plasma網(wǎng)絡(luò)(包括編寫復(fù)雜的P2P客戶端等)來利用Plasma的擴展優(yōu)勢,而是可以簡單地將predicate合約部署到以太坊上。
Loom Network則運用了Plasma Cash技術(shù)和委托權(quán)益證明(DPoS )機制運行了一個PlasmaChain。這并沒有提供任何新的研究成果,但確實顯示了早期迭代Plasma是如何被用于小的實際應(yīng)用的。
Omisego在Rinkeby上發(fā)布了一個名為Ari的Plasma MoreVP實現(xiàn)的alpha版本。Hoard使用這個網(wǎng)絡(luò)在Hoard演示了一個名叫PlasmaDog的游戲。
未來的工作
MVP型Plasma子鏈的大規(guī)模退出問題,導(dǎo)致了該方向的研究陷入了困局。從高層次上講,MVP型Plasma鏈依賴于用戶完全驗證Plasma鏈,并在操作員生成無效區(qū)塊或操作員保扣留區(qū)塊時退出。退出在父鏈(以太坊)上執(zhí)行,當(dāng)前設(shè)計的最佳退出方案在退出數(shù)量上是線性的。在對抗性條件下,以太坊上運行的所有Plasma MVP鏈的安全累積吞吐量天花板,即為以太坊鏈本身的退出吞吐量。由于這個問題,大部分Plasma研究轉(zhuǎn)向了Plasma Cash及其衍生品。
而對于Plasma Cash變體而言,主要的減少漸進增長幣歷史的問題已經(jīng)被解決。當(dāng)然,使用RSA累加器(正如在Plasma Prime中一樣),并非是沒有缺點的:1)RSA累加器需要一個可信設(shè)置,可信設(shè)置的去中心化程度在加密貨幣領(lǐng)域中是一個爭議點,2)使用RSA累加器的緊湊和高效可驗證證明,仍然是當(dāng)前研究的主題。
問:“你們通過10行代碼實現(xiàn)了RSA累加器嗎?” 開發(fā)者答:“好吧,是的,但實際上又沒有”
另見(非詳盡)
· Plasma Group (Twitter)(非盈利Plasma研發(fā)、Plasma Cashflow)
· Plasma實施者調(diào)用
· Learn Plasma(了解Plasma設(shè)計的資源)
· OmiseGO [Twitter] (Plasma MVP變體)
· Loom Network [Twitter] (Plasma Cash 變體)
· Georgios Konstantopoulos [Twitter]
· LeapDAO [Twitter] (Plasma Leap)
狀態(tài)通道
所謂以太坊的“通道”,是指通道參與者一致同意進行的layer-2構(gòu)造。這要求所有網(wǎng)絡(luò)參與者對通道的任何更新進行數(shù)字簽名。這些通道更新可通過鏈上發(fā)送來解決爭議。考慮到各方可進行帶外通信以協(xié)調(diào)簽名,通道的延遲可能非常低,特別是與使用區(qū)塊鏈相比。
雖然支付通道的概念(兩個或多個締約方之間的通道促進它們之間的貨幣支付)已經(jīng)存在了一段時間,但狀態(tài)通道的概念,最近在以太坊上得到了更積極的探索。狀態(tài)通道允許潛在的任意狀態(tài)轉(zhuǎn)換在鏈外發(fā)生,而不僅僅是支付,這為在鏈外執(zhí)行可擴展的低延遲計算提供了可能性,并且具有與鏈上交易類似的安全性。
注意事項
與Plasma一樣,只有當(dāng)基礎(chǔ)鏈未被區(qū)塊生產(chǎn)者(即以太坊的礦工)審查時,通道才可安全使用。
通道面臨的唯一最大的未解決問題,就是其statefulness(有狀態(tài))的結(jié)果,只有最新的狀態(tài)是有效的(對抗條件下的要求)。這導(dǎo)致通道只支持副本,而不支持備份。為了說明這兩者之間的區(qū)別,請考慮以下幾點:私鑰和助記詞短語可以備份到紙錢包中。這些備份可以被復(fù)制、測試,并且在未來無限期地進行工作(理想情況下)。另一方面,安全管理通道狀態(tài)副本的要求,要更為復(fù)雜,并且在嘗試使用備份時會發(fā)生有趣的事情。
最后,通道不同于鏈,它們是基于一組固定的參與者而運行的。這在一定程度上被通道網(wǎng)絡(luò)所緩解,但路由和流動性問題使得它們目前無法作為解決方案(以及上述復(fù)制問題的復(fù)合)。始終在線的通道性質(zhì)也仍未得到解決。
以太坊狀態(tài)通道的研究咋樣了?
盡管上面列出了所有關(guān)于狀態(tài)通道的注意事項,但是通道相比鏈具有顯著的優(yōu)勢,包括接近即時的最終性和較低的通信開銷,這使得在很多情況下,使用通道進行通信會更便宜。
自狀態(tài)通道的論文在2018年6月份被發(fā)布以來,Counterfactual團隊(原名為L4)一直致力于圍繞其通用狀態(tài)通道架構(gòu)構(gòu)建開發(fā)者工具,該架構(gòu)以反事實合約實例化為中心,其中合約的地址根據(jù)其初始化方式進行唯一定義,允許合約在鏈外使用,且只在鏈上創(chuàng)建(在同一地址),以防發(fā)生爭議。
為了實現(xiàn)反事實的實例化,一個新的操作碼 CREATE2被開發(fā)了出來,最近其通過北京時間3月1日發(fā)生的君士坦丁堡硬分叉被部署到了以太坊主網(wǎng)。操作碼實現(xiàn)了描述的功能,而它的缺失是通用layer-2結(jié)構(gòu)部署中的一個關(guān)鍵障礙。
Patrick McCorry一直在努力開發(fā)Pisa,這是一個監(jiān)視塔框架,用于在用戶下線時確保通道資金的安全,并且無法監(jiān)視欺詐性通道關(guān)閉鏈。 Pisa監(jiān)視塔是獨一無二的,因為它們包含了一個證明,表示監(jiān)視塔被承包觀看一個通道,并允許它在發(fā)生不正當(dāng)行為的情況下受到懲罰。然而,實施這一框架所需的資本鎖定以及由此產(chǎn)生費用的經(jīng)濟學(xué),仍然是研究者需要去積極探索的主題。
在這些研究成果的基礎(chǔ)上,廣泛的項目使用了簡單的支付通道和特定于應(yīng)用的狀態(tài)通道(太多,無法全部列出!)
另見(非詳盡)
Counterfactual [Twitter] (廣義狀態(tài)通道),Jeff Coleman [Twitter], Liam Horne [Twitter] SpankChain [Twitter](支付通道流媒體服務(wù)) , Ameen Soleimani [Twitter] FunFair [Twitter](***支付通道) Patrick McCorry [Twitter] (Pisa, watchtowers) 雷電網(wǎng)絡(luò)(Raiden Network) [Twitter] (類似于閃電網(wǎng)絡(luò)的支付通道網(wǎng)絡(luò)) Connext [Twitter](支付通道網(wǎng)絡(luò))
結(jié)束語
僅在過去半年的時間,開發(fā)者們在以太坊上探索的layer-2擴展技術(shù)便取得了很多進展,我們可預(yù)計在隨后的幾個月和幾年中,相關(guān)技術(shù)的研發(fā)速度會增快。然而,在我們將這些技術(shù)應(yīng)用到實際的部署階段之前,仍然存在著很多挑戰(zhàn)。如果你有興趣解決這些問題,可以聯(lián)系上面列出的任何一個團隊。
關(guān)于layer-2技術(shù)的發(fā)展,以太坊的研究是值得我們跟進的,原文作者也會每兩個月進行更新,有興趣的讀者可關(guān)注一下原作者John Adler。
評論
查看更多