以太坊layer2項目(鏈喬教育在線 以太坊layer2擴容)
以太坊layer2是什么?
layer2是一個提升ETH網絡layer1性能的擴容方案,由于ETH主網layer1上交易嚴重擁堵,交易費用居高不下,開發者提出了layer2以提升ETH的交易處理速度。
回想當初,2018年是以太坊專注底層架構之年。之后很多早期參與者會測試網絡極限,并且重新關注以太坊的擴容技術。對于任何密切關注以太坊技術的人來說,這都是很好理解的。
在過去2017年,ICO推動的炒作已經過分夸大了目前的網絡能力。以太坊和web3的美好愿景—— 一個安全,易于使用的去中心化網絡,由一系列通用的經濟協議來約束,并且被數十億人來使用——這個承諾希望在即,但是只有在關鍵的底層架構完成的前提下才能實現。
一、區塊鏈 layer解析
1、區塊鏈 layer0、layer1和layer2是什么
通過借鑒計算機網絡通信體系架構的OSI模型,可將區塊鏈邏輯架構劃分為三層。
1. layer0——其中第0層(Layer 0)對應OSI模型的1-4層(底層協議),包括傳輸層。
2. layer1——第1層和第2層對應OSI模型的5-7層(上層協議),第1層(Layer 1)包括數據層、網絡層、共識層和激勵層.
3. layer2——第2層(Layer 2)包括合約層和應用層。
2、作用
Layer 1 解決信任,Layer 1 的代幣的存在是為了讓這條底層公鏈能夠抵抗 51% 攻擊。
Layer 2 搞定性能,對于 Layer 2 協議來說,唯一能夠捕獲價值的方式是存儲某種外部的、有價值的狀態。
3、應用
現有的擴容方案分別針對不同層級進行改進,分為第0層擴容、鏈上擴容和鏈下擴容。
第1層擴容,即鏈上(On-Chain)擴容,通過優化、改進公鏈基本協議提升區塊鏈性能。
第2層擴容,即鏈下(Off-Chain)擴容,不改變公鏈基本協議,通過鏈下在應用層進行改進提升性能。
第0層擴容通過優化區塊鏈底層數據傳輸協議提升區塊鏈性能,不改變區塊鏈的上層架構,是一種保留原有鏈生態規則的性能提升方案。
二、擴容的必要性
自以太坊網絡推出以來,以太坊的擴容是討論最多的話題之一。關于擴容的爭論總是在以太坊網絡出現重大擁堵后上演。最早出現這樣的爭論是在2017年的加密牛市,名聲不那么好的CryptoKitties(加密密碼)與ICO,堵塞了整個以太坊網絡,造成gas費的大幅飆升。
有一段時間,即使支付高達500多gwei的gas費,也會出現一時無法驗證交易的情況。
說到以太坊或其他區塊鏈的擴展,主要有2種方式:擴展基礎層本身(layer 1),或將部分工作放到layer2上,以實現網絡的擴容。
以太坊需要Layer2
在沒有分片以及以太坊2.0的情況下,如今以太坊性能已經瀕臨極限。
隨著各種DeFi流動性挖礦、DEX、游戲、資金盤等應用不斷推出,甚至穩定幣的蓬勃發展都足以讓以太坊不堪負重,如今低效的以太坊無法支撐其生態應用的流暢度和低費用。
"安全、可擴展性、去中心化",不可兼得,為了解決區塊鏈“不可能三角問題”,涌現出眾多解決方案,其中之一便是 Layer 2(二層網絡)。
Layer 2 通常被稱為“鏈下”解決方案,其主要目的是擴展區塊鏈的性能,同時保留分布式協議的去中心化優勢。
在以太坊中,Layer 2 技術系統是連接到以太坊的系統,將以太坊作為安全和最終確定性的基礎層,通過在鏈外運行計算來大規模地減少區塊鏈上的數據處理,也就是說并非所有的交易都需要到以太坊主網上完成。
Layer2一旦成功,則意味著以太坊可以突破現有的性能限制,承載更大的生態。以太坊底層會更專注于安全和高價值的交易,而基于以太坊的項目,不用再擔心過高的費用和自行車般的速度,DeFi也將迎來新的春天。
如果把目光放得更長遠一點,未來PoS 和分片技術、Layer1 和Layer2 相結合,可以讓以太坊真正實現指數級騰飛,滿足大多數開放金融和DAPP的需求,從“簡單計算器”邁向成為世界計算機。
三、Layer1擴展 VS Layer2擴展
Layer1是標準的基礎共識層,目前幾乎所有的交易都在這一層結算。“層”的概念不是以太坊特有的,其他區塊鏈也有這樣的概念,如Bitcoin(比特幣)或Zcash(零現金)。
Layer2是建立在Layer1之上的另一層。這里有幾個重要的點。
Layer2不需要對Layer1進行任何改變,只需利用Layer1現有的組成部分(如智能合約)建立在它之上即可。Layer2還可通過將其狀態錨定到Layer1來享用Layer1的安全性。
以太坊目前在其基礎層(Layer1)上每秒可以處理約15筆交易。
Layer2的擴展可以大幅增加交易數量。根據解決方案,能達到2000-4000 筆交易/秒。
那Ethereum 2.0呢?那也是對以太坊進行擴容的嗎?
是的,Ethereum 2.0引入了POS和分片,這將大幅提高基礎層的交易吞吐量。
這是否意味著Ethereum 2.0發布后,我們就不需要Layer2的擴展了?
然而并非如此,即使有了分片,Ethereum仍然需要Layer2的擴展,以便在未來能夠處理每秒數十萬甚至數百萬量級的交易。
這也是著名的“可擴展性三難”問題。理論上,我們可以跳過layer2,專注于擴展基礎層,但需要高度專業化的節點來處理增加的工作量,這樣會造成更高程度的中心化,從而降低網絡的安全性和抗審查性能。
保證可擴展性決不能以犧牲安全性和去中心化為代價,在未來的發展中我們只能采用Layer1和Layer2擴展相結合的方式。
四、Layer2擴展解決方案
每種擴展解決方案本身并不會為用戶提供這種可選項。而是提供速度,成本和安全性的各種組合(類似于提供經濟艙,商務艙和頭等艙的航班)。然后,開發人員可以根據他們的應用目的選擇他們首選的解決方案。
當前有五種最廣泛使用的解決方案:1)State channels(狀態通道);2)側鏈;3)Plasma(等離子);4)Optimistic Rollup(樂觀匯總);5) ZK-Rollup (zk 匯總)。
1、State channels(狀態通道)
狀態通道是入門級的 Layer 2 方案,也是如今采用最廣泛的 Layer 2 方案,比如比特幣上的閃電網絡就是一種狀態通道。狀態通道的設計思路是把一部分的交易放在區塊鏈之外,把區塊鏈的共識由確認每一步變成只確認結果。
State Channels(狀態通道)是一種用于執行交易和其他狀態更新的“鏈下(off-chain)”技術。但是,一個狀態通道“內”發生的事務仍保持了很高的安全性和不可更改性。如果出現任何問題,仍然可以選擇回溯到鏈上交易中確定的“穩定內核”。
最受歡迎的通道類型是狀態通道及其子分類——payment channel(支付通道)。
以太坊是一個全球化的基于交易的狀態機,在鏈上的每一步操作都會產生最新的狀態。不同的是,狀態通道是在鏈外進行狀態維護。狀態通道聽起來就像是“支付通道”的延伸,這也是這項技術一直被低估和忽視的原因,一個隱私、效率、信任最小化、安全性和模塊化的廣義通道是我們要建設的重要基礎設施之一。
狀態通道本質上是通過在不同用戶之間或用戶和服務之間建立一個雙向通道,為不同實體之間提供狀態維護服務。它允許把區塊鏈上的許多操作在鏈外進行管理,等完成鏈外操作后多方簽名確認后,才將最終結果上鏈。其實可以把狀態通道理解成一個執行特殊操作的智能合約,一個專門建立雙向通道,在一定條件下進行狀態保持的智能合約。可以將狀態通道中的執行過程作為原子操作,在執行完成這個原子操作后,將最終結果上鏈。
狀態通道通常包含三個步驟:
1.交易雙方將初始的區塊鏈狀態 (比如雙方的余額) 鎖定在一個智能合約中,該智能合約非常類似于一個多重簽名的錢包。這確保了只有當雙方都已經對更新進行簽名之后,錢包中的資金才能被解鎖并進行轉移;
2.雙方通過在批次之間傳遞狀態更新 (比如余額的更新) 來實現交易。如果雙方同意,則對某個狀態更新進行「簽名」,該狀態更新會被提交給智能合約中以便解鎖資金;
3.當雙方完成交易時,他們各自都會將狀態更新提交給智能合約。如果雙方提交的狀態更新相匹配,那雙方的區塊鏈的狀態 (比如雙方的余額) 將會被解鎖,該狀態通常會與雙方的初始狀態不一樣。
Celer Network(塞爾網絡)、Raiden Network(雷電網絡) 、Connext/SpankChain (鏈下網絡)和 Liquidity Network(流動性網絡) 都有使用相關的技術。
但由于整個以太坊生態的注意力已經在很大程度上被更靈活的擴展方案,比如Rollup(匯總)引過去了,所以,目前狀態通道基本被打入冷宮。
2、側鏈
是平行于主鏈的一個獨立網絡,與主鏈兼容,并通過跨鏈機制實現主鏈與側鏈的資產交互,并在側鏈運用,以分擔主鏈的流量壓力。其思路是:在主鏈鎖定資產,在側鏈派生相應資產;當資產在側鏈完成應用后要轉回主鏈時,從側鏈銷毀資產,并在主鏈解鎖。
SPV 證明在比特幣系統中驗證交易時,涉及到交易合法性檢查、雙重花費檢查、腳本檢查等。用戶只關心與自己相關的那些交易,比如當用戶收到其他人號稱發來的比特幣時,只希望能夠知道交易是否合法、是否已在區塊鏈中存在了足夠的時間(即獲得足夠的確認),而不需要自己成為完整節點做出完整驗證。
中本聰設計的Simplified Payment Verification(簡單支付驗證SPV)可以實現這一點。SPV 能夠以較小的代價判斷某個支付交易是否已經被驗證過(存在于區塊鏈中),以及得到了多少算力保護(定位包含該交易的區塊在區塊鏈中的位置)。SPV 客戶端只需要下載所有區塊的區塊頭(Block Header),并進行簡單的定位和計算工作就可以給出驗證結論。
側鏈協議中,用 SPV 來證明一個交易確實已經在區塊鏈中發生過,稱為 SPV 證明(SPV Proof)。一個 SPV 證明包括兩部分內容:一組區塊頭的列表,表示工作量證明;一個特定輸出(output)確實存在于某個區塊中的密碼學證明。
優點:
l 方便,實現難度低
l 不受主鏈TPS限制
l 側鏈合約運行的手續費大大降低,對小金額玩家以及新玩家較友好
缺點:
l 安全性(包括側鏈自身的安全性,以及跨鏈過程中出現的風險)。由于側鏈是獨立于主鏈運行的,且鏈下狀態無需上傳主鏈。如果遭受攻擊或惡意操作,那返回給主鏈的結果也是不正確的,且主鏈將不會驗證這些結果。
l 中心化威脅:通過第三方公證人或中繼者進行驗證,犧牲了部分去中心化特性
代表項目:
l Injective Protocol(注射協議):首個Layer 2的衍生品dex
l Rootstock(RSK)(砧木):第一條比特幣側鏈
3、Plasma(等離子體)
側鏈的進階版,與側鏈不同,它基于Fraud Proof(欺詐性證明)的退出機制,它將鏈下的交易結果證明返回到主鏈,利用主鏈的安全性保護了用戶資產和權益。
Plasma(等離子體)是最初由Joseph Poon(約瑟夫·潘)和Vitalik Buterin(V神)提出的一個layer2擴展解決方案。它是一個在以太坊上構建可擴展應用的框架。
優點:
l 相對安全:即使鏈下環境崩塌,也能從主鏈上提取交易結果
l 操作快、交易費用低:因為與主鏈的交互較少
缺點:
l 不具備主鏈的數據可用性:給Layer 1返回的僅有交易結果的證明、沒有詳細的交易信息,主鏈無法還原交易
l 退出期長:用戶需要從主鏈上提取資金,需要等待挑戰期過去。
l 拓展困難:技術框架限定了子鏈的數據結構
代表項目:
l Loom Network:第一個Plasma產品實現
l OMG:金融支付企業 SYNQA 旗下子公司
l Matic:獲得Coinbase Ventures投資
4、Optimistic Rollup(樂觀匯總)
Rollups(匯總)是指將發生在Layer 2的大批交易壓縮,并將快照打包返回主鏈進行記錄和更新的技術路徑;數據在主鏈上儲存,將賬戶間的交互過程轉移到鏈下,避開擁堵的同時具備主鏈的安全性。Rollups(匯總)方案的關鍵在于,如何確保提交給主鏈的是正確的結果,這也是Optimistic Rollup(樂觀匯總)和下述ZK-Rollup(零知識匯總)最大的區別。
Optimistic Rollup(樂觀匯總)采用的是欺詐性證明(Fraud Proof),它趨于相信操作者提交的數據都是真實的(樂觀假設,大家都是好人)。但保險起見,需要操作者質押一定資產作為保證金,且在上鏈前留出兩周的挑戰期,任何人都可以在此期間挑戰其真實性并發布欺詐證明,一旦挑戰成功,質押金將會被沒收,挑戰者會獲得獎勵,且回滾交易細節。因此,從概率角度防止作惡行為。
一些擴展解決方案是針對特定應用的,例如,支付通道。其他的方案比如Optimistic Rollup(樂觀匯總),可以用于任何任意合約的執行。
優點:
l 兼容性強,開發遷移難度小,更容易落地
l 安全性:犧牲了等待時間來換取較好的安全性
l 上鏈效率高:將多筆交易打包操作,節約時間和gas fee
缺點:
l 驗證效率低:較長的等待期,任何交易在等待期不會被確認,也無法從主鏈提取資金
l 擴容程度不及ZK-Rollup(零知識匯總):交易壓縮率相對較低
代表項目:
l Fuel:Optimistic Rollup(樂觀匯總)概念提出者所在團隊研發
l Synthetix:DeFi巨頭的Layer2擴容選擇
5、ZK-Rollup(零知識匯總)
同樣采用rollup(匯總)壓縮技術,ZK-Rollup(零知識匯總)基于zero-knowledge proof(零知識證明),在發往主鏈的交易包里包含了一個對應的零知識證明,主鏈上的rollup(匯總)智能合約只需驗證這個零知識證明。這個零知識證明不會透露任何交易細節,但能通過與智能合約不斷交互,證明上鏈的所有數據的有效性和真實性。
優點:
l 高度的去中心化
l 隱私性好:零知識證明不會透露任何交易細節
l 上鏈效率高:一次性提交多筆操作的結果,節約時間和gas fee
l 驗證效率高:無需等待期,快速完成資產取出動作
l 安全性極高:zk技術保證了提交給主鏈的數據真實有效,同時主鏈可隨時還原側鏈發生的交易細節(即擁有主鏈的數據可用性),因此擁有以太坊級別的安全性
缺點:
l 技術開發難度大
l 難兼容不同智能合約
l 需要大量運算
代表項目:
l 路印:成熟的zk技術運用,獲得4500萬美元私募,當前市值超8億美元
l ZKSync:旨在為以太坊帶來 Visa 級別、每秒數千筆交易的吞吐量
五、Layer2未來闡述
對于像以太坊這樣的可編程區塊鏈的長期價值而言,這些Layer 2 擴展方案是一個有力的論據。只有在區塊鏈可編程時,構建第2層解決方案的經濟機制才是可能的:需要使用腳本語言來編寫執行交互式游戲的程序。這對比特幣等區塊鏈來說要困難得多,因為它只提供有限的腳本功能。
各種各樣的Layer 2 解決方案正在涌現,這些項目可以幫助以太坊可以處理數百萬筆交易,而不僅僅是數十筆交易。因此,Layer 2 解決方案將成為以太坊贏得主流用戶并成為流行的國際結算系統的重要一環。
以太坊允許我們構建Layer 2 解決方案,以便在速度、不可更改性和開銷之間找到新的權衡點。這使得底層區塊鏈更適用于多種類的應用程序,因為具有不同威脅模型的不同類型的應用程序,對于不同的權衡有自然的偏好。Layer 2 可以讓我們在保持去中心化的特性、不可更改的特性和不影響底層區塊鏈的情況下做出這些權衡。