Arbitrum、Optimism、Polygon zkEVM、Scroll、Starknet、zkSync 这些 Rollup 通常会有两类情况,一类拥有不变性,一类拥有可升级性,但都是出于安全性角度的不同取舍。
撰文:Toghrul Maharramov,Scroll 研究员
ETHBarcelona 活动期间,Scroll 的研究员 Toghrul Maharramov 发表了关于 zkRollup 不变性和可升级性的演讲。
对于 zkRollup 而言,不变性和可升级性是安全性的两个不同纬度。Arbitrum, Optimism, Polygon zkEVM, Scroll, Starknet, zkSync 这些 Rollup 通常会有两类情况,一类拥有不变性,一类拥有可升级性,但都是出于安全性角度的不同取舍。
在我们的情况下,我们假设 Rollup 拥有 28 天的升级延迟。
通常,我们在对 Rollup 做升级时,我们会在 Base Layer 重新部署新版本的跨链桥,新版本的 Rollup 将直接链接新版本的跨链桥。
有时我们只需要对跨链桥合约做升级,Rollup 将直接链接新版本的跨链桥。
不变性的优点在于,不需同步假设,没有复杂的退出机制,防止 Rug。
但同样也有缺点,在出现漏洞受到攻击时协议较为脆弱,在需要协议升级时没有状态迁移的机制。
可升级性的优点在于可以处理出现漏洞的脆弱性,可以引入协议升级。
可升级性的缺点在于需要同步假设,有复杂的退出机制,无法防止 Rug。
对于 zkEVM 而言,理想状态下,我们希望 zkEVM 拥有不变性来保障安全性,但同时,我们希望 zkEVM 保持兼容性,因此需要有可升级性。
因此现在的一个方案是,在有延迟升级机制下,引入安全委员会来快速通过延迟时间。
这里的安全委员会,是外部的领域专业人士的集合,例如 L2Beat。只要他们的投票达到了规定的阈值,他们将可以快速通过延迟,进行升级。
通常情况下,在内部团队 3/5 的多签钱包发起 28 天的延迟升级,9/12 的安全委员会多签可以发起快速通过延迟。
引入安全委员会也会带来新的问题,例如协调问题,还有潜在的不做验证直接投票快速通过的问题。
另一个方案是 Enshrined Validating Bridge。原理是不再通过跨链桥合约来验证 L2 的证明,而是通过内嵌在 L1 协议中,通过社会共识来验证证明。
缺点是影响了 L1 的中立性,增加了 L1 的协调负担。
并且增加了 L1 的升级难度,需要设计同质化的验证跨链桥合约。
所以有完美的解决方案吗,实际上目前并不存在。每一个上文提出的方案都对安全性的其他方面做出了取舍。当然我们期待在未来两年,随着 L2 协议的完善,会达成共识有一个合理的解决方案。
【免责声明】市场有风险,投资需谨慎。本文不构成投资建议,用户应考虑本文中的任何意见、观点或结论是否符合其特定状况。据此投资,责任自负。