解读 EIP-5988 提案:为 L2 互操作性优化编译时间和链上空间
来源:月之暗面,PANews Lab
伴随着以太坊上海升级的日益临近,与之相关的各项提案也随之涌现,希望能赶上在上海升级中一并部署。EIP-5988也在近期被提交至Eips.ethereum官方网页,EIP-5988主要目的在于为各类ZK进行和主网间通信的预编译操作,以节省通信所需的编译时间和链上空间。
EIP-5988主要在于解决各类L2和L1之间的通信问题,借助这项提案,ZK系L2可以在不降低自身证明效率的同时兼容主网安全性,OP系L2可以进一步提升利用主网的结算效率。
并且,EIP-5988此次使用的是Poseidon哈希算法,将会作为各类L2统一预编译的生成证明方式,这也是首次可能兼容进以太坊的新算法,而此前主要在各类L2中尝试使用,但安全性尚未得到主流应用大规模长时间检验,这也是EIP-5988引发的主要争议点。
打通L2之间的通信
在EIP-5988的描述中,最重要的是提出了新的Layer 2间通信方式,将各类Rollup扩容算法打包成一致的编译层,供以太坊主网调用,借助以太坊的兼容性来进行各类Layer 2的通信。
直观理解,也就是在STARK/SNARK等方案之下,首先进行一项预编译措施,一旦提案生效,将构筑成ZK证明生成后的格式转换场所。以太坊主网无需考虑消息的具体来源,只需要判断是否符合编译格式,从而进行接受或拒绝等操作。
在目前的L2和以太坊主网之间,存在广泛的兼容性问题。以ZK系为例,目前主要存在两种障碍:
ZK系有不同技术路径,zk-SNARK和zk-STARK是较为主流的两种,不同实例之间的互操作性缺乏统一标准;
L2会选择自研语言,如StarkWare的Cairo等,和以太坊使用的solidity有所区别,需要互相编译才能互通。
在统一预编译层实施后,以太坊所接受的消息格式将进行统一,任何传入的L2数据类型需要进行预先转换,从而节省L2和主网间的传递--等待--响应时间。
目前,在统一预编译层生效前,L2之间的通信有三种方式:
- CEX/DEX:首先将代币传递至兼容两种以上L2的交易所。但是只能进行资产转换,无法直接进行消息传递;
- 通用跨链桥:在传统的L1之间的跨链桥之上叠加L2网络。可进行资产转换,部分借助主网可进行消息传递;
- L2跨链桥:以Orbiter Finance为代表,主要是在各类Rollup间进行跨链,可以视为特定领域的跨链桥模式。
EIP-5988的统一预编译,是直接将各类L2的数据格式进行标准化,而非直接提供一种跨L2的资产互通模式,其仍然是以太坊主网的一种升级和扩展,不会损害以太坊主网的安全性。
借助以太坊主网而来的兼容性,并且会极大提升各类L2的互操作性,也更为符合以太坊未来模块化的升级方式。
波塞冬Poseidon神力有待检验
但是在优势之外,仍然需要注意到统一预编译的问题所在,主要集中在其使用的“Poseidon”(波塞冬)哈希算法之上,这也是目前社区讨论的集中点。
本质上,EIP-5988的工作流程是引入了一个新的预编译合约,实现了Poseidon加密哈希算法中使用的函数,可以实现EVM和ZK / Validity rollups之间的互操作性,以及为EVM引入更灵活的加密哈希原语。
哈希算法的主要作用是将各类传入的数值和非数值型(文字、图片等)数据转换为规格一致的编码,便于计算机识别和调用,而在密码学领域,最为人所熟知的是默克尔树证明,其本质是二叉树的哈希化表达变种,被广泛用于各类节点通信,比如钱包和交易所资产证明之中。
波塞冬算法并非是全新方案,至少Vitalik之前介绍过其主要作用,并且其具备和各类ZK算法的良好兼容性,这也是此次更新以波塞冬为题的主要原因。
Poseidon哈希函数于2019年正式推出,与流行的 "传统 "哈希函数(如SHA256和Keccak)相比,其未经严格有效性和安全性测试。在以太坊网络和其他区块链网络中,已经有部分L2或其他应用使用,到目前为止,波塞冬算法未出现严重错误。
已经或计划使用波塞冬算法的区块链案例:
- StarkWare计划使用Poseidon作为StarkNet的主要哈希函数,并承诺在Cairo语言中增加内置Poseidon函数功能。
- Filecoin采用Poseidon进行不同的默克尔树(Merkle Tree)证明,并用于双值提交场景(two-value commitments)。
- Dusk Network使用Poseidon为交易建立一个类似Zcash的隐私协议。
- Sovrin使用Poseidon进行基于Merkle树的撤销交易。
- 路印协议(Loopring)使用Poseidon在以太坊上进行隐私交易(Private Trading)场景。
- Polygon将Poseidon用于Hermez ZK-EVM中。
Poseidon算法的安全性并非出于设计上的缺陷,而是缺乏大规模实用化高价值场景的检验,如果此次最终被纳入以太坊主网之上,则将是其在整个以太坊,乃至加密生态上的最重磅应用。
结语
以太坊和Layer 2扩容方案之间的纵向分层已成定局,但是各层之间的安全性和兼容性依然存在问题,因此各类L2都在“利用以太坊主网安全性,和增强自身对主网的兼容性上”进行广泛的尝试,但是在造就L2生态繁荣的基础上,也变相引发了L2分裂危机。
这种生态的破碎并不利于以太坊和EVM的长远发展,各类L1之间的竞争仍在进行,如何弥合各类生态碎片,也成为以太坊主网需要主动为之的必要举措,从主网出发进行改进,要求各类L2进行统一的格式转换,是其最新动向。
无论EIP-5988最终是否会生效,这种繁荣和碎片都会长期存在,也需要更多的改进提案来修补。