元宇宙非小号金色财经交流群社区官网

去中心化的Prover如何实现?Opside 创新性提出 ZKP的两步提交算法

Time:2023-05-10 Click:94


原文来源:Opside Team

去中心化的Prover如何实现?Opside创新性提出ZKP的两步提交算法

为什么我们需要去中心化的 prover

当前,以太坊主网上已经有多个 ZK-Rollups 在运行了。然而 ZK-Rollup 的去中心化设计仍然处于早期阶段。我们目前都聚焦在 Sequencer 的去中心化问题上,大部分人都忽略了,实际上目前绝大部分的 ZK-Rollup 项目都没有实现去中心化的 prover。

对于 ZK-Rollup 来说,中心化的 prover 仍然是安全的,并且也不像中心化的 sequencer 那样会带来审查的问题。但是中心化的 prover 也会引发很多问题。首先,如果只有一个 prover,那么单节点宕机就会造成整个 ZK-Rollup 的有效性证明无法提交,从而给交易的最终确定性造成影响。其次,中心化的 prover 成本高昂,无法承担未来海量的 ZK-Rollup 的算力需求。最后,从经济的角度来说,中心化的 prover 独享了一部分收益,这在代币经济学上来说,实际上是不公平的。

去中心化 prover 的挑战

去中心化 prover 能很好地解决以上的问题,但是也带来一些挑战,这也是为什么最近上线的几个 zkEVM 方案采用了中心化 prover 方案的原因之一。例如 Polygon zkEVM 的 beta mainnet 中依靠 trusted aggregator 来提交 ZKP,zkSync era 也是类似。

从技术细节上来讲,ZK-Rollup 的智能合约验证 ZKP 的时候,需要原始的 proof 数据,这就可能引发各种不同的链上攻击行为。例如,某一个 prover 提交计算出来的 ZKP 到链上合约时,需要发一笔L1的交易。当这个 prover 发出的交易广播到交易池中,攻击者就可以看到原始 proof 数据,攻击者可以设置一个更高的 gas 费来发交易,从而优先打包到区块中,来获取 PoW 奖励。

此外,由于 prover 之间是依靠算力来竞争,没有一个可信的身份识别机制,也很难建立一个通信机制。不同的矿工有可能做重复的工作,从而造成算力的浪费。

Opside 提出了一个 ZKP 两步提交算法,来实现了 prover 的去中心化。这种算法既能够防止 ZKP 抢跑攻击,又可以让更多的矿工获得奖励,从而鼓励更多的矿工在线,并提供稳定、持续的 ZKP 算力。

去中心化的Prover如何实现?Opside创新性提出ZKP的两步提交算法

  • 对于某个 sequence,prover 计算出 ZKP 之后,首先计算(proof / address)的 hash,并向链上智能合约提交 hash 和 address。其中,proof 是某一个 sequence 的零知识证明,address 是该 prover 的地址

  • 假设在第 1 个 prover 在第 T 个区块提交了 hash,则在第 T  10 区块以内,还可以接受其他 prover 提交 hash,没有数量限制。第 T  11 区块及之后,不再接受新的 prover 提交 hash

  • 第 T  11 区块及之后,允许任何 prover 提交 ZKP。只要有一个 ZKP 通过验证,那么就可以根据该 ZKP 对所有提交过的 hash 进行校验。校验通过的 prover 都可以得到 PoW 奖励,奖励金额按照矿工质押量的比例来分配。

  • 如果在第 T  20 区块之前,都没有 ZKP 通过验证,则所有提交过 hash 的 prover 都将被 slash。此时该 sequence 重新开放,允许提交新的 hash,回到第 1 步

  • 举一个例子,假设 Opside 中每个L2区块的 PoW 奖励是 128 IDE,当前总共有 64 个 Rollup slots,那么每一个 Rollup sequence 分配到的 PoW 奖励是 2 IDE。如果先后有 A, B, C 3 个矿工为一个 sequence 提交了正确的 ZKP,且 A, B, C 3 个矿工的矿工质押量(IDE)分别为 200 K, 500 K, 300 K。那么,A, B, C 可以获得的 PoW 奖励分别为 0.4 IDE, 1 IDE, 0.6 IDE。

  • prover 提交了错误的 hash

  • 对于某个 sequence,如果没有对应的 ZKP 通过验证,则所有提交过 hash 的 prover 都将被惩罚

  • 罚没的 token 将被烧毁。

    关于 ZKP 的两步提交机制更多的细节与考量,请读者参阅官方文档。prover 质押以及惩罚的具体数字在未来可能会改动。

  • 为什么允许多个 prover 提交 hash?如果第一个 hash 的提交者才能获得奖励,那么第一个 prover 提交了 hash 之后,其他 prover 就没有动力提交 proof。如果一个恶意攻击者提交 hash 之后迟迟不提交 proof,那么会阻碍整个 sequence 被验证的速度。因此应当允许多个 prover 独立且并行地提交 hash,以避免 ZKP 的验证被单个攻击者垄断。

  • 为什么需要设置一个时间窗口?假设任何人在提交了 hash 之后可以立即提交 proof,那么该 proof 仍然有可能被抢跑。因为攻击者会立即提交一个与自己地址关联的 hash,随后提交 proof,从而获取奖励。设置时间窗口之后,提交过 hash 的 prover 就没有动力在此时间窗口内提交 proof,从而避免了 proof 被攻击者利用的可能。

  • 为什么要按照质押量来分配 PoW 奖励?在一个时间窗口内,允许多个 prover 为同一个 sequence 提交 hash。实际上,矿工可以利用自己生成的 proof 提交多个 hash(只需要多个地址即可),从而占有大部分甚至所有 PoW 奖励。为了避免这种攻击行为,一个 sequence 的 PoW 奖励将按照矿工质押量的比例来分配。

  • 总结与规划

    本文提出的 ZKP 两步提交算法,在实现了 prover 去中心化的同时,能很好地规避针对 prover 的抢跑攻击,并鼓励更多的矿工提供稳定、持续的 ZKP 算力。最初的版本将在 Opside 的 Pre-alpha testnet 上线。在未来,Opside 也将在更多 ZKP 的挖矿领域进行更多创新。例如:

    根据整个网络的 ZKP 算力供需关系,动态调整 PoS 与 PoW 的奖励分配比例

    根据 ZK-Rollup 类型、Rollup 交易数量、gas 使用量等进行工作量预估,建立 Rollup batch 的个性化定价机制

    应用开发者对所属 Rollup 的 ZKP 生成进行补贴,以激励矿工提供算力

    标签:op 中心化 创新 去中心化 算法

    • FXS 币:推动去中心化金融创新 FXS 币是 Frax 协议的治理代币

      FXS 币:推动去中心化金融创新 FXS 币是 Frax 协议的治理代币

      T:

      FXS 币:推动去中心化金融创新FXS 币是 Frax 协议的治理代币,正在彻底改变去中心化金融 (DeFi) 领域。作为第一个分数算法稳定币系统的一部分,FXS 在维护协议稳定性和确保其长期可持续性方面发挥着至关重要的作用。Frax 协议...

    • 什么是Web3?区块链去中心化的网络并不是去中心化的

      什么是Web3?区块链去中心化的网络并不是去中心化的

      T:

      数字货币的疯狂拥护者者传扬Web3的优势,她们表明将来大家在网络上做的一切都将由区块链技术给予驱动力。Web3的拥护者说,互联网技术的下一次迭代将把绝大多数权利交到客户,而不是由大中型个人公司管理互联网技术上的观点和商业服务。在Web3的全...

    本站分享的区块链、Web3.0元宇宙、NFT、数字藏品最新消息等相关数藏知识快讯NFR资讯新闻,与金色财经非小号巴比特星球前线Btc中国官网无关,本站资讯观点不作为投资依据,市场有风险,投资需谨慎!不提供社区论坛BBS微博微信交流群等相关币圈信息发布!
    本站内容来源于互联网,如存在侵权及违规内容投诉邮箱( [email protected] )
    皮卡丘 2021-2024© YangKaTie.Com All