Qstamp / 工作原理
架构

从记录到在量子计算机出现后依然有效的凭证。

Qstamp 确保每条记录均保持私密,仅使证明可被验证。记录及其指纹与凭证均保留在运营方处。仅有一个加盐承诺值通过 Quantova 虚拟机上的 Quanta 合约进行锚定,并由后量子验证者委员会对其进行最终确认。

运营方系统 QSTAMP SDK · 本地 QUANTOVA 虚拟机 验证者委员会 记录智能体操作、文件 摘要SHA3 256 位 加盐叶节点0x00 · 标签 · 算法 · 盐值 哈希树RFC 9162 根 承诺值0x02 · 上下文 · 根 已签名交易ML DSA 65 · 费用封顶 Quanta 合约发出 Stamped 事件 区块与事件根已包含承诺值 最终性证书ML DSA 65 委员会 返回凭证每条记录一份 · JSON 归档与记录一并保存 运营方系统 QSTAMP SDK · 本地 QUANTOVA 虚拟机 验证者委员会 记录智能体操作、文件 摘要SHA3 256 位 加盐叶节点0x00 · 标签 · 算法 · 盐值 哈希树RFC 9162 根 承诺值0x02 · 上下文 · 根 已签名交易ML DSA 65 · 费用封顶 Quanta 合约发出 Stamped 事件 区块与事件根已包含承诺值 最终性证书ML DSA 65 委员会 返回凭证每条记录一份 · JSON 归档与记录一并保存
图 1 · 存证。仅有 32 字节承诺值跨越运营方边界。虚线表示网络操作。
真实示例

SI 企业如何部署 Qstamp,从安装到法院可验证的指纹。

共十三个步骤,分为四个阶段,即配置、集成、运行与证明。所示每个数值均取自 Qstamp 在 Quantova 虚拟机上的真实部署,任何集成 Qstamp 的公司均遵循相同流程。

qstamp · 部署与证据轨迹
设置集成运营证明
设置

安装 SDK

SI 企业将开源的 Qstamp SDK 添加到运行其智能体的服务中。它仅有一个依赖项,即用于后量子签名的 QCore。

$ npm install @quantovainc/qstamp
added 2 packages

$ npx @quantovainc/qstamp --version
0.1.4
软件包@quantovainc/qstamp 0.1.4
签名库@quantovainc/qcore 0.4.2
许可证Apache 2.0 或 MIT · 版权所有 2026 Quantova Inc
设置

创建签名账户

签名密钥在运营方自有的服务器或硬件安全模块上创建。其账户经注资后,在 Quantova 网络上一次性完成注册。

$ openssl rand -hex 32 > signer.key && chmod 600 signer.key
$ node account.js
address  Q1NUR6ETECQXEVE77TJ9YPZ6WAWYMT45WCJANV5J43X93SF79DWE0S0D572X
status   registered, ready to stamp
账户签名ML DSA 65 · FIPS 204
密钥保管仅由运营方持有,绝不发送至 Quantova
设置

选择或部署合约

企业可通过官方 Qstamp 合约进行存证,也可基于 Quanta 模板部署自有的签发方合约。自有合约在 qdock.io 上的 QIDE 中由经证明的 Quanta 编译器编译,并通过 QMask 钱包部署。

官方合约Q1D6TZFRL203P3DFAFVUPZUHGUCM4EWGH6063XNS42VA5235RNQWXS7FXEWX
机构合约Q1DAJ3TZ7AN8JVY2MUCWYUWVPXEJSHH53JNDZ48L07RT6948J2N5QSNF3787
已编译容器与经审计的哈希值 7cd509e2d21bc4a3 一致
部署域绑定到每条签名指令中的新生成随机 64 位数值
集成

注册模型

模型获准使用时,其护照以记录类型 ai_model 进行存证。此后的每项决策均可关联至作出该决策的确切模型。

model-passport.json模型注册表
{
  "evaluation": {"approved_by": "Model Risk Committee", "auc": 0.871},
  "model": "risk-model 3.2.1",
  "time": "2026-10-09T09:39:27.273Z",
  "training_data": "dataset manifest 2026-09-30",
  "weights_sha3": "f01483b8e6269760c5c2e2025875b6e5d1b16402443e9a98d73e0a43156bf17b"
}
记录类型4 · ai_model
指纹1b15118c7e2f1e482f87821a43d8062585b85e93d061bef1f6d429f621cfc850
交易QTX19P000T7X6TPFPG8XMXV2GPU0XAR94H36LF7TKP6GGTXN2NQPWLZQ8PZJFY
区块2,011,764
集成

接入智能体运行时

智能体运行时将每次工具调用和每项决策写为规范记录,保存在企业自有日志中,并每分钟锚定一次批次。凭证与相应操作一同存储。

agent-runtime.js运营方系统
const qstamp = require('@quantovainc/qstamp');
const batch = [];

agent.on('action', (action) => {
  const bytes = Buffer.from(canonicalJson(action));
  log.write(bytes);
  batch.push({ digest: qstamp.digestBytes(bytes) });
});

setInterval(async () => {
  const records = batch.splice(0);
  if (records.length === 0) return;
  const receipts = await qstamp.stamp({
    seed, index: 0, kind: 'ai_agent_action', records,
    onPending: savePending,
  });
  receipts.forEach(storeBesideAction);
}, 60000);
运营

智能体执行操作

某银行的信贷决策智能体批准了一笔贷款。该操作被写为一条规范 JSON 记录,其中包含智能体、模型、策略、工具、决策及时间。

credit-batch-1/action-04.json运营方系统
{
  "agent": "credit-decision-agent-07",
  "amount_usd": 125000,
  "applicant": "APP-54a49c823275",
  "decision": "approve",
  "human_review": false,
  "model": "risk-model 3.2.1",
  "operator": "Example Bank plc",
  "policy": "retail-lending-policy 2026-10",
  "reasons": ["score_above_threshold"],
  "risk_score": 645,
  "time": "2026-10-09T09:39:25.132Z",
  "tool": "credit_bureau.lookup"
}
运营

SDK 计算其指纹

SDK 在运营方自有的系统上计算该记录的 SHA3 256 位指纹。记录本身始终不离开该银行。

$ npx @quantovainc/qstamp hash action-04.json
  action-04.json
算法SHA3 256 · FIPS 202
指纹efb393903da28c2a6221179be662a2bbe2be06dfbd1acdee26bb057b6d2fb11f
运营

加盐并分批

该指纹与新生成的随机盐值绑定,并与该批次的其他操作一同置入哈希树。六项操作共享一个树根。

叶节点H(0x00 ‖ QSTAMP/LEAF/V1 ‖ alg ‖ digest ‖ salt)
盐值d275e738d46530b36f2c90e48a16bcd6e37fa9480378eb253c4e7a66a6a6b710
批次大小6 项操作
树根34f64b12e5b363f1add6c48c0f85ebd60e4c2d421e5559f5d7b88717db205c54
运营

一个承诺值

该根与链、官方合约、签名账户、记录类型及批次大小绑定,结果为一个 32 字节承诺值。

承诺值H(0x02 ‖ QSTAMP/ROOT/V1 ‖ genesis ‖ contract ‖ sender ‖ kind ‖ size ‖ root)
记录类型6 · ai_agent_action
值6068a3e9625471530eda32f3292a9ac667c4f543281d62b12c62ad3481f07e0a
运营

以 ML DSA 65 签名

SDK 发送一笔交易,调用 Quantova 虚拟机(QVM)上的 Qstamp Quanta 合约。该交易以后量子签名 ML DSA 65 签名。

交易QTX1V53JW528S64SZYD6EDZ563N0PUUA2ARGNQHV4LTJMNH24PQS5VPQTAH8RQ
签名者Q1NUR6ETECQXEVE77TJ9YPZ6WAWYMT45WCJANV5J43X93SF79DWE0S0D572X
合约Q1D6TZFRL203P3DFAFVUPZUHGUCM4EWGH6063XNS42VA5235RNQWXS7FXEWX
签名ML DSA 65 · FIPS 204
费用整个批次 0.005 TQTOV
运营

在链上达到最终性

验证者以后量子签名对区块进行最终确认。合约在 Stamped 事件中记录该承诺值。该次存证在一秒以内即达到最终性。

区块2,011,753
时间2026-10-09 09:39:25 UTC
事件Stamped · 选择器 5a110849
事件数据signer ‖ commitment ‖ kind
✓ 已达最终性 · 由官方合约记录
运营

在区块浏览器上可见

任何人均可在 Quantova 公共区块浏览器 QVMScan 上打开该交易,并读取承诺值、签名者、记录类型及区块。

qvmscan.io/tx/QTX1V53JW5…PQTAH8RQ
状态成功
区块2,011,753
发送方Q1NUR6ETECQXEVE77TJ9YPZ6WAWYMT45WCJANV5J43X93SF79DWE0S0D572X
接收方Q1D6TZFRL203P3DFAFVUPZUHGUCM4EWGH6063XNS42VA5235RNQWXS7FXEWX
Qstamp 证据Stamped · 官方 Qstamp 合约 · ai_agent_action
承诺值6068a3e9625471530eda32f3292a9ac667c4f543281d62b12c62ad3481f07e0a
查看链上实际交易
证明

法院询问智能体执行了何种操作

银行出示该记录及其凭证。验证者重新计算指纹、树根及承诺值,并在链上找到相同的承诺值。只要更改其中任意一位数字,核验即告失败。

$ npx @quantovainc/qstamp verify action-04.json.qstamp.json --file action-04.json
pass format · pass contract · pass content · pass inclusion
pass chain · pass transaction · pass event · pass block
VALID  stamped no later than 2026-10-09T09:39:25Z in block 2011753

$ npx @quantovainc/qstamp verify action-04.json.qstamp.json --file altered.json
FAIL content  the content does not match the fingerprint in the receipt
INVALID
原始指纹efb393903da28c2a6221179be662a2bbe2be06dfbd1acdee26bb057b6d2fb11f
篡改后的指纹93b2b98383cd8fc1d71c9727c358b077149123050b4e1ac78654e1889f37c086
存证流程

七个明确定义的步骤。

计算每条记录的指纹

SDK 计算 256 位输出的 SHA3。如现有系统已使用 SHA2,则计算 256 位输出的 SHA2。

为每个叶节点加盐并添加标签

由操作系统随机数生成器产生的新 32 字节盐值,与域标签 QSTAMP/LEAF/V1 及算法标识符一同绑定至摘要。

构建批次树

叶节点按照 RFC 9162 进行组合。叶节点哈希与内部节点哈希使用不同前缀,从而消除第二原像歧义。

派生承诺值

根与创世哈希、合约、签名者、记录类型及批次大小一同绑定为一个 32 字节值。

签名并提交

承诺值通过以 ML DSA 65 签名的交易发送。费用在签名前设定上限,计量费用中未使用的部分予以退还。

记录与最终确认

Quanta 合约发出 Stamped 事件。验证者委员会在约 0.2 秒内完成区块的最终确认。

签发凭证

每条记录获得一份凭证,其中包含其盐值、包含路径及锚定信息。私有恢复文件可防范中断带来的影响。

凭证结构

小巧、自描述且可验证。

contract.pdf.qstamp.jsonqstamp receipt 1
{ "format": "qstamp-receipt/1", "chain": { "id": "Q-test-net-1", "genesis": "ca91e093…" }, "contract": "Q1D6TZFRL203…", "kind": "6", "record": { "alg": "sha3-256", "digest": "9f07acaf…", "salt": "5e1c02d4…" }, "proof": { "index": 2, "size": 8, "path": [ … ] }, "root": "b3f1…", "anchor": { "tx": "QTX1TYDCHMSD…", "height": 1506979, "block": "QBK1…", "time": 1791430364, "sender": "Q1NUR6ETECQX…" } }

凭证不包含记录的任何部分。但凭证确实包含摘要与盐值,因此应以与其所描述记录同等审慎的方式处理。

批处理

对数级证明,恒定成本。

任意规模的批次均通过一笔交易锚定。每条记录通过一条路径证明其成员资格,该路径的长度仅随批次规模的对数增长。

叶 0叶 1叶 2叶 3叶 4叶 5叶 6叶 7节点节点节点节点节点节点根高亮 · 叶 2 及其逐级哈希所得的节点。其包含路径由每一层的兄弟节点组成,即叶 3、节点(0,1) 和节点(4..7),八个叶节点共需三个哈希。 根 节点 节点 节点 节点 节点 节点 叶 0 叶 1 叶 2 叶 3 叶 4 叶 5 叶 6 叶 7
图 3 · 包含路径随批次规模的对数增长。一百万条记录需要二十个兄弟哈希。
验证

信任数学,而非签发方。

验证返回三种结果之一。有效表示每个环节均成立。无效表示至少一个环节不成立。无法确定表示无法查询网络。无法确定的结果绝不会被报告为有效。

本地检查 · 无需网络 · 无需信任 锚定检查 · QVM 1 · 内容重算摘要 2 · 叶节点摘要 · 盐值 · 算法 3 · 包含至根的路径 4 · 承诺值绑定完整上下文 5 · 交易最终性 · 签名者 · 数据 6 · 事件官方合约 7 · 区块标识符 · 时间 结论三种结果之一 本地检查 · 无需网络 · 无需信任 锚定检查 · QVM 1 · 内容重算摘要 2 · 叶节点摘要 · 盐值 · 算法 3 · 包含至根的路径 4 · 承诺值绑定完整上下文 5 · 交易最终性 · 签名者 · 数据 6 · 事件官方合约 7 · 区块标识符 · 时间 结论三种结果之一
图 2 · 验证。第 1 至 4 步完全在验证方的计算机上运行。第 5 至 7 步在 Quantova 网络上确认锚定。

故障时拒绝

端点不可达、响应被截断或数据格式错误,均不可能产生有效结论。

锁定合约

除非明确信任某一自定义部署,否则凭证仅针对其所属网络的官方合约进行验证。

准确的时间

区块时间永不递减,且仅当其与验证者时钟相差在 15 秒以内时方被接受。