本文详细介绍了Jolt zkVM 的工作原理,它是一个为 RISC-V 架构设计的零知识虚拟机,由 a16z 开发,并采用 Lasso 查找参数来证明 VM 执行的正确性,文章详细解释了指令查找、离线内存检查和 Rank-1 约束系统 (R1CS) 三个主要组件,以及它们如何协同工作以确保 VM 执行的正确性。
本文分析了多种虚拟机/指令集架构(VM/ISA)在以太坊长期发展中的优劣势,包括EVM、RISC-V、MIPS、WASM、eBPF、CairoVM、Valida和PetraVM,并从设计简洁性、执行性能、生态系统、工具、智能合约开发体验以及ZK友好性等方面进行评估,最终作者倾向于通过 WASM 进入自定义 RISC-V 扩展的优化路径。
zkSecurity 团队与 a16z 合作,对 Jolt zkVM 进行了深入研究,发现了多个严重的安全漏洞,如执行跟踪验证、输出检查和内存布局约束等方面的问题。这些漏洞可能允许恶意证明者绕过验证。Jolt 团队已经修复了这些问题, 并通过这次合作显示了对 zkVM 进行安全审计的重要性。
ZisK 团队在可验证计算领域取得了突破性进展,他们实现了 1.5 GHz 的 RISC-V 跟踪生成速度,比其他公开的 zkVM 快约 10 倍。该方案通过高效的代码翻译和内存解耦并行化策略实现了这一目标,解决了零知识证明中最顽固的瓶颈问题,为实时、按需的 ZK 证明铺平了道路。
本文探讨了EVM(以太坊虚拟机)的未来发展方向,提出了三种潜在的EVM升级方案:一是优先考虑快速执行和标准工具链,但牺牲ZK证明速度;二是优先考虑快速ZK证明,但牺牲执行速度和标准工具链;三是采用两步法,即先使用区块链友好的VM,再使用ZK-VM,但也会牺牲标准工具链。并分析了每种方案的优缺点,以及对以太坊未来发展的影响,最后建议以太坊社区深入研究这些方案。
本文介绍了MOCA意大利黑客训练营CTF竞赛中一个名为“2+2=5”的密码学挑战,该挑战利用了修改后的Jolt zkVM。挑战要求参与者构造一个无效的RISC-V程序执行证明,利用Jolt库中的漏洞,使得程序输出错误的结果“5”,从而绕过服务器的验证并获得flag。
该文章提议用RISC-V取代EVM作为智能合约的虚拟机语言,旨在提高以太坊执行层的效率和简化性。此举将优化ZK-EVM的性能,并可能带来超过100倍的效率提升。文章还讨论了多种实现方案,包括支持双虚拟机、将现有EVM合约转换为调用RISC-V编写的EVM解释器合约等。
本文介绍了SP1 zkVM的设计原理,重点分析了zkVM如何执行用户程序,并生成零知识证明。文章详细解释了zkVM的编译器、指令集架构、以及证明系统的核心代码实现,帮助读者理解这一前沿技术的运作机制。
EVM 变 RISC-V?聊聊 RISC-V 的前世今生和 Web3 领域的应用
RISC Zero正与Veridise合作,使用Picus工具对zkVM的组件进行形式化验证,以提升ZK安全性。通过数学方法证明电路的确定性,从而消除约束不足的错误,已成功验证Keccak加速器电路的确定性,并正在验证RISC-V电路。此举旨在创建一个既快速又安全zkVM,使开发者无需在性能和安全性之间妥协。
该文章提出了一个激进的想法,用RISC-V取代EVM作为智能合约的虚拟机语言,旨在提高以太坊执行层的效率,并简化其复杂性。文章探讨了实现这一想法的几种方式,包括支持两种虚拟机、将现有EVM合约转换为调用RISC-V编写的EVM解释器合约等,并分析了此举在长期内对以太坊L1扩展的潜在益处,尤其是在零知识证明(ZK-EVM)方面。
该文章提出了一个激进的想法,即用 RISC-V 替换 EVM 作为智能合约的虚拟机语言,以提高以太坊执行层的效率和简化性。核心思路是利用 RISC-V 在 ZK-EVM 证明方面的优势,同时保持现有的账户、跨合约调用和存储等抽象概念不变,并确保与旧式 EVM 合约的互操作性。