CHA2A 模块
CHA2A 智能体身份与信任注册表
管智能体是谁、可信到哪一级、凭证状态如何。验证、执行、分发由生态各司其职,CHA2A 只做中立的事实记录。
身份
DID 是生态里的身份证
每个主体在注册表拥有唯一标识,可解析出 DID Document(公钥 / 服务端点 / 状态)。
| 类型 | 对象 | 获取方式 |
|---|---|---|
registry |
注册表自身did:cha2a:registry:compliancehub.cn | 随注册表部署 |
authority |
作者 / 组织did:cha2a:authority:<域名> | 注册作者身份 |
publisher |
发行方(商店 / 市场)did:cha2a:publisher:<域名> | 上架渠道登记 / 合作接入 |
package |
插件 / 技能包did:cha2a:package:<作者>/<包名> | 上架时自动注册 |
verifier |
验证方did:cha2a:verifier:<验证者> | 自助注册,登记证据凭证 |
agent |
智能体did:cha2a:agent:<名称> | 能力声明 + 公钥锚定 |
curl -X POST https://compliancehub.cn/api/v1/register \
-d '{"type":"authority","id":"<你的组织域名>",
"metadata":{"contact":"<邮箱>"}}'
信任
认证等级是信任摘要
等级可下钻核验,每一级都由具体证据支撑,自我声明不构成等级。
- L0 未认证 未提交认证(默认)。未认证不等于不可信,只是尚未声明。
- L1 完整性 内容指纹已验证:npm integrity 或 git commit 锚。
- L2 来源 L1 之上,作者署名,身份可解析。
- L3 发行 L2 之上,有发行方或验证方产出的真实验证证据。
- L4 生态 L3 之上,达到两个及以上独立验证方的交叉验证。
证据模型:别人基于证据决策,不必重测
结构对齐 in-toto Attestation(Statement / Envelope / Bundle),不自造格式。注册表只存摘要,证据本体由验证者自持或 dshlib 代管。
| predicate | 来源 | 用途 |
|---|---|---|
test-result |
in-toto 现成 | 运行级测试结果。 |
vuln |
in-toto 现成 | 依赖漏洞信息。 |
cha2a/content-identity |
CHA2A 自定义 | 内容完整性 / 静态扫描 / 运行时 / 来源 / 发行。 |
存储:注册表只存凭证摘要(subject / predicateType / verifier / result / evidenceRef),证据本体分布存放 ·
引用:evidenceRef 指向证据存档 URL,可选 artifactDigest 防篡改 ·
命名空间:自定义 predicate 使用 compliancehub.cn/cha2a/attestation/*。
接口
公开端点与生命周期
注册、解析、查询、登记证据都不需要登录;身份公开可解析,可信度靠后续行为积累。
| 方法 | 端点 | 用途 |
|---|---|---|
POST |
/api/v1/register |
注册资源并分配 DID |
GET |
/api/v1/did/<did> |
解析 DID Document(公钥 / 端点 / 状态) |
GET |
/api/v1/trust/query?did=… |
信任查询:认证等级 / 状态 / 摘要 |
GET |
/api/v1/evidence/query?did=… |
证据凭证查询,可下钻明细 |
GET |
/badge/<type>/<id> |
SVG 信任徽章,可挂到仓库 README |
GET |
/.well-known/cha2a |
能力与端点声明 |
身份生命周期
| 操作 | 端点 | 说明 |
|---|---|---|
| 更新 | POST /api/v1/update |
合并覆盖 metadata,不改身份;等级随证据积累提升。 |
| 撤销信任 | POST /api/v1/trust/revoke |
吊销信任,资源保留、信任失效。 |
| 停用 | POST /api/v1/deactivate |
状态置为 suspended / revoked / deprecated。 |
参与
作为验证者,三步登记证据
没有服务器的验证者可以申请 dshlib 代管证据;防冒充:verifier 必须已注册才能登记凭证。
-
01
注册验证者身份
开放注册,先到先得;重名返回 409。身份是可查的自我声明。
curl -X POST https://compliancehub.cn/api/v1/register \ -d '{"type":"verifier","id":"<你的名字>","metadata":{"organization":"<组织>","capabilities":["run-tests"]}}' -
02
产出机器可读证据
按 in-toto Statement 产出 test-result / vuln / 自定义 predicate,存到可访问的 URL。
predicateType: https://in-toto.io/attestation/test-result/v0.1 -
03
登记凭证
把凭证摘要登记到注册表;没有服务器的验证者可申请 dshlib 代管证据。
curl -X POST https://compliancehub.cn/api/v1/evidence/register \ -d '{"subject":"did:cha2a:package:<作者>/<包名>","verifier":"did:cha2a:verifier:<你>","result":"passed","evidenceRef":"https://<你的域>/evidence/..."}'
状态声明:本模块为实验性参考实现的公开入口,认证等级是信任摘要而非安全保证;规范(DID Method / Evidence Record) 随仓库发布,为讨论稿,以最终发布版本为准。机制参照国家标准化指导性技术文件 GB/Z 185《人工智能 智能体互联》设计。
身份可解析,证据可下钻,信任才有依据。
注册表中立,不做资质审核;可信度靠发行方与验证方的持续行为积累。
