@agentunion/fastaun-browser 0.4.5 → 0.4.7
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/CHANGELOG.md +41 -0
- package/_packed_docs/CHANGELOG.md +41 -0
- package/_packed_docs/INDEX.md +2 -2
- package/_packed_docs/KITE_DOCS_GUIDE.md +1 -1
- package/_packed_docs/agent.md//350/277/234/347/250/213agent.md/347/274/223/345/255/230/344/270/216etag/351/200/217/344/274/240/346/226/271/346/241/210.md +73 -84
- package/_packed_docs/sdk/01-/345/277/253/351/200/237/345/274/200/345/247/213.md +15 -14
- package/_packed_docs/sdk/02-WebSocket/345/215/217/350/256/256.md +2 -2
- package/_packed_docs/sdk/03-/346/240/270/345/277/203/346/246/202/345/277/265.md +22 -5
- package/_packed_docs/sdk/04-/350/277/236/346/216/245/344/270/216/350/256/244/350/257/201.md +44 -26
- package/_packed_docs/sdk/05-E2EE/345/212/240/345/257/206/351/200/232/344/277/241.md +5 -5
- package/_packed_docs/sdk/06-API/346/211/213/345/206/214.md +63 -35
- package/_packed_docs/sdk/08-/346/234/200/344/275/263/345/256/236/350/267/265.md +3 -3
- package/_packed_docs/sdk/09-message-rpc-manual.md +6 -6
- package/_packed_docs/sdk/AUN_DOCS_GUIDE.md +6 -4
- package/_packed_docs/sdk/INDEX.md +2 -2
- package/_packed_docs/sdk/README.md +3 -3
- package/dist/agent-md.d.ts +111 -0
- package/dist/agent-md.d.ts.map +1 -0
- package/dist/agent-md.js +674 -0
- package/dist/agent-md.js.map +1 -0
- package/dist/aid-store.d.ts +15 -40
- package/dist/aid-store.d.ts.map +1 -1
- package/dist/aid-store.js +141 -163
- package/dist/aid-store.js.map +1 -1
- package/dist/auth.js +1 -1
- package/dist/auth.js.map +1 -1
- package/dist/bundle.js +4164 -4023
- package/dist/client.d.ts +2 -61
- package/dist/client.d.ts.map +1 -1
- package/dist/client.js +134 -704
- package/dist/client.js.map +1 -1
- package/dist/index.d.ts +3 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +2 -1
- package/dist/index.js.map +1 -1
- package/dist/keystore/index.d.ts +6 -2
- package/dist/keystore/index.d.ts.map +1 -1
- package/dist/keystore/indexeddb-identity-store.d.ts +59 -0
- package/dist/keystore/indexeddb-identity-store.d.ts.map +1 -0
- package/dist/keystore/indexeddb-identity-store.js +490 -0
- package/dist/keystore/indexeddb-identity-store.js.map +1 -0
- package/dist/keystore/indexeddb-shared.d.ts +76 -0
- package/dist/keystore/indexeddb-shared.d.ts.map +1 -0
- package/dist/keystore/indexeddb-shared.js +382 -0
- package/dist/keystore/indexeddb-shared.js.map +1 -0
- package/dist/keystore/indexeddb-token-store.d.ts +119 -0
- package/dist/keystore/indexeddb-token-store.d.ts.map +1 -0
- package/dist/keystore/indexeddb-token-store.js +1086 -0
- package/dist/keystore/indexeddb-token-store.js.map +1 -0
- package/dist/register-flow.d.ts +22 -3
- package/dist/register-flow.d.ts.map +1 -1
- package/dist/register-flow.js +49 -3
- package/dist/register-flow.js.map +1 -1
- package/dist/version.d.ts +1 -1
- package/dist/version.js +1 -1
- package/package.json +1 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"agent-md.js","sourceRoot":"","sources":["../src/agent-md.ts"],"names":[],"mappings":"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"}
|
package/dist/aid-store.d.ts
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { AID } from './aid.js';
|
|
2
2
|
import { type Result } from './result.js';
|
|
3
|
+
import { type AgentMdCheckResult, type AgentMdDownloadResult } from './agent-md.js';
|
|
3
4
|
export interface AIDInfo {
|
|
4
5
|
aid: string;
|
|
5
6
|
certFingerprint: string;
|
|
@@ -13,46 +14,15 @@ export interface ResolveOpts {
|
|
|
13
14
|
}
|
|
14
15
|
export type ResolveResult = {
|
|
15
16
|
aid: AID;
|
|
16
|
-
agent_md?:
|
|
17
|
-
content: string;
|
|
18
|
-
verification: {
|
|
19
|
-
status: string;
|
|
20
|
-
reason?: string;
|
|
21
|
-
};
|
|
22
|
-
cert_pem: string;
|
|
23
|
-
};
|
|
17
|
+
agent_md?: DownloadAgentMdResult;
|
|
24
18
|
source: {
|
|
25
19
|
cert_from_cache: boolean;
|
|
26
20
|
agent_md_fetched: boolean;
|
|
27
21
|
};
|
|
28
22
|
};
|
|
29
|
-
export type
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
verification: {
|
|
33
|
-
status: string;
|
|
34
|
-
reason?: string;
|
|
35
|
-
};
|
|
36
|
-
cert_pem: string;
|
|
37
|
-
etag: string;
|
|
38
|
-
last_modified: string;
|
|
39
|
-
};
|
|
40
|
-
export type HeadAgentMdResult = {
|
|
41
|
-
aid: string;
|
|
42
|
-
found: boolean;
|
|
43
|
-
etag: string;
|
|
44
|
-
last_modified: string;
|
|
45
|
-
content_length: number;
|
|
46
|
-
};
|
|
47
|
-
export type CheckAgentMdResult = {
|
|
48
|
-
aid: string;
|
|
49
|
-
local_found: boolean;
|
|
50
|
-
remote_found: boolean;
|
|
51
|
-
local_etag: string;
|
|
52
|
-
remote_etag: string;
|
|
53
|
-
needs_update: boolean;
|
|
54
|
-
ttl_days: number;
|
|
55
|
-
};
|
|
23
|
+
export type DownloadAgentMdResult = AgentMdDownloadResult;
|
|
24
|
+
export type CheckAgentMdResult = AgentMdCheckResult;
|
|
25
|
+
export type UploadAgentMdResult = Record<string, unknown>;
|
|
56
26
|
export type DiagnoseResult = {
|
|
57
27
|
aid: string;
|
|
58
28
|
status: string;
|
|
@@ -85,13 +55,14 @@ export declare class AIDStore {
|
|
|
85
55
|
readonly slotId: string;
|
|
86
56
|
private _encryptionSeed;
|
|
87
57
|
private _keystore;
|
|
88
|
-
private
|
|
58
|
+
private _tokenStore;
|
|
89
59
|
private _registerFlow;
|
|
90
|
-
private _crypto;
|
|
91
60
|
private _discovery;
|
|
61
|
+
private _crypto;
|
|
62
|
+
private _rootCaPem;
|
|
92
63
|
private _verifySsl;
|
|
93
64
|
private _gatewayCache;
|
|
94
|
-
private
|
|
65
|
+
private _agentMdManager;
|
|
95
66
|
constructor(opts: {
|
|
96
67
|
aunPath: string;
|
|
97
68
|
encryptionSeed: string;
|
|
@@ -113,14 +84,18 @@ export declare class AIDStore {
|
|
|
113
84
|
exists: boolean;
|
|
114
85
|
}>>;
|
|
115
86
|
resolve(aid: string, opts?: ResolveOpts): Promise<Result<ResolveResult>>;
|
|
116
|
-
|
|
117
|
-
headAgentMd(aid: string): Promise<Result<HeadAgentMdResult>>;
|
|
87
|
+
downloadAgentMd(aid: string, timeoutMs?: number): Promise<Result<DownloadAgentMdResult>>;
|
|
118
88
|
checkAgentMd(aid: string, ttlDays?: number): Promise<Result<CheckAgentMdResult>>;
|
|
89
|
+
private _authIdentityFromAid;
|
|
90
|
+
private _uploadAgentMdToken;
|
|
91
|
+
uploadAgentMd(aid: string, content?: string | null): Promise<Result<UploadAgentMdResult>>;
|
|
119
92
|
diagnose(aid: string): Promise<Result<DiagnoseResult>>;
|
|
120
93
|
renewCert(aid: string): Promise<Result<RenewCertResult>>;
|
|
121
94
|
rekey(aid: string): Promise<Result<RekeyResult>>;
|
|
95
|
+
private _beginAidOperation;
|
|
122
96
|
private _resolveGateway;
|
|
123
97
|
private _loadCachedGatewayUrl;
|
|
124
98
|
private _persistGatewayUrl;
|
|
99
|
+
private _hasLocalAidMaterial;
|
|
125
100
|
}
|
|
126
101
|
//# sourceMappingURL=aid-store.d.ts.map
|
package/dist/aid-store.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"aid-store.d.ts","sourceRoot":"","sources":["../src/aid-store.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,UAAU,CAAC;AAW/B,OAAO,EAAuB,KAAK,MAAM,EAAE,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"aid-store.d.ts","sourceRoot":"","sources":["../src/aid-store.ts"],"names":[],"mappings":"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"}
|
package/dist/aid-store.js
CHANGED
|
@@ -2,13 +2,15 @@ import { AID } from './aid.js';
|
|
|
2
2
|
import { CryptoProvider, pemToArrayBuffer, importPrivateKeyEcdsa, importCertPublicKeyEcdsa, ecdsaSignDer, ecdsaVerifyDer } from './crypto.js';
|
|
3
3
|
import * as codes from './error-codes.js';
|
|
4
4
|
import { publicKeyDerB64 } from './cert-utils.js';
|
|
5
|
-
import { AuthFlow } from './auth.js';
|
|
6
5
|
import { RegisterFlow } from './register-flow.js';
|
|
7
6
|
import { GatewayDiscovery } from './discovery.js';
|
|
8
|
-
import { IdentityConflictError, ValidationError } from './errors.js';
|
|
9
|
-
import {
|
|
7
|
+
import { IdentityConflictError, NotFoundError, ValidationError } from './errors.js';
|
|
8
|
+
import { IndexedDBIdentityStore } from './keystore/indexeddb-identity-store.js';
|
|
9
|
+
import { IndexedDBTokenStore } from './keystore/indexeddb-token-store.js';
|
|
10
10
|
import { getDeviceId, normalizeInstanceId, normalizeSlotId } from './config.js';
|
|
11
11
|
import { resultErr, resultOk } from './result.js';
|
|
12
|
+
import { AgentMdManager } from './agent-md.js';
|
|
13
|
+
import { AuthFlow } from './auth.js';
|
|
12
14
|
// ── 证书 DER 解析工具 ────────────────────────────────────────────
|
|
13
15
|
function _derReadLength(data, offset) {
|
|
14
16
|
if (offset >= data.length)
|
|
@@ -234,17 +236,6 @@ function issuerFromAid(aid) {
|
|
|
234
236
|
const dotIdx = target.indexOf('.');
|
|
235
237
|
return dotIdx >= 0 ? target.slice(dotIdx + 1) : target;
|
|
236
238
|
}
|
|
237
|
-
function validateRegisterAidName(aid) {
|
|
238
|
-
if (!aid)
|
|
239
|
-
throw new ValidationError("AIDStore.register requires 'aid'");
|
|
240
|
-
const name = aid.includes('.') ? aid.split('.')[0] : aid;
|
|
241
|
-
if (!/^[a-z0-9_][a-z0-9_-]{3,63}$/.test(name)) {
|
|
242
|
-
throw new ValidationError(`Invalid AID name '${name}': must be 4-64 characters, only [a-z0-9_-], cannot start with '-'`);
|
|
243
|
-
}
|
|
244
|
-
if (name.startsWith('guest')) {
|
|
245
|
-
throw new ValidationError("AID name must not start with 'guest'");
|
|
246
|
-
}
|
|
247
|
-
}
|
|
248
239
|
function gatewayHttpUrl(gatewayUrl, path) {
|
|
249
240
|
const parsed = new URL(gatewayUrl);
|
|
250
241
|
parsed.protocol = parsed.protocol === 'wss:' ? 'https:' : 'http:';
|
|
@@ -256,11 +247,6 @@ function gatewayHttpUrl(gatewayUrl, path) {
|
|
|
256
247
|
function pkiCertUrl(gatewayUrl, aid) {
|
|
257
248
|
return gatewayHttpUrl(gatewayUrl, `/pki/cert/${encodeURIComponent(aid)}`);
|
|
258
249
|
}
|
|
259
|
-
function agentMdUrl(aid, gatewayUrl) {
|
|
260
|
-
const scheme = String(gatewayUrl ?? '').trim().toLowerCase().startsWith('ws://') ? 'http' : 'https';
|
|
261
|
-
const host = String(aid ?? '').trim();
|
|
262
|
-
return `${scheme}://${host}/agent.md`;
|
|
263
|
-
}
|
|
264
250
|
async function fetchWithTimeout(input, init = {}, timeoutMs = 30000) {
|
|
265
251
|
const controller = new AbortController();
|
|
266
252
|
const timer = globalThis.setTimeout(() => controller.abort(), timeoutMs);
|
|
@@ -274,19 +260,29 @@ async function fetchWithTimeout(input, init = {}, timeoutMs = 30000) {
|
|
|
274
260
|
function resultError(result) {
|
|
275
261
|
return result.ok ? null : result.error;
|
|
276
262
|
}
|
|
263
|
+
function agentMdFailure(exc) {
|
|
264
|
+
if (exc instanceof ValidationError) {
|
|
265
|
+
return resultErr(codes.INVALID_AID_FORMAT, exc.message, exc);
|
|
266
|
+
}
|
|
267
|
+
if (exc instanceof NotFoundError) {
|
|
268
|
+
return resultErr(codes.AGENTMD_NOT_FOUND, exc.message, exc);
|
|
269
|
+
}
|
|
270
|
+
return resultErr(codes.NETWORK_ERROR, exc instanceof Error ? exc.message : String(exc), exc);
|
|
271
|
+
}
|
|
277
272
|
export class AIDStore {
|
|
278
273
|
aunPath;
|
|
279
274
|
deviceId;
|
|
280
275
|
slotId;
|
|
281
276
|
_encryptionSeed;
|
|
282
277
|
_keystore;
|
|
283
|
-
|
|
278
|
+
_tokenStore;
|
|
284
279
|
_registerFlow;
|
|
285
|
-
_crypto;
|
|
286
280
|
_discovery;
|
|
281
|
+
_crypto;
|
|
282
|
+
_rootCaPem;
|
|
287
283
|
_verifySsl;
|
|
288
284
|
_gatewayCache = new Map();
|
|
289
|
-
|
|
285
|
+
_agentMdManager;
|
|
290
286
|
constructor(opts) {
|
|
291
287
|
this.aunPath = String(opts.aunPath ?? '');
|
|
292
288
|
this._encryptionSeed = String(opts.encryptionSeed ?? '');
|
|
@@ -298,27 +294,39 @@ export class AIDStore {
|
|
|
298
294
|
console.warn('[aun_core.config] verify_ssl=false 在浏览器环境中不受支持,SSL 证书验证将保持启用。');
|
|
299
295
|
}
|
|
300
296
|
this._verifySsl = opts.verifySsl === false ? true : (opts.verifySsl ?? true);
|
|
301
|
-
this.
|
|
297
|
+
this._rootCaPem = opts.rootCaPem ?? null;
|
|
298
|
+
this._keystore = new IndexedDBIdentityStore({ encryptionSeed: this._encryptionSeed || undefined });
|
|
299
|
+
this._tokenStore = new IndexedDBTokenStore();
|
|
302
300
|
this._crypto = new CryptoProvider();
|
|
303
301
|
this._discovery = new GatewayDiscovery();
|
|
304
|
-
this._auth = new AuthFlow({
|
|
305
|
-
tokenStore: this._keystore,
|
|
306
|
-
crypto: this._crypto,
|
|
307
|
-
deviceId: this.deviceId,
|
|
308
|
-
slotId: this.slotId,
|
|
309
|
-
rootCaPem: opts.rootCaPem ?? null,
|
|
310
|
-
verifySsl: this._verifySsl,
|
|
311
|
-
});
|
|
312
302
|
this._registerFlow = new RegisterFlow({
|
|
313
303
|
keystore: this._keystore,
|
|
314
304
|
crypto: this._crypto,
|
|
315
305
|
verifySsl: this._verifySsl,
|
|
316
306
|
});
|
|
307
|
+
this._agentMdManager = new AgentMdManager({
|
|
308
|
+
aunPath: this.aunPath,
|
|
309
|
+
tokenStore: this._tokenStore,
|
|
310
|
+
aidValidator: (target) => this._registerFlow.validateAidName(target),
|
|
311
|
+
gatewayResolver: (target) => this._resolveGateway(target),
|
|
312
|
+
peerResolver: async (target) => {
|
|
313
|
+
const loaded = await this.load(target);
|
|
314
|
+
if (loaded.ok)
|
|
315
|
+
return loaded.data.aid;
|
|
316
|
+
const resolved = await this.resolve(target, { skipAgentMd: true });
|
|
317
|
+
if (resolved.ok)
|
|
318
|
+
return resolved.data.aid;
|
|
319
|
+
throw new Error(resolved.error.message);
|
|
320
|
+
},
|
|
321
|
+
});
|
|
317
322
|
}
|
|
318
323
|
close() {
|
|
319
324
|
const close = this._keystore.close;
|
|
320
325
|
if (typeof close === 'function')
|
|
321
326
|
close.call(this._keystore);
|
|
327
|
+
const closeTokens = this._tokenStore.close;
|
|
328
|
+
if (typeof closeTokens === 'function')
|
|
329
|
+
closeTokens.call(this._tokenStore);
|
|
322
330
|
}
|
|
323
331
|
async load(aid) {
|
|
324
332
|
const target = String(aid ?? '').trim();
|
|
@@ -445,7 +453,9 @@ export class AIDStore {
|
|
|
445
453
|
async register(aid) {
|
|
446
454
|
const target = String(aid ?? '').trim();
|
|
447
455
|
try {
|
|
448
|
-
|
|
456
|
+
if (!target)
|
|
457
|
+
throw new ValidationError("AIDStore.register requires 'aid'");
|
|
458
|
+
this._registerFlow.validateAidName(target);
|
|
449
459
|
const gatewayUrl = await this._resolveGateway(target);
|
|
450
460
|
const result = await this._registerFlow.registerAid(gatewayUrl, target);
|
|
451
461
|
if (result.cert) {
|
|
@@ -458,6 +468,7 @@ export class AIDStore {
|
|
|
458
468
|
curve: result.curve,
|
|
459
469
|
});
|
|
460
470
|
}
|
|
471
|
+
await this._persistGatewayUrl(target, gatewayUrl);
|
|
461
472
|
return resultOk({ registered: true });
|
|
462
473
|
}
|
|
463
474
|
catch (exc) {
|
|
@@ -477,6 +488,7 @@ export class AIDStore {
|
|
|
477
488
|
async exists(aid) {
|
|
478
489
|
const target = String(aid ?? '').trim();
|
|
479
490
|
try {
|
|
491
|
+
this._registerFlow.validateAidName(target);
|
|
480
492
|
const gatewayUrl = await this._resolveGateway(target);
|
|
481
493
|
const response = await fetchWithTimeout(pkiCertUrl(gatewayUrl, target), { method: 'HEAD' }, 10000);
|
|
482
494
|
if (response.status === 200)
|
|
@@ -494,6 +506,7 @@ export class AIDStore {
|
|
|
494
506
|
const forceRefresh = !!opts?.forceRefresh;
|
|
495
507
|
const skipAgentMd = !!opts?.skipAgentMd;
|
|
496
508
|
try {
|
|
509
|
+
this._registerFlow.validateAidName(target);
|
|
497
510
|
let peer;
|
|
498
511
|
let certFromCache = false;
|
|
499
512
|
const cached = await this.load(target);
|
|
@@ -503,10 +516,11 @@ export class AIDStore {
|
|
|
503
516
|
}
|
|
504
517
|
else {
|
|
505
518
|
const gatewayUrl = await this._resolveGateway(target);
|
|
506
|
-
const certPem = await this.
|
|
519
|
+
const certPem = await this._registerFlow.fetchPeerCert(gatewayUrl, target);
|
|
507
520
|
if (!certPem)
|
|
508
521
|
return resultErr(codes.CERT_NOT_FOUND, `certificate not found for aid: ${target}`);
|
|
509
522
|
await this._keystore.saveCert(target, certPem);
|
|
523
|
+
await this._persistGatewayUrl(target, gatewayUrl);
|
|
510
524
|
const reloaded = await this.load(target);
|
|
511
525
|
if (!reloaded.ok)
|
|
512
526
|
return reloaded;
|
|
@@ -515,7 +529,7 @@ export class AIDStore {
|
|
|
515
529
|
const source = { cert_from_cache: certFromCache, agent_md_fetched: false };
|
|
516
530
|
if (skipAgentMd)
|
|
517
531
|
return resultOk({ aid: peer, source });
|
|
518
|
-
const agentMd = await this.
|
|
532
|
+
const agentMd = await this.downloadAgentMd(target, opts?.timeout);
|
|
519
533
|
if (!agentMd.ok)
|
|
520
534
|
return agentMd;
|
|
521
535
|
source.agent_md_fetched = true;
|
|
@@ -525,128 +539,73 @@ export class AIDStore {
|
|
|
525
539
|
return resultErr(codes.NETWORK_ERROR, String(exc), exc);
|
|
526
540
|
}
|
|
527
541
|
}
|
|
528
|
-
async
|
|
529
|
-
const target = String(aid ?? '').trim();
|
|
542
|
+
async downloadAgentMd(aid, timeoutMs = 30000) {
|
|
530
543
|
try {
|
|
531
|
-
|
|
532
|
-
const cached = this._agentMdCache.get(target) ?? {};
|
|
533
|
-
const headers = { Accept: 'text/markdown' };
|
|
534
|
-
if (cached.etag)
|
|
535
|
-
headers['If-None-Match'] = cached.etag;
|
|
536
|
-
if (cached.lastModified)
|
|
537
|
-
headers['If-Modified-Since'] = cached.lastModified;
|
|
538
|
-
const response = await fetchWithTimeout(agentMdUrl(target, gatewayUrl), {
|
|
539
|
-
method: 'GET',
|
|
540
|
-
headers,
|
|
541
|
-
}, timeoutMs);
|
|
542
|
-
let content = '';
|
|
543
|
-
if (response.status === 304 && cached.content) {
|
|
544
|
-
content = cached.content;
|
|
545
|
-
}
|
|
546
|
-
else if (response.status === 404) {
|
|
547
|
-
return resultErr(codes.AGENTMD_NOT_FOUND, `agent.md not found for aid: ${target}`);
|
|
548
|
-
}
|
|
549
|
-
else if (!response.ok) {
|
|
550
|
-
return resultErr(codes.NETWORK_ERROR, `download agent.md failed: HTTP ${response.status}`);
|
|
551
|
-
}
|
|
552
|
-
else {
|
|
553
|
-
content = await response.text();
|
|
554
|
-
}
|
|
555
|
-
let peer;
|
|
556
|
-
const loaded = await this.load(target);
|
|
557
|
-
if (loaded.ok) {
|
|
558
|
-
peer = loaded.data.aid;
|
|
559
|
-
}
|
|
560
|
-
else {
|
|
561
|
-
const resolved = await this.resolve(target, { skipAgentMd: true });
|
|
562
|
-
if (!resolved.ok)
|
|
563
|
-
return resolved;
|
|
564
|
-
peer = resolved.data.aid;
|
|
565
|
-
}
|
|
566
|
-
const verified = await peer.verifyAgentMd(content);
|
|
567
|
-
if (!verified.ok)
|
|
568
|
-
return verified;
|
|
569
|
-
const signature = verified.data;
|
|
570
|
-
const verification = { status: signature.status };
|
|
571
|
-
if (signature.reason)
|
|
572
|
-
verification.reason = signature.reason;
|
|
573
|
-
const etag = String(response.headers?.get('ETag') ?? response.headers?.get('etag') ?? cached.etag ?? '').trim();
|
|
574
|
-
const lastModified = String(response.headers?.get('Last-Modified') ?? response.headers?.get('last-modified') ?? cached.lastModified ?? '').trim();
|
|
575
|
-
this._agentMdCache.set(target, { content, etag, lastModified, updatedAt: Date.now() });
|
|
576
|
-
return resultOk({
|
|
577
|
-
aid: target,
|
|
578
|
-
content,
|
|
579
|
-
verification,
|
|
580
|
-
cert_pem: peer.certPem,
|
|
581
|
-
etag,
|
|
582
|
-
last_modified: lastModified,
|
|
583
|
-
});
|
|
544
|
+
return resultOk(await this._agentMdManager.download(aid, timeoutMs));
|
|
584
545
|
}
|
|
585
546
|
catch (exc) {
|
|
586
|
-
return
|
|
547
|
+
return agentMdFailure(exc);
|
|
587
548
|
}
|
|
588
549
|
}
|
|
589
|
-
async
|
|
590
|
-
const target = String(aid ?? '').trim();
|
|
550
|
+
async checkAgentMd(aid, ttlDays = 1) {
|
|
591
551
|
try {
|
|
592
|
-
|
|
593
|
-
const response = await fetchWithTimeout(agentMdUrl(target, gatewayUrl), {
|
|
594
|
-
method: 'HEAD',
|
|
595
|
-
headers: { Accept: 'text/markdown' },
|
|
596
|
-
}, 15000);
|
|
597
|
-
if (response.status === 404) {
|
|
598
|
-
return resultErr(codes.AGENTMD_NOT_FOUND, `agent.md not found for aid: ${target}`);
|
|
599
|
-
}
|
|
600
|
-
if (!response.ok) {
|
|
601
|
-
return resultErr(codes.NETWORK_ERROR, `head agent.md failed: HTTP ${response.status}`);
|
|
602
|
-
}
|
|
603
|
-
const etag = String(response.headers?.get('ETag') ?? response.headers?.get('etag') ?? '').trim();
|
|
604
|
-
const lastModified = String(response.headers?.get('Last-Modified') ?? response.headers?.get('last-modified') ?? '').trim();
|
|
605
|
-
const contentLength = Number.parseInt(String(response.headers?.get('Content-Length') ?? response.headers?.get('content-length') ?? '0'), 10) || 0;
|
|
606
|
-
const cached = this._agentMdCache.get(target) ?? {};
|
|
607
|
-
this._agentMdCache.set(target, { ...cached, etag, lastModified, updatedAt: Date.now() });
|
|
608
|
-
return resultOk({
|
|
609
|
-
aid: target,
|
|
610
|
-
found: true,
|
|
611
|
-
etag,
|
|
612
|
-
last_modified: lastModified,
|
|
613
|
-
content_length: contentLength,
|
|
614
|
-
});
|
|
552
|
+
return resultOk(await this._agentMdManager.check(aid, ttlDays));
|
|
615
553
|
}
|
|
616
554
|
catch (exc) {
|
|
617
|
-
return
|
|
555
|
+
return agentMdFailure(exc);
|
|
618
556
|
}
|
|
619
557
|
}
|
|
620
|
-
|
|
558
|
+
_authIdentityFromAid(aid) {
|
|
559
|
+
return {
|
|
560
|
+
aid: aid.aid,
|
|
561
|
+
private_key_pem: aid.privateKeyPem,
|
|
562
|
+
public_key_der_b64: aid.publicKey,
|
|
563
|
+
cert: aid.certPem,
|
|
564
|
+
};
|
|
565
|
+
}
|
|
566
|
+
async _uploadAgentMdToken(aid, gatewayUrl) {
|
|
567
|
+
const auth = new AuthFlow({
|
|
568
|
+
tokenStore: this._tokenStore,
|
|
569
|
+
crypto: this._crypto,
|
|
570
|
+
aid: aid.aid,
|
|
571
|
+
deviceId: this.deviceId,
|
|
572
|
+
slotId: this.slotId,
|
|
573
|
+
rootCaPem: this._rootCaPem,
|
|
574
|
+
verifySsl: this._verifySsl,
|
|
575
|
+
});
|
|
576
|
+
auth.setIdentity(this._authIdentityFromAid(aid));
|
|
577
|
+
const result = await auth.authenticate(gatewayUrl, aid.aid);
|
|
578
|
+
const token = String(result.access_token ?? result.token ?? result.kite_token ?? '').trim();
|
|
579
|
+
if (!token)
|
|
580
|
+
throw new Error('authenticate did not return access_token');
|
|
581
|
+
return token;
|
|
582
|
+
}
|
|
583
|
+
async uploadAgentMd(aid, content) {
|
|
621
584
|
const target = String(aid ?? '').trim();
|
|
622
|
-
|
|
623
|
-
|
|
624
|
-
|
|
625
|
-
|
|
626
|
-
|
|
627
|
-
remote = { aid: target, found: false, etag: '', last_modified: '', content_length: 0, status: 404 };
|
|
585
|
+
try {
|
|
586
|
+
this._registerFlow.validateAidName(target);
|
|
587
|
+
const loaded = await this.load(target);
|
|
588
|
+
if (!loaded.ok) {
|
|
589
|
+
return resultErr(loaded.error.code, loaded.error.message);
|
|
628
590
|
}
|
|
629
|
-
|
|
630
|
-
|
|
591
|
+
const current = loaded.data.aid;
|
|
592
|
+
if (!current.isPrivateKeyValid() || !current.privateKeyPem) {
|
|
593
|
+
return resultErr(codes.PRIVATE_KEY_NOT_VALID, `uploadAgentMd requires local AID with a valid private key: ${target}`);
|
|
631
594
|
}
|
|
595
|
+
const manager = new AgentMdManager({
|
|
596
|
+
aunPath: this.aunPath,
|
|
597
|
+
tokenStore: this._tokenStore,
|
|
598
|
+
ownerAidGetter: () => target,
|
|
599
|
+
currentAidGetter: () => current,
|
|
600
|
+
gatewayResolver: (value) => this._resolveGateway(value),
|
|
601
|
+
accessTokenResolver: (_value, gatewayUrl) => this._uploadAgentMdToken(current, gatewayUrl),
|
|
602
|
+
aidValidator: (value) => this._registerFlow.validateAidName(value),
|
|
603
|
+
});
|
|
604
|
+
return resultOk(await manager.upload(content));
|
|
632
605
|
}
|
|
633
|
-
|
|
634
|
-
|
|
606
|
+
catch (exc) {
|
|
607
|
+
return agentMdFailure(exc);
|
|
635
608
|
}
|
|
636
|
-
const localEtag = String(cached.etag ?? '').trim();
|
|
637
|
-
const localFound = !!cached.content;
|
|
638
|
-
const remoteFound = !!remote.found;
|
|
639
|
-
const remoteEtag = String(remote.etag ?? '').trim();
|
|
640
|
-
const needsUpdate = remoteFound && (!localFound || (!!remoteEtag && remoteEtag !== localEtag));
|
|
641
|
-
return resultOk({
|
|
642
|
-
aid: target,
|
|
643
|
-
local_found: localFound,
|
|
644
|
-
remote_found: remoteFound,
|
|
645
|
-
local_etag: localEtag,
|
|
646
|
-
remote_etag: remoteEtag,
|
|
647
|
-
needs_update: needsUpdate,
|
|
648
|
-
ttl_days: ttlDays,
|
|
649
|
-
});
|
|
650
609
|
}
|
|
651
610
|
async diagnose(aid) {
|
|
652
611
|
const target = String(aid ?? '').trim();
|
|
@@ -692,26 +651,22 @@ export class AIDStore {
|
|
|
692
651
|
return resultErr(codes.PRIVATE_KEY_REQUIRED, `private key required for aid: ${target}`);
|
|
693
652
|
}
|
|
694
653
|
try {
|
|
654
|
+
this._registerFlow.validateAidName(target);
|
|
695
655
|
const aidObj = loaded.data.aid;
|
|
696
656
|
if (!aidObj.certPem || !aidObj.privateKeyPem) {
|
|
697
657
|
return resultErr(codes.PRIVATE_KEY_REQUIRED, `private key required for aid: ${target}`);
|
|
698
658
|
}
|
|
699
659
|
const gatewayUrl = await this._resolveGateway(target);
|
|
700
|
-
const
|
|
701
|
-
const
|
|
702
|
-
|
|
703
|
-
|
|
704
|
-
|
|
705
|
-
|
|
706
|
-
});
|
|
707
|
-
const [signature, clientTime] = await this._crypto.signLoginNonce(aidObj.privateKeyPem, String(phase1.nonce ?? ''));
|
|
708
|
-
const response = await this._auth
|
|
709
|
-
._shortRpc(gatewayUrl, 'auth.renew_cert', {
|
|
660
|
+
const phase1 = await this._beginAidOperation(gatewayUrl, aidObj);
|
|
661
|
+
const signResult = await aidObj.sign(String(phase1.nonce));
|
|
662
|
+
if (!signResult.ok || !signResult.data) {
|
|
663
|
+
return resultErr(codes.CERT_RENEWAL_FAILED, resultError(signResult)?.message ?? 'sign failed');
|
|
664
|
+
}
|
|
665
|
+
const response = await this._registerFlow.shortRpc(gatewayUrl, 'auth.renew_cert', {
|
|
710
666
|
aid: target,
|
|
711
667
|
request_id: String(phase1.request_id ?? ''),
|
|
712
668
|
nonce: String(phase1.nonce ?? ''),
|
|
713
|
-
|
|
714
|
-
signature,
|
|
669
|
+
signature: signResult.data.signature,
|
|
715
670
|
});
|
|
716
671
|
const certPem = String(response.cert ?? response.cert_pem ?? '').trim();
|
|
717
672
|
if (!certPem)
|
|
@@ -737,25 +692,19 @@ export class AIDStore {
|
|
|
737
692
|
return resultErr(codes.PRIVATE_KEY_REQUIRED, `private key required for aid: ${target}`);
|
|
738
693
|
}
|
|
739
694
|
try {
|
|
695
|
+
this._registerFlow.validateAidName(target);
|
|
740
696
|
const oldAid = loaded.data.aid;
|
|
741
697
|
if (!oldAid.certPem || !oldAid.privateKeyPem) {
|
|
742
698
|
return resultErr(codes.PRIVATE_KEY_REQUIRED, `private key required for aid: ${target}`);
|
|
743
699
|
}
|
|
744
700
|
const gatewayUrl = await this._resolveGateway(target);
|
|
745
|
-
const newIdentity = await this.
|
|
746
|
-
const
|
|
747
|
-
const phase1 = await this._auth
|
|
748
|
-
._shortRpc(gatewayUrl, 'auth.aid_login1', {
|
|
749
|
-
aid: target,
|
|
750
|
-
cert: oldAid.certPem,
|
|
751
|
-
client_nonce: clientNonce,
|
|
752
|
-
});
|
|
701
|
+
const newIdentity = await this._registerFlow.generateIdentity();
|
|
702
|
+
const phase1 = await this._beginAidOperation(gatewayUrl, oldAid);
|
|
753
703
|
const signPayload = `${String(phase1.nonce ?? '')}${newIdentity.public_key_der_b64}`;
|
|
754
704
|
const signResult = await loaded.data.aid.sign(signPayload);
|
|
755
705
|
if (!signResult.ok)
|
|
756
706
|
return resultErr(codes.REKEY_FAILED, signResult.error.message);
|
|
757
|
-
const response = await this.
|
|
758
|
-
._shortRpc(gatewayUrl, 'auth.rekey', {
|
|
707
|
+
const response = await this._registerFlow.shortRpc(gatewayUrl, 'auth.rekey', {
|
|
759
708
|
aid: target,
|
|
760
709
|
request_id: String(phase1.request_id ?? ''),
|
|
761
710
|
nonce: String(phase1.nonce ?? ''),
|
|
@@ -786,6 +735,22 @@ export class AIDStore {
|
|
|
786
735
|
return resultErr(codes.REKEY_FAILED, String(exc), exc);
|
|
787
736
|
}
|
|
788
737
|
}
|
|
738
|
+
async _beginAidOperation(gatewayUrl, aidObj) {
|
|
739
|
+
const clientNonce = this._registerFlow.newClientNonce();
|
|
740
|
+
const phase1 = await this._registerFlow.shortRpc(gatewayUrl, 'auth.aid_login1', {
|
|
741
|
+
aid: aidObj.aid,
|
|
742
|
+
cert: aidObj.certPem,
|
|
743
|
+
client_nonce: clientNonce,
|
|
744
|
+
});
|
|
745
|
+
await this._registerFlow.verifyPhase1Response(gatewayUrl, phase1, clientNonce);
|
|
746
|
+
const requestId = String(phase1.request_id ?? '').trim();
|
|
747
|
+
const nonce = String(phase1.nonce ?? '').trim();
|
|
748
|
+
if (!requestId)
|
|
749
|
+
throw new ValidationError('aid_login1 response missing request_id');
|
|
750
|
+
if (!nonce)
|
|
751
|
+
throw new ValidationError('aid_login1 response missing nonce');
|
|
752
|
+
return { request_id: requestId, nonce };
|
|
753
|
+
}
|
|
789
754
|
async _resolveGateway(aid) {
|
|
790
755
|
const target = String(aid ?? '').trim();
|
|
791
756
|
if (!target)
|
|
@@ -847,11 +812,24 @@ export class AIDStore {
|
|
|
847
812
|
if (typeof setMetadata !== 'function' || !gatewayUrl)
|
|
848
813
|
return;
|
|
849
814
|
try {
|
|
815
|
+
if (!await this._hasLocalAidMaterial(aid))
|
|
816
|
+
return;
|
|
850
817
|
await setMetadata.call(this._keystore, aid, 'gateway_url', gatewayUrl);
|
|
851
818
|
}
|
|
852
819
|
catch {
|
|
853
820
|
// 缓存失败不影响主流程。
|
|
854
821
|
}
|
|
855
822
|
}
|
|
823
|
+
async _hasLocalAidMaterial(aid) {
|
|
824
|
+
try {
|
|
825
|
+
const cert = await this._keystore.loadCert(aid);
|
|
826
|
+
if (cert)
|
|
827
|
+
return true;
|
|
828
|
+
return !!await this._keystore.loadKeyPair(aid);
|
|
829
|
+
}
|
|
830
|
+
catch {
|
|
831
|
+
return false;
|
|
832
|
+
}
|
|
833
|
+
}
|
|
856
834
|
}
|
|
857
835
|
//# sourceMappingURL=aid-store.js.map
|