a16z推出零知识证明新工具Lasso和Jolt:提升SNARK性能与开发体验

23-08-14 19:00
阅读本文需 7 分钟
总结 AI 总结
看总结 收起
原文来源:Felix, PANews


a16z Crypto 推出了两项与 SNARK 相关的技术:Lasso 和 Jolt。其中 Lasso 是一种新的查找参数,可以显著提高证明者成本;Jolt(Just One Lookup Table)是一个专为与以太坊虚拟机兼容的 Rollups 设计的框架,一种利用 Lasso 构建 SNARK VM 的新颖方法。Lasso 和 Jolt 可以显著加快 Web3 中的扩展和构建应用程序,它们共同代表了一种全新的 SNARK 设计方法,可将广泛部署的工具链的性能提高一个数量级甚至更多级。此外提供了更好、更方便的开发者体验,并使审计变得更加容易。Lasso 和 Jolt 解决了三个关键问题:性能、开发人员体验和可审核性。


更快的性能


Lasso 是一种新的查找参数,其中证明者承诺比以前的工作更少且更小的值。a16z crypto 的研究团队表示,Lasso 可以显著提高 SNARK 证明者的整体速度,与Halo2 工具链等工具相比,性能提高十倍,从而有助于开发更快的 ZK-rollups。预计优化完成后性能将提高约 40 倍。因此,该团队认为 Lasso 的证明者技术将超过主要以太坊 L2 扩展解决方案所采用的所有现有零知识 SNARK 证明者技术。


Jolt 实现了「查找奇点(lookup singularity)」——这是以太坊基金会的 Barry Whitehat 最初提出的愿景,旨在实现更简单的工具和轻量级、以查找为中心的电路。相对于现有的 zkVM,团队期望 Jolt 能够实现类似或更好的性能,而且重要的是,能够提供更加简化和易于访问的开发人员体验。


更便捷的开发者体验


与现有方法相比,Lasso 为实现 zkVM 提供了一条对开发人员更加友好且可审核的路径。


先前的 SNARK 设计方法将 CPU 指令制定为电路并进行手动优化——这是一项低级且易出现错误的任务,需要特定领域语言的专业知识。相比之下,不同语言生态系统的开发人员应该能够相对轻松地使用 Lasso。


这是因为在 Lasso 中,一条指令是通过其子表分解来定义的:它的「大」查找表可以由一些较小的「子表」组成。更重要的是,这样的分解可以用高级编程语言简洁地描述。例如,一条指令只需 50 行 Rust 即可实现。此外,不同指令集中的许多指令在概念上是相同的,大量代码允许重复——例如,WASM、EVM 和 RISC-V 都指定相同的基本算术、按位和比较操作。


更容易审核


Lasso 简化开发人员体验的方式也使其比以前的方法更容易审核。zkVM 的可审计性尤其有价值,因为如今许多 SNARK 已经在区块链上获得了巨大的价值。由于 Lasso 在 Rust 中实现指令逻辑,并鼓励跨指令集的代码重复,因此它将要审计的区域集中到相对较小且可读的代码库中。


目前,除了完全实现 Jolt 所需的工作之外,还有许多任务正在进行中或等待其他开发人员完成,包括:


- 实现/集成不同的多项式承诺方案,例如KZG的 Multilinear Variants(PSTZeromorph等)、DoryLigeroBrakedown和 Sona

- 实现 Quarks 论文第六节中描述的产品参数优化

-更广泛的基准测试和错误处理

- 利用 SNARK 递归实现高效的链上证明验证


参考资料:The Blocka16z Crypto
相关阅读:零知识证明| 什么是 ZK-STARK 以及有哪些技术优势?

来源链接


欢迎加入律动 BlockBeats 官方社群:

Telegram 订阅群:https://t.me/theblockbeats

Telegram 交流群:https://t.me/BlockBeats_App

Twitter 官方账号:https://twitter.com/BlockBeatsAsia

本平台现已全面集成Farcaster协议, 如果您已有Farcaster账户, 可以登录 后发表评论
选择文库
新增文库
取消
完成
新增文库
仅自己可见
公开
保存
纠错/举报
提交