@kya-os/verifier 1.3.0 → 1.3.1-canary.0
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.
- package/dist/core.d.ts +131 -0
- package/dist/core.d.ts.map +1 -1
- package/dist/core.js +87 -29
- package/dist/core.js.map +1 -1
- package/dist/worker.d.ts +8 -10
- package/dist/worker.d.ts.map +1 -1
- package/dist/worker.js +81 -16
- package/dist/worker.js.map +1 -1
- package/package.json +9 -5
package/dist/core.d.ts
ADDED
|
@@ -0,0 +1,131 @@
|
|
|
1
|
+
import type { DetachedProof } from "@kya-os/contracts/proof";
|
|
2
|
+
import type { VerifierResult } from "@kya-os/contracts/verifier";
|
|
3
|
+
/**
|
|
4
|
+
* Configuration for the verifier core
|
|
5
|
+
*/
|
|
6
|
+
export interface VerifierConfig {
|
|
7
|
+
/**
|
|
8
|
+
* KTA base URL for delegation checking
|
|
9
|
+
*/
|
|
10
|
+
ktaBaseUrl?: string;
|
|
11
|
+
/**
|
|
12
|
+
* Enable delegation checking via KTA
|
|
13
|
+
*/
|
|
14
|
+
enableDelegationCheck?: boolean;
|
|
15
|
+
/**
|
|
16
|
+
* Clock skew tolerance in seconds
|
|
17
|
+
*/
|
|
18
|
+
clockSkewTolerance?: number;
|
|
19
|
+
/**
|
|
20
|
+
* Session timeout in seconds
|
|
21
|
+
*/
|
|
22
|
+
sessionTimeout?: number;
|
|
23
|
+
/**
|
|
24
|
+
* Maximum age for proofs in seconds (prevents replay of old proofs)
|
|
25
|
+
*/
|
|
26
|
+
proofMaxAge?: number;
|
|
27
|
+
/**
|
|
28
|
+
* Allow mock data for testing
|
|
29
|
+
*/
|
|
30
|
+
allowMockData?: boolean;
|
|
31
|
+
/**
|
|
32
|
+
* Cache TTL for DID documents in seconds
|
|
33
|
+
*/
|
|
34
|
+
didCacheTtl?: number;
|
|
35
|
+
/**
|
|
36
|
+
* Cache TTL for delegation status in seconds
|
|
37
|
+
*/
|
|
38
|
+
delegationCacheTtl?: number;
|
|
39
|
+
}
|
|
40
|
+
/**
|
|
41
|
+
* Context for proof verification
|
|
42
|
+
*/
|
|
43
|
+
export interface VerificationContext {
|
|
44
|
+
proof: DetachedProof;
|
|
45
|
+
audience: string;
|
|
46
|
+
timestamp?: number;
|
|
47
|
+
}
|
|
48
|
+
/**
|
|
49
|
+
* Isomorphic verifier core for XMCP-I proof validation
|
|
50
|
+
*
|
|
51
|
+
* This is the heart of the trust system - it verifies that AI agents
|
|
52
|
+
* are who they claim to be and have the authority to perform actions.
|
|
53
|
+
*/
|
|
54
|
+
export declare class VerifierCore {
|
|
55
|
+
private config;
|
|
56
|
+
private didCache;
|
|
57
|
+
private delegationCache;
|
|
58
|
+
constructor(config?: VerifierConfig);
|
|
59
|
+
/**
|
|
60
|
+
* Verify a detached proof and return verification result
|
|
61
|
+
*
|
|
62
|
+
* This is the main entry point for proof verification. It performs
|
|
63
|
+
* a comprehensive validation of the agent's identity and authorization.
|
|
64
|
+
*/
|
|
65
|
+
verify(context: VerificationContext): Promise<VerifierResult>;
|
|
66
|
+
/**
|
|
67
|
+
* Validate proof structure with comprehensive checks
|
|
68
|
+
*/
|
|
69
|
+
private validateProofStructure;
|
|
70
|
+
/**
|
|
71
|
+
* Validate timestamp with configurable clock skew tolerance
|
|
72
|
+
*/
|
|
73
|
+
private validateTimestamp;
|
|
74
|
+
/**
|
|
75
|
+
* Validate audience matches expected value
|
|
76
|
+
*/
|
|
77
|
+
private validateAudience;
|
|
78
|
+
/**
|
|
79
|
+
* Verify Ed25519 signature using JOSE with proper detached JWS handling
|
|
80
|
+
*
|
|
81
|
+
* This is the cryptographic heart of the verification process.
|
|
82
|
+
* It ensures the proof was signed by the claimed identity.
|
|
83
|
+
*/
|
|
84
|
+
private verifySignature;
|
|
85
|
+
/**
|
|
86
|
+
* Create canonical payload that matches runtime implementation
|
|
87
|
+
* Uses JSON Canonicalization Scheme (JCS) RFC 8785 for deterministic ordering
|
|
88
|
+
*/
|
|
89
|
+
private createCanonicalPayload;
|
|
90
|
+
/**
|
|
91
|
+
* Verify delegation status via KTA with caching
|
|
92
|
+
*/
|
|
93
|
+
private verifyDelegation;
|
|
94
|
+
/**
|
|
95
|
+
* Validate delegation response
|
|
96
|
+
*/
|
|
97
|
+
private validateDelegationResponse;
|
|
98
|
+
/**
|
|
99
|
+
* Fetch public key from DID document with caching
|
|
100
|
+
*/
|
|
101
|
+
private fetchPublicKeyWithCache;
|
|
102
|
+
/**
|
|
103
|
+
* Fetch DID document from well-known endpoint
|
|
104
|
+
*/
|
|
105
|
+
private fetchDIDDocument;
|
|
106
|
+
/**
|
|
107
|
+
* Extract public key from DID document
|
|
108
|
+
*/
|
|
109
|
+
private extractPublicKey;
|
|
110
|
+
/**
|
|
111
|
+
* Generate trusted headers for successful verification
|
|
112
|
+
*/
|
|
113
|
+
private generateHeaders;
|
|
114
|
+
/**
|
|
115
|
+
* Generate agent context for MCP recipients
|
|
116
|
+
*/
|
|
117
|
+
private generateAgentContext;
|
|
118
|
+
/**
|
|
119
|
+
* Create error result from structured error
|
|
120
|
+
*/
|
|
121
|
+
private createErrorResult;
|
|
122
|
+
/**
|
|
123
|
+
* Log verification attempt for security monitoring
|
|
124
|
+
*/
|
|
125
|
+
private logVerificationAttempt;
|
|
126
|
+
/**
|
|
127
|
+
* Clean up expired cache entries
|
|
128
|
+
*/
|
|
129
|
+
cleanupCache(): void;
|
|
130
|
+
}
|
|
131
|
+
//# sourceMappingURL=core.d.ts.map
|
package/dist/core.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"core.d.ts","sourceRoot":"","sources":["../src/core.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"core.d.ts","sourceRoot":"","sources":["../src/core.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,aAAa,EAAa,MAAM,yBAAyB,CAAC;AACxE,OAAO,KAAK,EACV,cAAc,EAGf,MAAM,4BAA4B,CAAC;AAGpC;;GAEG;AACH,MAAM,WAAW,cAAc;IAC7B;;OAEG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IAEpB;;OAEG;IACH,qBAAqB,CAAC,EAAE,OAAO,CAAC;IAEhC;;OAEG;IACH,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAE5B;;OAEG;IACH,cAAc,CAAC,EAAE,MAAM,CAAC;IAExB;;OAEG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IAErB;;OAEG;IACH,aAAa,CAAC,EAAE,OAAO,CAAC;IAExB;;OAEG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IAErB;;OAEG;IACH,kBAAkB,CAAC,EAAE,MAAM,CAAC;CAC7B;AAED;;GAEG;AACH,MAAM,WAAW,mBAAmB;IAClC,KAAK,EAAE,aAAa,CAAC;IACrB,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AA6BD;;;;;GAKG;AACH,qBAAa,YAAY;IACvB,OAAO,CAAC,MAAM,CAA2B;IACzC,OAAO,CAAC,QAAQ,CAAwC;IACxD,OAAO,CAAC,eAAe,CAAuC;gBAElD,MAAM,GAAE,cAAmB;IAavC;;;;;OAKG;IACG,MAAM,CAAC,OAAO,EAAE,mBAAmB,GAAG,OAAO,CAAC,cAAc,CAAC;IAkFnE;;OAEG;IACH,OAAO,CAAC,sBAAsB;IAkG9B;;OAEG;IACH,OAAO,CAAC,iBAAiB;IAsFzB;;OAEG;IACH,OAAO,CAAC,gBAAgB;IAoBxB;;;;;OAKG;YACW,eAAe;IAsJ7B;;;OAGG;IACH,OAAO,CAAC,sBAAsB;IAuB9B;;OAEG;YACW,gBAAgB;IAwF9B;;OAEG;IACH,OAAO,CAAC,0BAA0B;IA6ClC;;OAEG;YACW,uBAAuB;IAyBrC;;OAEG;YACW,gBAAgB;IAiD9B;;OAEG;IACH,OAAO,CAAC,gBAAgB;IAiCxB;;OAEG;IACH,OAAO,CAAC,eAAe;IAyBvB;;OAEG;IACH,OAAO,CAAC,oBAAoB;IAgB5B;;OAEG;IACH,OAAO,CAAC,iBAAiB;IAezB;;OAEG;IACH,OAAO,CAAC,sBAAsB;IAqB9B;;OAEG;IACI,YAAY,IAAI,IAAI;CAe5B"}
|
package/dist/core.js
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { importJWK, jwtVerify } from "jose";
|
|
2
|
-
import {
|
|
2
|
+
import { canonicalize } from "json-canonicalize";
|
|
3
|
+
import { AGENT_HEADERS, ERROR_HTTP_STATUS, VERIFIER_ERROR_CODES } from "@kya-os/contracts/verifier";
|
|
3
4
|
/**
|
|
4
5
|
* Isomorphic verifier core for XMCP-I proof validation
|
|
5
6
|
*
|
|
@@ -15,6 +16,7 @@ export class VerifierCore {
|
|
|
15
16
|
enableDelegationCheck: config.enableDelegationCheck ?? true,
|
|
16
17
|
clockSkewTolerance: config.clockSkewTolerance ?? 120,
|
|
17
18
|
sessionTimeout: config.sessionTimeout ?? 1800, // 30 minutes
|
|
19
|
+
proofMaxAge: config.proofMaxAge ?? 300, // 5 minutes
|
|
18
20
|
allowMockData: config.allowMockData ?? false,
|
|
19
21
|
didCacheTtl: config.didCacheTtl ?? 300, // 5 minutes
|
|
20
22
|
delegationCacheTtl: config.delegationCacheTtl ?? 60, // 1 minute
|
|
@@ -184,21 +186,78 @@ export class VerifierCore {
|
|
|
184
186
|
* Validate timestamp with configurable clock skew tolerance
|
|
185
187
|
*/
|
|
186
188
|
validateTimestamp(meta, currentTimestamp) {
|
|
189
|
+
// Validate meta.ts is not NaN (prevents client-controlled NaN attacks)
|
|
190
|
+
if (!Number.isFinite(meta.ts)) {
|
|
191
|
+
return {
|
|
192
|
+
code: VERIFIER_ERROR_CODES.PROOF_INVALID_TS,
|
|
193
|
+
message: "Invalid proof: timestamp is not a valid number",
|
|
194
|
+
httpStatus: ERROR_HTTP_STATUS[VERIFIER_ERROR_CODES.PROOF_INVALID_TS],
|
|
195
|
+
details: {
|
|
196
|
+
reason: "Proof timestamp must be a finite number",
|
|
197
|
+
received: meta.ts,
|
|
198
|
+
remediation: "Ensure proof timestamp is properly formatted",
|
|
199
|
+
},
|
|
200
|
+
};
|
|
201
|
+
}
|
|
187
202
|
const now = currentTimestamp || Math.floor(Date.now() / 1000);
|
|
203
|
+
// Validate server timestamp is valid (defense in depth)
|
|
204
|
+
if (!Number.isFinite(now)) {
|
|
205
|
+
return {
|
|
206
|
+
code: VERIFIER_ERROR_CODES.SERVER_TIME_INVALID,
|
|
207
|
+
message: "Server timestamp validation failed",
|
|
208
|
+
httpStatus: ERROR_HTTP_STATUS[VERIFIER_ERROR_CODES.SERVER_TIME_INVALID],
|
|
209
|
+
details: {
|
|
210
|
+
reason: "Server time is not valid",
|
|
211
|
+
remediation: "Contact system administrator",
|
|
212
|
+
},
|
|
213
|
+
};
|
|
214
|
+
}
|
|
188
215
|
const skew = this.config.clockSkewTolerance;
|
|
189
|
-
|
|
216
|
+
// Check for future timestamps
|
|
217
|
+
if (meta.ts > now + skew) {
|
|
190
218
|
return {
|
|
191
|
-
code:
|
|
219
|
+
code: VERIFIER_ERROR_CODES.PROOF_FUTURE_TS,
|
|
220
|
+
message: "Invalid proof: timestamp is in the future",
|
|
221
|
+
httpStatus: ERROR_HTTP_STATUS[VERIFIER_ERROR_CODES.PROOF_FUTURE_TS],
|
|
222
|
+
details: {
|
|
223
|
+
reason: `Timestamp ${meta.ts} is ${meta.ts - now}s in the future (skew: ${skew}s)`,
|
|
224
|
+
expected: `≤ ${now + skew}`,
|
|
225
|
+
received: meta.ts,
|
|
226
|
+
remediation: "Check client clock sync",
|
|
227
|
+
},
|
|
228
|
+
};
|
|
229
|
+
}
|
|
230
|
+
// Check for past timestamps (clock skew exceeded)
|
|
231
|
+
if (meta.ts < now - skew) {
|
|
232
|
+
return {
|
|
233
|
+
code: VERIFIER_ERROR_CODES.PROOF_SKEW_EXCEEDED,
|
|
192
234
|
message: "Invalid proof: timestamp outside acceptable range",
|
|
193
|
-
httpStatus:
|
|
235
|
+
httpStatus: ERROR_HTTP_STATUS[VERIFIER_ERROR_CODES.PROOF_SKEW_EXCEEDED],
|
|
194
236
|
details: {
|
|
195
|
-
reason: `Timestamp ${meta.ts} is
|
|
196
|
-
expected:
|
|
237
|
+
reason: `Timestamp ${meta.ts} is ${now - meta.ts}s in the past (skew: ${skew}s)`,
|
|
238
|
+
expected: `≥ ${now - skew}`,
|
|
197
239
|
received: meta.ts,
|
|
198
240
|
remediation: "Check NTP sync; adjust XMCP_I_TS_SKEW_SEC if needed",
|
|
199
241
|
},
|
|
200
242
|
};
|
|
201
243
|
}
|
|
244
|
+
// Check proof age if configured
|
|
245
|
+
if (this.config.proofMaxAge) {
|
|
246
|
+
const age = now - meta.ts;
|
|
247
|
+
if (age > this.config.proofMaxAge) {
|
|
248
|
+
return {
|
|
249
|
+
code: VERIFIER_ERROR_CODES.PROOF_TOO_OLD,
|
|
250
|
+
message: "Invalid proof: proof is too old",
|
|
251
|
+
httpStatus: ERROR_HTTP_STATUS[VERIFIER_ERROR_CODES.PROOF_TOO_OLD],
|
|
252
|
+
details: {
|
|
253
|
+
reason: `Proof age ${age}s exceeds maximum ${this.config.proofMaxAge}s`,
|
|
254
|
+
expected: `Less than ${this.config.proofMaxAge}s old`,
|
|
255
|
+
received: `${age}s old`,
|
|
256
|
+
remediation: "Generate a fresh proof",
|
|
257
|
+
},
|
|
258
|
+
};
|
|
259
|
+
}
|
|
260
|
+
}
|
|
202
261
|
return null;
|
|
203
262
|
}
|
|
204
263
|
/**
|
|
@@ -353,10 +412,10 @@ export class VerifierCore {
|
|
|
353
412
|
}
|
|
354
413
|
/**
|
|
355
414
|
* Create canonical payload that matches runtime implementation
|
|
356
|
-
* Uses JSON Canonicalization Scheme (JCS) for deterministic ordering
|
|
415
|
+
* Uses JSON Canonicalization Scheme (JCS) RFC 8785 for deterministic ordering
|
|
357
416
|
*/
|
|
358
417
|
createCanonicalPayload(meta) {
|
|
359
|
-
// Create payload object with
|
|
418
|
+
// Create payload object with required fields
|
|
360
419
|
const payload = {
|
|
361
420
|
audience: meta.audience,
|
|
362
421
|
nonce: meta.nonce,
|
|
@@ -365,26 +424,25 @@ export class VerifierCore {
|
|
|
365
424
|
sessionId: meta.sessionId,
|
|
366
425
|
ts: meta.ts,
|
|
367
426
|
};
|
|
368
|
-
// Add optional fields
|
|
427
|
+
// Add optional fields
|
|
369
428
|
if (meta.scopeId) {
|
|
370
429
|
payload.scopeId = meta.scopeId;
|
|
371
430
|
}
|
|
372
431
|
if (meta.delegationRef) {
|
|
373
432
|
payload.delegationRef = meta.delegationRef;
|
|
374
433
|
}
|
|
375
|
-
// Use
|
|
376
|
-
|
|
377
|
-
return JSON.stringify(payload, Object.keys(payload).sort());
|
|
434
|
+
// Use RFC 8785 compliant JCS canonicalization
|
|
435
|
+
return canonicalize(payload);
|
|
378
436
|
}
|
|
379
437
|
/**
|
|
380
438
|
* Verify delegation status via KTA with caching
|
|
381
439
|
*/
|
|
382
|
-
async verifyDelegation(delegationRef, did,
|
|
440
|
+
async verifyDelegation(delegationRef, did, kid) {
|
|
383
441
|
try {
|
|
384
442
|
// Check cache first
|
|
385
443
|
const cached = this.delegationCache.get(delegationRef);
|
|
386
444
|
if (cached && cached.expiresAt > Date.now()) {
|
|
387
|
-
return this.validateDelegationResponse(cached.response, did,
|
|
445
|
+
return this.validateDelegationResponse(cached.response, did, kid);
|
|
388
446
|
}
|
|
389
447
|
if (this.config.allowMockData) {
|
|
390
448
|
// Mock delegation for testing
|
|
@@ -392,19 +450,19 @@ export class VerifierCore {
|
|
|
392
450
|
const mockResponse = {
|
|
393
451
|
active: delegationRef !== "mock:revoked",
|
|
394
452
|
did,
|
|
395
|
-
|
|
453
|
+
kid,
|
|
396
454
|
scopes: ["*"],
|
|
397
455
|
};
|
|
398
|
-
return this.validateDelegationResponse(mockResponse, did,
|
|
456
|
+
return this.validateDelegationResponse(mockResponse, did, kid);
|
|
399
457
|
}
|
|
400
458
|
// For other delegation refs in test mode, assume they're valid
|
|
401
459
|
const mockResponse = {
|
|
402
460
|
active: true,
|
|
403
461
|
did,
|
|
404
|
-
|
|
462
|
+
kid,
|
|
405
463
|
scopes: ["*"],
|
|
406
464
|
};
|
|
407
|
-
return this.validateDelegationResponse(mockResponse, did,
|
|
465
|
+
return this.validateDelegationResponse(mockResponse, did, kid);
|
|
408
466
|
}
|
|
409
467
|
const response = await fetch(`${this.config.ktaBaseUrl}/api/v1/delegations/${encodeURIComponent(delegationRef)}`, {
|
|
410
468
|
method: "GET",
|
|
@@ -435,7 +493,7 @@ export class VerifierCore {
|
|
|
435
493
|
response: delegation,
|
|
436
494
|
expiresAt: Date.now() + this.config.delegationCacheTtl * 1000,
|
|
437
495
|
});
|
|
438
|
-
return this.validateDelegationResponse(delegation, did,
|
|
496
|
+
return this.validateDelegationResponse(delegation, did, kid);
|
|
439
497
|
}
|
|
440
498
|
catch (error) {
|
|
441
499
|
// Treat delegation check failures as verification failures
|
|
@@ -466,7 +524,7 @@ export class VerifierCore {
|
|
|
466
524
|
},
|
|
467
525
|
};
|
|
468
526
|
}
|
|
469
|
-
if (delegation.did !== expectedDid || delegation.
|
|
527
|
+
if (delegation.did !== expectedDid || delegation.kid !== expectedKeyId) {
|
|
470
528
|
return {
|
|
471
529
|
code: "XMCP_I_EBADPROOF",
|
|
472
530
|
message: "Delegation identity mismatch",
|
|
@@ -474,7 +532,7 @@ export class VerifierCore {
|
|
|
474
532
|
details: {
|
|
475
533
|
reason: "Delegation does not match proof identity",
|
|
476
534
|
expected: `${expectedDid}#${expectedKeyId}`,
|
|
477
|
-
received: `${delegation.did}#${delegation.
|
|
535
|
+
received: `${delegation.did}#${delegation.kid}`,
|
|
478
536
|
},
|
|
479
537
|
};
|
|
480
538
|
}
|
|
@@ -494,11 +552,11 @@ export class VerifierCore {
|
|
|
494
552
|
/**
|
|
495
553
|
* Fetch public key from DID document with caching
|
|
496
554
|
*/
|
|
497
|
-
async fetchPublicKeyWithCache(did,
|
|
498
|
-
const cacheKey = `${did}#${
|
|
555
|
+
async fetchPublicKeyWithCache(did, kid) {
|
|
556
|
+
const cacheKey = `${did}#${kid}`;
|
|
499
557
|
const cached = this.didCache.get(cacheKey);
|
|
500
558
|
if (cached && cached.expiresAt > Date.now()) {
|
|
501
|
-
return this.extractPublicKey(cached.document,
|
|
559
|
+
return this.extractPublicKey(cached.document, kid);
|
|
502
560
|
}
|
|
503
561
|
const didDoc = await this.fetchDIDDocument(did);
|
|
504
562
|
if (!didDoc) {
|
|
@@ -509,7 +567,7 @@ export class VerifierCore {
|
|
|
509
567
|
document: didDoc,
|
|
510
568
|
expiresAt: Date.now() + this.config.didCacheTtl * 1000,
|
|
511
569
|
});
|
|
512
|
-
return this.extractPublicKey(didDoc,
|
|
570
|
+
return this.extractPublicKey(didDoc, kid);
|
|
513
571
|
}
|
|
514
572
|
/**
|
|
515
573
|
* Fetch DID document from well-known endpoint
|
|
@@ -561,12 +619,12 @@ export class VerifierCore {
|
|
|
561
619
|
/**
|
|
562
620
|
* Extract public key from DID document
|
|
563
621
|
*/
|
|
564
|
-
extractPublicKey(didDoc,
|
|
622
|
+
extractPublicKey(didDoc, kid) {
|
|
565
623
|
try {
|
|
566
624
|
// Find verification method
|
|
567
|
-
const verificationMethod = didDoc.verificationMethod?.find((vm) => vm.id === `#${
|
|
625
|
+
const verificationMethod = didDoc.verificationMethod?.find((vm) => vm.id === `#${kid}` || vm.id === `${didDoc.id}#${kid}`);
|
|
568
626
|
if (!verificationMethod) {
|
|
569
|
-
throw new Error(`Key ${
|
|
627
|
+
throw new Error(`Key ${kid} not found in DID document`);
|
|
570
628
|
}
|
|
571
629
|
// Convert to JWK format if needed
|
|
572
630
|
if (verificationMethod.publicKeyJwk) {
|
|
@@ -615,7 +673,7 @@ export class VerifierCore {
|
|
|
615
673
|
generateAgentContext(meta) {
|
|
616
674
|
return {
|
|
617
675
|
did: meta.did,
|
|
618
|
-
|
|
676
|
+
kid: meta.kid,
|
|
619
677
|
subject: meta.delegationRef ? meta.did : undefined,
|
|
620
678
|
scopes: meta.scopeId ? meta.scopeId.split(",") : [],
|
|
621
679
|
session: meta.sessionId,
|
package/dist/core.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"core.js","sourceRoot":"","sources":["../src/core.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"core.js","sourceRoot":"","sources":["../src/core.ts"],"names":[],"mappings":"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"}
|
package/dist/worker.d.ts
CHANGED
|
@@ -10,6 +10,7 @@ export interface WorkerEnv {
|
|
|
10
10
|
KYA_API_KEY?: string;
|
|
11
11
|
XMCP_I_TS_SKEW_SEC?: string;
|
|
12
12
|
XMCP_I_SESSION_TTL?: string;
|
|
13
|
+
PROOF_MAX_AGE_SEC?: string;
|
|
13
14
|
KYA_VOUCHED_API_KEY?: string;
|
|
14
15
|
}
|
|
15
16
|
/**
|
|
@@ -60,8 +61,8 @@ export declare function createConfigFromEnv(env: WorkerEnv, overrides?: Partial<
|
|
|
60
61
|
* ```typescript
|
|
61
62
|
* export default {
|
|
62
63
|
* async fetch(request: Request, env: WorkerEnv): Promise<Response> {
|
|
63
|
-
*
|
|
64
|
-
* const result = await verifyWorker(request,
|
|
64
|
+
* // Config is automatically cached per worker instance
|
|
65
|
+
* const result = await verifyWorker(request, env);
|
|
65
66
|
*
|
|
66
67
|
* if (!result.success) {
|
|
67
68
|
* return applyVerificationToResponse(result);
|
|
@@ -73,10 +74,10 @@ export declare function createConfigFromEnv(env: WorkerEnv, overrides?: Partial<
|
|
|
73
74
|
* ```
|
|
74
75
|
*
|
|
75
76
|
* @param request - The incoming request
|
|
76
|
-
* @param
|
|
77
|
+
* @param envOrConfig - Worker environment or verifier configuration
|
|
77
78
|
* @returns Promise<VerifierResult> - Verification result with headers or error
|
|
78
79
|
*/
|
|
79
|
-
export declare function verifyWorker(request: Request,
|
|
80
|
+
export declare function verifyWorker(request: Request, envOrConfig?: WorkerEnv | WorkerVerifierConfig): Promise<VerifierResult>;
|
|
80
81
|
/**
|
|
81
82
|
* Cloudflare Worker middleware factory
|
|
82
83
|
*
|
|
@@ -113,15 +114,12 @@ export declare function applyVerificationToResponse(result: VerifierResult, resp
|
|
|
113
114
|
*
|
|
114
115
|
* src/index.ts:
|
|
115
116
|
* ```typescript
|
|
116
|
-
* import { verifyWorker, applyVerificationToResponse,
|
|
117
|
+
* import { verifyWorker, applyVerificationToResponse, type WorkerEnv } from "@kya-os/verifier/worker";
|
|
117
118
|
*
|
|
118
119
|
* export default {
|
|
119
120
|
* async fetch(request: Request, env: WorkerEnv): Promise<Response> {
|
|
120
|
-
* //
|
|
121
|
-
* const
|
|
122
|
-
*
|
|
123
|
-
* // Verify the request
|
|
124
|
-
* const result = await verifyWorker(request, config);
|
|
121
|
+
* // Pass env directly - config is automatically cached per worker instance
|
|
122
|
+
* const result = await verifyWorker(request, env);
|
|
125
123
|
*
|
|
126
124
|
* if (!result.success) {
|
|
127
125
|
* return applyVerificationToResponse(result);
|
package/dist/worker.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"worker.d.ts","sourceRoot":"","sources":["../src/worker.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AACjE,OAAO,EAAgB,KAAK,cAAc,EAAE,MAAM,WAAW,CAAC;AAE9D;;;GAGG;AACH,MAAM,WAAW,SAAS;IAExB,WAAW,CAAC,EAAE,WAAW,CAAC;IAG1B,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,kBAAkB,CAAC,EAAE,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"worker.d.ts","sourceRoot":"","sources":["../src/worker.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AACjE,OAAO,EAAgB,KAAK,cAAc,EAAE,MAAM,WAAW,CAAC;AAE9D;;;GAGG;AACH,MAAM,WAAW,SAAS;IAExB,WAAW,CAAC,EAAE,WAAW,CAAC;IAG1B,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAG3B,mBAAmB,CAAC,EAAE,MAAM,CAAC;CAC9B;AAED;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE;QAAE,IAAI,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,aAAa,GAAG,QAAQ,CAAA;KAAE,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC;IAChG,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,WAAW,GAAG,cAAc,EAAE,OAAO,CAAC,EAAE;QAAE,UAAU,CAAC,EAAE,MAAM,CAAC;QAAC,aAAa,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACzI,MAAM,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CACpC;AAED;;GAEG;AACH,MAAM,WAAW,oBAAqB,SAAQ,cAAc;IAC1D;;;OAGG;IACH,WAAW,CAAC,EAAE,WAAW,CAAC;IAE1B;;;OAGG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB;;;OAGG;IACH,aAAa,CAAC,EAAE,OAAO,CAAC;CACzB;AA0ED;;;;;;GAMG;AACH,wBAAgB,mBAAmB,CACjC,GAAG,EAAE,SAAS,EACd,SAAS,CAAC,EAAE,OAAO,CAAC,oBAAoB,CAAC,GACxC,oBAAoB,CAWtB;AA6CD;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,wBAAsB,YAAY,CAChC,OAAO,EAAE,OAAO,EAChB,WAAW,CAAC,EAAE,SAAS,GAAG,oBAAoB,GAC7C,OAAO,CAAC,cAAc,CAAC,CA0DzB;AAED;;;;;;;GAOG;AACH,wBAAgB,sBAAsB,CAAC,MAAM,CAAC,EAAE,cAAc,IAC9C,SAAS,OAAO,KAAG,OAAO,CAAC,cAAc,CAAC,CAGzD;AAED;;;;;;GAMG;AACH,wBAAgB,2BAA2B,CACzC,MAAM,EAAE,cAAc,EACtB,QAAQ,CAAC,EAAE,QAAQ,GAClB,QAAQ,CAkCV;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2DG"}
|
package/dist/worker.js
CHANGED
|
@@ -33,6 +33,30 @@ function extractAudienceFromRequest(request) {
|
|
|
33
33
|
const url = new URL(request.url);
|
|
34
34
|
return url.host;
|
|
35
35
|
}
|
|
36
|
+
/**
|
|
37
|
+
* Safely parse environment integer with bounds validation
|
|
38
|
+
* Prevents NaN bypass attacks where parseInt returns NaN and disables validators
|
|
39
|
+
*/
|
|
40
|
+
function parseEnvInt(value, defaultValue, min, max) {
|
|
41
|
+
if (!value)
|
|
42
|
+
return defaultValue;
|
|
43
|
+
const parsed = parseInt(value, 10);
|
|
44
|
+
// Reject NaN to prevent bypass attacks
|
|
45
|
+
if (isNaN(parsed)) {
|
|
46
|
+
console.warn(`Invalid integer env value: ${value}, using default: ${defaultValue}`);
|
|
47
|
+
return defaultValue;
|
|
48
|
+
}
|
|
49
|
+
// Clamp to safe bounds
|
|
50
|
+
if (parsed < min) {
|
|
51
|
+
console.warn(`Env value ${parsed} below minimum ${min}, using minimum`);
|
|
52
|
+
return min;
|
|
53
|
+
}
|
|
54
|
+
if (parsed > max) {
|
|
55
|
+
console.warn(`Env value ${parsed} above maximum ${max}, using maximum`);
|
|
56
|
+
return max;
|
|
57
|
+
}
|
|
58
|
+
return parsed;
|
|
59
|
+
}
|
|
36
60
|
/**
|
|
37
61
|
* Create verifier config from Worker environment
|
|
38
62
|
*
|
|
@@ -44,17 +68,48 @@ export function createConfigFromEnv(env, overrides) {
|
|
|
44
68
|
return {
|
|
45
69
|
ktaBaseUrl: env.KYA_API_URL || "https://knowthat.ai",
|
|
46
70
|
enableDelegationCheck: true,
|
|
47
|
-
clockSkewTolerance: env.XMCP_I_TS_SKEW_SEC
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
sessionTimeout: env.XMCP_I_SESSION_TTL
|
|
51
|
-
? parseInt(env.XMCP_I_SESSION_TTL, 10)
|
|
52
|
-
: 1800,
|
|
71
|
+
clockSkewTolerance: parseEnvInt(env.XMCP_I_TS_SKEW_SEC, 120, 0, 3600),
|
|
72
|
+
sessionTimeout: parseEnvInt(env.XMCP_I_SESSION_TTL, 1800, 60, 86400),
|
|
73
|
+
proofMaxAge: parseEnvInt(env.PROOF_MAX_AGE_SEC, 300, 60, 3600),
|
|
53
74
|
kvNamespace: env.NONCE_CACHE,
|
|
54
75
|
nonceTtl: 1800,
|
|
55
76
|
...overrides,
|
|
56
77
|
};
|
|
57
78
|
}
|
|
79
|
+
/**
|
|
80
|
+
* Cached config to avoid parsing env on every request
|
|
81
|
+
*/
|
|
82
|
+
let cachedConfig = null;
|
|
83
|
+
let cachedEnvSignature = null;
|
|
84
|
+
/**
|
|
85
|
+
* Create a signature from env to detect changes
|
|
86
|
+
*/
|
|
87
|
+
function getEnvSignature(env) {
|
|
88
|
+
return [
|
|
89
|
+
env.KYA_API_URL || "",
|
|
90
|
+
env.XMCP_I_TS_SKEW_SEC || "",
|
|
91
|
+
env.XMCP_I_SESSION_TTL || "",
|
|
92
|
+
env.PROOF_MAX_AGE_SEC || "",
|
|
93
|
+
].join("|");
|
|
94
|
+
}
|
|
95
|
+
/**
|
|
96
|
+
* Get or create config from env with caching
|
|
97
|
+
* Caches config per worker instance to avoid parsing env on every request
|
|
98
|
+
*/
|
|
99
|
+
function getConfigFromEnv(env, overrides) {
|
|
100
|
+
const signature = getEnvSignature(env);
|
|
101
|
+
// Return cached config if env hasn't changed
|
|
102
|
+
if (cachedConfig && cachedEnvSignature === signature && !overrides) {
|
|
103
|
+
return cachedConfig;
|
|
104
|
+
}
|
|
105
|
+
// Parse env and cache result
|
|
106
|
+
const config = createConfigFromEnv(env, overrides);
|
|
107
|
+
if (!overrides) {
|
|
108
|
+
cachedConfig = config;
|
|
109
|
+
cachedEnvSignature = signature;
|
|
110
|
+
}
|
|
111
|
+
return config;
|
|
112
|
+
}
|
|
58
113
|
/**
|
|
59
114
|
* Cloudflare Worker verifier function
|
|
60
115
|
*
|
|
@@ -62,8 +117,8 @@ export function createConfigFromEnv(env, overrides) {
|
|
|
62
117
|
* ```typescript
|
|
63
118
|
* export default {
|
|
64
119
|
* async fetch(request: Request, env: WorkerEnv): Promise<Response> {
|
|
65
|
-
*
|
|
66
|
-
* const result = await verifyWorker(request,
|
|
120
|
+
* // Config is automatically cached per worker instance
|
|
121
|
+
* const result = await verifyWorker(request, env);
|
|
67
122
|
*
|
|
68
123
|
* if (!result.success) {
|
|
69
124
|
* return applyVerificationToResponse(result);
|
|
@@ -75,11 +130,24 @@ export function createConfigFromEnv(env, overrides) {
|
|
|
75
130
|
* ```
|
|
76
131
|
*
|
|
77
132
|
* @param request - The incoming request
|
|
78
|
-
* @param
|
|
133
|
+
* @param envOrConfig - Worker environment or verifier configuration
|
|
79
134
|
* @returns Promise<VerifierResult> - Verification result with headers or error
|
|
80
135
|
*/
|
|
81
|
-
export async function verifyWorker(request,
|
|
136
|
+
export async function verifyWorker(request, envOrConfig) {
|
|
82
137
|
try {
|
|
138
|
+
// Resolve config from env or use provided config (with caching)
|
|
139
|
+
let config;
|
|
140
|
+
if (!envOrConfig) {
|
|
141
|
+
throw new Error("Either env or config must be provided");
|
|
142
|
+
}
|
|
143
|
+
else if ("NONCE_CACHE" in envOrConfig || "KYA_API_URL" in envOrConfig) {
|
|
144
|
+
// It's a WorkerEnv, use cached config
|
|
145
|
+
config = getConfigFromEnv(envOrConfig);
|
|
146
|
+
}
|
|
147
|
+
else {
|
|
148
|
+
// It's already a config
|
|
149
|
+
config = envOrConfig;
|
|
150
|
+
}
|
|
83
151
|
// Extract proof from request
|
|
84
152
|
const proof = await extractProofFromRequest(request);
|
|
85
153
|
if (!proof) {
|
|
@@ -190,15 +258,12 @@ export function applyVerificationToResponse(result, response) {
|
|
|
190
258
|
*
|
|
191
259
|
* src/index.ts:
|
|
192
260
|
* ```typescript
|
|
193
|
-
* import { verifyWorker, applyVerificationToResponse,
|
|
261
|
+
* import { verifyWorker, applyVerificationToResponse, type WorkerEnv } from "@kya-os/verifier/worker";
|
|
194
262
|
*
|
|
195
263
|
* export default {
|
|
196
264
|
* async fetch(request: Request, env: WorkerEnv): Promise<Response> {
|
|
197
|
-
* //
|
|
198
|
-
* const
|
|
199
|
-
*
|
|
200
|
-
* // Verify the request
|
|
201
|
-
* const result = await verifyWorker(request, config);
|
|
265
|
+
* // Pass env directly - config is automatically cached per worker instance
|
|
266
|
+
* const result = await verifyWorker(request, env);
|
|
202
267
|
*
|
|
203
268
|
* if (!result.success) {
|
|
204
269
|
* return applyVerificationToResponse(result);
|
package/dist/worker.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"worker.js","sourceRoot":"","sources":["../src/worker.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,YAAY,EAAuB,MAAM,WAAW,CAAC;
|
|
1
|
+
{"version":3,"file":"worker.js","sourceRoot":"","sources":["../src/worker.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@kya-os/verifier",
|
|
3
|
-
"version": "1.3.0",
|
|
3
|
+
"version": "1.3.1-canary.0",
|
|
4
4
|
"description": "Isomorphic verifier middleware for XMCP-I proof validation",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "./dist/index.js",
|
|
@@ -27,20 +27,24 @@
|
|
|
27
27
|
"build": "tsc -p tsconfig.build.json",
|
|
28
28
|
"dev": "tsc -p tsconfig.build.json --watch",
|
|
29
29
|
"test": "vitest run",
|
|
30
|
+
"test:coverage": "vitest run --coverage",
|
|
30
31
|
"test:watch": "vitest",
|
|
31
32
|
"clean": "rm -rf dist"
|
|
32
33
|
},
|
|
33
34
|
"dependencies": {
|
|
34
|
-
"@kya-os/contracts": "
|
|
35
|
-
"jose": "^5.2.0"
|
|
35
|
+
"@kya-os/contracts": "workspace:*",
|
|
36
|
+
"jose": "^5.2.0",
|
|
37
|
+
"json-canonicalize": "^2.0.0"
|
|
36
38
|
},
|
|
37
39
|
"devDependencies": {
|
|
38
40
|
"@types/node": "^20.11.0",
|
|
41
|
+
"@vitest/coverage-v8": "^3.2.4",
|
|
39
42
|
"typescript": "^5.3.0",
|
|
40
|
-
"vitest": "^
|
|
43
|
+
"vitest": "^3.2.4"
|
|
41
44
|
},
|
|
42
45
|
"peerDependencies": {
|
|
43
|
-
"@types/express": "^4.17.0"
|
|
46
|
+
"@types/express": "^4.17.0",
|
|
47
|
+
"json-canonicalize": "^2.0.0"
|
|
44
48
|
},
|
|
45
49
|
"peerDependenciesMeta": {
|
|
46
50
|
"@types/express": {
|