salt-agent-sdk 0.22.0 → 0.24.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/client.js CHANGED
@@ -5,7 +5,7 @@
5
5
  // each identity's own api-key per call (a process can act as more than one
6
6
  // Salt agent: the primary identity, plus any it spawns via createAgent).
7
7
  Object.defineProperty(exports, "__esModule", { value: true });
8
- exports.RecipientContactsOnlyError = exports.RECIPIENT_CONTACTS_ONLY = exports.StaleRulesError = exports.SaltApiError = exports.RULE_ERROR_CODES = exports.AppStateConflictError = void 0;
8
+ exports.SDK_VERSION = exports.RecipientContactsOnlyError = exports.RECIPIENT_CONTACTS_ONLY = exports.StaleRulesError = exports.SaltApiError = exports.RULE_ERROR_CODES = exports.AppStateConflictError = void 0;
9
9
  exports.sanitizeAttachmentFilename = sanitizeAttachmentFilename;
10
10
  exports.isAsked = isAsked;
11
11
  exports.createSaltClient = createSaltClient;
@@ -14,6 +14,7 @@ const ids_js_1 = require("./ids.js");
14
14
  const identity_js_1 = require("./identity.js");
15
15
  const recovery_js_1 = require("./recovery.js");
16
16
  const crypto_js_1 = require("./crypto.js");
17
+ const keyReset_js_1 = require("./keyReset.js");
17
18
  const help_js_1 = require("./help.js");
18
19
  /**
19
20
  * Basename only, control characters and path separators stripped, capped at
@@ -75,6 +76,12 @@ class SaltApiError extends Error {
75
76
  body;
76
77
  /** Salt's machine-readable refusal code (`{error, code}`), when the body carries one. */
77
78
  code;
79
+ /** Seconds to wait, from `Retry-After`, on a 429 (e.g. `too_many_attempts` from the password-gated reset). */
80
+ retryAfterSeconds;
81
+ /** The grant that would unlock a refused call, when the refusal names one (missing authority for an agent caller). */
82
+ grant;
83
+ /** A ready request that files the ask for `grant`. Pass `err.ask.body` to `client.requestGrant`, adding `reason`. Absent when the call is the owner's to decide alone (e.g. a spending freeze). */
84
+ ask;
78
85
  constructor(method, url, status, body) {
79
86
  // Salt's refusals carry one plain sentence ({error: "..."}). Put it in
80
87
  // the message: a tool result that says only "-> 422" leaves a model
@@ -90,6 +97,11 @@ class SaltApiError extends Error {
90
97
  this.body = body;
91
98
  if (typeof b?.code === "string")
92
99
  this.code = b.code;
100
+ const env = body && typeof body === "object" ? body : undefined;
101
+ if (env?.grant && typeof env.grant === "object" && typeof env.grant.capability === "string")
102
+ this.grant = env.grant;
103
+ if (env?.ask && typeof env.ask === "object" && typeof env.ask.path === "string")
104
+ this.ask = env.ask;
93
105
  }
94
106
  }
95
107
  exports.SaltApiError = SaltApiError;
@@ -122,12 +134,15 @@ class RecipientContactsOnlyError extends SaltApiError {
122
134
  }
123
135
  }
124
136
  exports.RecipientContactsOnlyError = RecipientContactsOnlyError;
137
+ /** Sent as `X-Salt-Client` on every request. Kept equal to package.json's version (a test checks). */
138
+ exports.SDK_VERSION = "0.24.0";
139
+ const CLIENT_HEADER = `salt-agent-sdk/${exports.SDK_VERSION}`;
125
140
  function createSaltClient(options) {
126
141
  const host = options.host.replace(/\/$/, "");
127
142
  const doFetch = options.fetchImpl ?? fetch;
128
143
  const request = async function request(method, path, apiKey, body, opts) {
129
144
  const url = `${host}${path}`;
130
- const headers = { "api-key": apiKey, ...opts?.extraHeaders };
145
+ const headers = { "api-key": apiKey, "X-Salt-Client": CLIENT_HEADER, ...opts?.extraHeaders };
131
146
  if (body !== undefined)
132
147
  headers["Content-Type"] = "application/json";
133
148
  if (opts?.idempotencyKey)
@@ -148,7 +163,11 @@ function createSaltClient(options) {
148
163
  if (res.status === 403 && parsed?.code === exports.RECIPIENT_CONTACTS_ONLY) {
149
164
  throw new RecipientContactsOnlyError(method, url, res.status, parsed);
150
165
  }
151
- throw new SaltApiError(method, url, res.status, parsed);
166
+ const apiError = new SaltApiError(method, url, res.status, parsed);
167
+ const retryAfter = Number(res.headers?.get?.("Retry-After"));
168
+ if (res.status === 429 && Number.isFinite(retryAfter))
169
+ apiError.retryAfterSeconds = retryAfter;
170
+ throw apiError;
152
171
  }
153
172
  if (res.status === 204)
154
173
  return undefined;
@@ -237,6 +256,65 @@ function createSaltClient(options) {
237
256
  const chat = await request("GET", `/api/v1/chats/${chatId}?_=${Date.now()}`, apiKey);
238
257
  return chat?.session?.users ?? [];
239
258
  },
259
+ /**
260
+ * Reset the owner's chat key (`POST /api/v1/userkeys/reset`, KEY_RESET_DESIGN.md sections 4 and 10): a fresh keypair
261
+ * and messages DEK, old history still readable by the owner, the owner's agent keys rewrapped, and every device in
262
+ * `devices` re-sealed (v2 payload, dual signature). Devices not named are unlinked. `dryRun` returns what would
263
+ * change and touches nothing. Needs the owner's login password: see ResetChatKeyParams. The new recovery phrase is
264
+ * returned once and never sent to Salt.
265
+ */
266
+ async resetChatKey(apiKey, params) {
267
+ const extraHeaders = params.token ? { Authorization: params.token.startsWith("Bearer ") ? params.token : `Bearer ${params.token}` } : undefined;
268
+ const idempotencyKey = params.idempotencyKey ?? (0, node_crypto_1.randomUUID)();
269
+ const call = (method, path, body) => request(method, path, apiKey, body, { extraHeaders, idempotencyKey: method === "POST" ? idempotencyKey : undefined });
270
+ const plan = await call("POST", "/api/v1/userkeys/reset", { dry_run: true });
271
+ if (params.dryRun)
272
+ return { dryRun: true, plan };
273
+ const [rawKeys, vault, devices, account] = await Promise.all([
274
+ call("GET", "/api/v1/userkeys"),
275
+ call("GET", "/api/v1/vault"),
276
+ call("GET", "/api/v1/linked_devices"),
277
+ params.userId ? Promise.resolve({ id: params.userId }) : call("GET", "/api/v1/account"),
278
+ ]);
279
+ const userKeys = Array.isArray(rawKeys) ? rawKeys[0] : rawKeys;
280
+ const userId = params.userId ?? account?.id;
281
+ if (userId === undefined || userId === null)
282
+ throw new Error("resetChatKey: the owner's user id is unknown; pass userId.");
283
+ const linked = devices?.linked_devices ?? [];
284
+ const keepDeviceIds = params.devices === undefined || params.devices === "all" ? linked.map((d) => d.id) : params.devices;
285
+ // The dry run names each agent; its wrapped key is read the way the web does (the owner's agent admin view).
286
+ const agentKeys = [];
287
+ for (const a of plan.agents_to_rewrap ?? []) {
288
+ const admin = await call("GET", `/api/v1/agents/${encodeURIComponent(String(a.id))}/admin`);
289
+ const blob = admin?.userkeys?.encrypted_private_key;
290
+ if (!blob)
291
+ throw new Error(`resetChatKey: agent ${a.handle ?? a.id} has no vault-wrapped key to rewrap.`);
292
+ agentKeys.push({ agent_id: a.id, public_fingerprint: a.public_fingerprint, encrypted_private_key: blob });
293
+ }
294
+ // Hidden identity sections move with the messages key: every row holding ciphertext must be re-encrypted.
295
+ const identity = await call("GET", "/api/v1/identity");
296
+ const identitySections = [];
297
+ for (const sec of identity?.sections ?? []) {
298
+ if (!sec.ciphertext)
299
+ continue;
300
+ identitySections.push({ key: sec.key, ciphertext: sec.ciphertext });
301
+ }
302
+ const built = await (0, keyReset_js_1.buildChatKeyReset)({
303
+ userKeys,
304
+ vault,
305
+ password: params.password,
306
+ vaultPassword: params.vaultPassword,
307
+ userId,
308
+ linkedDevices: linked,
309
+ keepDeviceIds,
310
+ agentKeys,
311
+ identitySections,
312
+ expectedGeneration: plan.current_generation ?? userKeys.generation,
313
+ expectedVaultVersion: plan.vault_version,
314
+ });
315
+ const response = await call("POST", "/api/v1/userkeys/reset", built.request);
316
+ return { dryRun: false, plan, response, recoveryPhrase: built.recoveryPhrase, newGeneration: built.newGeneration, skippedGenerations: built.skippedGenerations, notResealed: built.notResealed, uncertified: built.uncertified };
317
+ },
240
318
  /** Recent messages in a chat this identity is a member of (even as a silent observer). */
241
319
  async getChatMessages(apiKey, chatId) {
242
320
  const chat = await request("GET", `/api/v1/chats/${chatId}?_=${Date.now()}`, apiKey);
@@ -269,7 +347,7 @@ function createSaltClient(options) {
269
347
  /** Download an attachment's ciphertext bytes. Decrypt separately (see crypto.ts). */
270
348
  async getAttachment(apiKey, messageId) {
271
349
  const url = `${host}/api/v1/messages/${messageId}/attachment`;
272
- const res = await doFetch(url, { headers: { "api-key": apiKey } });
350
+ const res = await doFetch(url, { headers: { "api-key": apiKey, "X-Salt-Client": CLIENT_HEADER } });
273
351
  if (!res.ok)
274
352
  throw new SaltApiError("GET", url, res.status, await res.text().catch(() => undefined));
275
353
  return Buffer.from(await res.arrayBuffer());
@@ -307,6 +385,10 @@ function createSaltClient(options) {
307
385
  body.mentions = mentions;
308
386
  if (opts?.quiet)
309
387
  body.quiet = true;
388
+ if (opts?.recipientFingerprints && Object.keys(opts.recipientFingerprints).length > 0)
389
+ body.recipient_fingerprints = opts.recipientFingerprints;
390
+ if (opts?.senderFingerprint)
391
+ body.sender_fingerprint = opts.senderFingerprint;
310
392
  return request("POST", "/api/v1/messages", apiKey, body);
311
393
  },
312
394
  /**
@@ -1212,6 +1294,36 @@ function createSaltClient(options) {
1212
1294
  chat_id: params.chatId,
1213
1295
  });
1214
1296
  },
1297
+ // --- Ask for what's required ---
1298
+ /**
1299
+ * File ONE ask with the account that decides (usually your owner): the capabilities you need, your reason,
1300
+ * a budget and a duration. Several capabilities in one call is a "strategy". The owner sees one card.
1301
+ * Start from a refusal: `err.ask.body` is ready to use (`requestGrant(key, {grantorId: body.grantor_id, capabilities: body.capabilities, reason})`).
1302
+ * Pass a `resumeToken` of your own and it comes back on `onGrantDecided`. A 429 `ask_limit` carries `retryAfterSeconds`.
1303
+ */
1304
+ async requestGrant(apiKey, params) {
1305
+ const body = {
1306
+ grantor_id: params.grantorId,
1307
+ capabilities: params.capabilities,
1308
+ };
1309
+ if (params.label !== undefined)
1310
+ body.label = params.label;
1311
+ if (params.reason !== undefined)
1312
+ body.reason = params.reason;
1313
+ if (params.estimatedCost !== undefined)
1314
+ body.estimated_cost = params.estimatedCost;
1315
+ if (params.resumeToken !== undefined)
1316
+ body.resume_token = params.resumeToken;
1317
+ if (params.chatId !== undefined)
1318
+ body.chat_id = params.chatId;
1319
+ if (params.durationDays !== undefined)
1320
+ body.expires_at = new Date(Date.now() + params.durationDays * 86_400_000).toISOString();
1321
+ return request("POST", "/api/v1/mandates", apiKey, body);
1322
+ },
1323
+ /** Do you already hold this capability? `{allowed, mandate_id?, mode, constraints}`. */
1324
+ async checkGrant(apiKey, capability) {
1325
+ return request("GET", `/api/v1/mandates/check?capability=${encodeURIComponent(capability)}`, apiKey);
1326
+ },
1215
1327
  // --- Mandates ("Acting for you") management -- always as yourself, never through actFor ---
1216
1328
  mandates: {
1217
1329
  /** Every mandate the caller is party to, as grantor and/or grantee. */
@@ -1 +1 @@
1
- {"version":3,"file":"client.js","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"client.js","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"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"}
package/dist/crypto.d.ts CHANGED
@@ -5,11 +5,23 @@ export interface GeneratedKeypair {
5
5
  fingerprint: string;
6
6
  }
7
7
  /**
8
- * Decrypt an armored PGP message with the agent's private key. Salt
9
- * encrypts each message to every chat member's public key, so the agent's
10
- * own key is among the recipients and can read the ciphertext directly.
8
+ * Decrypt an armored PGP message with the agent's private key, or with a
9
+ * keyring of several (the active key plus retired ones after a chat-key
10
+ * reset). Salt encrypts each message to every chat member's public key, so the
11
+ * agent's own key is among the recipients and can read the ciphertext
12
+ * directly. openpgp matches the message's recipient key ids itself. A key in
13
+ * the ring that cannot be read or unlocked is skipped; if none opens the
14
+ * message this throws.
15
+ *
16
+ * Single key: `decrypt(msg, armoredKey, passphrase)` (unchanged). Keyring:
17
+ * `decrypt(msg, [armoredActive, armoredRetired...], passphrase)`, or entries
18
+ * of `{ armoredKey, passphrase }` when keys have different passphrases.
11
19
  */
12
- export declare function decrypt(armoredMessage: string, armoredPrivateKey: string, passphrase: string): Promise<string>;
20
+ export type DecryptionKeyInput = string | {
21
+ armoredKey: string;
22
+ passphrase?: string;
23
+ };
24
+ export declare function decrypt(armoredMessage: string, armoredPrivateKey: DecryptionKeyInput | DecryptionKeyInput[], passphrase?: string): Promise<string>;
13
25
  /**
14
26
  * Encrypt plaintext to one or more armored public keys. Passing every
15
27
  * non-agent member's key produces a single ciphertext all of them can read
@@ -105,4 +117,6 @@ export declare function encryptAttachment(plaintext: Buffer): EncryptedAttachmen
105
117
  */
106
118
  export declare const ALLOWED_SEND_CONTENT_TYPES: readonly string[];
107
119
  export declare function isAllowedSendContentType(contentType: string): boolean;
120
+ /** The fingerprint of an armored public key, upper-case hex (the case Salt serves and binds into AAD). */
121
+ export declare function fingerprintOf(armoredPublicKey: string): Promise<string>;
108
122
  //# sourceMappingURL=crypto.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"crypto.d.ts","sourceRoot":"","sources":["../src/crypto.ts"],"names":[],"mappings":"AAOA,MAAM,WAAW,gBAAgB;IAC/B,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,qBAAqB,EAAE,MAAM,CAAC;IAC9B,WAAW,EAAE,MAAM,CAAC;CACrB;AAED;;;;GAIG;AACH,wBAAsB,OAAO,CAC3B,cAAc,EAAE,MAAM,EACtB,iBAAiB,EAAE,MAAM,EACzB,UAAU,EAAE,MAAM,GACjB,OAAO,CAAC,MAAM,CAAC,CAUjB;AAED;;;;GAIG;AACH,wBAAsB,UAAU,CAAC,SAAS,EAAE,MAAM,EAAE,iBAAiB,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC,CAOhG;AAED;;;;GAIG;AACH,wBAAsB,eAAe,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAUnF;AAED;;;;;;;GAOG;AACH,wBAAsB,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,iBAAiB,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAY/G;AAED;;;;;;;GAOG;AACH,wBAAsB,cAAc,CAAC,IAAI,EAAE,MAAM,EAAE,gBAAgB,EAAE,MAAM,EAAE,gBAAgB,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAgBvH;AAED,MAAM,WAAW,aAAa;IAC5B,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CAC1B;AAED;;;;;;;;GAQG;AACH,wBAAgB,oBAAoB,CAAC,YAAY,EAAE,MAAM,EAAE,OAAO,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,GAAG,MAAM,CAQhH;AAED;;;;;GAKG;AACH,wBAAgB,iBAAiB,CAAC,gBAAgB,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,CASjG;AAED;;;;;;;;;GASG;AACH,eAAO,MAAM,oBAAoB,QAAmB,CAAC;AAErD,MAAM,WAAW,wBAAwB;IACvC;;;yDAGqD;IACrD,UAAU,EAAE,MAAM,CAAC;IACnB,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;CACf;AAED;;;;;;;;;GASG;AACH,wBAAgB,iBAAiB,CAAC,SAAS,EAAE,MAAM,GAAG,wBAAwB,CAW7E;AAED;;;;;;;;;;GAUG;AACH,eAAO,MAAM,0BAA0B,EAAE,SAAS,MAAM,EAoBvD,CAAC;AAEF,wBAAgB,wBAAwB,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAErE"}
1
+ {"version":3,"file":"crypto.d.ts","sourceRoot":"","sources":["../src/crypto.ts"],"names":[],"mappings":"AAOA,MAAM,WAAW,gBAAgB;IAC/B,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,qBAAqB,EAAE,MAAM,CAAC;IAC9B,WAAW,EAAE,MAAM,CAAC;CACrB;AAED;;;;;;;;;;;;GAYG;AACH,MAAM,MAAM,kBAAkB,GAAG,MAAM,GAAG;IAAE,UAAU,EAAE,MAAM,CAAC;IAAC,UAAU,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC;AAEtF,wBAAsB,OAAO,CAC3B,cAAc,EAAE,MAAM,EACtB,iBAAiB,EAAE,kBAAkB,GAAG,kBAAkB,EAAE,EAC5D,UAAU,GAAE,MAAW,GACtB,OAAO,CAAC,MAAM,CAAC,CA+BjB;AAED;;;;GAIG;AACH,wBAAsB,UAAU,CAAC,SAAS,EAAE,MAAM,EAAE,iBAAiB,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC,CAOhG;AAED;;;;GAIG;AACH,wBAAsB,eAAe,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAUnF;AAED;;;;;;;GAOG;AACH,wBAAsB,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,iBAAiB,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAY/G;AAED;;;;;;;GAOG;AACH,wBAAsB,cAAc,CAAC,IAAI,EAAE,MAAM,EAAE,gBAAgB,EAAE,MAAM,EAAE,gBAAgB,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAgBvH;AAED,MAAM,WAAW,aAAa;IAC5B,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CAC1B;AAED;;;;;;;;GAQG;AACH,wBAAgB,oBAAoB,CAAC,YAAY,EAAE,MAAM,EAAE,OAAO,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,GAAG,MAAM,CAQhH;AAED;;;;;GAKG;AACH,wBAAgB,iBAAiB,CAAC,gBAAgB,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,CASjG;AAED;;;;;;;;;GASG;AACH,eAAO,MAAM,oBAAoB,QAAmB,CAAC;AAErD,MAAM,WAAW,wBAAwB;IACvC;;;yDAGqD;IACrD,UAAU,EAAE,MAAM,CAAC;IACnB,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;CACf;AAED;;;;;;;;;GASG;AACH,wBAAgB,iBAAiB,CAAC,SAAS,EAAE,MAAM,GAAG,wBAAwB,CAW7E;AAED;;;;;;;;;;GAUG;AACH,eAAO,MAAM,0BAA0B,EAAE,SAAS,MAAM,EAoBvD,CAAC;AAEF,wBAAgB,wBAAwB,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAErE;AAED,0GAA0G;AAC1G,wBAAsB,aAAa,CAAC,gBAAgB,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAE7E"}
package/dist/crypto.js CHANGED
@@ -46,21 +46,40 @@ exports.encryptWalletPayload = encryptWalletPayload;
46
46
  exports.decryptAttachment = decryptAttachment;
47
47
  exports.encryptAttachment = encryptAttachment;
48
48
  exports.isAllowedSendContentType = isAllowedSendContentType;
49
+ exports.fingerprintOf = fingerprintOf;
49
50
  const openpgp = __importStar(require("openpgp"));
50
51
  const nodeCrypto = __importStar(require("node:crypto"));
51
- /**
52
- * Decrypt an armored PGP message with the agent's private key. Salt
53
- * encrypts each message to every chat member's public key, so the agent's
54
- * own key is among the recipients and can read the ciphertext directly.
55
- */
56
- async function decrypt(armoredMessage, armoredPrivateKey, passphrase) {
57
- const privateKey = await openpgp.decryptKey({
58
- privateKey: await openpgp.readPrivateKey({ armoredKey: armoredPrivateKey }),
59
- passphrase,
60
- });
52
+ async function decrypt(armoredMessage, armoredPrivateKey, passphrase = "") {
53
+ if (!Array.isArray(armoredPrivateKey)) {
54
+ const single = typeof armoredPrivateKey === "string" ? armoredPrivateKey : armoredPrivateKey.armoredKey;
55
+ const pass = typeof armoredPrivateKey === "string" ? passphrase : armoredPrivateKey.passphrase ?? passphrase;
56
+ const privateKey = await openpgp.decryptKey({
57
+ privateKey: await openpgp.readPrivateKey({ armoredKey: single }),
58
+ passphrase: pass,
59
+ });
60
+ const { data } = await openpgp.decrypt({
61
+ message: await openpgp.readMessage({ armoredMessage }),
62
+ decryptionKeys: [privateKey],
63
+ });
64
+ return data;
65
+ }
66
+ const keys = [];
67
+ for (const entry of armoredPrivateKey) {
68
+ const armoredKey = typeof entry === "string" ? entry : entry.armoredKey;
69
+ const pass = typeof entry === "string" ? passphrase : entry.passphrase ?? passphrase;
70
+ try {
71
+ const key = await openpgp.readPrivateKey({ armoredKey });
72
+ keys.push(key.isDecrypted() ? key : await openpgp.decryptKey({ privateKey: key, passphrase: pass }));
73
+ }
74
+ catch {
75
+ // an unreadable or unopenable generation is skipped, never fatal
76
+ }
77
+ }
78
+ if (keys.length === 0)
79
+ throw new Error("No usable decryption key");
61
80
  const { data } = await openpgp.decrypt({
62
81
  message: await openpgp.readMessage({ armoredMessage }),
63
- decryptionKeys: [privateKey],
82
+ decryptionKeys: keys,
64
83
  });
65
84
  return data;
66
85
  }
@@ -242,4 +261,8 @@ exports.ALLOWED_SEND_CONTENT_TYPES = [
242
261
  function isAllowedSendContentType(contentType) {
243
262
  return exports.ALLOWED_SEND_CONTENT_TYPES.includes(contentType);
244
263
  }
264
+ /** The fingerprint of an armored public key, upper-case hex (the case Salt serves and binds into AAD). */
265
+ async function fingerprintOf(armoredPublicKey) {
266
+ return (await openpgp.readKey({ armoredKey: armoredPublicKey })).getFingerprint().toUpperCase();
267
+ }
245
268
  //# sourceMappingURL=crypto.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"crypto.js","sourceRoot":"","sources":["../src/crypto.ts"],"names":[],"mappings":";AAAA,wEAAwE;AACxE,yEAAyE;AACzE,6EAA6E;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAiB7E,0BAcC;AAOD,gCAOC;AAOD,0CAUC;AAUD,oCAYC;AAUD,wCAgBC;AAgBD,oDAQC;AAQD,8CASC;AAkCD,8CAWC;AAmCD,4DAEC;AAvOD,iDAAmC;AACnC,wDAA0C;AAS1C;;;;GAIG;AACI,KAAK,UAAU,OAAO,CAC3B,cAAsB,EACtB,iBAAyB,EACzB,UAAkB;IAElB,MAAM,UAAU,GAAG,MAAM,OAAO,CAAC,UAAU,CAAC;QAC1C,UAAU,EAAE,MAAM,OAAO,CAAC,cAAc,CAAC,EAAE,UAAU,EAAE,iBAAiB,EAAE,CAAC;QAC3E,UAAU;KACX,CAAC,CAAC;IACH,MAAM,EAAE,IAAI,EAAE,GAAG,MAAM,OAAO,CAAC,OAAO,CAAC;QACrC,OAAO,EAAE,MAAM,OAAO,CAAC,WAAW,CAAC,EAAE,cAAc,EAAE,CAAC;QACtD,cAAc,EAAE,CAAC,UAAU,CAAC;KAC7B,CAAC,CAAC;IACH,OAAO,IAAc,CAAC;AACxB,CAAC;AAED;;;;GAIG;AACI,KAAK,UAAU,UAAU,CAAC,SAAiB,EAAE,iBAA2B;IAC7E,MAAM,IAAI,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC,iBAAiB,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,UAAU,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;IACjG,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,OAAO,CAAC;QACnC,OAAO,EAAE,MAAM,OAAO,CAAC,aAAa,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;QACzD,cAAc,EAAE,IAAI;KACrB,CAAC,CAAC;IACH,OAAO,MAAgB,CAAC;AAC1B,CAAC;AAED;;;;GAIG;AACI,KAAK,UAAU,eAAe,CAAC,UAAkB;IACtD,MAAM,EAAE,UAAU,EAAE,SAAS,EAAE,qBAAqB,EAAE,GAAG,MAAM,OAAO,CAAC,WAAW,CAAC;QACjF,IAAI,EAAE,KAAK;QACX,KAAK,EAAE,YAAY;QACnB,OAAO,EAAE,CAAC,EAAE,CAAC;QACb,UAAU;QACV,MAAM,EAAE,SAAS;KAClB,CAAC,CAAC;IACH,MAAM,WAAW,GAAG,MAAM,CAAC,MAAM,OAAO,CAAC,OAAO,CAAC,EAAE,UAAU,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC,cAAc,EAAE,CAAC;IAC9F,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,qBAAqB,EAAE,WAAW,EAAE,CAAC;AACvE,CAAC;AAED;;;;;;;GAOG;AACI,KAAK,UAAU,YAAY,CAAC,IAAY,EAAE,iBAAyB,EAAE,UAAkB;IAC5F,MAAM,UAAU,GAAG,MAAM,OAAO,CAAC,UAAU,CAAC;QAC1C,UAAU,EAAE,MAAM,OAAO,CAAC,cAAc,CAAC,EAAE,UAAU,EAAE,iBAAiB,EAAE,CAAC;QAC3E,UAAU;KACX,CAAC,CAAC;IACH,MAAM,SAAS,GAAG,MAAM,OAAO,CAAC,IAAI,CAAC;QACnC,OAAO,EAAE,MAAM,OAAO,CAAC,aAAa,CAAC,EAAE,IAAI,EAAE,CAAC;QAC9C,WAAW,EAAE,UAAU;QACvB,QAAQ,EAAE,IAAI;QACd,MAAM,EAAE,SAAS;KAClB,CAAC,CAAC;IACH,OAAO,SAAmB,CAAC;AAC7B,CAAC;AAED;;;;;;;GAOG;AACI,KAAK,UAAU,cAAc,CAAC,IAAY,EAAE,gBAAwB,EAAE,gBAAwB;IACnG,IAAI,CAAC;QACH,MAAM,SAAS,GAAG,MAAM,OAAO,CAAC,OAAO,CAAC,EAAE,UAAU,EAAE,gBAAgB,EAAE,CAAC,CAAC;QAC1E,MAAM,SAAS,GAAG,MAAM,OAAO,CAAC,aAAa,CAAC,EAAE,gBAAgB,EAAE,CAAC,CAAC;QACpE,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC,aAAa,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC;QACtD,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,MAAM,CAAC,EAAE,OAAO,EAAE,SAAS,EAAE,gBAAgB,EAAE,SAAS,EAAE,CAAC,CAAC;QACzF,qEAAqE;QACrE,oEAAoE;QACpE,qEAAqE;QACrE,2DAA2D;QAC3D,IAAI,MAAM,CAAC,UAAU,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,KAAK,CAAC;QACjD,MAAM,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,gDAAgD;QACrF,OAAO,IAAI,CAAC;IACd,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,KAAK,CAAC;IACf,CAAC;AACH,CAAC;AAOD;;;;;;;;GAQG;AACH,SAAgB,oBAAoB,CAAC,YAAoB,EAAE,OAAsB,EAAE,aAAqB;IACtG,MAAM,GAAG,GAAG,MAAM,CAAC,IAAI,CAAC,YAAY,EAAE,KAAK,CAAC,CAAC;IAC7C,MAAM,EAAE,GAAG,UAAU,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC;IACtC,MAAM,MAAM,GAAG,UAAU,CAAC,cAAc,CAAC,aAAa,EAAE,GAAG,EAAE,EAAE,EAAE,EAAE,aAAa,EAAE,EAAE,EAAE,CAAC,CAAC;IACxF,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,aAAa,EAAE,MAAM,CAAC,CAAC,CAAC;IAClD,MAAM,SAAS,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,WAAW,EAAE,OAAO,CAAC,WAAW,EAAE,QAAQ,EAAE,OAAO,CAAC,QAAQ,IAAI,IAAI,EAAE,CAAC,EAAE,MAAM,CAAC,CAAC;IAChI,MAAM,UAAU,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;IAC7E,OAAO,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,EAAE,UAAU,EAAE,MAAM,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;AACjF,CAAC;AAED;;;;;GAKG;AACH,SAAgB,iBAAiB,CAAC,gBAAwB,EAAE,MAAc,EAAE,KAAa;IACvF,MAAM,GAAG,GAAG,MAAM,CAAC,IAAI,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;IAC1C,MAAM,EAAE,GAAG,MAAM,CAAC,IAAI,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC;IACxC,MAAM,GAAG,GAAG,gBAAgB,CAAC,QAAQ,CAAC,gBAAgB,CAAC,MAAM,GAAG,EAAE,CAAC,CAAC;IACpE,MAAM,SAAS,GAAG,gBAAgB,CAAC,QAAQ,CAAC,CAAC,EAAE,gBAAgB,CAAC,MAAM,GAAG,EAAE,CAAC,CAAC;IAE7E,MAAM,QAAQ,GAAG,UAAU,CAAC,gBAAgB,CAAC,aAAa,EAAE,GAAG,EAAE,EAAE,CAAC,CAAC;IACrE,QAAQ,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC;IACzB,OAAO,MAAM,CAAC,MAAM,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,SAAS,CAAC,EAAE,QAAQ,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;AACvE,CAAC;AAED;;;;;;;;;GASG;AACU,QAAA,oBAAoB,GAAG,EAAE,GAAG,IAAI,GAAG,IAAI,CAAC;AAYrD;;;;;;;;;GASG;AACH,SAAgB,iBAAiB,CAAC,SAAiB;IACjD,MAAM,GAAG,GAAG,UAAU,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC;IACvC,MAAM,EAAE,GAAG,UAAU,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC;IACtC,MAAM,MAAM,GAAG,UAAU,CAAC,cAAc,CAAC,aAAa,EAAE,GAAG,EAAE,EAAE,CAAC,CAAC;IACjE,MAAM,SAAS,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;IAC5E,MAAM,GAAG,GAAG,MAAM,CAAC,UAAU,EAAE,CAAC;IAChC,OAAO;QACL,UAAU,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC,SAAS,EAAE,GAAG,CAAC,CAAC;QAC3C,MAAM,EAAE,GAAG,CAAC,QAAQ,CAAC,QAAQ,CAAC;QAC9B,KAAK,EAAE,EAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC;KAC7B,CAAC;AACJ,CAAC;AAED;;;;;;;;;;GAUG;AACU,QAAA,0BAA0B,GAAsB;IAC3D,WAAW;IACX,YAAY;IACZ,WAAW;IACX,YAAY;IACZ,eAAe;IACf,WAAW;IACX,YAAY;IACZ,iBAAiB;IACjB,YAAY;IACZ,WAAW;IACX,YAAY;IACZ,WAAW;IACX,iBAAiB;IACjB,YAAY;IACZ,UAAU;IACV,eAAe;IACf,eAAe;IACf,kBAAkB;IAClB,0BAA0B;CAC3B,CAAC;AAEF,SAAgB,wBAAwB,CAAC,WAAmB;IAC1D,OAAO,kCAA0B,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC;AAC1D,CAAC"}
1
+ {"version":3,"file":"crypto.js","sourceRoot":"","sources":["../src/crypto.ts"],"names":[],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -1,6 +1,7 @@
1
1
  export * from "./ids";
2
2
  export * from "./client";
3
3
  export * from "./crypto";
4
+ export * from "./keyReset";
4
5
  export * from "./recovery";
5
6
  export * from "./identity";
6
7
  export * from "./identityShare";
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,OAAO,CAAC;AACtB,cAAc,UAAU,CAAC;AACzB,cAAc,UAAU,CAAC;AACzB,cAAc,YAAY,CAAC;AAC3B,cAAc,YAAY,CAAC;AAC3B,cAAc,iBAAiB,CAAC;AAChC,cAAc,cAAc,CAAC;AAC7B,cAAc,YAAY,CAAC;AAC3B,cAAc,aAAa,CAAC;AAC5B,cAAc,eAAe,CAAC;AAC9B,cAAc,QAAQ,CAAC;AACvB,cAAc,QAAQ,CAAC;AACvB,cAAc,cAAc,CAAC;AAC7B,cAAc,YAAY,CAAC;AAC3B,cAAc,aAAa,CAAC;AAC5B,cAAc,eAAe,CAAC;AAC9B,cAAc,WAAW,CAAC;AAC1B,cAAc,OAAO,CAAC;AACtB,cAAc,UAAU,CAAC;AACzB,cAAc,WAAW,CAAC;AAC1B,cAAc,UAAU,CAAC;AACzB,cAAc,mBAAmB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,OAAO,CAAC;AACtB,cAAc,UAAU,CAAC;AACzB,cAAc,UAAU,CAAC;AACzB,cAAc,YAAY,CAAC;AAC3B,cAAc,YAAY,CAAC;AAC3B,cAAc,YAAY,CAAC;AAC3B,cAAc,iBAAiB,CAAC;AAChC,cAAc,cAAc,CAAC;AAC7B,cAAc,YAAY,CAAC;AAC3B,cAAc,aAAa,CAAC;AAC5B,cAAc,eAAe,CAAC;AAC9B,cAAc,QAAQ,CAAC;AACvB,cAAc,QAAQ,CAAC;AACvB,cAAc,cAAc,CAAC;AAC7B,cAAc,YAAY,CAAC;AAC3B,cAAc,aAAa,CAAC;AAC5B,cAAc,eAAe,CAAC;AAC9B,cAAc,WAAW,CAAC;AAC1B,cAAc,OAAO,CAAC;AACtB,cAAc,UAAU,CAAC;AACzB,cAAc,WAAW,CAAC;AAC1B,cAAc,UAAU,CAAC;AACzB,cAAc,mBAAmB,CAAC"}
package/dist/index.js CHANGED
@@ -17,6 +17,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
17
17
  __exportStar(require("./ids"), exports);
18
18
  __exportStar(require("./client"), exports);
19
19
  __exportStar(require("./crypto"), exports);
20
+ __exportStar(require("./keyReset"), exports);
20
21
  __exportStar(require("./recovery"), exports);
21
22
  __exportStar(require("./identity"), exports);
22
23
  __exportStar(require("./identityShare"), exports);
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,wCAAsB;AACtB,2CAAyB;AACzB,2CAAyB;AACzB,6CAA2B;AAC3B,6CAA2B;AAC3B,kDAAgC;AAChC,+CAA6B;AAC7B,6CAA2B;AAC3B,8CAA4B;AAC5B,gDAA8B;AAC9B,yCAAuB;AACvB,yCAAuB;AACvB,+CAA6B;AAC7B,6CAA2B;AAC3B,8CAA4B;AAC5B,gDAA8B;AAC9B,4CAA0B;AAC1B,wCAAsB;AACtB,2CAAyB;AACzB,4CAA0B;AAC1B,2CAAyB;AACzB,oDAAkC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,wCAAsB;AACtB,2CAAyB;AACzB,2CAAyB;AACzB,6CAA2B;AAC3B,6CAA2B;AAC3B,6CAA2B;AAC3B,kDAAgC;AAChC,+CAA6B;AAC7B,6CAA2B;AAC3B,8CAA4B;AAC5B,gDAA8B;AAC9B,yCAAuB;AACvB,yCAAuB;AACvB,+CAA6B;AAC7B,6CAA2B;AAC3B,8CAA4B;AAC5B,gDAA8B;AAC9B,4CAA0B;AAC1B,wCAAsB;AACtB,2CAAyB;AACzB,4CAA0B;AAC1B,2CAAyB;AACzB,oDAAkC"}