SPEC v0.1.0 · rentgpu 行情数据交换规范 v0.1 的机况维度扩展
CVIN 编码与观测记录规范 v0.1
版本化、公开治理。任何实现者都能按本页独立生成与验证 CVIN,无需许可、无需调用我们的服务。
01 · CVIN 编码
一个 CVIN 由四段规格 + 一段序列号哈希构成,对人可读、对机可解析。
cvin:<mfr>.<model>.<form>.<mem>:<serial-hash-16>
cvin:nv.h100.sxm.80g:7f3k9d2m8x1q4p6a
cvin:nv.a100.pcie.40g:2b8n5t7r0w4y9e3u
| 段 | 含义 | 取值 |
|---|---|---|
| mfr | 厂商代码 | nv / amd / intc / hbn … |
| model | 型号族 | h100 / h200 / b200 / a100 / mi300x … |
| form | 形态 | sxm / pcie / oam / hgx |
| mem | 显存规格 | 80g / 141g / 188g / 40g … |
| serial-hash-16 | SHA-256 截断(base36 前 16 位) | 不可逆,保护机主资产清单 |
序列号规范化:去空白与分隔符、转小写、剥离 sn / s/n / serial 前缀后再哈希,保证同一颗卡的多种写法收敛到同一个 CVIN。
02 · 观测记录 schema
{
"cvin": "cvin:nv.h100.sxm.80g:7f3k9d2m8x1q4p6a",
"obs_type": "listing | rental | auction | telemetry | declaration",
"source_url": "https://…(公开来源,必填)",
"observed_at": "2026-11-02T08:00:00Z",
"attrs": { "asking_price_usd_h": 1.89, "region": "us-west", "cluster_size": 512 },
"prev_hash": "a91c…",
"hash": "e47f…"
}
03 · 哈希链(append-only)
hash = sha256(canon({cvin, obs_type, source_url, observed_at, attrs, prev_hash}))
prev_hash = 同一 CVIN 上一条记录的 hash
global_hash = sha256(canon({prev: <前一条全局哈希>, rec: <本条 hash>}))
canon():对象键递归排序、数组保序的确定性 JSON 序列化
只增不减:改任何一个字节会断资产链,删任何一段会断全局链。任何人可独立重放验证——这正是护城河:一次性证书厂商要做这个,得先把自己变成登记机构。
04 · 身份分级 L0 / L1 / L2(重要)
公开 listing 通常不给序列号——这是行业常态,不是采集没做好。所以身份不是一个开关,是一把可升级的三级梯。每一级都写死「能断言什么、不能断言什么」。
| 级别 | 条件 | 能断言 | 不能断言 |
|---|---|---|---|
| L0 | 只有挂牌信息,没见过序列号 | 同一挂牌前后一致 | 不保证是同一台物理设备——换平台、换 listing 就是另一个 ID |
| L1 | 见过序列号(发票 / 装箱单 / 后台导出 / RMA) | 同一物理设备跨运营方是同一个 ID | 不保证上报者没说谎——序列号是「被看见」,不是「被证明」 |
| L2 | 设备用自己的 ed25519 密钥签过证明 | 设备自证,运营方无法替代它说话 | 不保证密钥没被物理提取——防远程冒充,不防物理拆解 |
硬规矩:L0 不参与抵押登记、保险核保、资产池入池等任何以「这台设备」为主体的法律行为。分级的价值不在分级本身,在这条规矩能被机器执行(GET /v1/permits?cvin=…&use=…)。
升级:L0→L1 提交序列号证据(POST /v1/promote,CVIN 会变,旧 ID 经别名表永久指向新 ID,历史不丢);L1→L2 装 agent 生成设备密钥(POST /v1/attest,同一 CVIN 原地升级)。详见 身份分级。
观测记录用 attrs.identity_level 与 attrs.identity_basis 标注(listing_fingerprint / serial_hash / device_key)。无论哪一级,记录同样进入链、同样可重放。
05 · 隐私与合规(P0)
- 序列号一律哈希化存储且不可逆,任何时候都不以明文落库。
- 只采集公开来源,且每条记录必须带可复核的
source_url。 - 机主可申请更正与隐藏;申诉规则随规范一同版本化。
- 不做征信:登记与观测只做事实记录,不出信用评分、不做责任认定。
06 · 实现者清单
- 编码:
POST /mcp工具cvin_encode(序列号不出本机,只上传哈希结果) - 解析:
GET /v1/resolve/{cvin}· 永久免费 - 自有实现:按本页公式即可独立生成与验证,无需调用我们的服务