另类专区另类专区亚洲,日韩国产欧美精品综合二区,日本黄色免费在线视频,天天爽夜夜爽免费看

  • 售前

  • 售后

重新認(rèn)識Layer2,為什么Danksharding提出者認(rèn)為Validium不算以太坊二層? ...

政策 allinweb3
2023-8-20 20:06 945人瀏覽 0人回復(fù)
摘要

導(dǎo)語:近日,Danksharding 的提出者、以太坊基金會的研究員 Dankrad Feist 在推特上發(fā)表了一番頗具爭議的言論。他明確指出,不采用 ETH 作 DA 層(數(shù)據(jù)可用性層)的模塊化區(qū)塊鏈不是 Rollup,同時也不是以太坊 Layer ...


導(dǎo)語:近日,Danksharding 的提出者、以太坊基金會的研究員 Dankrad Feist 在推特上發(fā)表了一番頗具爭議的言論。他明確指出,不采用 ETH 作 DA 層(數(shù)據(jù)可用性層)的模塊化區(qū)塊鏈不是 Rollup,同時也不是以太坊 Layer2。如果按照 Dankrad 的說法,Arbitrum Nova 和 Immutable X、Mantle 都要從 Layer2 名單里「除名」,因?yàn)樗鼈冎辉?ETH 之外(自己構(gòu)建了名為 DAC 的鏈下 DA 網(wǎng)絡(luò))披露交易數(shù)據(jù)。



同時,Dankrad 還表示,像 Plasmas 和狀態(tài)通道這種不需要鏈上數(shù)據(jù)可用性(Data Availability)來確保安全的方案仍算是 Layer2,但 Validium(不用 ETH 作 DA 層的 ZKRollup)不算 Layer2。



Dankrad 此言一出,便引來了諸多 Rollup 領(lǐng)域的 Founder 或 Researcher 質(zhì)疑。畢竟有許多「Layer2」項(xiàng)目為了節(jié)約成本,并沒有采用 ETH 作為 DA( 數(shù)據(jù)可用性 ) 層,如果把這些項(xiàng)目踢出 L2 名單,必然波及到相當(dāng)多的擴(kuò)容網(wǎng)絡(luò);同時,如果 validium 不算 L2,Plasma 應(yīng)該也沒資格算作 L2。


對此,Dankrad 表示,Plasma 用戶在 DA 不可用時(就是指鏈下的 DA 層網(wǎng)絡(luò)搞數(shù)據(jù)扣留,不公開交易數(shù)據(jù)),仍然可以把自己的資產(chǎn)安全撤出至 L1;但相同的情況下,Validium(大多數(shù)采用 StarkEx 方案的項(xiàng)目都是 validium)卻可以讓用戶無法撤資至 L1,把錢凍住。



顯然,Dankrad 打算從「是否安全」來界定一個擴(kuò)容項(xiàng)目是否為以太坊 Layer2。如果從「安全性」的角度來考量,Validium 在定序器故障 + DA 層發(fā)動數(shù)據(jù)扣留攻擊 ( 隱瞞新數(shù)據(jù) ) 的極端情況下,的確可以把用戶資產(chǎn)凍結(jié)在 L2 無法提到 L1;Plasma 因在設(shè)計上與 Validium 不同,雖然多數(shù)時候安全保障不及 Validium,但在定序器故障 + DA 層發(fā)動數(shù)據(jù)扣留攻擊 ( 隱瞞新數(shù)據(jù) ) 時,卻允許用戶把資產(chǎn)安全撤離至 L1。所以 Dankrad 的說辭不無道理。


本文打算從 Dankrad 的視角出發(fā),通過對 Layer2 的細(xì)節(jié)作進(jìn)一步分析,來深入理解為何 Validium 不是嚴(yán)格意義上的「Layer2」。


到底怎么定義 Layer2?



按照 ethereum.org 網(wǎng)站和多數(shù)以太坊社區(qū)成員的定義,Layer2 是「給以太坊擴(kuò)容 + 繼承以太坊安全性 的獨(dú)立區(qū)塊鏈」。首先,「給以太坊擴(kuò)容」就是指分流以太坊無法承載的流量,分擔(dān) TPS 方面的壓力。而「繼承以太坊安全性」,其實(shí)可以轉(zhuǎn)譯為「借助以太坊保障自身安全性」。


比如,Layer2 上所有的交易 Tx 都要在 ETH 上完成最終結(jié)算 Finalize,數(shù)據(jù)有錯誤的 Tx 不會被放行;如果要回滾 Layer2 的區(qū)塊,要先回滾以太坊區(qū)塊,只要以太坊主網(wǎng)不發(fā)生類似 51% 攻擊的區(qū)塊回滾,L2 區(qū)塊就不會回滾。


如果我們更進(jìn)一步探討 Layer2 的安全性,其實(shí)還要考慮許多極端情況。比如,如果 L2 項(xiàng)目方跑路、定序器 Sequencer 故障、鏈下 DA 層掛掉,在這些極端事件發(fā)生時,用戶能否把自己在 L2 上的資金安全撤出到 L1 上?


Layer2 的「強(qiáng)制提款」機(jī)制


不考慮 L2 合約升級 / 多簽隱患等因素,其實(shí)如 Arbitrum 或 StarkEx 都有為用戶設(shè)置強(qiáng)制提款的出口。假設(shè) L2 的定序器發(fā)動審查攻擊,故意拒絕用戶的交易 / 提款請求,或干脆永久宕機(jī),Arbitrum 用戶可以調(diào)用 L1 上 Sequencer Inbox 合約的 force Inclusion 函數(shù),將交易數(shù)據(jù)直接提交至 L1;如果在 24 小時內(nèi),定序器沒有處理這筆需要「強(qiáng)制包含」的交易 / 提款,該交易會被直接包含進(jìn) Rollup 賬本的交易序列中,這就為 L2 用戶創(chuàng)造了一個可強(qiáng)制提款的「安全出口」。



相比之下,有逃生艙 Escape Hetch 機(jī)制的 StarkEx 方案要有過之無不及。如果 L2 用戶在 L1 提交的 Forced Withdrawal 請求在 7 天窗口期結(jié)束時,未得到定序器響應(yīng),則該用戶可以調(diào)用 freeze Request 功能讓 L2 進(jìn)入凍結(jié)期。此時,L2 定序器將無法在 L1 上更新 L2 的狀態(tài),L2 狀態(tài)凍結(jié)后要過 1 年才能解凍。



L2 狀態(tài)凍結(jié)后,用戶可以構(gòu)造與當(dāng)前狀態(tài)相關(guān)的 Merkle Proof,證明自己在 L2 上有 XX 數(shù)額的資金,通過 L1 上的逃生艙 Escape Hetch 相關(guān)合約來提款。這便是 StarkEx 方案所提供的「全額提款」服務(wù)。即便 L2 項(xiàng)目方?jīng)]了,定序器永久故障了,用戶還是有辦法把資金撤出 L2。


但這里存在一個問題:用 StarkEx 方案的 L2 大多是 Validium(比如 Immutable X 和 ApeX),并不會把 DA 所需的數(shù)據(jù)發(fā)布到 ETH,構(gòu)造當(dāng)前 L2 狀態(tài)樹的信息都存在鏈下。如果用戶無法在鏈下獲取構(gòu)造 Merkle Proof 的數(shù)據(jù)(比如鏈下 DA 層發(fā)動數(shù)據(jù)扣留攻擊),是無法通過逃生艙來提款的。



至此,文章開頭提到的 Dankrad 認(rèn)為 Validium 不安全的原因,其實(shí)很明確了:因?yàn)?Validium 不像 Rollup 一樣把 DA 的數(shù)據(jù)發(fā)到鏈上,所以用戶可能無法構(gòu)造出「強(qiáng)制提款」所需的 Merkle Proof。



Validium 和 Plasma 在發(fā)生數(shù)據(jù)扣留攻擊時的區(qū)別


事實(shí)上,Validium 的定序器只在 L1 鏈上發(fā)布 L2 最新的 Stateroot(狀態(tài)樹的根),再提交一個 Validity Proof(ZK Proof),證明新的 Stateroot 生成過程涉及的狀態(tài)轉(zhuǎn)換(用戶資金變化),都是正確的。


(圖源:eckoDAO)


但單憑 stateroot 無法還原出此刻的狀態(tài)樹 world state trie,也就無法知曉每個 L2 賬戶的具體狀態(tài)(包含資金余額),L2 用戶就無法構(gòu)造對應(yīng)當(dāng)前合法 Stateroot 的 Merkle Proof。這便是 Validium 不利的地方。



(Merkle Proof 其實(shí)就是 root 生成過程中所需的數(shù)據(jù),也就是圖中暗色的部分。要構(gòu)造對應(yīng) Stateroot 的 Merkle Proof,必須要知道狀態(tài)樹的構(gòu)造,需要有 DA 數(shù)據(jù))


這里必須要強(qiáng)調(diào)下 DAC 這個東西。Validium 的 DA 所涉數(shù)據(jù),比如定序器最新處理的一批交易,會同步給名為數(shù)據(jù)可用性委員會 DAC(Data Availability Committee)的 L2 專屬 DA 網(wǎng)絡(luò),DAC 由多臺節(jié)點(diǎn)服務(wù)器構(gòu)成,一般由 L2 官方和社區(qū)成員或其他單位負(fù)責(zé)運(yùn)行和監(jiān)督(但這只是表面上的,實(shí)際上 DAC 成員都有誰,外界很難查證)。



有意思的地方在于,Validium 的 DAC 成員需要頻繁在 L1 提交多簽,證明 L2 定序器在 L1 提交的新 Stateroot 和 Validity Proof,與 DAC 同步到的 DA 數(shù)據(jù)能對上號。DAC 的多簽提交后,新的 Stateroot 和 Validity Proof 才會被認(rèn)為是合法的。



目前 Immutable X 的 DAC 采用 5/7 多簽,dYdX 雖然是 ZKRollup,但也有 DAC,用的是 1/2 多簽。(dYdX 只在 L1 發(fā)布 State diff 即狀態(tài)變化,而非完整交易數(shù)據(jù)。但獲取了歷史記錄里的 State diff,就可以還原全部 L2 地址的資產(chǎn)余額,此時就可以構(gòu)造 Merkle Proof 來全額提款)。



Dankrad 的觀點(diǎn)不無道理。Validium 的 DAC 成員如果合謀,發(fā)起數(shù)據(jù)扣留攻擊,不讓其他 L2 節(jié)點(diǎn)同步此刻的最新數(shù)據(jù),并且更新此刻 L2 的合法 Stateroot,用戶無法構(gòu)造此刻合法 root 對應(yīng)的 Merkle Proof 來提款(因?yàn)榇丝掏蟮?DA 數(shù)據(jù)不可用了,可用的是以前的 DA 數(shù)據(jù))。



但 Dankrad 考慮的只是理論上的極端情況,現(xiàn)實(shí)中大多數(shù) Validium 定序器都會實(shí)時的把新處理的交易數(shù)據(jù)廣播給其他 L2 節(jié)點(diǎn),其中不乏誠實(shí)節(jié)點(diǎn)。只要有 1 個誠實(shí)節(jié)點(diǎn)能夠及時獲取 DA 數(shù)據(jù),用戶就可以從 L2 全身而退。


可理論上存在于 Validium 身上的問題,為何不存在于 Plasma 身上?這是因?yàn)?Plasma 判定合法 Stateroot 的方式,和 Validium 不同,有欺詐證明窗口期的緣故。Plasma 是 OPRollup 之前的 L2 擴(kuò)容方案,與 OPR 一樣靠欺詐證明保證 L2 的安全。


Plasma 與 OPR 一樣有窗口期的設(shè)定,定序器發(fā)布的新 stateroot 不會立刻判定為合法,要等窗口期 close 且沒有 L2 節(jié)點(diǎn)發(fā)布欺詐證明。所以 Plasma 和 OPR 的當(dāng)前合法 Stateroot,都是幾天以前提交的(這就好比我們看到的星光,其實(shí)都是很久以前發(fā)出的),而用戶往往可以獲取過去時刻的 DA 數(shù)據(jù)。



同時,欺詐證明機(jī)制能在此刻生效的前提,是此刻 L2 的 DA 可用,也即 Plasma 的 Verifier 節(jié)點(diǎn)可以獲取此刻的 DA 所涉數(shù)據(jù),這樣才能生成此刻的欺詐證明 ( 如果有必要的話)。


那么一切都很簡單了:Plasma 正常工作的前提是此刻 L2 的 DA 數(shù)據(jù)可用。如果從此刻開始,L2 的 DA 不可用了,用戶能安全撤資嗎?


這個問題不難分析,假設(shè) Plasma 的窗口期是 7 天,如果從某個時間點(diǎn) T0 開始,新的 DA 數(shù)據(jù)就不可用(DAC 發(fā)動數(shù)據(jù)扣留攻擊,不讓誠實(shí)的 L2 節(jié)點(diǎn)獲取 T0 往后的數(shù)據(jù))。因?yàn)?T0 及此后一段時間內(nèi)的合法 Stateroot,是 T0 時刻前提交的,而 T0 時刻前的歷史數(shù)據(jù)可追溯,所以用戶可以構(gòu)造 Merkle Proof 來強(qiáng)制提款。



即便很多人無法立刻察覺異常,但因?yàn)橛写翱谄诖嬖冢∣P 是 7 天),只要 T0 時刻提交的 Stateroot 還未合法化,且 T0 之前的 DA 數(shù)據(jù)可追溯,用戶就可以把錢安全撤出 L2。


總結(jié)


至此我們大致可以理清楚 Validium 和 Plasma 在安全性上的區(qū)別:


Validium 的定序器發(fā)布 Stateroot 后,只要立刻發(fā)布 Validity Proof 和 DAC 多簽,就可以使其合法,成為最新的合法 Stateroot;如果用戶和誠實(shí) L2 節(jié)點(diǎn)遭遇數(shù)據(jù)扣留攻擊,無法構(gòu)造當(dāng)前合法 Stateroot 對應(yīng)的 Merkle Proof,就無法提款到 L1。


而 Plasma 提交新的 Stateroot 后,要等窗口期結(jié)束才能合法,此時的合法 Stateroot 是過去提交的。因?yàn)橛写翱谄冢ˋRB 是 3 天,OP 是 7 天)存在,即便新提交的 Stateroot 的 DA 數(shù)據(jù)不可用,用戶也有當(dāng)前合法 Stateroot 的 DA 數(shù)據(jù)(合法 root 是過去提交的),有足夠的時間強(qiáng)制提款到 L1。


所以,Dankrad 說的話有道理。當(dāng)發(fā)生數(shù)據(jù)扣留攻擊時,Validium 存在把用戶資產(chǎn)困在 L2 的可能,但 Plasma 并不存在這個問題。


(下圖中 Dankrad 說的有一點(diǎn)不對,Plasma 應(yīng)該不允許構(gòu)造過時的合法 Stateroot 對應(yīng)的默克爾證明來提款,因?yàn)檫@會導(dǎo)致雙重支付)



所以,鏈下 DA 層的數(shù)據(jù)扣留攻擊會造成許多安全隱患,但 Celestia 嘗試解決的正是這個問題。此外,因?yàn)榇蠖鄶?shù) Layer2 項(xiàng)目都會提供讓 L2 節(jié)點(diǎn)與定序器保持鏈下同步的服務(wù)端口,所以 Dankrad 的憂慮其實(shí)往往只是理論上的,而不是現(xiàn)實(shí)中的。


如果我們用雞蛋里挑骨頭的態(tài)度,再提出更極端的假設(shè):所有的 Plasma 鏈下節(jié)點(diǎn)都不可用了,那么那些沒跑過 L2 節(jié)點(diǎn)的普通用戶都無法強(qiáng)制提款到 L1。但這種事情發(fā)生的概率,等價于一條公鏈的所有節(jié)點(diǎn)集體永久性宕機(jī)的概率,可能永遠(yuǎn)不會發(fā)生。


所以,很多時候,大家只是在談?wù)撘恍└揪筒粫l(fā)生的事情。正如美劇《切爾諾貝利》里克格勃副主席對主角說的那段金句:「為何要擔(dān)心根本就不會發(fā)生的事情呢?」

免責(zé)聲明:本文不構(gòu)成投資建議,用戶應(yīng)考慮本文中的任何意見、觀點(diǎn)或結(jié)論是否符合其特定狀況,及遵守所在國家和地區(qū)的相關(guān)法律法規(guī)。 歡迎轉(zhuǎn)載分享!
轉(zhuǎn)載請注明本文地址:
如有文章侵犯了您的權(quán)利,請聯(lián)系本站站長,我們將在第一時間刪除相關(guān)內(nèi)容,謝謝!
分享
推薦閱讀
立足于香港,定位于傳播、交流全球Web3區(qū)塊鏈資訊情報社區(qū),集區(qū)塊鏈行業(yè)新聞、Web、資訊、行情、策略、百科、社區(qū)等一站式區(qū)塊鏈產(chǎn)業(yè)信息服務(wù)平臺,我們追求及時、全面、專業(yè)、準(zhǔn)確的資訊與數(shù)據(jù),致力于為區(qū)塊鏈創(chuàng)業(yè)者以及數(shù)字貨幣投資者提供最好的產(chǎn)品和服務(wù)。
  • 商務(wù)合作

  • 微信公眾號

  • 二維碼

网站地图闽icp备44218674号