1. 引言
ZK技术具备极大通用性,也帮助以太坊从去中心化投资走向去信任化的价值观。“Don’t trust, Verify it!”,是ZK技术的最佳实践。ZK技术能够重构链桥、预言机、链上查询、链下计算、虚拟机等等一系列应用场景,而通用型的ZK协处理器就是实现ZK技术落地的工具之一。对于ZK协处理器,其应用边界之广,任何真实的dapp应用场景都能覆盖,从理论上来说,任何Web2应用能做到的事情,有了ZK处理器就都能实现。
NEAR 和 Polygon 等团队认为:
- EVM 是以太坊生态系统的完美补充。EVM 不是能够将所有虚拟机整合在一起的唯一虚拟机。
- WASM 与 Cosmos 等竞争生态系统的联系更为紧密(Cosmos 甚至举办了一场专门讨论 CosmWASM 的会议)。
- WASM有望能将所有VM整合。
- WASM为Web2开发者,解锁了Web3。开发者只需用其熟悉的语言来使用尖端科技。
- WASM 是除 HTML、CSS 和 JavaScript 之外的四种 Web 语言之一。
- 所有 Web 浏览器都支持WASM,并且允许任何编译为WASM的编程语言在 Web 上运行。
- 因此,能够编写编译为 WASM 的代码的开发人员数量远远超过能够编写 Solidity 的开发人员。
- zkVM将成为为ZK开发的圣杯。(见2022年11月15日以太坊基金会视频Solidity Dev to ZK Dev: Why and How You Should Start ZK Dev Now)
- 通用zkVM是Web3的未来。
- 通用的 zkVM 不仅可完成 zkEVM 所能完成的任务(方便 Web3 开发者上手),还可从 Web2 所有成熟的生态系统和工具链中获得强大的支持。
zkWASM是:
- ZK Web Assembly的缩写
- 描述了生成计算证明的虚拟环境。
- 由zkWASM VM运行代码代码,用户进行验证,而用户无需运行整个计算。
- Prover:获取初始状态,运行程序,然后使用witness进行计算,输出最终状态和proof。
- Verifier:验证proof。大大降低计算要求。
当前:
- Cosmos 认为 CosmWASM 是在其多链生态系统中构建强大、安全的 dApp 的安全引擎。
- Polkadot 强调 WASM 是任何去中心化系统开发的基础。
- Solana 的 NEON EVM 允许部署 WASM 智能合约以及原生 Solana 合约。
- Axelar 和 LayerZero 都使用 WASM 来促进跨链互操作性,以实现链之间的高效通信。
- NEAR 和 Polygon 共同致力于开发 zkWASM 环境。拒绝各自为营,坚信推动该领域发展的是合作而不是零和思维。
2. ZK魔力
ZK技术可用于解决区块链中的各种问题:
见2022年11月15日以太坊基金会视频Solidity Dev to ZK Dev: Why and How You Should Start ZK Dev Now:
3. 何为zkVM?
上图摘自Polygon Miden创始人Bobbin Threadbare Feeding Program Source Code to ZK VMs
zkVM:
- 为通过ZKP来保证安全和可验证可信的虚拟机。
- 以无需信任的方式输出新状态和证明。
- 让所有运行在虚拟机中的应用程序都拥有零知识证明的超能力。
- 开发人员只需要一个可以在 zkVM 中运行的程序,zkVM 会处理其余所有事情。
根据2022年9月27日视频ZK8: How to build a zk-VM - Ferdinand Sauer - Neptune,zkVM的构建,本质分为3步:
-
1)创建虚拟机(实现虚拟机的所有指令集)。有很多指令集可供选择,如WASM、RISC-V、EVM bytecode、新的定制指令集等。不同的指令集有不同的特性:
-
2)添加SNARK/STARK引擎(添加证明系统)
-
3)将 ZK 添加到 SNARK/STARK 引擎(启用隐私)
目前最为知名的 zkVM 可能就是以太坊 Layer2 的 zkEVM。
4. ZK协处理器
在传统的世界中,处理器也没有一个正式定义,只要能作为协助协助完成任务的单独芯片都叫处理器。 当前业内对ZK处理器的定义并不完全相同,如ZK-Query、ZK-Oracle、ZKM等都是协处理器,能够协助查询链上的完整数据、链下的可信数据以及链下的计算结果,从这个定义来看,实际上layer2也算是以太坊的协处理器。
目前业内比较知名的协处理分成三大部分,分别是:
- 链上数据索引
- 预言机
- ZKML
这三大应用场景,而三种场景都包含的项目为General-ZKM,在链下运行的虚拟机又各有不同,如Delphinus 的zkWASM,和Risc Zero 的Risc-V架构。
4.1 协处理器 vs. Layer2
与Layer2不同的是:
- 协处理器是面向应用的
- 而Layer2仍然是面向客户端的。
协处理器可作为一个加速组件或者模块化的组件,构成以下几种应用场景:
- 1)作为ZK Layer2的链下虚拟机组件,这些Layer2可以将自己的VM换成协处理器。
- 2)作为公链上应用offload算法到链下的处理器。
- 3)作为公链上应用程序获取其它链可验证的数据机。
- 4)作为一条链上跨链桥的传递渠道。
对于处理器来说,需要了解其带来了全链的同步数据与高性能节点可信计算的潜力,能够通过处理器重构几乎整个区块链的所有中间件。包括:
- Chainlink、The Graph目前也在开发自己的ZK预言机
- 跨链桥如Wormhole、Layerzero等也在研发基于ZK的跨链桥技术
- 链下的LLMs(大模型预言)的训练以及可信推理
- 等等。
4.2 协处理器遇到的问题
协处理器遇到的问题:
- 1)有影响力,ZK技术从业,但是技术点仍然在不断发展,因此,由于掌握技术,可能更多地关注自身,从而进一步提高工作效率。
- 2)zkVM 性能非常复杂涉及多个维度(包括硬件、单节点与多节点性能、内存使用、递归成本、哈希函数选择等因素),目前各个维度都有在构建项目中,性能处于非常早期,并且还不明朗。
- 3)从硬件来看,目前主流的ASIC以及FPGA方式构建,厂商包括Ingonyama、Cysic等,也仍然处于实验室阶段,仍未商业化落地,期待硬件是ZK技术大规模落地的前提。
- 4)技术路径相似,很难在技术上隔代领先,目前主要比较拼的VC资源以及团队BD能力,是否能拿下主流应用和公链的生态位。
参考资料
[1] NEARWEEK 2024年3月14日博客 zkWASM: The VM to rule them all?
[2] Hyper Oracle 2022年11月26日博客 zkWASM, The Next Chapter of ZK and zkVM
[3] Gate Ventures 2024年6月20日博客 “ZK” Is All You Need