@antseed/antseed-verifier 0.1.0 → 0.1.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (67) hide show
  1. package/README.md +5 -3
  2. package/dist/antseed-node-types.d.ts +6 -0
  3. package/dist/antseed-node-types.d.ts.map +1 -1
  4. package/dist/approved-node-measurements.d.ts +33 -0
  5. package/dist/approved-node-measurements.d.ts.map +1 -0
  6. package/dist/approved-node-measurements.js +42 -0
  7. package/dist/approved-node-measurements.js.map +1 -0
  8. package/dist/approved-seller-images.d.ts +14 -0
  9. package/dist/approved-seller-images.d.ts.map +1 -0
  10. package/dist/approved-seller-images.js +7 -0
  11. package/dist/approved-seller-images.js.map +1 -0
  12. package/dist/capability.d.ts +5 -0
  13. package/dist/capability.d.ts.map +1 -1
  14. package/dist/capability.js.map +1 -1
  15. package/dist/caps/tee-tdx.d.ts +43 -17
  16. package/dist/caps/tee-tdx.d.ts.map +1 -1
  17. package/dist/caps/tee-tdx.js +158 -35
  18. package/dist/caps/tee-tdx.js.map +1 -1
  19. package/dist/collect/confidential-space.d.ts +12 -0
  20. package/dist/collect/confidential-space.d.ts.map +1 -0
  21. package/dist/collect/confidential-space.js +22 -0
  22. package/dist/collect/confidential-space.js.map +1 -0
  23. package/dist/collect/dstack.d.ts +10 -0
  24. package/dist/collect/dstack.d.ts.map +1 -1
  25. package/dist/collect/dstack.js +31 -26
  26. package/dist/collect/dstack.js.map +1 -1
  27. package/dist/collect/unix-http.d.ts +9 -0
  28. package/dist/collect/unix-http.d.ts.map +1 -0
  29. package/dist/collect/unix-http.js +21 -0
  30. package/dist/collect/unix-http.js.map +1 -0
  31. package/dist/confidential-space.d.ts +49 -0
  32. package/dist/confidential-space.d.ts.map +1 -0
  33. package/dist/confidential-space.js +93 -0
  34. package/dist/confidential-space.js.map +1 -0
  35. package/dist/dstack-app-compose.d.ts +36 -0
  36. package/dist/dstack-app-compose.d.ts.map +1 -0
  37. package/dist/dstack-app-compose.js +113 -0
  38. package/dist/dstack-app-compose.js.map +1 -0
  39. package/dist/dstack-event-log.d.ts +42 -0
  40. package/dist/dstack-event-log.d.ts.map +1 -0
  41. package/dist/dstack-event-log.js +87 -0
  42. package/dist/dstack-event-log.js.map +1 -0
  43. package/dist/prover.d.ts.map +1 -1
  44. package/dist/prover.js +17 -4
  45. package/dist/prover.js.map +1 -1
  46. package/dist/report-data.d.ts +3 -1
  47. package/dist/report-data.d.ts.map +1 -1
  48. package/dist/report-data.js +1 -0
  49. package/dist/report-data.js.map +1 -1
  50. package/dist/seller-config-rules.d.ts +43 -0
  51. package/dist/seller-config-rules.d.ts.map +1 -0
  52. package/dist/seller-config-rules.js +130 -0
  53. package/dist/seller-config-rules.js.map +1 -0
  54. package/dist/shared.d.ts +16 -2
  55. package/dist/shared.d.ts.map +1 -1
  56. package/dist/shared.js +21 -5
  57. package/dist/shared.js.map +1 -1
  58. package/dist/tcb-policy.d.ts +8 -0
  59. package/dist/tcb-policy.d.ts.map +1 -0
  60. package/dist/tcb-policy.js +14 -0
  61. package/dist/tcb-policy.js.map +1 -0
  62. package/dist/tee-provider-plugins.json +7 -0
  63. package/dist/verifier.d.ts +2 -1
  64. package/dist/verifier.d.ts.map +1 -1
  65. package/dist/verifier.js +10 -7
  66. package/dist/verifier.js.map +1 -1
  67. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"report-data.js","sourceRoot":"","sources":["../src/report-data.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"report-data.js","sourceRoot":"","sources":["../src/report-data.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,43 @@
1
+ /**
2
+ * The rules every approved TEE seller deployment follows, whatever runs it (dstack, Google
3
+ * Confidential Space): the seller config is readable by the buyer and only sends prompts to the
4
+ * upstreams it names, and the only hidden inputs are secrets that cannot redirect prompts.
5
+ *
6
+ * Seller config: only the settings listed in CONFIG_KEYS (anything that loads code, such as
7
+ * seller.agentDir, which imports tool modules from the data volume, is rejected); each provider
8
+ * uses a plugin listed in tee-provider-plugins.json, every upstream is https, and every path rewrite is a path on that upstream (the relay appends it to the base
9
+ * URL, so a value like "@other.example/v1" would move the request to another host). The approved
10
+ * images' relay refuses upstream redirects, so requests stay on these origins.
11
+ */
12
+ /** One place a seller node forwards prompts to, read from its measured config. */
13
+ export interface SellerUpstream {
14
+ /** The provider's name in the seller config. */
15
+ provider: string;
16
+ plugin: string;
17
+ /** https origin, e.g. "https://api.openai.com". */
18
+ origin: string;
19
+ }
20
+ /**
21
+ * Settings an operator may set in the open (the buyer reads them): the peer id, provider
22
+ * attestation settings, the request-body fields the openai plugin adds (OPENAI_BODY_INJECT_JSON,
23
+ * which cannot change where a request goes) and the Base RPC URL (it never sees a request; one
24
+ * holding an API key belongs in a secret instead, since buyers read open settings).
25
+ */
26
+ export declare const LITERAL_ENV: RegExp;
27
+ /** Names a hidden secret may have (checkHiddenSecrets narrows API keys to the ones the config names). */
28
+ export declare const SECRET_ENV: RegExp;
29
+ export type Obj = Record<string, unknown>;
30
+ export declare const isObj: (v: unknown) => v is Obj;
31
+ /** A deployment that breaks a rule; its message says which. */
32
+ export declare class RuleError extends Error {
33
+ }
34
+ export declare function check(ok: unknown, why: string): asserts ok;
35
+ export declare function parseJson(text: string, what: string): unknown;
36
+ /** Check a seller config; returns its upstreams and the API key variables it reads (apiKeyEnv). */
37
+ export declare function checkSellerConfig(config: unknown): {
38
+ upstreams: SellerUpstream[];
39
+ apiKeyEnvs: Set<string>;
40
+ };
41
+ /** Hidden secrets may only be the node's own secrets and the API keys the seller config names. */
42
+ export declare function checkHiddenSecrets(secrets: Iterable<string>, apiKeyEnvs: ReadonlySet<string>): void;
43
+ //# sourceMappingURL=seller-config-rules.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"seller-config-rules.d.ts","sourceRoot":"","sources":["../src/seller-config-rules.ts"],"names":[],"mappings":"AAEA;;;;;;;;;;GAUG;AAEH,kFAAkF;AAClF,MAAM,WAAW,cAAc;IAC7B,gDAAgD;IAChD,QAAQ,EAAE,MAAM,CAAA;IAChB,MAAM,EAAE,MAAM,CAAA;IACd,mDAAmD;IACnD,MAAM,EAAE,MAAM,CAAA;CACf;AAWD;;;;;GAKG;AACH,eAAO,MAAM,WAAW,QAAgH,CAAA;AACxI,yGAAyG;AACzG,eAAO,MAAM,UAAU,QAA4E,CAAA;AA2BnG,MAAM,MAAM,GAAG,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;AACzC,eAAO,MAAM,KAAK,GAAI,GAAG,OAAO,KAAG,CAAC,IAAI,GAAwD,CAAA;AAEhG,+DAA+D;AAC/D,qBAAa,SAAU,SAAQ,KAAK;CAAG;AACvC,wBAAgB,KAAK,CAAC,EAAE,EAAE,OAAO,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,EAAE,CAE1D;AAED,wBAAgB,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAM7D;AA0BD,mGAAmG;AACnG,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,OAAO,GAAG;IAAE,SAAS,EAAE,cAAc,EAAE,CAAC;IAAC,UAAU,EAAE,GAAG,CAAC,MAAM,CAAC,CAAA;CAAE,CAsC3G;AAED,kGAAkG;AAClG,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,QAAQ,CAAC,MAAM,CAAC,EAAE,UAAU,EAAE,WAAW,CAAC,MAAM,CAAC,GAAG,IAAI,CAInG"}
@@ -0,0 +1,130 @@
1
+ import teeProviderPlugins from './tee-provider-plugins.json' with { type: 'json' };
2
+ /**
3
+ * The provider plugins a TEE seller may use (tee-provider-plugins.json, which also decides the
4
+ * image's plugins): each one's default upstream, and whether the config's baseUrl (and
5
+ * fallbackUpstreams) changes it. Each sends buyer content only to that upstream. fal-video is
6
+ * left out: it uploads buyer media to a storage host the storage service names at runtime, which
7
+ * the config cannot show.
8
+ */
9
+ const PLUGINS = teeProviderPlugins;
10
+ /**
11
+ * Settings an operator may set in the open (the buyer reads them): the peer id, provider
12
+ * attestation settings, the request-body fields the openai plugin adds (OPENAI_BODY_INJECT_JSON,
13
+ * which cannot change where a request goes) and the Base RPC URL (it never sees a request; one
14
+ * holding an API key belongs in a secret instead, since buyers read open settings).
15
+ */
16
+ export const LITERAL_ENV = /^(?:ANTSEED_TEE_PEER_ID|ANTSEED_BASE_RPC_URL|OPENAI_BODY_INJECT_JSON|ANTSEED_VERIFIER_PROVIDER_[A-Z0-9_]+)$/;
17
+ /** Names a hidden secret may have (checkHiddenSecrets narrows API keys to the ones the config names). */
18
+ export const SECRET_ENV = /^(?:ANTSEED_IDENTITY_HEX|ANTSEED_BASE_RPC_URL|[A-Z][A-Z0-9_]*_API_KEY)$/;
19
+ /** Secrets the CLI reads itself; any other hidden variable must be a provider API key the config names. */
20
+ const NODE_SECRETS = new Set(['ANTSEED_IDENTITY_HEX', 'ANTSEED_BASE_RPC_URL']);
21
+ /** Prefixes of variables the CLI reads for its own settings (telemetry, payments, tunnels), never API keys. */
22
+ const RESERVED_ENV = /^(?:ANTSEED_|POSTHOG_|CDP_)/;
23
+ /**
24
+ * The seller config settings a TEE seller may use, by section. Each one only tunes the seller;
25
+ * none loads code (seller.agentDir imports agent tool modules from disk, which no measurement
26
+ * covers) or configures the buyer, verifier or relayer roles.
27
+ */
28
+ const CONFIG_KEYS = {
29
+ config: new Set(['identity', 'seller', 'payments', 'network', 'telemetry']),
30
+ seller: new Set([
31
+ 'reserveFloor', 'maxConcurrentBuyers', 'providers', 'publicAddress', 'verifications', 'maxUploadBodyBytes',
32
+ 'maxInboundConnections', 'maxInboundConnectionsPerIp', 'inboundIdleTimeoutMs', 'verifiers', 'healthCheck', 'gasCheck', 'gasRefuel', 'freeTier',
33
+ 'alerts', 'restrictedCountries', 'freeUsage', 'buyerLimits',
34
+ ]),
35
+ provider: new Set(['plugin', 'baseUrl', 'apiKeyEnv', 'pathRewrite', 'fallbackUpstreams', 'defaults', 'services']),
36
+ fallback: new Set(['baseUrl', 'apiKeyEnv', 'pathRewrite', 'services']),
37
+ };
38
+ function checkKeys(value, section, where) {
39
+ const extra = Object.keys(value).filter((k) => !CONFIG_KEYS[section].has(k));
40
+ check(extra.length === 0, `${where}${extra[0]} is not allowed in a TEE seller config`);
41
+ }
42
+ export const isObj = (v) => !!v && typeof v === 'object' && !Array.isArray(v);
43
+ /** A deployment that breaks a rule; its message says which. */
44
+ export class RuleError extends Error {
45
+ }
46
+ export function check(ok, why) {
47
+ if (!ok)
48
+ throw new RuleError(why);
49
+ }
50
+ export function parseJson(text, what) {
51
+ try {
52
+ return JSON.parse(text);
53
+ }
54
+ catch {
55
+ throw new RuleError(`${what} is not JSON`);
56
+ }
57
+ }
58
+ /** A configured upstream URL, which must be https without credentials. */
59
+ function upstreamUrl(url, where) {
60
+ check(typeof url === 'string', `${where} must be a URL`);
61
+ let u;
62
+ try {
63
+ u = new URL(url);
64
+ }
65
+ catch {
66
+ throw new RuleError(`${where} is not a URL`);
67
+ }
68
+ check(u.protocol === 'https:' && !u.username && !u.password, `${where} must be an https URL without credentials`);
69
+ return u;
70
+ }
71
+ /** A path rewrite must keep requests on the upstream it belongs to. */
72
+ function checkPathRewrite(rewrite, baseUrl, where) {
73
+ if (rewrite === undefined)
74
+ return;
75
+ check(isObj(rewrite), `${where} pathRewrite must be a map`);
76
+ const base = baseUrl.href.replace(/\/+$/, '');
77
+ for (const [from, to] of Object.entries(rewrite)) {
78
+ check(typeof to === 'string' && to.startsWith('/') && !to.startsWith('//'), `${where} pathRewrite for ${from} must be a path starting with one "/"`);
79
+ check(upstreamUrl(base + to, `${where} pathRewrite for ${from}`).origin === baseUrl.origin, `${where} pathRewrite for ${from} leaves the upstream`);
80
+ }
81
+ }
82
+ /** Check a seller config; returns its upstreams and the API key variables it reads (apiKeyEnv). */
83
+ export function checkSellerConfig(config) {
84
+ check(isObj(config), 'seller config must be an object');
85
+ checkKeys(config, 'config', '');
86
+ check(isObj(config['seller']), 'seller config has no seller section');
87
+ checkKeys(config['seller'], 'seller', 'seller.');
88
+ const providers = config['seller']['providers'];
89
+ check(isObj(providers) && Object.keys(providers).length > 0, 'seller config has no providers');
90
+ const upstreams = [];
91
+ const apiKeyEnvs = new Set();
92
+ const keyEnv = (v) => {
93
+ if (typeof v === 'string')
94
+ apiKeyEnvs.add(v);
95
+ };
96
+ for (const [provider, cfg] of Object.entries(providers)) {
97
+ check(isObj(cfg) && typeof cfg['plugin'] === 'string', `provider ${provider} has no plugin`);
98
+ checkKeys(cfg, 'provider', `provider ${provider} `);
99
+ keyEnv(cfg['apiKeyEnv']);
100
+ const plugin = cfg['plugin'].replace(/^@antseed\/provider-/, '');
101
+ const spec = PLUGINS[plugin];
102
+ check(spec, `provider ${provider} uses plugin "${cfg['plugin']}", which a TEE seller cannot use`);
103
+ check(spec.baseUrl || cfg['baseUrl'] === undefined, `provider ${provider} sets a baseUrl its plugin ignores`);
104
+ const baseUrl = upstreamUrl(cfg['baseUrl'] ?? spec.defaultUrl, `provider ${provider} baseUrl`);
105
+ upstreams.push({ provider, plugin, origin: baseUrl.origin });
106
+ checkPathRewrite(cfg['pathRewrite'], baseUrl, `provider ${provider}`);
107
+ const fallbacks = cfg['fallbackUpstreams'];
108
+ if (fallbacks === undefined)
109
+ continue;
110
+ check(spec.fallbacks && Array.isArray(fallbacks), `provider ${provider} fallbackUpstreams are not supported`);
111
+ fallbacks.forEach((f, i) => {
112
+ check(isObj(f), `provider ${provider} fallbackUpstreams[${i}] must be an object`);
113
+ checkKeys(f, 'fallback', `provider ${provider} fallbackUpstreams[${i}] `);
114
+ keyEnv(f['apiKeyEnv']);
115
+ const where = `provider ${provider} fallbackUpstreams[${i}]`;
116
+ const fallbackUrl = upstreamUrl(f['baseUrl'], `${where}.baseUrl`);
117
+ upstreams.push({ provider, plugin, origin: fallbackUrl.origin });
118
+ // A fallback without its own rewrites uses the provider's, so check those against it too.
119
+ checkPathRewrite(f['pathRewrite'] ?? cfg['pathRewrite'], fallbackUrl, where);
120
+ });
121
+ }
122
+ return { upstreams, apiKeyEnvs };
123
+ }
124
+ /** Hidden secrets may only be the node's own secrets and the API keys the seller config names. */
125
+ export function checkHiddenSecrets(secrets, apiKeyEnvs) {
126
+ for (const name of secrets) {
127
+ check(SECRET_ENV.test(name) && (NODE_SECRETS.has(name) || (apiKeyEnvs.has(name) && !RESERVED_ENV.test(name))), `environment ${name} is hidden but is not an API key the seller config names`);
128
+ }
129
+ }
130
+ //# sourceMappingURL=seller-config-rules.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"seller-config-rules.js","sourceRoot":"","sources":["../src/seller-config-rules.ts"],"names":[],"mappings":"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"}
package/dist/shared.d.ts CHANGED
@@ -32,7 +32,15 @@ export declare function normalizePeerId(peerId: string): string;
32
32
  * `antseed-rd-v1` (see report-data.ts). The configfs collector mints exactly this, so the
33
33
  * buyer's node cap recomputes and enforces the same bytes.
34
34
  */
35
- export declare function computeReportData(nonce: Uint8Array, peerId: string): Buffer;
35
+ export declare function computeReportData(nonce: Uint8Array, peerId: string, channelBinding?: string): Buffer;
36
+ /** A connection's session hash: 64 lowercase hex chars (SHA-256). */
37
+ export declare function normalizeChannelBinding(binding: string): string;
38
+ /**
39
+ * Request header carrying the seller-side connection session hash (set by the seller node, never
40
+ * by the buyer). Must equal @antseed/node's ANTSEED_CHANNEL_BINDING_HEADER; like ATTEST_PATH it is
41
+ * mirrored rather than imported so this package stays free of an @antseed/node dependency.
42
+ */
43
+ export declare const CHANNEL_BINDING_HEADER = "x-antseed-channel-binding";
36
44
  /**
37
45
  * Canonical digest over the whole attestation bundle — every cap's evidence entry
38
46
  * except seller-bound's own signature (it cannot sign over itself). A sort by cap id
@@ -67,13 +75,18 @@ export interface AttestRequestBody {
67
75
  nonce: string;
68
76
  /** capability ids the buyer is asking the seller to attest. */
69
77
  caps: string[];
78
+ /**
79
+ * Bind the node quote to the connection this request travels on. Older buyers omit it and
80
+ * get the {peerId}-only binding they verify.
81
+ */
82
+ bindChannel?: boolean;
70
83
  }
71
84
  /** Body the seller's prover returns: per-capability evidence (a cap may have none). */
72
85
  export interface AttestResponseBody {
73
86
  /** capId -> base64 of that capability's opaque evidence bytes. */
74
87
  evidence: Record<string, string>;
75
88
  }
76
- export declare function encodeAttestRequest(nonce: Uint8Array, caps: string[]): Uint8Array;
89
+ export declare function encodeAttestRequest(nonce: Uint8Array, caps: string[], bindChannel?: boolean): Uint8Array;
77
90
  /**
78
91
  * Upper bound on an attestation request or response body before JSON.parse. Both halves
79
92
  * parse counterparty-controlled bytes (the prover reads buyer requests; the buyer reads
@@ -83,6 +96,7 @@ export declare const MAX_ATTEST_BODY_BYTES: number;
83
96
  export declare function decodeAttestRequest(body: Uint8Array): {
84
97
  nonce: Uint8Array;
85
98
  caps: string[];
99
+ bindChannel: boolean;
86
100
  };
87
101
  export declare function encodeAttestResponse(evidence: Record<string, Uint8Array>): Uint8Array;
88
102
  export declare function decodeAttestResponse(body: Uint8Array): Record<string, Uint8Array>;
@@ -1 +1 @@
1
- {"version":3,"file":"shared.d.ts","sourceRoot":"","sources":["../src/shared.ts"],"names":[],"mappings":"AAIA;;;;GAIG;AAEH;;;GAGG;AACH,eAAO,MAAM,WAAW,qBAAqB,CAAA;AAE7C;;;GAGG;AACH,wBAAgB,OAAO,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAE7C;AAED;;;;GAIG;AACH,eAAO,MAAM,WAAW,sCAAoC,CAAA;AAE5D,wCAAwC;AACxC,eAAO,MAAM,WAAW,KAAK,CAAA;AAE7B;;;;GAIG;AACH,wBAAgB,eAAe,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAMtD;AAED;;;;GAIG;AACH,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,UAAU,EAAE,MAAM,EAAE,MAAM,GAAG,MAAM,CAE3E;AAKD;;;;;;;GAOG;AACH,wBAAgB,YAAY,CAAC,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,UAAU,CAAC,GAAG,UAAU,CAa7E;AAED;;;;;;;;;GASG;AACH,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,UAAU,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,MAAM,GAAG,UAAU,CAOrG;AAKD;;;;GAIG;AACH,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAEvD;AAED,yGAAyG;AACzG,wBAAgB,sBAAsB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAEtE;AAED,uFAAuF;AACvF,MAAM,WAAW,iBAAiB;IAChC,6CAA6C;IAC7C,KAAK,EAAE,MAAM,CAAA;IACb,+DAA+D;IAC/D,IAAI,EAAE,MAAM,EAAE,CAAA;CACf;AAED,uFAAuF;AACvF,MAAM,WAAW,kBAAkB;IACjC,kEAAkE;IAClE,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;CACjC;AAED,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,UAAU,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,UAAU,CAGjF;AAED;;;;GAIG;AACH,eAAO,MAAM,qBAAqB,QAAa,CAAA;AAQ/C,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,UAAU,GAAG;IAAE,KAAK,EAAE,UAAU,CAAC;IAAC,IAAI,EAAE,MAAM,EAAE,CAAA;CAAE,CAc3F;AAED,wBAAgB,oBAAoB,CAAC,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,UAAU,CAAC,GAAG,UAAU,CAOrF;AAED,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,UAAU,GAAG,MAAM,CAAC,MAAM,EAAE,UAAU,CAAC,CAcjF"}
1
+ {"version":3,"file":"shared.d.ts","sourceRoot":"","sources":["../src/shared.ts"],"names":[],"mappings":"AAIA;;;;GAIG;AAEH;;;GAGG;AACH,eAAO,MAAM,WAAW,qBAAqB,CAAA;AAE7C;;;GAGG;AACH,wBAAgB,OAAO,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAE7C;AAED;;;;GAIG;AACH,eAAO,MAAM,WAAW,sCAAoC,CAAA;AAE5D,wCAAwC;AACxC,eAAO,MAAM,WAAW,KAAK,CAAA;AAE7B;;;;GAIG;AACH,wBAAgB,eAAe,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAMtD;AAED;;;;GAIG;AACH,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,UAAU,EAAE,MAAM,EAAE,MAAM,EAAE,cAAc,CAAC,EAAE,MAAM,GAAG,MAAM,CAKpG;AAED,qEAAqE;AACrE,wBAAgB,uBAAuB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAI/D;AAED;;;;GAIG;AACH,eAAO,MAAM,sBAAsB,8BAA8B,CAAA;AAKjE;;;;;;;GAOG;AACH,wBAAgB,YAAY,CAAC,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,UAAU,CAAC,GAAG,UAAU,CAa7E;AAED;;;;;;;;;GASG;AACH,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,UAAU,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,MAAM,GAAG,UAAU,CAOrG;AAKD;;;;GAIG;AACH,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAEvD;AAED,yGAAyG;AACzG,wBAAgB,sBAAsB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAEtE;AAED,uFAAuF;AACvF,MAAM,WAAW,iBAAiB;IAChC,6CAA6C;IAC7C,KAAK,EAAE,MAAM,CAAA;IACb,+DAA+D;IAC/D,IAAI,EAAE,MAAM,EAAE,CAAA;IACd;;;OAGG;IACH,WAAW,CAAC,EAAE,OAAO,CAAA;CACtB;AAED,uFAAuF;AACvF,MAAM,WAAW,kBAAkB;IACjC,kEAAkE;IAClE,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;CACjC;AAED,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,UAAU,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,WAAW,UAAQ,GAAG,UAAU,CAGtG;AAED;;;;GAIG;AACH,eAAO,MAAM,qBAAqB,QAAa,CAAA;AAQ/C,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,UAAU,GAAG;IAAE,KAAK,EAAE,UAAU,CAAC;IAAC,IAAI,EAAE,MAAM,EAAE,CAAC;IAAC,WAAW,EAAE,OAAO,CAAA;CAAE,CAcjH;AAED,wBAAgB,oBAAoB,CAAC,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,UAAU,CAAC,GAAG,UAAU,CAOrF;AAED,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,UAAU,GAAG,MAAM,CAAC,MAAM,EAAE,UAAU,CAAC,CAcjF"}
package/dist/shared.js CHANGED
@@ -43,9 +43,25 @@ export function normalizePeerId(peerId) {
43
43
  * `antseed-rd-v1` (see report-data.ts). The configfs collector mints exactly this, so the
44
44
  * buyer's node cap recomputes and enforces the same bytes.
45
45
  */
46
- export function computeReportData(nonce, peerId) {
47
- return Buffer.from(antseedRdV1.build(nonce, { peerId: normalizePeerId(peerId) }));
46
+ export function computeReportData(nonce, peerId, channelBinding) {
47
+ return Buffer.from(antseedRdV1.build(nonce, {
48
+ peerId: normalizePeerId(peerId),
49
+ ...(channelBinding ? { channelBinding: normalizeChannelBinding(channelBinding) } : {}),
50
+ }));
48
51
  }
52
+ /** A connection's session hash: 64 lowercase hex chars (SHA-256). */
53
+ export function normalizeChannelBinding(binding) {
54
+ const b = binding.trim().toLowerCase();
55
+ if (!/^[0-9a-f]{64}$/.test(b))
56
+ throw new Error('invalid channel binding: expected 64 hex chars');
57
+ return b;
58
+ }
59
+ /**
60
+ * Request header carrying the seller-side connection session hash (set by the seller node, never
61
+ * by the buyer). Must equal @antseed/node's ANTSEED_CHANNEL_BINDING_HEADER; like ATTEST_PATH it is
62
+ * mirrored rather than imported so this package stays free of an @antseed/node dependency.
63
+ */
64
+ export const CHANNEL_BINDING_HEADER = 'x-antseed-channel-binding';
49
65
  /** The dependent capability whose own evidence is excluded from the bundle it signs over. */
50
66
  const SELLER_BOUND_CAP_ID = 'seller-bound';
51
67
  /**
@@ -102,8 +118,8 @@ export function evidenceConfigKey(capId) {
102
118
  export function parseEvidenceConfigKey(key) {
103
119
  return key.startsWith(EVIDENCE_KEY_PREFIX) ? key.slice(EVIDENCE_KEY_PREFIX.length) : undefined;
104
120
  }
105
- export function encodeAttestRequest(nonce, caps) {
106
- const body = { nonce: Buffer.from(nonce).toString('base64'), caps };
121
+ export function encodeAttestRequest(nonce, caps, bindChannel = false) {
122
+ const body = { nonce: Buffer.from(nonce).toString('base64'), caps, ...(bindChannel ? { bindChannel } : {}) };
107
123
  return new TextEncoder().encode(JSON.stringify(body));
108
124
  }
109
125
  /**
@@ -130,7 +146,7 @@ export function decodeAttestRequest(body) {
130
146
  if (!Array.isArray(parsed.caps) || !parsed.caps.every((c) => typeof c === 'string')) {
131
147
  throw new Error('attestation request missing "caps" (string[])');
132
148
  }
133
- return { nonce, caps: parsed.caps };
149
+ return { nonce, caps: parsed.caps, bindChannel: parsed.bindChannel === true };
134
150
  }
135
151
  export function encodeAttestResponse(evidence) {
136
152
  const enc = {};
@@ -1 +1 @@
1
- {"version":3,"file":"shared.js","sourceRoot":"","sources":["../src/shared.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"shared.js","sourceRoot":"","sources":["../src/shared.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,8 @@
1
+ /**
2
+ * TCB acceptance. UpToDate is always genuine hardware. SWHardeningNeeded flags guest-side
3
+ * software mitigations only — not a hardware compromise — and is accepted by default (real
4
+ * GCP TDX quotes often report it). Set ANTSEED_VERIFIER_STRICT_TCB=true to require UpToDate
5
+ * exactly. Anything else (OutOfDate, Revoked, Unknown, ...) is rejected.
6
+ */
7
+ export declare function isTcbAcceptable(status: string): boolean;
8
+ //# sourceMappingURL=tcb-policy.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tcb-policy.d.ts","sourceRoot":"","sources":["../src/tcb-policy.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,wBAAgB,eAAe,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAIvD"}
@@ -0,0 +1,14 @@
1
+ /**
2
+ * TCB acceptance. UpToDate is always genuine hardware. SWHardeningNeeded flags guest-side
3
+ * software mitigations only — not a hardware compromise — and is accepted by default (real
4
+ * GCP TDX quotes often report it). Set ANTSEED_VERIFIER_STRICT_TCB=true to require UpToDate
5
+ * exactly. Anything else (OutOfDate, Revoked, Unknown, ...) is rejected.
6
+ */
7
+ export function isTcbAcceptable(status) {
8
+ if (status === 'UpToDate')
9
+ return true;
10
+ if (status === 'SWHardeningNeeded')
11
+ return process.env['ANTSEED_VERIFIER_STRICT_TCB'] !== 'true';
12
+ return false;
13
+ }
14
+ //# sourceMappingURL=tcb-policy.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tcb-policy.js","sourceRoot":"","sources":["../src/tcb-policy.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,MAAM,UAAU,eAAe,CAAC,MAAc;IAC5C,IAAI,MAAM,KAAK,UAAU;QAAE,OAAO,IAAI,CAAA;IACtC,IAAI,MAAM,KAAK,mBAAmB;QAAE,OAAO,OAAO,CAAC,GAAG,CAAC,6BAA6B,CAAC,KAAK,MAAM,CAAA;IAChG,OAAO,KAAK,CAAA;AACd,CAAC"}
@@ -0,0 +1,7 @@
1
+ {
2
+ "openai": { "defaultUrl": "https://api.openai.com", "baseUrl": true, "fallbacks": true },
3
+ "anthropic": { "defaultUrl": "https://api.anthropic.com", "baseUrl": false },
4
+ "typesafe": { "defaultUrl": "https://api.typesafe.ai", "baseUrl": true },
5
+ "venice-video": { "defaultUrl": "https://api.venice.ai", "baseUrl": true },
6
+ "alibaba-video": { "defaultUrl": "https://dashscope-intl.aliyuncs.com", "baseUrl": true }
7
+ }
@@ -1,5 +1,6 @@
1
1
  import type { AntseedVerifierPlugin, VerifyContext, VerifyResult } from './antseed-node-types.js';
2
2
  import './caps/index.js';
3
+ import type { VerifyConfidentialSpaceTokenFn } from './confidential-space.js';
3
4
  import { type VerifyQuoteFn } from './caps/tee-tdx.js';
4
5
  import type { MeasuredImagePolicy } from './caps/measured-image.js';
5
6
  /**
@@ -15,7 +16,7 @@ export declare function readRequiredCaps(): string[];
15
16
  */
16
17
  export declare function readMeasuredImagePolicy(): MeasuredImagePolicy | undefined;
17
18
  /** Core orchestration; the DCAP check is injectable for testing. */
18
- export declare function runVerify(ctx: VerifyContext, verifyQuote?: VerifyQuoteFn): Promise<VerifyResult>;
19
+ export declare function runVerify(ctx: VerifyContext, verifyQuote?: VerifyQuoteFn, verifyConfidentialSpaceToken?: VerifyConfidentialSpaceTokenFn): Promise<VerifyResult>;
19
20
  declare const verifierPlugin: AntseedVerifierPlugin;
20
21
  export default verifierPlugin;
21
22
  //# sourceMappingURL=verifier.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"verifier.d.ts","sourceRoot":"","sources":["../src/verifier.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,qBAAqB,EAAe,aAAa,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAA;AAC9G,OAAO,iBAAiB,CAAA;AAExB,OAAO,EAML,KAAK,aAAa,EACnB,MAAM,mBAAmB,CAAA;AAG1B,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAA;AAgCnE;;;GAGG;AACH,wBAAgB,gBAAgB,IAAI,MAAM,EAAE,CAI3C;AAiBD;;;;;GAKG;AACH,wBAAgB,uBAAuB,IAAI,mBAAmB,GAAG,SAAS,CAUzE;AAOD,oEAAoE;AACpE,wBAAsB,SAAS,CAC7B,GAAG,EAAE,aAAa,EAClB,WAAW,GAAE,aAAkC,GAC9C,OAAO,CAAC,YAAY,CAAC,CAiEvB;AAED,QAAA,MAAM,cAAc,EAAE,qBAQrB,CAAA;AAED,eAAe,cAAc,CAAA"}
1
+ {"version":3,"file":"verifier.d.ts","sourceRoot":"","sources":["../src/verifier.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,qBAAqB,EAAe,aAAa,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAA;AAC9G,OAAO,iBAAiB,CAAA;AAExB,OAAO,KAAK,EAAE,8BAA8B,EAAE,MAAM,yBAAyB,CAAA;AAC7E,OAAO,EAML,KAAK,aAAa,EACnB,MAAM,mBAAmB,CAAA;AAG1B,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAA;AAiCnE;;;GAGG;AACH,wBAAgB,gBAAgB,IAAI,MAAM,EAAE,CAI3C;AAiBD;;;;;GAKG;AACH,wBAAgB,uBAAuB,IAAI,mBAAmB,GAAG,SAAS,CAUzE;AAOD,oEAAoE;AACpE,wBAAsB,SAAS,CAC7B,GAAG,EAAE,aAAa,EAClB,WAAW,GAAE,aAAkC,EAC/C,4BAA4B,CAAC,EAAE,8BAA8B,GAC5D,OAAO,CAAC,YAAY,CAAC,CAmEvB;AAED,QAAA,MAAM,cAAc,EAAE,qBAQrB,CAAA;AAED,eAAe,cAAc,CAAA"}
package/dist/verifier.js CHANGED
@@ -4,6 +4,7 @@ import { capabilityIds, getCapability } from './capability.js';
4
4
  import { NODE_TEE_CAP_ID, PROVIDER_TEE_CAP_ID, defaultVerifyQuote, verifyTdxEvidence, } from './caps/tee-tdx.js';
5
5
  import { PROVIDER_CLAIMS_CAP_ID } from './caps/provider-claims.js';
6
6
  import { readFileSync } from 'node:fs';
7
+ import { readApprovedNodeBuilds } from './approved-node-measurements.js';
7
8
  import { NONCE_BYTES, VERIFIER_ID, claimId, decodeAttestResponse, encodeAttestRequest, normalizePeerId, } from './shared.js';
8
9
  /**
9
10
  * Buyer half. It fetches per-capability evidence from the seller in one attestation round,
@@ -71,7 +72,7 @@ function failAll(detail, requiredCaps) {
71
72
  return { ok: false, claims: requiredCaps.map((id) => ({ claim: claimId(id), ok: false, detail })) };
72
73
  }
73
74
  /** Core orchestration; the DCAP check is injectable for testing. */
74
- export async function runVerify(ctx, verifyQuote = defaultVerifyQuote) {
75
+ export async function runVerify(ctx, verifyQuote = defaultVerifyQuote, verifyConfidentialSpaceToken) {
75
76
  const requiredCaps = readRequiredCaps();
76
77
  let peerId;
77
78
  try {
@@ -89,7 +90,7 @@ export async function runVerify(ctx, verifyQuote = defaultVerifyQuote) {
89
90
  method: 'POST',
90
91
  path: ctx.attestPath,
91
92
  headers: { 'content-type': 'application/json' },
92
- body: encodeAttestRequest(nonce, requested),
93
+ body: encodeAttestRequest(nonce, requested, true),
93
94
  });
94
95
  }
95
96
  catch (err) {
@@ -111,11 +112,13 @@ export async function runVerify(ctx, verifyQuote = defaultVerifyQuote) {
111
112
  for (const id of TDX_CAP_IDS) {
112
113
  const ev = evidence[id];
113
114
  if (ev)
114
- parsedByCap.set(id, await verifyTdxEvidence(ev, verifyQuote, now));
115
+ parsedByCap.set(id, await verifyTdxEvidence(ev, verifyQuote, now, verifyConfidentialSpaceToken));
115
116
  }
116
117
  // Verify the required caps, any cap the seller returned evidence for, and derived caps.
117
118
  const wanted = new Set([...requiredCaps, ...Object.keys(evidence), ...DERIVED_CAPS]);
118
119
  const measuredImagePolicy = readMeasuredImagePolicy();
120
+ const approvedNodeBuilds = readApprovedNodeBuilds();
121
+ const channelBinding = resp.channelBinding;
119
122
  const claims = [];
120
123
  for (const capId of capabilityIds()) {
121
124
  if (!wanted.has(capId))
@@ -125,9 +128,9 @@ export async function runVerify(ctx, verifyQuote = defaultVerifyQuote) {
125
128
  continue;
126
129
  const source = PARSE_SOURCE[capId];
127
130
  const parsed = source ? parsedByCap.get(source) : undefined;
128
- const policy = capId === MEASURED_IMAGE_ID ? measuredImagePolicy : undefined;
131
+ const policy = capId === MEASURED_IMAGE_ID ? measuredImagePolicy : capId === NODE_TEE_CAP_ID ? approvedNodeBuilds : undefined;
129
132
  try {
130
- const out = await cap.verify({ nonce, peerId, evidence: evidence[capId], parsedQuote: parsed, evidenceBundle: evidence, policy });
133
+ const out = await cap.verify({ nonce, peerId, evidence: evidence[capId], parsedQuote: parsed, evidenceBundle: evidence, policy, channelBinding });
131
134
  claims.push(...(Array.isArray(out) ? out : [out]));
132
135
  }
133
136
  catch (err) {
@@ -141,8 +144,8 @@ const verifierPlugin = {
141
144
  type: 'verifier',
142
145
  name: VERIFIER_ID,
143
146
  displayName: 'TEE attestation verifier (Intel TDX / DCAP)',
144
- version: '0.1.0',
145
- description: 'Capability-based seller attestation: one claim per capability. Requires the seller node\'s genuine Intel TDX hardware (seller-node-tee-genuine) and a seller-identity binding over the whole bundle (seller-bound); also reports the provider TEE (seller-provider-tee-genuine), measured-image and gpu-cc when available.',
147
+ version: '0.1.1',
148
+ description: 'Capability-based seller attestation: one claim per capability. Requires the seller node\'s genuine Intel TDX hardware running an approved seller build on the buyer\'s own connection (seller-node-tee-genuine) and a seller-identity binding over the whole bundle (seller-bound); also reports the provider TEE (seller-provider-tee-genuine), measured-image and gpu-cc when available.',
146
149
  verify: (ctx) => runVerify(ctx),
147
150
  };
148
151
  export default verifierPlugin;
@@ -1 +1 @@
1
- {"version":3,"file":"verifier.js","sourceRoot":"","sources":["../src/verifier.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"verifier.js","sourceRoot":"","sources":["../src/verifier.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@antseed/antseed-verifier",
3
- "version": "0.1.0",
3
+ "version": "0.1.1",
4
4
  "description": "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 each.",
5
5
  "license": "GPL-3.0-only",
6
6
  "type": "module",