1. 引言
前序博客有:
- HyperPlonk——实现zkEVM的一种zk-proof system
Espresso Systems团队致力于为Web3世界开发工具和基础设施。
Espresso Sequencer:为在不牺牲扩展性和速度的情况下,实现的去中心化rollups系统,兼具Web2的性能和Web3的安全。
Rollups主要分为以下几个部分:
- 1)虚拟机(VM)
- 2)Sequencer:负责对提交到VM的交易(即指令)进行排序。
- 3)证明系统(for zk-VMs):执行这些交易,并为最终的VM state transition生成证明。
- 4)部署在L1(如以太坊)上的rollup合约:最终登记该state transition并验证相应证明。
并不总是需要external sequencer,相反,合约自身也可用于对交易进行排序。这样的好处在于,用户仅需trust the L1 for liveness。然而,在这种情况下,rollup系统只能缓解L1的计算瓶颈。它的吞吐量仍将受到L1的数据排序速率的限制。此外,用户将经历与L1相同的交易确认延迟。
引入external sequencer可实现更高的吞吐量和更快的交易确认速度。此时,用户可选择 要么相信sequencer,要么等待更久来相信L1上的最终确认,具体可取决于特定交易的风险承受能力(如 售卖1美元的咖啡 VS 售卖100万美元的房子)。
此外,L1合约所处理并存储的数据量可进一步减少:
- 仅注册交易log和状态的密码学承诺值。rollup proof可证明该承诺值的正确性,而额外的rollup系统组件依赖the availability of the committed data。
除了收益于性能,引入external sequencer以及data availability组件,正式rollup丢失其去中心化的地方。挑战在于,设计这些组件可提供fast finality和高吞吐量的同时,仍保持去中心化。
Espresso Sequencer支持L2的去中心化,作为rollup与底层L1平台的中间组件,可处理decentralized sequencing and data availability of rollup transactions。Espresso Sequencer设计为可不属于任意zk-VM或optimistic VM平台之上的系统。最终,Espresso可作为互操作层,同时用于多个zk-VM/optimistic VM 与 多个L1 之间。
Espresso目前已发布testnet1 Americano,采用的PoS+HotStuff共识协议为:Espresso HotShot: Consensus Designed for Rollups,基本性能表现为:
A throughput of 2598 kb/s maps to 10,000-20,000 ERC-20 transfers or 700+ CAPE transactions per second.
参考资料
[1] Decentralizing Rollups: Announcing the Espresso Sequencer