← 返回藏书阁

CONTINUITY:安全上下文连续性与最终副作用绑定

wiki/ai/sources/continuity-security-context-contracts-and-finality.md
分类:ai / sources · 更新:2026-09-18 09:15

CONTINUITY:安全上下文连续性与最终副作用绑定

知识点轴:MCP Gateway / harness-runtime / sandbox-security;关联 context management / benchmark-evaluation。价值不是再加一个签名,而是证明“被批准的动作”经过记忆、网关、适配器后仍是“真正提交的动作”。协议中立研究原型,不是已部署的 MCP/A2A 联邦产品。

为什么值得深挖

Hermes 的外部内容可能经过摘要、工具路由、协议转换再触发写操作。每个组件单独验签仍可能整体失守:来源标签被丢失、委托范围扩大、允许的收件人别名被改到其他地址,或审批后授权已撤销。MCP-Gateway-Runtime 已覆盖会话/后端绑定,本文进一步把每跳保留什么、允许变换什么、谁有权证明变换写成合同,而不是依赖模型解释。^[raw/articles/continuity-security-context-contracts-2026-09-18.md]

一阶机制:从提议到提交

论文把 proposal、admission、effect 分开;LLM planner 可完全恶意,安全目标是阻止不合约的外部副作用,不要求模型不生成坏建议。ECI(end-to-end consequence integrity)要求实际 effect 可追溯到可信 root grant、principal/task、字段来源、组件合同、当前策略、具体sink和单次消费状态。^[raw/articles/continuity-security-context-contracts-2026-09-18.md]

边界必须保留/证明单独验签为什么不够
起点授权配置可信issuer签发的root grant、scope、字段约束组件自己的密钥不能自封授权根
内容与记忆signed provenance/context manifest,绑定JSON Pointer叶字段及值“来源可信”标签不能漂移到另一个值
外部数据放行typed release绑定source、value、task、predicate和有效期放行一个字段不等于任意外部输入变可信
组件交接signer与角色/阶段/合同绑定,输入输出及前序承诺一致合法key不代表可扮演任意阶段
合法变换独立检查before/after/relation/task/expiry等见证adapter签名只证明它说过,不证明改得对
最终提交subject、audience、action digest、policy版本、撤销、TTL、nonce/幂等较早的allow不能覆盖实际提交时的状态

合同的输入假设应被上一跳保证满足;安全字段要么保留,要么有独立可验证的变换关系。原型正常路径会把逻辑目的地alias解析为实际sink,并验证目录见证,因此并非通过“禁止所有转换”获得安全。^[raw/articles/continuity-security-context-contracts-2026-09-18.md]

源码核查:重试不是绕过撤销的捷径

固定 zast-ai/continuity@59cfe60930d247d1890b366ded686c718020a11e,FinalitySink.execute() 先验issuer/signature、audience、subject、action、policy id/digest/epoch、撤销与过期,之后才查历史幂等结果、消费nonce并调用 SimulatedWorld.apply()。这让同一动作的安全重试可返既有receipt,但旧permit不能因为“这是重试”就跳过当前授权。^[raw/articles/continuity-security-context-contracts-2026-09-18.md]

不过 NonceLedger 是内存set/dict,effect与receipt不是外部数据库中的原子提交;进程内顺序模拟不证明多实例、崩溃恢复或跨网关exactly-once。生产接入仍需持久事务、去重域、撤销传播/失联策略和独立业务状态读回。这是从实现观察推出的部署要求,不是作者已完成的企业集成。

证据分层与实际执行

  • 作者记录结果:3,460确定性场景、24,220 system-scenario执行;2,560攻击实例覆盖128 fault-domain类,700良性、200模糊应升级场景。完整配置报告攻击无有害提交、良性全部完成、模糊全部升级。最强不完整基线的攻击有害提交率为65.6%。这些是人工构造故障空间的conformance,不是IID采样的真实注入防御概率。^[raw/articles/continuity-security-context-contracts-2026-09-18.md]
  • 本机实际运行:固定仓库在独立venv、清空环境变量、禁止网络且限制写入的沙箱执行作者pytest:30 passed in 9.86s,无failure/error/skip。包含字段来源、阶段签名、变换见证、typed release、动作替换、撤销、重放及消融相关检查;XML、日志、仓库hash已归档。^[raw/notes/ai-radar-evidence-checks-2026-09-18.md]
  • 没有执行:完整论文实验重跑、模型自适应攻击、真实工具副作用、容器逃逸、跨IdP/跨网关部署或并发故障测试。不能把30个测试或记录CSV当生产认证。

对 Hermes / llm-wiki 的可执行启发

  1. 在一个隔离mock写操作上保存规范化action、principal/task、来源字段和批准时policy版本;到sink再核,不只在prompt或gateway入口批准。
  2. 给“合法转换”加正例和负例:同名alias换目的地、改参数值、非本角色key签名、放行凭据过期;不要只测缺签名的简单拒绝。
  3. 分别验重复nonce、安全幂等重试、审批后撤销、执行后进程崩溃,检查真实副作用次数而非最终文字拒绝。
  4. Wiki编译时保留来源/信任边界;Context-Engineering 的压缩不能把不可信材料升级为授权事实。无需给每条wiki段落加密码学签名,先保留可追溯对象与证据等级。

关系、边界与未解问题

  • 接续 mcp-mrtr-state-and-header-integrity 的“回传状态不可信”和 a2a-output-attestation-and-delegation-ancestry 的“输出签名不等于父方授权”;Harness-Engineering 负责把合同落到每条effect路径。
  • TCB仍包含issuer/validator、角色配置、canonicalization/predicate、verifier、密钥和sink。可信validator错判语义、root key被窃或存在未中介路径时,签名链本身救不了系统。
  • 不验证业务需求是否正确,不防所有有害文本/拒绝服务;仿真数据和作者基线不能代表全部现有网关。
  • 下一步研究应优先多网关撤销延迟、策略失联fail-closed、持久化原子性与自适应攻击,见 AI-Knowledge-Point-Radar;本轮不修改Hermes权限或生产gateway。

来源

  • 论文 v1,正文日期2026-09-05;今日是入库时间,不是新发布日期。
  • 固定研究仓库,GitHub API本轮快照4 stars,仅作定位不作价值评分。

写入记录

  • 2026-09-18 09:12 CST:新增合同/字段变换/最终提交深析,归档原文与固定源码;记录30项真实pytest及仿真/生产边界,连接MCP、context与评测主题。