時間:2023-06-04|瀏覽:238
Opside提出的ZK-PoW算法,具有以下優(yōu)勢:
一個市場化的ZK算力定價機制,不但可以用于擴容(ZK-Rollup),在未來也可以應(yīng)用于AI(ZKML)
為即將到來的ZK-Rollup(尤其是zkEVM)的大規(guī)模爆發(fā)提供了海量算力平臺;同時也為大量閑置的礦工提供了新的挖礦場景
ZKP的兩步提交算法,為ZK-Rollup提供了標準的去中心化Prover機制
優(yōu)化的ZKP計算與提交機制,將生成ZKP的效率提高了80%?
當前,以太坊主網(wǎng)上已經(jīng)有多個ZK-Rollups在運行了,包括Polygon zkEVM以及zkSync era。然而實際上目前絕大部分的ZK-Rollup項目都沒有實現(xiàn)去中心化的prover。例如Polygon zkEVM的beta mainnet中依靠trusted aggregator來提交ZKP,zkSync era也是類似。
當ZK-Rollup數(shù)量不多的時候,中心化的prover是可行的。但是隨著ZK擴容技術(shù)的成熟,特別是未來一到兩年時間內(nèi)zkEVM技術(shù)的逐漸落地,ZK-Rollup數(shù)量將迎來非??捎^的增長。在海量ZK-Rollup的情況下,中心化的prover也會引發(fā)很多問題:
首先,prover成本高昂,且需要專業(yè)的設(shè)備與機房,不是每一個ZK-Rollup的運營者都具有維護一個中心化的prover集群的能力。因此我們需要專業(yè)的礦工來承擔未來海量的ZK-Rollup的算力需求
其次,如果只有一個prover,那么單節(jié)點宕機就會造成整個ZK-Rollup的交易無法被確認。我們需要一個去中心化Prover機制來鼓勵多個礦工同時參與一個ZKP的計算,并獲得對應(yīng)的獎勵。
最后,我們需要一個標準化的ZKP優(yōu)化算法,來提升整體的硬件效率。
作為一條高度去中心化的公鏈,Ethereum已經(jīng)擁擠不堪,gas fee極其昂貴。很多Web3應(yīng)用,尤其是金融衍生品、Game、社交網(wǎng)絡(luò)等,需要往layer 2?或者其他公鏈遷移。其實,單純提供高性能和低gas的執(zhí)行環(huán)境并不難,一些中心化的方案可以很容易做到這一點。難的是如何在保證高性能和低gas同時,保持高度的去中心化程度。
在Opside 的設(shè)計中,每一個?Web3 應(yīng)用都可以擁有一個專屬的?ZK-Rollup,并且可以自由選擇base chain。目前,Opside支持4?條base chain,分別是Ethereum、Opside、BNB chain、Polygon。也就是說,開發(fā)者可以選擇在這4?條公鏈上面部署自己的ZK-Rollup。為了支撐數(shù)量眾多的ZK-Rollups 帶來的海量硬件資源的需求,Opside 還提供了一個統(tǒng)一的?ZKP 算力市場,鼓勵Miner來為這些ZK-Rollups 生成?ZKP。
Opside采用了PoS和PoW混合共識。其中PoS部分是基于ETH?2.0?的共識改進的。因此,Opside將擁有超過10?w多個validator來提供海量的數(shù)據(jù)可用性,同時具有高度的去中心化程度。
在Pre-Alpha測試網(wǎng)階段,根據(jù)PoW算法,一個Opside區(qū)塊內(nèi),每個Rollup會按照一定規(guī)則提交一個sequence。所有sequence根據(jù)當前Rollup slots注冊數(shù)量來以及包含的batch數(shù)量來劃分當前區(qū)塊的PoW獎勵。當然,可能某些rollup在某些區(qū)塊沒有提交sequence,因此PoW實際的通脹會低于預(yù)期。
Miner可以自由選擇參與其中一個或者多個Rollup的ZKP計算。在未來,各個sequence將根據(jù)對應(yīng)的ZK-Rollup類型、所包含的Rollup交易數(shù)量、gas使用量等進行工作量預(yù)估,從而對不同sequence進行不同的定價。
為了避免Miner相關(guān)的惡意行為,Miner需要在一個特殊的系統(tǒng)合約中注冊,并質(zhì)押代幣。Miner需要在系統(tǒng)合約中為一個Rollup質(zhì)押相應(yīng)的token,才可以為該Rollup提交ZKP。Miner提交ZKP獲得的獎勵也將依據(jù)質(zhì)押量比例來分配,從而避免Miner多次提交ZKP的惡意行為。
更多細節(jié)請參考Opside Tokenomics
為了鼓勵多個礦工同時參與一個ZKP的計算任務(wù),Opside提出了一個兩步提交的ZKP驗證機制。一個ZKP對應(yīng)的PoW獎勵份額,會按照一定規(guī)則分配給有效ZKP的提交者,也就是礦工。
1.?提交proofhash:在一個時間窗口內(nèi),對于某個sequence,允許多個礦工參與zero-knowledge proof的計算。各個礦工計算出proof之后,并不直接提交原始的proof,而是計算(proof / address)的proofhash,并向合約提交proofhash。
2.?提交ZKP:在時間窗口后,礦工提交原始的proof,并與之前提交的proofhash進行驗證。驗證通過的礦工都可以得到PoW獎勵,獎勵金額按照礦工質(zhì)押量的比例來分配。
更多細節(jié)請參考ZKP"s Two-Step Submission Algorithm
Rollup的智能合約驗證ZKP的時候,如果提交的是原始proof數(shù)據(jù),就有可能引發(fā)鏈上攻擊行為。為了防止惡意攻擊行為,ZK-Rollup往往需要進行額外的工作量來隱藏原始的proof數(shù)據(jù)。有一種解決方案是,礦工提交的ZKP包含了對礦工地址的聚合結(jié)果。Opside提出的ZKP的兩步提交算法,則巧妙地采用了先提交+后驗證的模式,不再需要對proof和地址做類似的不必要的聚合計算。
此外,在一些開源的zkEVM中,ZKP的計算與提交都是串行的。當ZK-Rollup提交了大量的sequence時,礦工無法同時計算多個ZKP。在Opside中,ZKP的兩步提交算法實現(xiàn)了ZKP的并行計算與串行提交,允許礦機同時執(zhí)行多個ZKP生成任務(wù),從而大大加速了ZKP的生成效率。
Opside團隊還對ZKP遞歸聚合算法進行了一系列的優(yōu)化,充分提升了集群內(nèi)機器資源的利用率,進一步提高了ZKP的計算速度。
在實際的壓測環(huán)境中,礦工擁有20?臺128 core CPU + 1?TB RAM組成的機器集群,測試交易穩(wěn)定在27.8?TPS約40?分鐘。在相同條件下,Opside將交易的平均確認時間從約5-6?分鐘降低到了約3?分鐘,ZKP生成效率提高了約80%?。在未來,隨著更多ZK-Rollup以及礦工的加入,ZK算力市場的需求端和供給端的規(guī)模將進一步擴大,Opside的PoW算法帶來的效率提升將體現(xiàn)得更加明顯。
Opside提出的ZK-PoW算法,創(chuàng)造性地定義了一個市場化的ZK算力定價機制。這個算力市場為即將到來的ZK-Rollup(尤其是zkEVM)的大規(guī)模爆發(fā)提供了海量算力平臺;同時也為大量閑置的礦工提供了新的挖礦場景。
ZKP的兩步提交算法,為ZK-Rollup提供了標準的去中心化Prover機制,鼓勵更多的礦工提供穩(wěn)定、持續(xù)的ZKP算力。同時,優(yōu)化的ZKP計算與提交機制,將生成ZKP的效率提高了80%?
在未來,Opside的PoW機制的應(yīng)用場景可以輕易地拓展,不但可以用于擴容(ZK-Rollup),在未來也可以應(yīng)用于AI(ZKML)。