如何使用零知识证明(ZK)和可验证延迟函数(VDF)来实现「隐私 mempool」构想?

如何实现「隐私 mempool」构想,使用零知识证明(ZK)和可验证延迟函数(VDF)?

通过分割区块链区块实现顺序交易——将鱼和熊掌兼得

区块链技术的快速发展为交易的安全和顺序带来了新的挑战,尤其是面对恶意MEV(盗取、操纵和抢占交易的行为)的威胁。现有的L2 Sequencer技术通常采用”先到先出”(FIFO)的交易排序方式来保护用户不受MEV的侵害,但这却削弱了区块的价值。为了解决这个问题,一个名为BlocksLianGuaice的方案应运而生,它通过分割区块,实现了鱼和熊掌兼得的效果。

具体而言,用户可以用一个”时间谜题”来加密自己的交易,并同时计算一个”zk proof”来证明这个时间谜题有解。然后,用户将加密的交易、时间谜题和对应的zk proof一起发送给Sequencer。Sequencer接收到加密的交易后,会按照以下步骤进行处理:

  1. 验证zk proof的有效性,如果有效,则说明这个时间谜题可以在计算一段时间后得出答案。
  2. 将交易放入”Top BlocksLianGuaice”中,并给出交易所在的区块内的”Order Committee”。
  3. Sequencer会计算时间谜题一段时间,最后得出一个答案。
  4. Sequencer拿到答案后,可以解密用户的加密交易,得出交易的原始数据。
  5. 当”Top BlocksLianGuaice”被填满后,Sequencer会将这个只有交易的”半成品区块”广播到L2的点对点网络。
  6. MEV Searcher接收到”半成品区块”后,可以根据”Top BlocksLianGuaice”中的交易顺序构建有利可图的”交易bundle”。
  7. MEV Searcher将自己的交易bundle以及出价发送给L2 Block Builder。
  8. Block Builder收到”半成品区块”后,将最高出价的那部分交易bundle放入”Bottom BlocksLianGuaice”中。
  9. 最后,Block Builder需要进一步进行L2 Mev Boost流程,Sequencer会接受带有它指定的”Top BlocksLianGuaice”最高价值的区块。

通过将BlocksLianGuaice分成两部分,用户交易在”Top BlocksLianGuaice”中得到保护,而MEV Searcher则可盈利于”Bottom BlocksLianGuaice”中的交易。这样一来,既保护了用户交易免受有害的MEV,又最大化了区块收益。然而,这个方案也付出了一些额外的计算成本,主要表现为用户需要为自己的时间谜题计算一个zk proof,以及Sequencer需要为每个用户提供的时间谜题求解。

与此方案相比,之前提出的Arbitrum方案让MEV Searcher能够通过更高的出价获得最高0.5秒的优先权交易排序策略。与本文方案相比,Arbitrum方案具有以下特点:

  1. 省计算资源。
  2. MEV Searcher无法看到区块内的交易(私有内存池)。
  3. 用户的交易仍可能被插队。

需要注意的是,为了防止Sequencer被DDoS攻击,对于每个用户提供的时间谜题,需要使用zk proof进行验证。

综上所述,通过分割BlocksLianGuaice区块,我们既保护了用户的交易不受恶意MEV的侵害,又使Sequencer能够最大化区块的价值。然而,每个方案都有其优势和劣势,因此需要根据具体情况选择最合适的方案。同时,随着区块链技术的不断发展,我们也将看到更多解决MEV问题的创新方案的出现。

BlocksLianGuaice分割区块示意图