作者:Haotian,加密研究員來源:X(推特)@tmel0211
大家或許注意到,OP-Rollup有7天的挑戰期,問題是至今都沒有有效的Battle-tested發生,原先只是假定樂觀,沒想到它卻真「樂觀」了?為啥OP-Rollup很少有挑戰案例發生?若不挑戰任由Sequencer作惡會發生啥? OP Stack是另一個彌補舉措嗎? Arbitrum的BOLD能發揮多大作用?讀完這篇,你或許會對OP-Rollup有更深刻的體會。
簡單來說,layer2鏈會把大量交易Batch給主網,主網確定L2的交易經過Validation驗證階段後才會變更狀態,目前OP-Rollup的驗證方式fraud-proof欺詐證明,即L2鏈的任何validators可以發起挑戰提出質疑,7天時間內,若挑戰者成功,主網會拒絕上一次狀態變更,L2需重新打包提交新state聲明,若挑戰者失敗,則其質押的資產會被罰沒。
這種先提交後挑戰的模式很Make Sense,畢竟layer2做擴充層的意義就是效率先行。然而,你總得真有「挑戰」發生吧?即使挑戰很少也說得過去,沒有挑戰,卻讓大家相信L2鏈百分百不會作惡著實有點不合常理。
現階段,Optimism並沒有挑戰機制,你去問的話,會告訴你In Development,有沒有真開發未可知,但若其Sequencer是中心化的,現階段挑戰確實沒多大必要,難道要自扇耳光向主網表忠誠嗎。 Arbitrum有自己的內測挑戰機制BOLD,在嘗試將挑戰對象從受許可變成Permissionless無許可,進而為Sequencer的去中心化鋪路。
因為挑戰機制其實是自我糾錯機制,一次挑戰發生輕則delay網路運轉,重則誘發宕機,非萬不得已是不會主動鼓勵有挑戰發生的。假使挑戰激勵機制設計的不合理,遇到一些惡意的節點不惜重金去挑戰,目標就是讓作惡讓網路宕機,也完全有可能。所以,在挑戰機制的設計問題上,OP-Rollup賽道的layer2選手都會非常謹慎。
那麼,若不挑戰會發生啥?一個簡單的例子:layer2可以在Sequencer構造一筆虛假轉賬交易,然後Validator驗證通過,主網確認後,這筆憑空產生的轉賬會在主網被合法提取,這對layer2網絡的打擊可想而知。
現在中心化Sequencer倒不用擔心這個問題,很簡單,左手倒右手倒騰自己的資產沒意義,但萬一Sequencer去中心化後呢?其中任何一個節點竊賊出現,這個問題就再所難免。
某種程度上Optimism的劇本是,因為怕被惡意挑戰所以Sequencer要中心化,因為Sequencer中心化所以不需要挑戰,嗯,很有道理。
但這個故事顯然不夠Pitching吸引人。所以Optimism選擇了OP Stack的軟分散式方式來為其Sequencer中心化的問題圓場。因為若有一天,SuperChain大家庭組成了,OP Stack的大家庭在Sequencer治理決策席位各佔一席,共同治理和決策,這不也是一種對單點中心化風險的限制嗎?目前來看,Optimism在推進OP Stack的速度蠻快的,至少比in development中的挑戰者機制落地快…
而Arbitrum的劇本就相對實誠一點了,既然大家都希望看到挑戰模式發生,那Arbitrum就構造一套模式來,內測中的Bold就在做這個事情,我研究清楚了Bold的複雜運作機制,取其精髓簡化分享下:
1)Layer2向主網Rollup合約發布狀態Assertion聲明;2)Challenge Manage質疑這個Assertion然後發起挑戰;3)每發起一次挑戰需要質押一筆資產,然後被挑戰者可以向Edge Tracker提交證據,包括過去每一步的狀態變更,函數調用,參數等執行細節;3)若挑戰者不認同這次的證據,需要繼續質押資產,繼續挑戰,但每次都要消耗成本;4)第三方Chain watcher全程監控挑戰過程中提交的證據,給予一定的參考,判斷哪個是誠實的一方,最終由edgeChallengeManage合約決斷誰輸誰贏。
這個Bold挑戰模式若真實應用的話,會是個不錯的方案,但大家側面思考一下,挑戰者為啥要燒錢挑戰,官方有說挑戰成功的激勵回報了嗎?激勵定的很大,定會有人不惜一切代價挑戰,激勵定的太小,賺得還不如罰款代價高,挑戰有啥意義。所以在我看來,即使將來BOLD挑戰機制上線也如同一次次的軍事演練,實際影響也有限,大家看看就好。
試想,即使挑戰成功了又怎樣? 7天挑戰期內,若挑戰者成功,L2悄悄執行一次硬分叉,誰能感知?又甚至,透過升級主網Rollup合約來調整下網路狀態又何妨?
所以,OP-Rollup的挑戰與否對layer2選手們的影響並沒有那麼大,大的只是OP-Rollup在大家心目中的信任度和共識。