桃子桃子快讯
返回首页
工具

Rubric 开源 AI 智能体决策存证系统:写入免费、验证 0.1 美元

Rubric Protocol 发布决策存证(DAR)系统,AI 智能体决策默认仅以哈希提交,写入免费、链上验证每次 0…

2026.09.24 · 周四4 分钟阅读

Rubric Protocol 在 Hacker News 上以 Show HN 形式开源了一套面向 AI 智能体的决策存证系统「Rubric Decision Attestation」。其核心思路与传统审计追溯产品相反:决策记录的写入永久免费,只有当外部需要「怀疑」并发起验证时才收费,机器对机器通过 x402 协议调用,任何人都可以花 0.10 美元验证一条记录,无需注册账号。

记录格式与可信设计

每条记录仅包含哈希承诺,不携带原始负载:

  • 哈希算法统一为 SHA3-256,规范化遵循 JCS(RFC 8785)。
  • 字段集合在 spec/dar-0.1.md 中冻结,向后兼容的扩展才允许小版本号递增。
  • 决策的 schema、input、output 各自哈希后再生成 decisionHash,原始内容仅在显式开启 mode: "payload" 时才随传输信封发出。
  • 同一 agentId 的记录组成链式结构并附带 Merkle 证明,由分布在多个区域的 ML-DSA-65(后量子)密钥进行门限签名。
  • 签名完成后数分钟内锚定到 Hedera 主网(HCS),任何人(包括运营方)都无法回溯篡改。

项目方同时坦承当前局限:签名联邦目前由 Rubric 自营的三个区域组成,门限签名能抵御单点密钥失陷,但尚不能防范运营方整体作恶;引入独立第三方运营节点是路线图目标。

SDK 与运行保证

系统以 npm 工作区单体仓库形式发布,核心包为 @rubric-protocol/attest-decision:

  • attest() 采用「即发即忘」模式,典型负载下返回时间低于 1 毫秒,不向应用代码抛出异常,失败记录落入本地持久化队列。
  • 队列按 64 条或 5000 毫秒批量 flush,进程 kill -9 也不会丢失已暂存记录,下一次启动时自动排空。
  • 写入使用 writeSync(无 fsync)以保证进程崩溃可恢复;批量 flush 前进行后台 fsync,队列压缩后再对目录 fsync,兼顾电力异常场景。
  • 默认上限:决策体 256 KiB、本地队列 50 MB(满则丢弃最旧并通过 onError 通知)、HTTP 超时 30 秒,baseUrl 必须为 HTTPS。
  • 投递语义为 at-least-once,消费端需按 decisionId 去重。

验证端点位于 https://rubric-protocol.com/v1/x402/decision-verify,支持 GET 自描述价格与返回结构。它会校验内部一致性(Merkle 证明折叠、签名、DAR 版本)以及与链上锚定引用的对应关系,但不会单独确认「根是否真正落到 HCS」或「签名密钥是否被信任」——后者由独立的 attestation 服务负责。

仓库结构

monorepo 拆分为五个按阶段推进的包:

  • packages/attest-decision:核心 SDK,含 DAR 构建器、JCS 规范化、SHA3-256、批量器与持久化队列。
  • packages/attest-index:基于 SQLite 日分片的索引库,支持 byDecisionId、byAgentRange、byAgentSchema、chainHead 等查询。
  • packages/jev:Jev 决策形态到 DAR 的适配器。
  • packages/schema:JSON Schema/Zod 到 DAR 的适配器。
  • packages/verify:x402 网关下的验证路由,含 Merkle 证明、HCS 锚定引用、签名校验与链连续性检查。
  • packages/evidence:离线证据包导出 CLI,可从索引分片生成 DAR、证明、锚定、连续性与 schema 变更日志。

仓库内置 CI(lint + typecheck + build + test),需 Node.js 20 及以上;spec/dar-0.1.md 与 CHANGELOG.md 分别记录冻结的记录格式与发布历史。

信源