Skip to content

跨 Agent 零知识谓词证明网关与来源完整性缺口 ​

摘要 ​

该研究实现了一个跨 MCP 与 Agent-to-Agent Protocol(A2A)的零知识证明网关:持有敏感数据的 Agent 不再传输原值或不可验证的自然语言自述,而是提交由治理规则定义的谓词证明。作者在单 vCPU 上测得 32 位阈值谓词生成耗时 6.2 ms、验证耗时 1.0 ms,Bulletproofs 证明大小为 608 字节;11 项对抗实验和 19 项协议检查全部通过。

核心限制同样重要:证明只能说明某个承诺值满足谓词,不能自动证明该值来自权威记录。论文提出把可信执行环境证明与谓词证明双向绑定,但只使用 Mock 证明机构完成验证,尚未在真实 Nitro Enclaves 或 Confidential Space 上验证硬件信任根与开销。

核心创新与差异 ​

原研究贡献。 论文把“只披露策略判断结果”从概念推进为可运行网关,提出 zk-attach/v0 附件,在同一验证路径上承载 MCP Tool 调用和 A2A 交接中的承诺、谓词版本、Nonce、动作引用与证明,并以哈希链审计日志保存可复核证据。

本站分析。 现有身份与委托控制回答“谁可以请求什么”,本文补充“已允许的交互最少需要披露什么”。它与模型属性的零知识证明不同:证明对象是 Agent 间交换的结构化业务谓词,而不是模型推理正确性。其首个失效控制是跨 Agent 委托仍传输不必要原值,主要修复责任在协议网关、谓词治理与数据源连接器。

协议定位与消息流程 ​

  1. 依赖方 Agent 向网关请求带 Nonce、谓词标识与动作引用的验证上下文。
  2. 证明方 Sidecar 从数据源读取私密值,生成 Pedersen 承诺和谓词证明。
  3. MCP Tool 调用或 A2A 交接只携带 zk-attach/v0 证明附件,不携带私密原值。
  4. 网关校验治理签名、谓词版本、双方身份、Nonce、动作引用与证明,并把结果写入哈希链日志。
  5. 依赖方只获得谓词真值、承诺和审计句柄,再据此允许或拒绝后续动作。

下面是依据论文消息字段重构的非生产示例,不包含真实证明字节或身份材料:

json
{
  "schema": "zk-attach/v0",
  "predicate": "order_notional_cap@3",
  "request_nonce": "TEST-NONCE",
  "action_ref": "DRY_RUN/order-42",
  "prover": "agent://risk.example.invalid",
  "verifier": "agent://execution.example.invalid",
  "commitment": "<placeholder>",
  "proof": "<placeholder>"
}

测试应确认更换谓词版本、Nonce、动作引用、Agent 身份、承诺或证明中的任一项都会失败,并检查敏感原值未进入消息、共享记忆与审计日志。

实验设计与实际过程 ​

以下均为作者实验,本站未独立复现。实现同时提供 Sigma 协议基线和 Rust Bulletproofs 引擎,并在本地 Kubernetes 中部署网关、证明 Sidecar、谓词注册表与审计日志。作者以订单金额不超过客户额度为案例,测量不同位宽与聚合数量的证明性能,并执行篡改、重放、伪造、弱化谓词注册和协议兼容检查。

来源完整性扩展让证明吸收证明文档摘要,同时让证明文档的 report_data 绑定承诺、谓词、版本、Nonce 与动作引用;21 个单元测试覆盖生成、验证和测量值注册。硬件证明机构仍为公开种子派生的 Mock,因此只能验证协议状态机和双向绑定实现,不能提供真实硬件安全属性。

关键结果与实际影响 ​

  • 32 位阈值证明在一台通用单 vCPU 上生成 6.2 ms、验证 1.0 ms,大小 608 字节;这是可行性数据,不是生产容量保证。
  • 11 项对抗实验和 19 项协议检查按预期通过,说明所测实现能拒绝篡改、重放、错误谓词版本与伪造证明。
  • 敏感值不跨越 Agent 边界,依赖方只获得策略谓词结果;但谓词名称、调用频率、通信双方和时间仍会泄露元数据。
  • 双向绑定可以把“谓词成立”和“指定二进制生成承诺”合为一个验证链,却仍需保证该二进制通过端到端加密连接读取真实数据源。

防护措施与验证方法 ​

谓词注册表应由独立治理密钥签名并版本化;每份证明必须绑定请求 Nonce、动作、双方身份和谓词版本。证明失败、注册表不可用或来源证明缺失时,应根据动作影响采用默认拒绝或可信人工升级,不能退化为 LLM 自述。

部署验证还应检查证明 Sidecar 与数据源的网络隔离、审计日志的追加写入完整性、旧证明跨请求重放、谓词迁移窗口和元数据泄露。需要来源完整性时,应在真实硬件上验证证明链、测量值轮换、证书链开销及 TLS-over-vsock 数据源连接。

局限与待验证问题 ​

证据等级为 moderate:论文提供完整实现、日志和复现实验,但结果来自单一作者项目,尚无独立复现。结构化范围、集合、阈值与布尔谓词适合电路表达;“沟通是否合宜”等模糊判断仍需模型或人工决策,零知识证明不能让这类判断本身变得可靠。

zk-attach/v0 只是论文提案,并非 MCP 或 A2A 标准字段。真实硬件证明、跨组织身份联合、谓词治理、故障处置和流量元数据保护仍待验证;本文也不涉及可验证 LLM 推理。

参考链接 ​