@antseed/antseed-verifier

中文文档
0.1.5发布于 2026/11/08GPL-3.0-onlyTypeScriptES Module近 30 天下载 2210

Antseed capability-based attestation SDK: buyer verifier + seller prover. A menu of independent seller capabilities (seller-node-tee-genuine, seller-provider-tee-genuine, seller-bound, seller-provider-measured-image, seller-provider-gpu-cc), one claim eac

原始使用文档
文档目录3 节
  1. Capabilities
  2. Params
  3. Appendix: provider adapters

@antseed/antseed-verifier

Verifier SDK for Antseed's pluggable verifier system (AIP-3). One package has two halves. A buyer verifier (default export) challenges a seller. It checks the seller's Intel TDX attestation before it routes paid requests. An embedded seller prover (prover export, loaded with --verifiers antseed-verifier) answers those challenges before provider matching and payment.

import verifier, { prover } from '@antseed/antseed-verifier'
// verifier → default export (type:'verifier', buyer half)
// prover   → named export   (type:'prover',  seller half)

It attests a menu of independent capabilities. Each capability is one claim, namespaced antseed-verifier:<capability>. The seller offers only the capabilities that its infrastructure supports. The buyer's verdict gates on two capabilities and reports the others for policy. Provider differences are config only (generic configfs or http collectors). The SDK carries no provider-specific hosts or schemas, and it is self-contained (no peer dependencies).

Capabilities

CapabilityProvesVerdict
seller-node-tee-genuinethe seller node runs an approved seller build in a genuine Intel TDX enclave (DCAP: PCK chain to Intel's root, acceptable TCB, TD10, debug off; MRTD + RTMR0-2 are an approved dstack OS, and the app compose, authenticated by the compose hash replayed from the event log, runs an approved Antseed TEE seller image under the rules in src/dstack-app-compose.ts). The quote binds to this nonce + peerId + the buyer's encrypted connection. A passing node also reports seller-node-upstreams: the https origins its config sends prompts to.required
seller-boundthe seller's identity key signs the whole evidence bundle for this fresh nonce (the signer recovers to peerId)required
seller-provider-tee-genuinethe downstream inference provider's TEE is genuine TDX. It is also round-bound when the seller declares a report_data schemeinformational
seller-provider-gpu-ccthe provider's GPUs run NVIDIA Confidential Computing (NVIDIA NRAS verifies it, nonce-bound)informational
seller-provider-measured-imagethe provider quote's MRTD/RTMR match a buyer allow-listinformational
seller-provider-claimsnamed provider claims against a frozen SDK menu. Each claim is asserted (self-vouched) or tdx-quote (TEE-attested)informational

The two required capabilities together prove one thing: a genuine Intel TDX seller node, minted fresh this round and cryptographically tied to the seller's marketplace identity.

Params

The prover (seller) reads its config from the environment, never from buyer-supplied values:

VariablePurpose
ANTSEED_TEE_PEER_IDthe seller's peer id (EVM address, no 0x)
ANTSEED_VERIFIER_SIGNING_KEYseller identity key (hex) for seller-bound. Disabled if its address ≠ peerId
ANTSEED_VERIFIER_NODE_TEEnode quote source: configfs (default, bare-metal/GCP TDX), dstack (Phala and other dstack CVMs), confidential-space (a Google Confidential Space attestation token instead of a quote), or http
ANTSEED_VERIFIER_DSTACK_SOCKEToverride the dstack guest-agent socket path (default /var/run/dstack.sock)
ANTSEED_VERIFIER_PROVIDER_ADAPTERin-process provider adapter id (chutes, aci). It fetches provider evidence directly, no shim. See CHUTES.md or REDPILL.md
ANTSEED_VERIFIER_PROVIDER_EVIDENCE_URLgeneric provider evidence route ({nonce} → hex nonce). The manual alternative to an adapter
ANTSEED_VERIFIER_PROVIDER_TEE_FIELDJSON field with the base64 provider quote (default quote)
ANTSEED_VERIFIER_PROVIDER_GPU_FIELDJSON field with per-GPU NVIDIA CC evidence → enables seller-provider-gpu-cc
ANTSEED_VERIFIER_PROVIDER_CLAIMS_FIELDJSON field with the base64 claims doc → enables seller-provider-claims
ANTSEED_VERIFIER_PROVIDER_BINDING_SCHEMEfrozen report_data scheme the provider quote uses (antseed-rd-v1 | nonce-pubkey-sha256-v1)
ANTSEED_VERIFIER_PROVIDER_BINDING_PUBKEY_FIELDJSON field with the provider's base64 E2E pubkey (the scheme's ingredient)

The buyer needs no special hardware. Optional policy knobs:

VariablePurpose
ANTSEED_VERIFIER_REQUIRED_CAPScomma-separated capabilities that gate the overall ok (default seller-node-tee-genuine,seller-bound). For example, a provenance buyer sets seller-provider-tee-genuine,seller-bound to require the downstream provider's TEE
ANTSEED_VERIFIER_CS_JWKS_URLbuyer: override Google's Confidential Space token signing keys URL
ANTSEED_VERIFIER_NODE_BUILDSbuyer: extra approved dstack OS releases and seller images, JSON { "os": [{ name, mrtd, rtmr0, rtmr1, rtmr2 }], "images": [{ version, digest }] } (inline or @/path/to/file.json), added to the built-in lists
ANTSEED_VERIFIER_MEASURED_IMAGE_POLICYapproved-measurement allow-list (inline JSON or @/path.json) for measured-image
ANTSEED_VERIFIER_STRICT_TCBtrue requires TCB exactly UpToDate (default also accepts SWHardeningNeeded)
ANTSEED_VERIFIER_NRAS_URL / _NRAS_JWKS_URLoverride NVIDIA NRAS endpoints for gpu-cc

seller-node-tee-genuine runs only on a real Intel TDX VM. configfs mints via /sys/kernel/config/tsm/report (needs root). dstack mints via the guest-agent socket (Phala and other dstack CVMs, where configfs-tsm is absent). Both bind the same antseed-rd-v1 report_data, so the buyer verifies them identically.

Appendix: provider adapters

An in-process adapter bridges a provider whose evidence API does not match the generic route (auth, a different response shape). Select the adapter with ANTSEED_VERIFIER_PROVIDER_ADAPTER. There is no separate process. The SDK core stays provider-neutral. Each adapter is an isolated module that loads lazily. Two adapters are available:

export ANTSEED_VERIFIER_PROVIDER_ADAPTER=chutes   # + CHUTES_API_KEY, CHUTES_CHUTE
export ANTSEED_VERIFIER_PROVIDER_ADAPTER=aci      # + ACI_ATTESTATION_URL (RedPill / dstack ACI)

The adapter fetches the provider's fresh, nonce-bound quote. It declares its frozen report_data scheme (nonce-pubkey-sha256-v1 for Chutes, aci-keyset-v1 for ACI). The buyer verifies the scheme unchanged. Full setup: CHUTES.md · REDPILL.md · PHALA.md (run the seller node in a dstack TDX CVM).


v0.1.1 · GPL-3.0

版本与发布记录

@antseed/antseed-verifier 共发布 6 个版本,首次发布于 2026/09/17;过去 12 个月发布了 6 个版本。

版本发布日期距今
0.1.5latest2026/11/08今天
0.1.42026/11/08今天
0.1.32026/11/08今天
0.1.22026/11/07今天
0.1.12026/11/07今天
0.1.02026/09/171 个月前

关于 @antseed/antseed-verifier 的常见问题

@antseed/antseed-verifier 是什么?

Antseed capability-based attestation SDK: buyer verifier + seller prover. A menu of independent seller capabilities (seller-node-tee-genuine, seller-provider-tee-genuine, seller-bound, seller-provider-measured-image, seller-provider-gpu-cc), one claim eac

如何安装 @antseed/antseed-verifier?

在项目目录运行 npm install @antseed/antseed-verifier,或使用 pnpm add / yarn add / bun add。

@antseed/antseed-verifier 支持 TypeScript 吗?

支持。包内自带 TypeScript 类型声明(package.json 声明了 types 入口),安装后即可获得类型提示,无需再安装 @types 包。

@antseed/antseed-verifier 支持 ESM 还是 CommonJS?

以 ES Module 形式发布,推荐使用 import 引入。在 CommonJS 项目中,Node.js 20.19+ / 22.12+ 可以直接 require() 不含顶层 await 的 ES Module,更早的版本需要改用动态 import()。

@antseed/antseed-verifier 需要什么版本的 Node.js?

package.json 的 engines 字段要求 Node.js >=20.19.0。版本不符时 npm 默认只给出警告,开启 engine-strict 后会拒绝安装。

@antseed/antseed-verifier 可以商用吗?

@antseed/antseed-verifier 使用 GPL-3.0-only 许可。强 Copyleft:分发包含该代码的软件时,整个作品需以 GPL-3.0 兼容许可开源,并附带专利与反锁定条款。仅内部使用不触发此义务。以上为概括,不构成法律意见,请以许可原文为准。

@antseed/antseed-verifier 的下载量有多少?

根据 npm 官方下载统计,@antseed/antseed-verifier 在 2026/10/06 – 2026/11/04 这 30 天内被下载 2,210 次,日均约 74 次。下载量会把 CI 构建、镜像同步和作为其他包依赖的安装一并计入,适合横向比较热度,不能直接等同于使用人数。

@antseed/antseed-verifier 还在维护吗?

最新版本 0.1.5 发布于 2026/11/08(今天);至今共发布 6 个版本,其中过去 12 个月发布了 6 个;首次发布于 2026/09/17。发布频率只是参考信号:功能稳定的工具可能很少需要更新,建议结合源码仓库的 issue 和提交记录判断。