零知识证明能证明算对了,却证明不了没看见

原文链接:www.microsoft.com/en-us/resea...

微软研究院这篇博客介绍的是 Magnetar,一个零知识虚拟机(zkVM)。它要解决的问题可以用一句话说清:一个程序跑完,除了输出结果,再附上一份很短的证明,证明"这个程序在这些输入上确实得出了这个输出";拿到证明的人用毫秒级时间就能核对,不用重跑程序,不用相信跑程序的人,也不用接触原始数据。零知识的性质则保证证明本身不泄露那些应当保密的输入。

文章把这项技术迟迟没有普及归结为三个一直没能同时解决的难题。第一是效率,生成证明的计算量历来是运行程序本身的数百万倍,之前最快的系统都是在别处让了步才换来速度。第二是通用性,很多证明系统要求开发者把程序手工改写成密码学电路,一改就是几个月,应用每改一次就得重写一次电路,改写过程本身还经常引入安全漏洞。第三是安全基础,许多系统依赖椭圆曲线,扛不住足够强的量子计算机;已有的后量子方案要么依赖格假设,要么依赖为了降低证明成本而新发明的密码学函数,有的甚至建立在纠错码的未证明猜想上。

Magnetar 声称在三个方向上同时有实质进展。它证明的是 RISC-V 处理器的执行,所以用 Rust、Go 或 C 写的程序照常编译,就可以原样被证明,业务规则、数据管线乃至一个 EVM 解释器,都只是"一个程序"。速度上,它在笔记本电脑上每秒能证明七百二十万到八百七十万条处理器指令;在从密码学哈希到小型 EVM 解释器里的代币转账等十五个基准程序上,平均比同一台机器上最快的现有 zkVM 快十到三十九倍,在代币转账基准上比另外两个系统快三百倍以上;优化版本每秒九百五十万到一千二百八十万个周期,各项加速比再乘以约 1.3。证明的核验约需十二毫秒。安全上,它只依赖 SHA-256 或 SHA-3 这类标准哈希函数,不需要椭圆曲线、格、专用哈希、可信设置,也不依赖任何纠错码猜想。文章顺带指出一个结构上的好处:核验 Magnetar 证明主要就是做哈希和二元域运算,恰好是它最擅长证明的东西,于是可以把大计算拆成小段分别证明再合并,也能证明账本、区块链这种长期运行的系统。它是微软十多年这条研究线的汇合点:从 Spartan 回到 sum-check 并去掉可信设置,到 Phalanx 利用指令循环的重复性,Nova 一系的折叠,Brakedown 第一次把 Spartan 放到标准哈希上,再到 Lasso、Twist and Shout 让内存操作变便宜、Jolt 证明完整处理器,最后 BinarySpartan 搬到二元域。文章给出的应用设想里,最值得注意的一条是 AI 智能体可以为它的每个动作附上证明,表明动作符合它被赋予的策略;另一条是受监管的金融机构可以证明交易处理正确,而不必公开交易本身。

放在"服务端隐私的可外部验证化"这条线上,Magnetar 的意义首先在于它换掉了信任的根。十月四日读的 Google 那篇《Toward provably private learning from federated data》,整套保证最终落在 TEE 硬件证明上:access policy 公开到 Rekor,KMS 只向匹配 policy 的已证明负载放钥,而能核对这一切的实际上是审计者。当时记下的软处就是"证明之根是 TEE 硬件"。Magnetar 给出的是另一种根:不需要可信硬件,只需要人们已经信任了几十年的哈希函数,核对者也从审计者扩大到任何拿到证明的人,十二毫秒的核验成本意味着核对可以变成默认动作而非专门活动。这一步确实把"可外部验证"往前推了。

但如果仔细看它到底证明了什么,就会发现它和这条线原本追求的东西并不重合,所以我认为它对这条线的作用是复杂化而不是单纯推进。Magnetar 的证明陈述是"这段程序在这些输入上产生了这个输出"。零知识保护的是证明者手里的输入,不让核验者看到;而服务端隐私的问题方向恰好相反,是用户想让数据不被服务端看到。在零知识证明的框架里,服务端就是证明者,它本来就持有全部输入。Google 那套设计回答的是"谁能读这份数据",答案由密钥归属决定;Magnetar 回答的是"对数据做的那一步计算是不是按声明的程序做的"。前者是"证明看不到",后者是"证明算对了"。一份 Magnetar 证明不能说明服务端没有另外复制一份数据,也不能说明它没有在证明之外跑别的程序。九月二十日 ZCode 那篇里得出的"云端留存按性质无法外部验证",后来在 Google 那篇之后被收窄为"未被设计成可验证";Magnetar 并没有进一步动摇这个判断,因为留存与否本来就不是一段计算的输出。

这条区分在文章自己举的智能体例子里最清楚。十月十七日读的《PROBE: Learning to Audit Policy Compliance in Tool-Using LLM Agents》里,合规审计的难处在于训练期的 LLM 裁判会被优化器刷分,判据必须完全确定性才能不被优化。Magnetar 正好能把一段确定性的策略检查程序变成任何人可核对的证明,这与那条线"判据外移到确定性第三方产物"的方向一致。但证明成立的前提是输入真的就是智能体实际做过的那些动作;证明只绑定程序和它被喂进去的东西,喂进去的是否是真实轨迹,需要证明之外的机制来担保,比如签名、承诺,或者恰恰是 TEE。所以我更倾向于认为,这条线接下来不是密码学证明取代可信硬件,而是两者分工:硬件或密钥管"谁能读、输入从哪来",证明管"读到之后怎么算"。十月五日 Kolibri 那篇代表的是第三条路,数据干脆不出楼,核对近乎免费,代价转成硬件,它和这里的两种方案解决的也是不同的那一半。

这个判断依赖几处原文没有给全的东西。速度数字都是与"同一台机器上最快的现有 zkVM"相比,博客里没有点名这些基线是谁,也没有说十到三十九倍里哪些基准落在哪一端;文中只说技术论文给出完整的设计、安全分析和测量,我没有看到那篇论文。更关键的是,原文给了每秒能证明多少条指令,却没有给相对原生执行的开销倍数,所以开头那个"数百万倍"的历史数字到底被压到了多少,这篇博客没有回答,"证明像运行程序一样日常"目前仍是愿景而不是测量。另外这是作者团队自己的发布,加速比没有第三方复现。

什么会改变这个判断?如果出现把 zkVM 跑在 TEE 里、由硬件证明输入来源、由密码学证明计算过程的组合部署,那就印证了分工而非替代的读法。如果出现一种不依赖硬件、纯靠承诺与证明就能约束服务端"不另作他用"的方案,那么"证明算对了"与"证明看不到"之间的这道缝就会被跨过去,这条线的根也就真正从硬件换成了数学。反过来,如果独立测量显示 Magnetar 在真实负载上相对原生仍有数个数量级的开销,那么它近期能覆盖的只会是策略检查、凭证核验这类小而关键的计算,离"通用计算的默认输出"还很远。

相关推荐
生石花1 小时前
《我和AI的28天》Day 3-6:让AI学会点菜,我学会了不被它骗
人工智能
lucas_AI1 小时前
Agent 工具箱越大越难选?Tracer 砍掉八成工具 schema,选得反而更准
llm·agent
W***25921 小时前
2026企业AI办公工具选型指南:适合团队使用的AI办公产品有哪些
大数据·人工智能
9i编程1 小时前
4. 带 AI 从零搭低代码平台·踩坑实录:回头补 change-2,欠的账一条条还
人工智能·openai·ai编程
用户097581612131 小时前
DeepSeek V4.1-Flash-1017 发布:当"许愿式编程"成为 API 调用
人工智能
元宇宙时间1 小时前
SPA将于10月18日20:08正式上线,开启生态发展新篇章
人工智能
预知同行1 小时前
token 自由之后:我把本地小模型接进了日常开发工作流
人工智能
摇滚侠1 小时前
《大模型应用开发实践:基于 Spring AI+DeepSeek 实现》第 11 章 大模型技术概览 阅读笔记 1
人工智能·笔记·spring
代码方舟1 小时前
Java数据工程:利用天远人脸身份证比对A优化长租公寓租客在线签约人证合一审查体验
人工智能