@vex-chat/libvex 8.0.0 → 9.0.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.d.ts +34 -21
- package/dist/Client.d.ts.map +1 -1
- package/dist/Client.js +193 -131
- package/dist/Client.js.map +1 -1
- package/dist/codecs.d.ts +8 -4
- package/dist/codecs.d.ts.map +1 -1
- package/dist/codecs.js +2 -5
- package/dist/codecs.js.map +1 -1
- package/dist/http.js +15 -1
- package/dist/http.js.map +1 -1
- package/dist/keystore/node.d.ts.map +1 -1
- package/dist/keystore/node.js +9 -11
- package/dist/keystore/node.js.map +1 -1
- package/dist/storage/sqlite.d.ts +6 -0
- package/dist/storage/sqlite.d.ts.map +1 -1
- package/dist/storage/sqlite.js +89 -56
- package/dist/storage/sqlite.js.map +1 -1
- package/dist/utils/verifyKeyBundle.d.ts.map +1 -1
- package/dist/utils/verifyKeyBundle.js +7 -10
- package/dist/utils/verifyKeyBundle.js.map +1 -1
- package/package.json +3 -3
- package/src/Client.ts +305 -180
- package/src/__tests__/harness/shared-suite.ts +82 -11
- package/src/__tests__/http.test.ts +22 -0
- package/src/__tests__/node-keystore.test.ts +69 -0
- package/src/__tests__/prekey-reuse.test.ts +13 -13
- package/src/__tests__/storage-sqlite.test.ts +90 -1
- package/src/__tests__/verifyKeyBundle.test.ts +11 -8
- package/src/codecs.ts +2 -5
- package/src/http.ts +16 -1
- package/src/keystore/node.ts +17 -19
- package/src/storage/sqlite.ts +109 -84
- package/src/utils/verifyKeyBundle.ts +13 -13
package/dist/codecs.d.ts
CHANGED
|
@@ -189,28 +189,28 @@ export declare const RegisterPendingApprovalCodec: {
|
|
|
189
189
|
expiresAt: string;
|
|
190
190
|
requestID: string;
|
|
191
191
|
status: "pending_approval";
|
|
192
|
-
userID
|
|
192
|
+
userID: string;
|
|
193
193
|
};
|
|
194
194
|
decodeSafe: (data: Uint8Array) => {
|
|
195
195
|
challenge: string;
|
|
196
196
|
expiresAt: string;
|
|
197
197
|
requestID: string;
|
|
198
198
|
status: "pending_approval";
|
|
199
|
-
userID
|
|
199
|
+
userID: string;
|
|
200
200
|
};
|
|
201
201
|
encode: (msg: {
|
|
202
202
|
challenge: string;
|
|
203
203
|
expiresAt: string;
|
|
204
204
|
requestID: string;
|
|
205
205
|
status: "pending_approval";
|
|
206
|
-
userID
|
|
206
|
+
userID: string;
|
|
207
207
|
}) => Uint8Array;
|
|
208
208
|
encodeSafe: (msg: {
|
|
209
209
|
challenge: string;
|
|
210
210
|
expiresAt: string;
|
|
211
211
|
requestID: string;
|
|
212
212
|
status: "pending_approval";
|
|
213
|
-
userID
|
|
213
|
+
userID: string;
|
|
214
214
|
}) => Uint8Array;
|
|
215
215
|
};
|
|
216
216
|
export declare const DeviceChallengeCodec: {
|
|
@@ -237,24 +237,28 @@ export declare const DeviceRegistrationResultCodec: {
|
|
|
237
237
|
expiresAt: string;
|
|
238
238
|
requestID: string;
|
|
239
239
|
status: "pending_approval";
|
|
240
|
+
userID: string;
|
|
240
241
|
};
|
|
241
242
|
decodeSafe: (data: Uint8Array) => import("@vex-chat/types").Device | {
|
|
242
243
|
challenge: string;
|
|
243
244
|
expiresAt: string;
|
|
244
245
|
requestID: string;
|
|
245
246
|
status: "pending_approval";
|
|
247
|
+
userID: string;
|
|
246
248
|
};
|
|
247
249
|
encode: (msg: import("@vex-chat/types").Device | {
|
|
248
250
|
challenge: string;
|
|
249
251
|
expiresAt: string;
|
|
250
252
|
requestID: string;
|
|
251
253
|
status: "pending_approval";
|
|
254
|
+
userID: string;
|
|
252
255
|
}) => Uint8Array;
|
|
253
256
|
encodeSafe: (msg: import("@vex-chat/types").Device | {
|
|
254
257
|
challenge: string;
|
|
255
258
|
expiresAt: string;
|
|
256
259
|
requestID: string;
|
|
257
260
|
status: "pending_approval";
|
|
261
|
+
userID: string;
|
|
258
262
|
}) => Uint8Array;
|
|
259
263
|
};
|
|
260
264
|
export declare const PendingDeviceRequestCodec: {
|
package/dist/codecs.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"codecs.d.ts","sourceRoot":"","sources":["../src/codecs.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAmCH,eAAO,MAAM,SAAS;;;;;CAA0B,CAAC;AACjD,eAAO,MAAM,WAAW;;;;;CAA4B,CAAC;AACrD,eAAO,MAAM,WAAW;;;;;CAA4B,CAAC;AACrD,eAAO,MAAM,YAAY;;;;;CAA6B,CAAC;AACvD,eAAO,MAAM,eAAe;;;;;CAAgC,CAAC;AAC7D,eAAO,MAAM,WAAW;;;;;CAA4B,CAAC;AACrD,eAAO,MAAM,UAAU;;;;;CAA2B,CAAC;AACnD,eAAO,MAAM,YAAY;;;;;CAA6B,CAAC;AACvD,eAAO,MAAM,gBAAgB;;;;;CAAiC,CAAC;AAC/D,eAAO,MAAM,wBAAwB;;;;;CAAyC,CAAC;AAC/E,eAAO,MAAM,wBAAwB;;;;;CAAyC,CAAC;AAC/E,eAAO,MAAM,cAAc;;;;;CAA+B,CAAC;AAI3D,eAAO,MAAM,cAAc;;;;;CAAmC,CAAC;AAC/D,eAAO,MAAM,gBAAgB;;;;;CAAqC,CAAC;AACnE,eAAO,MAAM,gBAAgB;;;;;CAAqC,CAAC;AACnE,eAAO,MAAM,iBAAiB;;;;;CAAsC,CAAC;AACrE,eAAO,MAAM,oBAAoB;;;;;CAAyC,CAAC;AAC3E,eAAO,MAAM,gBAAgB;;;;;CAAqC,CAAC;AACnE,eAAO,MAAM,eAAe;;;;;CAAoC,CAAC;AACjE,eAAO,MAAM,2BAA2B;;;;;CAEvC,CAAC;AACF,eAAO,MAAM,wBAAwB;;;;;CAEpC,CAAC;AAIF,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;CAEhC,CAAC;AAEF,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;CAK7B,CAAC;AAEF,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;;;;;;;;CAMjC,CAAC;AAEF,eAAO,MAAM,4BAA4B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"codecs.d.ts","sourceRoot":"","sources":["../src/codecs.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAmCH,eAAO,MAAM,SAAS;;;;;CAA0B,CAAC;AACjD,eAAO,MAAM,WAAW;;;;;CAA4B,CAAC;AACrD,eAAO,MAAM,WAAW;;;;;CAA4B,CAAC;AACrD,eAAO,MAAM,YAAY;;;;;CAA6B,CAAC;AACvD,eAAO,MAAM,eAAe;;;;;CAAgC,CAAC;AAC7D,eAAO,MAAM,WAAW;;;;;CAA4B,CAAC;AACrD,eAAO,MAAM,UAAU;;;;;CAA2B,CAAC;AACnD,eAAO,MAAM,YAAY;;;;;CAA6B,CAAC;AACvD,eAAO,MAAM,gBAAgB;;;;;CAAiC,CAAC;AAC/D,eAAO,MAAM,wBAAwB;;;;;CAAyC,CAAC;AAC/E,eAAO,MAAM,wBAAwB;;;;;CAAyC,CAAC;AAC/E,eAAO,MAAM,cAAc;;;;;CAA+B,CAAC;AAI3D,eAAO,MAAM,cAAc;;;;;CAAmC,CAAC;AAC/D,eAAO,MAAM,gBAAgB;;;;;CAAqC,CAAC;AACnE,eAAO,MAAM,gBAAgB;;;;;CAAqC,CAAC;AACnE,eAAO,MAAM,iBAAiB;;;;;CAAsC,CAAC;AACrE,eAAO,MAAM,oBAAoB;;;;;CAAyC,CAAC;AAC3E,eAAO,MAAM,gBAAgB;;;;;CAAqC,CAAC;AACnE,eAAO,MAAM,eAAe;;;;;CAAoC,CAAC;AACjE,eAAO,MAAM,2BAA2B;;;;;CAEvC,CAAC;AACF,eAAO,MAAM,wBAAwB;;;;;CAEpC,CAAC;AAIF,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;CAEhC,CAAC;AAEF,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;CAK7B,CAAC;AAEF,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;;;;;;;;CAMjC,CAAC;AAEF,eAAO,MAAM,4BAA4B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAQxC,CAAC;AAEF,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;CAKhC,CAAC;AAEF,eAAO,MAAM,6BAA6B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAWzC,CAAC;AAEF,eAAO,MAAM,yBAAyB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAiBrC,CAAC;AAEF,eAAO,MAAM,8BAA8B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAmB1C,CAAC;AAEF,eAAO,MAAM,WAAW;;;;;;;;;;;;;;;;;CAKvB,CAAC;AAEF,eAAO,MAAM,aAAa;;;;;;;;;;;;;CAA+C,CAAC;AAI1E,eAAO,MAAM,YAAY;;;;;CAA6B,CAAC;AACvD,eAAO,MAAM,iBAAiB;;;;;CAAsC,CAAC;AAErE;;;;;;;GAOG;AACH,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;;;;;CAM/B,CAAC;AAEF,eAAO,MAAM,8BAA8B;;;;;;;;;;;;;;;;;;;;;CAM1C,CAAC;AAIF;;;GAGG;AACH,wBAAgB,kBAAkB,CAAC,CAAC,EAChC,KAAK,EAAE;IAAE,UAAU,EAAE,CAAC,IAAI,EAAE,UAAU,KAAK,CAAC,CAAA;CAAE;AAC9C,8EAA8E;AAC9E,IAAI,EAAE,OAAO,GACd,CAAC,CAQH"}
|
package/dist/codecs.js
CHANGED
|
@@ -54,11 +54,7 @@ export const RegisterPendingApprovalCodec = createCodec(z.object({
|
|
|
54
54
|
expiresAt: z.string(),
|
|
55
55
|
requestID: z.string(),
|
|
56
56
|
status: z.literal("pending_approval"),
|
|
57
|
-
|
|
58
|
-
// surface the existing user's ID in this response. When present,
|
|
59
|
-
// clients can use it to fetch the unauthenticated avatar and
|
|
60
|
-
// show an "is this you?" confirmation before proceeding.
|
|
61
|
-
userID: z.string().optional(),
|
|
57
|
+
userID: z.string(),
|
|
62
58
|
}));
|
|
63
59
|
export const DeviceChallengeCodec = createCodec(z.object({
|
|
64
60
|
challenge: z.string(),
|
|
@@ -71,6 +67,7 @@ export const DeviceRegistrationResultCodec = createCodec(z.union([
|
|
|
71
67
|
expiresAt: z.string(),
|
|
72
68
|
requestID: z.string(),
|
|
73
69
|
status: z.literal("pending_approval"),
|
|
70
|
+
userID: z.string(),
|
|
74
71
|
}),
|
|
75
72
|
]));
|
|
76
73
|
export const PendingDeviceRequestCodec = createCodec(z.object({
|
package/dist/codecs.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"codecs.js","sourceRoot":"","sources":["../src/codecs.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"codecs.js","sourceRoot":"","sources":["../src/codecs.ts"],"names":[],"mappings":"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"}
|
package/dist/http.js
CHANGED
|
@@ -34,7 +34,7 @@ export class FetchHttpClient {
|
|
|
34
34
|
const body = makeBody(data, headers);
|
|
35
35
|
maybeReportUploadProgress(data, config.onUploadProgress);
|
|
36
36
|
const requestRecord = {
|
|
37
|
-
headers:
|
|
37
|
+
headers: headersToSafeRecord(headers),
|
|
38
38
|
method,
|
|
39
39
|
url,
|
|
40
40
|
};
|
|
@@ -232,6 +232,20 @@ function headersToRecord(headers) {
|
|
|
232
232
|
});
|
|
233
233
|
return out;
|
|
234
234
|
}
|
|
235
|
+
function headersToSafeRecord(headers) {
|
|
236
|
+
const sensitive = new Set([
|
|
237
|
+
"authorization",
|
|
238
|
+
"cookie",
|
|
239
|
+
"proxy-authorization",
|
|
240
|
+
"x-api-key",
|
|
241
|
+
"x-device-token",
|
|
242
|
+
]);
|
|
243
|
+
const out = {};
|
|
244
|
+
headers.forEach((value, key) => {
|
|
245
|
+
out[key] = sensitive.has(key.toLowerCase()) ? "[REDACTED]" : value;
|
|
246
|
+
});
|
|
247
|
+
return out;
|
|
248
|
+
}
|
|
235
249
|
function isFormDataValue(value) {
|
|
236
250
|
return typeof FormData !== "undefined" && value instanceof FormData;
|
|
237
251
|
}
|
package/dist/http.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"http.js","sourceRoot":"","sources":["../src/http.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"http.js","sourceRoot":"","sources":["../src/http.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"node.d.ts","sourceRoot":"","sources":["../../src/keystore/node.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,QAAQ,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AAarE,qBAAa,YAAa,YAAW,QAAQ;IACzC,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAS;IAC7B,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAS;gBAExB,UAAU,EAAE,MAAM,EAAE,GAAG,GAAE,MAAY;IAWjD,KAAK,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAStC,IAAI,CAAC,QAAQ,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,GAAG,iBAAiB,CAAC;IAuBpD,IAAI,CAAC,KAAK,EAAE,iBAAiB,GAAG,OAAO,CAAC,IAAI,CAAC;
|
|
1
|
+
{"version":3,"file":"node.d.ts","sourceRoot":"","sources":["../../src/keystore/node.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,QAAQ,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AAarE,qBAAa,YAAa,YAAW,QAAQ;IACzC,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAS;IAC7B,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAS;gBAExB,UAAU,EAAE,MAAM,EAAE,GAAG,GAAE,MAAY;IAWjD,KAAK,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAStC,IAAI,CAAC,QAAQ,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,GAAG,iBAAiB,CAAC;IAuBpD,IAAI,CAAC,KAAK,EAAE,iBAAiB,GAAG,OAAO,CAAC,IAAI,CAAC;IAWnD,OAAO,CAAC,QAAQ;YAIF,QAAQ;CAoBzB"}
|
package/dist/keystore/node.js
CHANGED
|
@@ -11,7 +11,7 @@ import * as path from "node:path";
|
|
|
11
11
|
* Stores credentials as encrypted files on disk using XUtils.encryptKeyData.
|
|
12
12
|
* Node-only — imports node:fs.
|
|
13
13
|
*/
|
|
14
|
-
import {
|
|
14
|
+
import { XUtils } from "@vex-chat/crypto";
|
|
15
15
|
export class NodeKeyStore {
|
|
16
16
|
dir;
|
|
17
17
|
passphrase;
|
|
@@ -58,22 +58,20 @@ export class NodeKeyStore {
|
|
|
58
58
|
}
|
|
59
59
|
}
|
|
60
60
|
async save(creds) {
|
|
61
|
-
const data = JSON.stringify(creds);
|
|
62
|
-
const encrypted =
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
fs.
|
|
61
|
+
const data = XUtils.encodeHex(XUtils.decodeUTF8(JSON.stringify(creds)));
|
|
62
|
+
const encrypted = await XUtils.encryptKeyDataAsync(this.passphrase, data);
|
|
63
|
+
const filePath = this.filePath(creds.username);
|
|
64
|
+
fs.writeFileSync(filePath, encrypted, { mode: 0o600 });
|
|
65
|
+
fs.chmodSync(filePath, 0o600);
|
|
66
66
|
}
|
|
67
67
|
filePath(username) {
|
|
68
|
-
return path.join(this.dir, `${username}.vex`);
|
|
68
|
+
return path.join(this.dir, `${encodeURIComponent(username)}.vex`);
|
|
69
69
|
}
|
|
70
70
|
async readFile(filePath) {
|
|
71
71
|
try {
|
|
72
72
|
const data = fs.readFileSync(filePath);
|
|
73
|
-
const decrypted =
|
|
74
|
-
|
|
75
|
-
: XUtils.decryptKeyData(new Uint8Array(data), this.passphrase);
|
|
76
|
-
const parsed = JSON.parse(decrypted);
|
|
73
|
+
const decrypted = await XUtils.decryptKeyDataAsync(new Uint8Array(data), this.passphrase);
|
|
74
|
+
const parsed = JSON.parse(XUtils.encodeUTF8(XUtils.decodeHex(decrypted)));
|
|
77
75
|
if (isStoredCredentials(parsed)) {
|
|
78
76
|
return parsed;
|
|
79
77
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"node.js","sourceRoot":"","sources":["../../src/keystore/node.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAIH,OAAO,KAAK,EAAE,MAAM,SAAS,CAAC;AAC9B,OAAO,KAAK,IAAI,MAAM,WAAW,CAAC;AAElC;;;;;GAKG;AACH,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"node.js","sourceRoot":"","sources":["../../src/keystore/node.ts"],"names":[],"mappings":"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"}
|
package/dist/storage/sqlite.d.ts
CHANGED
|
@@ -61,18 +61,24 @@ export declare class SqliteStorage extends EventEmitter implements Storage {
|
|
|
61
61
|
* message handler is still in flight.
|
|
62
62
|
*/
|
|
63
63
|
private isTornDownError;
|
|
64
|
+
private openMessagePlaintext;
|
|
65
|
+
private sealBytes;
|
|
64
66
|
/**
|
|
65
67
|
* Encrypt a hex-encoded secret for at-rest storage.
|
|
66
68
|
* Returns hex(nonce || ciphertext) where nonce is 24 random bytes.
|
|
67
69
|
*/
|
|
68
70
|
private sealHex;
|
|
71
|
+
private sealMessagePlaintext;
|
|
72
|
+
private sealSecretText;
|
|
69
73
|
private sessionRowToSQLAsync;
|
|
70
74
|
private sqlToCrypto;
|
|
75
|
+
private unsealBytes;
|
|
71
76
|
/**
|
|
72
77
|
* Decrypt a value produced by sealHex().
|
|
73
78
|
* Expects hex(nonce || ciphertext), returns the original hex string.
|
|
74
79
|
*/
|
|
75
80
|
private unsealHex;
|
|
81
|
+
private unsealSecretText;
|
|
76
82
|
private untilReady;
|
|
77
83
|
}
|
|
78
84
|
//# sourceMappingURL=sqlite.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sqlite.d.ts","sourceRoot":"","sources":["../../src/storage/sqlite.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AAC3C,OAAO,KAAK,EAAE,kBAAkB,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AACjE,OAAO,KAAK,EACR,aAAa,EACb,aAAa,EACb,aAAa,EAChB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,KAAK,EACR,cAAc,EAIjB,MAAM,aAAa,CAAC;AACrB,OAAO,KAAK,EAAE,MAAM,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AA+BtE,OAAO,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAC7C,OAAO,EAAE,KAAK,MAAM,EAAO,MAAM,QAAQ,CAAC;
|
|
1
|
+
{"version":3,"file":"sqlite.d.ts","sourceRoot":"","sources":["../../src/storage/sqlite.ts"],"names":[],"mappings":"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"}
|
package/dist/storage/sqlite.js
CHANGED
|
@@ -26,6 +26,10 @@ import { sql } from "kysely";
|
|
|
26
26
|
import { effectiveMessageRetentionHintDays } from "../retention.js";
|
|
27
27
|
import { parseSkippedKeysStrict } from "../utils/ratchet.js";
|
|
28
28
|
const STORAGE_MESSAGE_BLOB_PREFIX = "vex-storage-message:1\n";
|
|
29
|
+
const STORAGE_CIPHERTEXT_PREFIX = "vex-storage-cipher:2:";
|
|
30
|
+
const STORAGE_SECRET_TEXT_PREFIX = "vex-storage-secret:1:";
|
|
31
|
+
const STORAGE_NONCE_BYTES = 24;
|
|
32
|
+
const STORAGE_MAC_BYTES = 16;
|
|
29
33
|
export class SqliteStorage extends EventEmitter {
|
|
30
34
|
ready = false;
|
|
31
35
|
/** 32-byte AES-256 (or nacl) key for local at-rest `secretbox` (see `XUtils.deriveLocalAtRestAesKey`). */
|
|
@@ -324,7 +328,9 @@ export class SqliteStorage extends EventEmitter {
|
|
|
324
328
|
this.emit("ready");
|
|
325
329
|
}
|
|
326
330
|
catch (err) {
|
|
327
|
-
|
|
331
|
+
const error = err instanceof Error ? err : new Error(String(err));
|
|
332
|
+
this.emit("error", error);
|
|
333
|
+
throw error;
|
|
328
334
|
}
|
|
329
335
|
finally {
|
|
330
336
|
this.initInFlight = null;
|
|
@@ -427,13 +433,25 @@ export class SqliteStorage extends EventEmitter {
|
|
|
427
433
|
return;
|
|
428
434
|
}
|
|
429
435
|
await this.untilReady();
|
|
436
|
+
if (this.isClosingNow()) {
|
|
437
|
+
return;
|
|
438
|
+
}
|
|
430
439
|
// Fan-out to multiple devices reuses one `mailID` but each encrypt path
|
|
431
440
|
// uses a fresh nonce (table PK). Keep a single local row per logical mail.
|
|
432
|
-
|
|
433
|
-
|
|
434
|
-
.
|
|
435
|
-
|
|
436
|
-
|
|
441
|
+
let dupe;
|
|
442
|
+
try {
|
|
443
|
+
dupe = await this.db
|
|
444
|
+
.selectFrom("messages")
|
|
445
|
+
.select("nonce")
|
|
446
|
+
.where("mailID", "=", message.mailID)
|
|
447
|
+
.executeTakeFirst();
|
|
448
|
+
}
|
|
449
|
+
catch (err) {
|
|
450
|
+
if (this.isClosingNow() || this.isTornDownError(err)) {
|
|
451
|
+
return;
|
|
452
|
+
}
|
|
453
|
+
throw err;
|
|
454
|
+
}
|
|
437
455
|
if (dupe !== undefined) {
|
|
438
456
|
return;
|
|
439
457
|
}
|
|
@@ -441,12 +459,9 @@ export class SqliteStorage extends EventEmitter {
|
|
|
441
459
|
const isPlaintextFailurePlaceholder = !message.decrypted &&
|
|
442
460
|
message.message === "" &&
|
|
443
461
|
message.extra === undefined;
|
|
444
|
-
const fips = getCryptoProfile() === "fips";
|
|
445
462
|
const encryptedMessage = isPlaintextFailurePlaceholder
|
|
446
463
|
? storedPlaintext
|
|
447
|
-
:
|
|
448
|
-
? await xSecretboxAsync(XUtils.decodeUTF8(storedPlaintext), XUtils.decodeHex(message.nonce), this.atRestAesKey)
|
|
449
|
-
: xSecretbox(XUtils.decodeUTF8(storedPlaintext), XUtils.decodeHex(message.nonce), this.atRestAesKey));
|
|
464
|
+
: await this.sealMessagePlaintext(storedPlaintext);
|
|
450
465
|
if (this.isClosingNow()) {
|
|
451
466
|
return;
|
|
452
467
|
}
|
|
@@ -526,6 +541,7 @@ export class SqliteStorage extends EventEmitter {
|
|
|
526
541
|
const sealedDHsPrivate = await this.sealHex(session.DHsPrivate);
|
|
527
542
|
const sealedRK = await this.sealHex(session.RK);
|
|
528
543
|
const sealedSK = await this.sealHex(session.SK);
|
|
544
|
+
const sealedSkippedKeys = await this.sealSecretText(session.skippedKeys);
|
|
529
545
|
try {
|
|
530
546
|
await this.db
|
|
531
547
|
.insertInto("sessions")
|
|
@@ -546,7 +562,7 @@ export class SqliteStorage extends EventEmitter {
|
|
|
546
562
|
RK: sealedRK,
|
|
547
563
|
sessionID: session.sessionID,
|
|
548
564
|
SK: sealedSK,
|
|
549
|
-
skippedKeys:
|
|
565
|
+
skippedKeys: sealedSkippedKeys,
|
|
550
566
|
userID: session.userID,
|
|
551
567
|
verified: session.verified ? 1 : 0,
|
|
552
568
|
})
|
|
@@ -572,7 +588,7 @@ export class SqliteStorage extends EventEmitter {
|
|
|
572
588
|
publicKey: session.publicKey,
|
|
573
589
|
RK: sealedRK,
|
|
574
590
|
SK: sealedSK,
|
|
575
|
-
skippedKeys:
|
|
591
|
+
skippedKeys: sealedSkippedKeys,
|
|
576
592
|
userID: session.userID,
|
|
577
593
|
verified: session.verified ? 1 : 0,
|
|
578
594
|
})
|
|
@@ -613,10 +629,7 @@ export class SqliteStorage extends EventEmitter {
|
|
|
613
629
|
: {}),
|
|
614
630
|
};
|
|
615
631
|
const storedPlaintext = encodeStoredMessagePlaintext(next);
|
|
616
|
-
const
|
|
617
|
-
const ct = fips
|
|
618
|
-
? await xSecretboxAsync(XUtils.decodeUTF8(storedPlaintext), XUtils.decodeHex(row.nonce), this.atRestAesKey)
|
|
619
|
-
: xSecretbox(XUtils.decodeUTF8(storedPlaintext), XUtils.decodeHex(row.nonce), this.atRestAesKey);
|
|
632
|
+
const sealedMessage = await this.sealMessagePlaintext(storedPlaintext);
|
|
620
633
|
if (this.isClosingNow()) {
|
|
621
634
|
return false;
|
|
622
635
|
}
|
|
@@ -624,7 +637,7 @@ export class SqliteStorage extends EventEmitter {
|
|
|
624
637
|
.updateTable("messages")
|
|
625
638
|
.set({
|
|
626
639
|
extra: null,
|
|
627
|
-
message:
|
|
640
|
+
message: sealedMessage,
|
|
628
641
|
})
|
|
629
642
|
.where("mailID", "=", mailID)
|
|
630
643
|
.executeTakeFirst();
|
|
@@ -632,7 +645,6 @@ export class SqliteStorage extends EventEmitter {
|
|
|
632
645
|
}
|
|
633
646
|
// ── Purge ────────────────────────────────────────────────────────────────
|
|
634
647
|
async decryptMessagesAsync(messages) {
|
|
635
|
-
const fips = getCryptoProfile() === "fips";
|
|
636
648
|
const out = [];
|
|
637
649
|
let processed = 0;
|
|
638
650
|
/** Yield so RN / web UIs can paint between at-rest decrypt blocks. */
|
|
@@ -645,17 +657,7 @@ export class SqliteStorage extends EventEmitter {
|
|
|
645
657
|
let plaintext = msg.message;
|
|
646
658
|
const isPlaintextFailurePlaceholder = !decryptedFlag && msg.message === "" && msg.extra === null;
|
|
647
659
|
if (!isPlaintextFailurePlaceholder) {
|
|
648
|
-
|
|
649
|
-
const nonce = XUtils.decodeHex(msg.nonce);
|
|
650
|
-
const decrypted = fips
|
|
651
|
-
? await xSecretboxOpenAsync(cipher, nonce, this.atRestAesKey)
|
|
652
|
-
: xSecretboxOpen(cipher, nonce, this.atRestAesKey);
|
|
653
|
-
if (decrypted) {
|
|
654
|
-
plaintext = XUtils.encodeUTF8(decrypted);
|
|
655
|
-
}
|
|
656
|
-
else {
|
|
657
|
-
throw new Error("Couldn't decrypt messages on disk!");
|
|
658
|
-
}
|
|
660
|
+
plaintext = await this.openMessagePlaintext(msg.message);
|
|
659
661
|
}
|
|
660
662
|
const direction = msg.direction === "incoming" ? "incoming" : "outgoing";
|
|
661
663
|
const storedPlaintext = decodeStoredMessagePlaintext(plaintext, msg.extra);
|
|
@@ -778,21 +780,39 @@ export class SqliteStorage extends EventEmitter {
|
|
|
778
780
|
}
|
|
779
781
|
return false;
|
|
780
782
|
}
|
|
781
|
-
|
|
782
|
-
|
|
783
|
-
|
|
784
|
-
|
|
785
|
-
|
|
783
|
+
async openMessagePlaintext(stored) {
|
|
784
|
+
if (!stored.startsWith(STORAGE_CIPHERTEXT_PREFIX)) {
|
|
785
|
+
throw new Error("Stored message is missing its encryption envelope.");
|
|
786
|
+
}
|
|
787
|
+
const plain = await this.unsealBytes(stored.slice(STORAGE_CIPHERTEXT_PREFIX.length));
|
|
788
|
+
return XUtils.encodeUTF8(plain);
|
|
789
|
+
}
|
|
790
|
+
async sealBytes(plaintext) {
|
|
786
791
|
const nonce = xMakeNonce();
|
|
787
792
|
const fips = getCryptoProfile() === "fips";
|
|
788
793
|
const ct = fips
|
|
789
|
-
? await xSecretboxAsync(
|
|
790
|
-
: xSecretbox(
|
|
794
|
+
? await xSecretboxAsync(plaintext, nonce, this.atRestAesKey)
|
|
795
|
+
: xSecretbox(plaintext, nonce, this.atRestAesKey);
|
|
791
796
|
const sealed = new Uint8Array(nonce.length + ct.length);
|
|
792
797
|
sealed.set(nonce);
|
|
793
798
|
sealed.set(ct, nonce.length);
|
|
794
799
|
return XUtils.encodeHex(sealed);
|
|
795
800
|
}
|
|
801
|
+
/**
|
|
802
|
+
* Encrypt a hex-encoded secret for at-rest storage.
|
|
803
|
+
* Returns hex(nonce || ciphertext) where nonce is 24 random bytes.
|
|
804
|
+
*/
|
|
805
|
+
async sealHex(plainHex) {
|
|
806
|
+
return this.sealBytes(XUtils.decodeHex(plainHex));
|
|
807
|
+
}
|
|
808
|
+
async sealMessagePlaintext(plaintext) {
|
|
809
|
+
return (STORAGE_CIPHERTEXT_PREFIX +
|
|
810
|
+
(await this.sealBytes(XUtils.decodeUTF8(plaintext))));
|
|
811
|
+
}
|
|
812
|
+
async sealSecretText(plaintext) {
|
|
813
|
+
return (STORAGE_SECRET_TEXT_PREFIX +
|
|
814
|
+
(await this.sealBytes(XUtils.decodeUTF8(plaintext))));
|
|
815
|
+
}
|
|
796
816
|
async sessionRowToSQLAsync(row) {
|
|
797
817
|
const rawSK = await this.unsealHex(row.SK);
|
|
798
818
|
const rawRK = row.RK ? await this.unsealHex(row.RK) : rawSK;
|
|
@@ -815,7 +835,7 @@ export class SqliteStorage extends EventEmitter {
|
|
|
815
835
|
RK: rawRK,
|
|
816
836
|
sessionID: row.sessionID,
|
|
817
837
|
SK: rawSK,
|
|
818
|
-
skippedKeys: row.skippedKeys,
|
|
838
|
+
skippedKeys: await this.unsealSecretText(row.skippedKeys),
|
|
819
839
|
userID: row.userID,
|
|
820
840
|
verified: row.verified !== 0,
|
|
821
841
|
};
|
|
@@ -843,14 +863,13 @@ export class SqliteStorage extends EventEmitter {
|
|
|
843
863
|
verified: session.verified,
|
|
844
864
|
};
|
|
845
865
|
}
|
|
846
|
-
|
|
847
|
-
* Decrypt a value produced by sealHex().
|
|
848
|
-
* Expects hex(nonce || ciphertext), returns the original hex string.
|
|
849
|
-
*/
|
|
850
|
-
async unsealHex(sealed) {
|
|
866
|
+
async unsealBytes(sealed) {
|
|
851
867
|
const bytes = XUtils.decodeHex(sealed);
|
|
852
|
-
|
|
853
|
-
|
|
868
|
+
if (bytes.length < STORAGE_NONCE_BYTES + STORAGE_MAC_BYTES) {
|
|
869
|
+
throw new Error("Sealed column value is truncated.");
|
|
870
|
+
}
|
|
871
|
+
const nonce = bytes.slice(0, STORAGE_NONCE_BYTES);
|
|
872
|
+
const ct = bytes.slice(STORAGE_NONCE_BYTES);
|
|
854
873
|
const fips = getCryptoProfile() === "fips";
|
|
855
874
|
const plain = fips
|
|
856
875
|
? await xSecretboxOpenAsync(ct, nonce, this.atRestAesKey)
|
|
@@ -858,21 +877,35 @@ export class SqliteStorage extends EventEmitter {
|
|
|
858
877
|
if (!plain) {
|
|
859
878
|
throw new Error("Failed to decrypt sealed column value.");
|
|
860
879
|
}
|
|
861
|
-
return
|
|
880
|
+
return plain;
|
|
881
|
+
}
|
|
882
|
+
/**
|
|
883
|
+
* Decrypt a value produced by sealHex().
|
|
884
|
+
* Expects hex(nonce || ciphertext), returns the original hex string.
|
|
885
|
+
*/
|
|
886
|
+
async unsealHex(sealed) {
|
|
887
|
+
return XUtils.encodeHex(await this.unsealBytes(sealed));
|
|
888
|
+
}
|
|
889
|
+
async unsealSecretText(stored) {
|
|
890
|
+
if (!stored.startsWith(STORAGE_SECRET_TEXT_PREFIX)) {
|
|
891
|
+
throw new Error("Stored secret is missing its encryption envelope.");
|
|
892
|
+
}
|
|
893
|
+
const plain = await this.unsealBytes(stored.slice(STORAGE_SECRET_TEXT_PREFIX.length));
|
|
894
|
+
return XUtils.encodeUTF8(plain);
|
|
862
895
|
}
|
|
863
896
|
async untilReady() {
|
|
864
|
-
if (this.
|
|
897
|
+
if (this.closing) {
|
|
898
|
+
throw new Error("SqliteStorage is closed.");
|
|
899
|
+
}
|
|
900
|
+
if (this.ready) {
|
|
865
901
|
return;
|
|
866
|
-
|
|
867
|
-
|
|
868
|
-
|
|
869
|
-
|
|
870
|
-
|
|
871
|
-
|
|
872
|
-
|
|
873
|
-
};
|
|
874
|
-
check();
|
|
875
|
-
});
|
|
902
|
+
}
|
|
903
|
+
if (this.initInFlight) {
|
|
904
|
+
await this.initInFlight;
|
|
905
|
+
}
|
|
906
|
+
else {
|
|
907
|
+
await this.init();
|
|
908
|
+
}
|
|
876
909
|
}
|
|
877
910
|
}
|
|
878
911
|
function decodeStoredMessagePlaintext(plaintext, rowExtra) {
|