原文作者:Jason Jiang
Layer 2 概念在 2023 年夏天迎来爆发。Coinbase、ConsenSys 等加密巨头纷纷下场,其部署的原生L2解决方案 Base、Linea 在过去两个月内相继完成主网上线;被誉为L2 四大天王之一的 StarkNet 也在夏天顺利完成“量子跃迁”升级,大幅提升交易性能与效率,顺利迈入发展新阶段。
在属于L2的盛夏,欧科云链 OKLink 正式推出了 ZK Rollup 明星项目 StarkNet 区块链浏览器。这是 OKLink 上线的第 30 条区块链浏览器,OKLink 也由此正式集齐了曾被誉为L2 四大天王的 Optimism、Arbitrum、zkSync 和 StarkNet。据悉,OKLink 后续还将推出 Polygon-zk、Base 等 ZK 系L2区块链浏览器,为所有关注和参与 ZK Rollup 和L2生态建设的用户提供更全面和更丰富的链上数据洞察及服务。
从上线 Starknet 浏览器到账户抽象解析,OKLink 在L2盛夏做了这些事?
作为 ZK Rollup 赛道中估值最高和市场占比最大的项目之一,自 2021 年 11 月主网启动以来,Starknet 生态系统已囊括诸多场景,众多钱包、DeFi、GameFi 和 NFT 项目都构建在其区块链网络中。StarkNet 生态正加速拓展并更加充满活力,被业务认为有潜力成长为L2赛道的领跑者之一。
与其他扩容项目相比,除了使用 zk-STARK 技术作为证明系统外(下文将进行介绍),Starknet 在数据可用性以及账户体系设计方面也有所不同。
ZK Rollup 本身相较于 Optimistic Rollup 的一个重要优势就是拥有更高效的数据可用性。事实上,数据上链到L1主网进行验证是非常重要的:只有数据上链才能在区块链浏览器上查询每一笔交易,从而保证交易是可溯源和可验证的,进而提升区块链网络的安全性。在 Plasma 以及之前的状态通道这两种扩容方案中,数据和计算完全放到L2网络中,当L2网络和以太坊进行交互时,L2的所有交易数据都并不包含在内。这导致以太坊如果脱离了L2网络,就无法复原之前状态变更的情况,因此以太坊数据可用性非常依赖对L2的数据保护。
Starknet 目前则提供了三种数据可用性模式,即:
1、Rollup 方案:账本直接发布在区块链上,保证链上数据可用性,但由于主网消耗的 gas 成本大部分用于数据可用性的储存,而非验证证明,所以这种方案更昂贵;
2、Validium 方案:由数据可用性协会 (DAC) 确保账本安全,只有哈希值保存在链上,这种模式由于链上存储的数据量降低,成本也大幅缩减,但其牺牲了去中心化,仅适合用于非重要交易的数据可用性。
3、Volition 方案:用户在发起每笔交易时都可以选择该笔交易的 DA 模式,Rollup 或 Validium,更加灵活。
由于具有更高效的数据可用性,用户可以更便捷地借助 OKLink StarkNet 浏览器等工具查询链上交易详情。
除此之外,OKLink 最新上线的 Starknet 浏览器还能提供丰富的区块和地址信息,帮助用户快速了解 StarkNet 网络的实时状况。
在账户体系方面,Starknet 是现阶段少数支持账户抽象的区块链基础设施。目前,帐户抽象在以太坊和 Starknet 上均可实现,但实现方式有所不同:以太坊是在不忽略外部账户(EOA)功能的情况下,通过 ERC-4337 添加帐户抽象,而 Starknet 直接将帐户抽象作为核心,摆脱 EOA 可能会带来的影响,直接跃入每个帐户都是智能帐户的世界。
这种模式要求 Starknet 的所有基础设施,包括钱包和区块浏览器,都是为帐户抽象而设计并构建的:这在所有 L1 和 L2 链中都是独一无二的;但由于只支持账户抽象,也让 Starknet 用户在与其他区块链交互过程中产生困难,因为其他区块链现阶段可能还并不支持账户抽象,更多还是通过将 EOA 与帐户资产链接,从而与区块链交互并拥有资产。
欧科云链 OKLink 浏览器是目前可提供账户抽象解析为数不多的选择,也是唯一支持查询用户操作的可视化窗口。通过欧科云链 OKLink 多链浏览器,用户就可以像使用谷歌一样来查询账户抽象的有效信息,了解区块链上交易和合约执行的相关信息,包括交易费用、合约执行的相关信息和日志,从而更好地了解智能合约的执行情况等等。
无论是真实参与 StarkNet 链上交互的普通用户,还是希望未来参与空投活动的投机者,如今都可以通过 OKLink 提供的 Starknet 浏览器查询链上交易进度,并通过多链聚合功能和多维度统计数据实现精准的账户抽象跨链交互和数据查询,这是官方浏览器所无法比拟的。
Starknet 浏览器是 OKLink 推出的第 30 条区块链浏览器,也是继 zkSync 之后的第 2 条 ZK Rollup 浏览器。据 OKLink 产品经理介绍,OKLink 会持续发展 ZK Rollup 技术创新及生态布局,后续继续推出 Polygon-zk、Base 等知名 ZK Rollup 项目的区块链浏览器。
那可能有人会问:为什么 OKLink 如此关注 ZK Rollup 及L2赛道发展?ZK 技术又是如何进化到如今的水平?下面就让我们回归本源,去探究 ZK Rollup 被关注的背后原因。
为什么我们要关注 ZK Rollup?
随着以太坊上部署的去中心化应用(DApp)日渐增多,链上交互活动也日益频繁,拥堵的网络和高昂 Gas 费让扩容势在必行。常见的扩容方式有两类:一是对区块链本身进行改造的链上扩容;二是通过将计算与交易执行放在链下,由主链负责验证交易有效性和提供安全保证的链下扩容方案,也就是我们常说的L2方案。
与链上扩容相比,L2扩容能大幅降低主网局限性,且不需改变主网共识。状态通道、Plasma、侧链等都曾是L2扩容曾出现的技术方案,但如今开发者们正转向以 Rollup 为核心的L2扩容路线图。
所谓 Rollup,是指将交易执行外包给L2,然后将多笔交易数据捆绑后进行压缩,并将它们和状态根发送到L1网络进行验证和确认。Rollup 用一次性验证多笔交易提升性能,并通过向L1同步交易数据和网络状态,保证链上数据可用性的同时得到主链安全性保证。
这依旧很抽象,不妨用个形象的例子类比:
小欧在公司附近的商场办了张购物卡,并充值了 2000 元,每次去消费时只需要直接刷购物卡而不需要用银行卡支付。一个月后小欧不打算继续在这家商场购物,注销购物卡时余额还有 200 元,于是就将余额提现到自己的银行卡。
在这一个月的消费过程中,小欧的银行卡只与商场账户交互过两次,期间所有消费都在商场内部系统内完成。这种方式大幅降低银行网络所承载的结算压力,Rollup 类似地也能降低主网交易压力。
在 Rollup 提出前,Plasma 等扩容方案不会将L2中发生的数据发送给主链储存验证,只会提交一个最终的状态结果。这就导致结果不可验证,就像是商场只向你提供最后余额,但不给你交易明细。
Rollup 则会将数据提交给主链,但它会通过聪明的编码方式,最大限度地压缩数据,同时基于 Rollup 本身特性适当删除和缩减部分数据,只保证最终提交的数据可供所有人验证。
根据交易数据同步到L1的方式不同,Rollup 通常分为 ZK Rollup 和 OP Rollup 两种方案。ZK Rollup 的关键在于“质疑一切”,这与 OP Rollup 的“乐观的假设所有人都不作恶”形成对比。
回到上面的例子,ZK Rollup 和 OP Rollup 的差别就像是:
如果小欧最后提取余额后,并没有检查明细,而等到未来某天突然察觉到不对劲时再去检查,就类似于 OP Rollup;但如果小欧在提取余额时,就要求商场提供一份交易明细文件以确保余额的准确性,那就类似于 ZK Rollup。
虽然 OP Rollup 由于技术实现难度较低且与以太坊兼容性更高,现阶段在交易体量和市场份额等方面均处于领先位置。但由于使用欺诈证明机制,OP Rollup 方案的提款时间和安全性目前来看值得商榷,其成本优化相比 ZK Rollup 也略逊一筹。而 ZK Rollup 的弱点基本都属于技术问题,随着大量优秀的开发人员投入到相关研究,凭借理论中更高的安全性、更快的验证效率和更好的数据可用性,ZK Rollup 或许在未来会成为更优秀的扩容选择。
ZK 技术的进化,从 zk-SNARKs 到 zk-STARKs
ZK Rollup 是基于 ZK 技术落实 Rollup 的L2解决方案,项目间的主要差异就在于采用的 ZK 技术不同。目前市面上主流的 ZK 技术包括三类,分别是 zk-SNARKs、zk-STARKs 以及 Bulletproofs。其中,zk-SNARKs 和 zk-STARKs 在 ZK Rollup 扩容方案中都有所应用(注:Bulletproof 曾被用于隐私币的设计当中)。
zk-SNARKs 技术是由加州大学伯克利分校教授 Alessandro Chiesa 等人于 2012 年在论文《From extractable collision resistance to succinct non-interactive arguments of knowledge, and back again》中提出,是最早和最受欢迎的 ZK 方案之一,也是目前在区块链领域应用最广泛的 ZK 技术。SNARKs 是一种非交互性质的证明,验证者只需使用由证明者生成的 proof 即可获得验证结果。知名 ZK Rollup 项目 zkSync 等都是基于 zk-SNARKs 技术构建的低成本且无需信任扩容协议,用于在以太坊上进行可扩展的低成本支付。
但 ZK-SNARKs 存在一些问题,如该技术使用椭圆曲线密码学 (ECDSA) 进行加密,虽然 ECDSA 算法目前是安全的,但量子计算机的发展可能会打破其安全模型;此外,zk-SNARKs 在密钥生成阶段需依靠可信设置,可能存在中心化风险。因此, 2018 年 StarkWare 联合创始人 Eli-Ben Sasson 在论文《Scalable, transparent, and post-quantum secure computationalintegrity》中提出了一种新的 ZK 技术方案:zk-STARKs。
zk-STARKs 是 zk-SNARKs 算法的一种技术演变,解决了 SNARK 依赖可信设置的弱点,可以不依赖任何信任设置来完成区块链验证,从而降低启动网络的复杂性并消除任何串通风险。同时,zk-STARK 使用更精简的加密方法,避免了椭圆曲线、配对和指数假设知识的需要,而是依赖散列和信息理论,因此理论上能够抵御量子攻击。
被称为L2四大天王之一的 Starknet 目前采用的就是 SATRK 有效性证明来解决以太坊可拓展性难题。
除底层技术不同外,当前 ZK Rollup 项目都是将交易数据生成 ZKP 发送到主链再被验证,项目间的直接差异更多体现在和 EVM 的兼容性方面。
根据改造程度和 EVM 兼容程度,Vitalik 将目前的 ZK Rollups 分为以下等级:
一般来讲,和以太坊/EVM 兼容性越好的方案,所需的设计重构工作量越小,但后续工作中的生成 ZK 验证计算工作量越大。但作为当前的 ZK Rollup 赛道的两大绝对龙头项目,无论是 StarkNet 还是 zkSync,现阶段都只属于高级程式语言等效的 ZK Rollups。不过,尽管 StarkNet 本身并不兼容 EVM,但可以通过包括 Kakarot(Kakarot 是一个用 Cairo 写的 zkEVM,是一个字节码等效 EVM 的 zkEVM)等其他方式兼容以太坊,从而降低开发难度。
总结
ZK 技术可能是我们这个时代最被低估的技术之一,与铺天盖地的人工智能和大数据技术相关的新闻宣传不同,ZK 技术至今少有人问津。但尽管如此,这项技术仍然是一项伟大创新,因为它为我们在个人信息无处藏身的大数据时代带来了宝贵的隐私保障。而作为当前 ZK 技术在区块链领域的重要应用方向,ZK Rollup 还有望解决限制区块链大规模应用的最大难题,让更多Web3创新能在现实中的复杂商业环境中得到广泛应用。