作者: Opside 聯創& CEO – nanfengpo
關於PoS & PoW 的混合共識
native rollup是一個基於zk 的三層架構擴容解決方案,其中layer 2是一個EVM兼容的且對於Rollup十分友好的鏈,layer 3則由系統原生支持的多個zkRollup(稱為native rollup)組成。 Layer 2為zkRollup做了很多系統層面的優化。這個三層架構中的layer 2和layer 3,共用了一個PoS與PoW融合的共識機制:
-
Layer 2:
-
PoS:layer 2將採用ETH 2.0的PoS並對其進行必要的改進。因此,layer 2的共識層將有超過10萬個驗證者。任何人都可以質押token來成為驗證者。這些驗證者也將根據EIP-4844提供一個數據可用性層,從而容納layer 3的Rollup提交的batch。此外,layer 2的PoS是可證明的,驗證者會定期把PoS 證明提交到layer 1上。驗證者可以獲取PoS這部分的區塊獎勵和Gas費。
-
-
Layer 3:
-
PoS(排序器):排序器除了提議layer 2的區塊,也提議layer 3的區塊(即數據batch),也就是說驗證者同時是layer 3中native rollup的排序器。排序器可以獲取其中的交易Gas費。
-
PoW(Prover):只要擁有zkp的算力,任意驗證者都可以成為native rollup的prover。 Prover為layer 3的各個Native rollup生成zk 證明。對於排序者提交的layer 3的各個區塊,prover依據PoW的規則來競爭,最先提交zk 證明的prover將獲得layer 3的區塊獎勵。
-
關於Native rollup的去中心化共識機制
下面將詳細介紹layer 3中的native rollup的去中心化共識機制。
Sequencer (排序器)
-
sequencer (排序器)這個角色由layer 2的驗證者來承擔。每個layer 2的區塊中,所有native rollup都有且僅有1筆交易來提交各自的rollup 區塊,且這些rollup 區塊只能由layer 2區塊的驗證者來提交。如果該layer 2區塊中沒有包含所有的native rollup的區塊,則該區塊無效。
-
即使某個native rollup在一段時間內沒有交易,驗證者也必須提交該rollup的區塊。此時該rollup的區塊為空。
-
排序器的收益是該排序器提交的各個native rollup的區塊中的交易手續費。注意,所有native rollup中的交易手續費都是由layer 2 token 來支付的。因此,該排序器打包的rollup交易越多,收益也越多。
-
當排序器把rollup block打包上鍊後,該rollup 區塊就進入了finalized狀態。因此該區塊最終確認所需要的時間與layer 2是相同的。
-
如果某一個rollup 區塊沒有在一定時間內被prover提交的證明驗證,則該區塊會被跳過,相應的排序器也將受到懲罰。
Prover
-
與排序器必須是當前layer 2區塊的驗證者不同,prover可以是任意的layer 2的驗證者。只要一個驗證者俱有zkp算力,即可稱為任意的native rollup的prover。
-
這些prover通過PoW的方式來競爭,最先提供某個rollup 區塊的有效證明的,就能獲得相應的區塊獎勵。注意,所有native rollup的區塊獎勵,都是由layer 2 token來支付的。這部分token 就是layer 2的PoW部分的獎勵,系統會根據zkp算力的供需平衡來自動調整PoW的獎勵額度。
-
排序器打包的rollup 區塊中,已經包含了生成證明所需要的所有數據。因此,對於每個rollup,prover可以並行生成多個區塊的證明。同樣的道理,這些區塊證明的驗證也是並行的。
-
當一個rollup 區塊和它的所有父區塊都被驗證時,該區塊就被驗證了,即驗證完成狀態。
總結
通過PoS & PoW的混合共識機制,layer 2和layer 3具有相同的共識層與驗證者集合,確保了整個架構的安全性和去中心化。更為重要的是,layer 3的各個Native Rollup在底層架構上擁有了一個規範化的去中心化解決方案。 layer 2定義了一個統一的系統合約,rollup的開發者只需要實現這些規範化的接口,並註冊rollup 插槽成為native rollup。這樣,開發者可以更加關注業務邏輯的實現,而不必關心在底層架構層面layer 2與layer 3如何交互,也不需要維護rollup的全節點和zkp算力。