一文读懂Opside的ZK-PoW算法

    TL;DROpside提出的ZK-PoW算法,具有以下优势:一个市场化的ZK算力定价机制,不但可以用于扩容(ZK-Rollup),在未来也可以应用于AI(ZKML)为即将到来的ZK-Rollup(尤其是zkEVM)的大规模爆发提供了海量算力平台;同时也为大量闲置的矿工提供了新的挖矿场景ZKP的两步提交算法,为ZK-Rollup提供了标准的去中心化Prover机制优化的ZKP计算与提交机制,将生成ZKP的效率提高了80%为什么我们需要ZK算力的PoW算法?当前,以太坊主网上已经有多个ZK-Rollups在运行了,包括PolygonzkEVM以及zkSyncera。然而实际上目前绝大部分的ZK-Rollup项目都没有实现去中心化的prover。例如PolygonzkEVM的betamainnet中依靠trustedaggregator来提交ZKP,zkSyncera也是类似。当ZK-Rollup数量不多的时候,中心化的prover是可行的。但是随着ZK扩容技术的成熟,特别是未来一到两年时间内zkEVM技术的逐渐落地,ZK-Rollup数量将迎来非常可观的增长。在海量ZK-Rollup的情况下,中心化的prover也会引发很多问题:首先,prover成本高昂,且需要专业的设备与机房,不是每一个ZK-Rollup的运营者都具有维护一个中心化的prover集群的能力。因此我们需要专业的矿工来承担未来海量的ZK-Rollup的算力需求其次,如果只有一个prover,那么单节点宕机就会造成整个ZK-Rollup的交易无法被确认。我们需要一个去中心化Prover机制来鼓励多个矿工同时参与一个ZKP的计算,并获得对应的奖励。最后,我们需要一个标准化的ZKP优化算法,来提升整体的硬件效率。

    Opside的ZK-PoW算法作为一条高度去中心化的公链,Ethereum已经拥挤不堪,gasfee极其昂贵。很多Web3应用,尤其是金融衍生品、Game、社交网络等,需要往layer2或者其他公链迁移。其实,单纯提供高性能和低gas的执行环境并不难,一些中心化的方案可以很容易做到这一点。难的是如何在保证高性能和低gas同时,保持高度的去中心化程度。在Opside的设计中,每一个Web3应用都可以拥有一个专属的ZK-Rollup,并且可以自由选择basechain。目前,Opside支持4条basechain,分别是Ethereum、Opside、BNBchain、Polygon。也就是说,开发者可以选择在这4条公链上面部署自己的ZK-Rollup。为了支撑数量众多的ZK-Rollups带来的海量硬件资源的需求,Opside还提供了一个统一的ZKP算力市场,鼓励Miner来为这些ZK-Rollups生成ZKP。PoW的奖励分配机制Opside采用了PoS和PoW混合共识。其中PoS部分是基于ETH2.0的共识改进的。

    因此,Opside将拥有超过10w多个validator来提供海量的数据可用性,同时具有高度的去中心化程度。在Pre-Alpha测试网阶段,根据PoW算法,一个Opside区块内,每个Rollup会按照一定规则提交一个sequence。所有sequence根据当前Rollupslots注册数量来以及包含的batch数量来划分当前区块的PoW奖励。当然,可能某些rollup在某些区块没有提交sequence,因此PoW实际的通胀会低于预期。Miner可以自由选择参与其中一个或者多个Rollup的ZKP计算。在未来,各个sequence将根据对应的ZK-Rollup类型、所包含的Rollup交易数量、gas使用量等进行工作量预估,从而对不同sequence进行不同的定价。为了避免Miner相关的恶意行为,Miner需要在一个特殊的系统合约中注册,并质押代币。Miner需要在系统合约中为一个Rollup质押相应的token,才可以为该Rollup提交ZKP。Miner提交ZKP获得的奖励也将依据质押量比例来分配,从而避免Miner多次提交ZKP的恶意行为。更多细节请参考OpsideTokenomicsZKP的两步提交算法:标准的去中心化Prover机制为了鼓励多个矿工同时参与一个ZKP的计算任务,Opside提出了一个两步提交的ZKP验证机制。

    一个ZKP对应的PoW奖励份额,会按照一定规则分配给有效ZKP的提交者,也就是矿工。1.提交proofhash:在一个时间窗口内,对于某个sequence,允许多个矿工参与zero-knowledgeproof的计算。各个矿工计算出proof之后,并不直接提交原始的proof,而是计算(proof/address)的proofhash,并向合约提交proofhash。2.提交ZKP:在时间窗口后,矿工提交原始的proof,并与之前提交的proofhash进行验证。验证通过的矿工都可以得到PoW奖励,奖励金额按照矿工质押量的比例来分配。更多细节请参考ZKP'sTwo-StepSubmissionAlgorithm优化的ZKP生成算法:矿工效率提高了80%Rollup的智能合约验证ZKP的时候,如果提交的是原始proof数据,就有可能引发链上攻击行为。为了防止恶意攻击行为,ZK-Rollup往往需要进行额外的工作量来隐藏原始的proof数据。有一种解决方案是,矿工提交的ZKP包含了对矿工地址的聚合结果。Opside提出的ZKP的两步提交算法,则巧妙地采用了先提交+后验证的模式,不再需要对proof和地址做类似的不必要的聚合计算。此外,在一些开源的zkEVM中,ZKP的计算与提交都是串行的。

    当ZK-Rollup提交了大量的sequence时,矿工无法同时计算多个ZKP。在Opside中,ZKP的两步提交算法实现了ZKP的并行计算与串行提交,允许矿机同时执行多个ZKP生成任务,从而大大加速了ZKP的生成效率。Opside团队还对ZKP递归聚合算法进行了一系列的优化,充分提升了集群内机器资源的利用率,进一步提高了ZKP的计算速度。在实际的压测环境中,矿工拥有20台128coreCPU+1TBRAM组成的机器集群,测试交易稳定在27.8TPS约40分钟。在相同条件下,Opside将交易的平均确认时间从约5-6分钟降低到了约3分钟,ZKP生成效率提高了约80%。在未来,随着更多ZK-Rollup以及矿工的加入,ZK算力市场的需求端和供给端的规模将进一步扩大,Opside的PoW算法带来的效率提升将体现得更加明显。总结Opside提出的ZK-PoW算法,创造性地定义了一个市场化的ZK算力定价机制。这个算力市场为即将到来的ZK-Rollup(尤其是zkEVM)的大规模爆发提供了海量算力平台;同时也为大量闲置的矿工提供了新的挖矿场景。ZKP的两步提交算法,为ZK-Rollup提供了标准的去中心化Prover机制,鼓励更多的矿工提供稳定、持续的ZKP算力。同时,优化的ZKP计算与提交机制,将生成ZKP的效率提高了80%在未来,Opside的PoW机制的应用场景可以轻易地拓展,不但可以用于扩容(ZK-Rollup),在未来也可以应用于AI(ZKML)。

Pixel Artist Pixel Artist
Happy Kittens Puzzle Happy Kittens Puzzle
Penguin Cafe Penguin Cafe
Animal Connection Animal Connection
Snakes N Ladders Snakes N Ladders
Pixel Skate Pixel Skate
BeeLine BeeLine
Draw Parking Draw Parking
Draw Racing Draw Racing
Soccer Balls Soccer Balls
Happy Fishing Happy Fishing
Crashy Cat Crashy Cat

FREE GAMES FOR KIDS ONLINE