@neykoor/libsignal-node 1.0.8 → 1.0.9
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/README.md +4 -2
- package/lib/curve.d.ts +1 -0
- package/lib/curve.d.ts.map +1 -1
- package/lib/curve.js +32 -0
- package/lib/curve.js.map +1 -1
- package/lib/index.d.ts +2 -0
- package/lib/index.d.ts.map +1 -1
- package/lib/index.js +1 -0
- package/lib/index.js.map +1 -1
- package/lib/keyhelper.d.ts +6 -0
- package/lib/keyhelper.d.ts.map +1 -1
- package/lib/keyhelper.js +51 -0
- package/lib/keyhelper.js.map +1 -1
- package/lib/memory-storage.d.ts +10 -2
- package/lib/memory-storage.d.ts.map +1 -1
- package/lib/memory-storage.js +20 -2
- package/lib/memory-storage.js.map +1 -1
- package/lib/prekey-pool.d.ts +41 -0
- package/lib/prekey-pool.d.ts.map +1 -0
- package/lib/prekey-pool.js +82 -0
- package/lib/prekey-pool.js.map +1 -0
- package/lib/session-cipher.d.ts.map +1 -1
- package/lib/session-cipher.js +6 -0
- package/lib/session-cipher.js.map +1 -1
- package/lib/session-record.d.ts +1 -0
- package/lib/session-record.d.ts.map +1 -1
- package/lib/session-record.js +20 -1
- package/lib/session-record.js.map +1 -1
- package/package.json +6 -3
package/README.md
CHANGED
|
@@ -35,6 +35,10 @@ Mismo API, misma criptografía, cero `@ts-ignore`, tipado de punta a punta — y
|
|
|
35
35
|
- 🧾 **Sistema de logging inyectable** (`setLogger` / `getLogger`) — permite conectar tu logger (pino, winston, consola) o silenciar todo. La original usa `console.error` fijo, sin forma de desactivarlo.
|
|
36
36
|
- 🏷️ **Tipado estricto de punta a punta** — `strict: true`, `noUncheckedIndexedAccess`, interfaces para `SignalStorage`, `DeviceKeyBundle`, `EncryptedMessage`, etc. La original es JS puro sin ningún `.d.ts` propio para su lógica principal.
|
|
37
37
|
- 🟦 **100% TypeScript en `src/`**, incluidos los mensajes protobuf de Signal (`whisper-text-protocol.ts`) — sin un solo `.js` generado a mano.
|
|
38
|
+
- 📄 **`WhisperTextProtocol.proto` como fuente de verdad** (`protos/`), igual que la original, más dos scripts que la original no tiene:
|
|
39
|
+
- `npm run generate:proto` — equivalente a `generate-proto.sh` (usa `pbjs`/`pbts`), pero escribe a `generated/` en vez de `src/`, para no romper el port a mano.
|
|
40
|
+
- `npm run verify:proto` — carga el `.proto` en runtime con `protobufjs` y hace un round-trip encode/decode contra las clases de `whisper-text-protocol.ts`, comparando bytes. Es la forma real de detectar si el port a mano se desincroniza del `.proto` (requiere `npm run build` antes).
|
|
41
|
+
- 🧹 **Config de ESLint propia** (`.eslintrc.json`) — cubre `src/**/*.ts` (con `@typescript-eslint/recommended`) y `scripts/**/*.mjs`, para forzar el mismo estilo en todo el repo. `no-non-null-assertion` está apagado a propósito: con `noUncheckedIndexedAccess` en `tsconfig.json`, el `!` tras accesos indexados es intencional, no un descuido.
|
|
38
42
|
|
|
39
43
|
### Lo que tienen en común
|
|
40
44
|
|
|
@@ -45,9 +49,7 @@ Mismo API, misma criptografía, cero `@ts-ignore`, tipado de punta a punta — y
|
|
|
45
49
|
|
|
46
50
|
### Pendiente por traer desde `libsignal-node` (roadmap)
|
|
47
51
|
|
|
48
|
-
- 📄 **`WhisperTextProtocol.proto` + script de generación** — la original mantiene el `.proto` fuente y un `generate-proto.sh` que regenera el código con `pbjs`. En `libsignal-node-ts` el protobuf está portado a mano en TypeScript; falta el `.proto` como fuente de verdad y un script equivalente para regenerarlo automáticamente.
|
|
49
52
|
- 🔁 **Workflows de CI/CD** (`.github/workflows`) — build, lint y publish automático a npm, como los que trae la original.
|
|
50
|
-
- 🧹 **Config de ESLint propia** (`.eslintrc.json`) para forzar el mismo estilo en todo el repo.
|
|
51
53
|
- 📜 **`SECURITY.md` y `CODE_OF_CONDUCT.md`** — políticas de reporte de vulnerabilidades y de comunidad que la original sí documenta.
|
|
52
54
|
|
|
53
55
|
## 📦 Instalación
|
package/lib/curve.d.ts
CHANGED
|
@@ -4,6 +4,7 @@ export interface KeyPair {
|
|
|
4
4
|
}
|
|
5
5
|
export declare function getPublicFromPrivateKey(privKey: Uint8Array): Buffer;
|
|
6
6
|
export declare function generateKeyPair(): KeyPair;
|
|
7
|
+
export declare function generateKeyPairAsync(): Promise<KeyPair>;
|
|
7
8
|
export declare function calculateAgreement(pubKeyInput: Uint8Array, privKey: Uint8Array): Buffer;
|
|
8
9
|
export declare function calculateSignature(privKey: Uint8Array, message: Uint8Array): Buffer;
|
|
9
10
|
export declare function verifySignature(pubKeyInput: Uint8Array, msg: Uint8Array, sig: Uint8Array, isInit?: boolean): boolean;
|
package/lib/curve.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"curve.d.ts","sourceRoot":"","sources":["../src/curve.ts"],"names":[],"mappings":"AAQA,MAAM,WAAW,OAAO;IACtB,MAAM,EAAE,MAAM,CAAA;IACd,OAAO,EAAE,MAAM,CAAA;CAChB;AA+CD,wBAAgB,uBAAuB,CAAC,OAAO,EAAE,UAAU,GAAG,MAAM,CAInE;AAED,wBAAgB,eAAe,IAAI,OAAO,CAsBzC;AAED,wBAAgB,kBAAkB,CAAC,WAAW,EAAE,UAAU,EAAE,OAAO,EAAE,UAAU,GAAG,MAAM,CA4BvF;AAED,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,UAAU,EAAE,OAAO,EAAE,UAAU,GAAG,MAAM,CAQnF;AAED,wBAAgB,eAAe,CAAC,WAAW,EAAE,UAAU,EAAE,GAAG,EAAE,UAAU,EAAE,GAAG,EAAE,UAAU,EAAE,MAAM,CAAC,EAAE,OAAO,GAAG,OAAO,CAgBpH"}
|
|
1
|
+
{"version":3,"file":"curve.d.ts","sourceRoot":"","sources":["../src/curve.ts"],"names":[],"mappings":"AAQA,MAAM,WAAW,OAAO;IACtB,MAAM,EAAE,MAAM,CAAA;IACd,OAAO,EAAE,MAAM,CAAA;CAChB;AA+CD,wBAAgB,uBAAuB,CAAC,OAAO,EAAE,UAAU,GAAG,MAAM,CAInE;AAED,wBAAgB,eAAe,IAAI,OAAO,CAsBzC;AAED,wBAAsB,oBAAoB,IAAI,OAAO,CAAC,OAAO,CAAC,CAsC7D;AAED,wBAAgB,kBAAkB,CAAC,WAAW,EAAE,UAAU,EAAE,OAAO,EAAE,UAAU,GAAG,MAAM,CA4BvF;AAED,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,UAAU,EAAE,OAAO,EAAE,UAAU,GAAG,MAAM,CAQnF;AAED,wBAAgB,eAAe,CAAC,WAAW,EAAE,UAAU,EAAE,GAAG,EAAE,UAAU,EAAE,GAAG,EAAE,UAAU,EAAE,MAAM,CAAC,EAAE,OAAO,GAAG,OAAO,CAgBpH"}
|
package/lib/curve.js
CHANGED
|
@@ -65,6 +65,38 @@ export function generateKeyPair() {
|
|
|
65
65
|
};
|
|
66
66
|
}
|
|
67
67
|
}
|
|
68
|
+
export async function generateKeyPairAsync() {
|
|
69
|
+
try {
|
|
70
|
+
const { publicKey: publicDerBytes, privateKey: privateDerBytes } = await new Promise((resolve, reject) => {
|
|
71
|
+
nodeCrypto.generateKeyPair("x25519", {
|
|
72
|
+
publicKeyEncoding: { format: "der", type: "spki" },
|
|
73
|
+
privateKeyEncoding: { format: "der", type: "pkcs8" }
|
|
74
|
+
}, (err, publicKey, privateKey) => {
|
|
75
|
+
if (err) {
|
|
76
|
+
reject(err);
|
|
77
|
+
}
|
|
78
|
+
else {
|
|
79
|
+
resolve({ publicKey: publicKey, privateKey: privateKey });
|
|
80
|
+
}
|
|
81
|
+
});
|
|
82
|
+
});
|
|
83
|
+
const pubKey = publicDerBytes.slice(PUBLIC_KEY_DER_PREFIX.length, PUBLIC_KEY_DER_PREFIX.length + 32);
|
|
84
|
+
const privKey = privateDerBytes.slice(PRIVATE_KEY_DER_PREFIX.length, PRIVATE_KEY_DER_PREFIX.length + 32);
|
|
85
|
+
return {
|
|
86
|
+
pubKey: prefixKeyInPublicKey(pubKey),
|
|
87
|
+
privKey
|
|
88
|
+
};
|
|
89
|
+
}
|
|
90
|
+
catch (e) {
|
|
91
|
+
getLogger().debug(`x25519 native async keygen failed, falling back to curve25519-js: ${e?.message}`);
|
|
92
|
+
await new Promise((resolve) => setImmediate(resolve));
|
|
93
|
+
const keyPair = curveJs.generateKeyPair(nodeCrypto.randomBytes(32));
|
|
94
|
+
return {
|
|
95
|
+
privKey: Buffer.from(keyPair.private),
|
|
96
|
+
pubKey: prefixKeyInPublicKey(Buffer.from(keyPair.public))
|
|
97
|
+
};
|
|
98
|
+
}
|
|
99
|
+
}
|
|
68
100
|
export function calculateAgreement(pubKeyInput, privKey) {
|
|
69
101
|
const pubKey = scrubPubKeyFormat(pubKeyInput);
|
|
70
102
|
validatePrivKey(privKey);
|
package/lib/curve.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"curve.js","sourceRoot":"","sources":["../src/curve.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"curve.js","sourceRoot":"","sources":["../src/curve.ts"],"names":[],"mappings":"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"}
|
package/lib/index.d.ts
CHANGED
|
@@ -11,6 +11,8 @@ export { BaseKeyType } from "./base-key-type.js";
|
|
|
11
11
|
export { ChainType } from "./chain-type.js";
|
|
12
12
|
export { Direction } from "./direction.js";
|
|
13
13
|
export { MemorySignalStorage } from "./memory-storage.js";
|
|
14
|
+
export { PreKeyPoolManager } from "./prekey-pool.js";
|
|
15
|
+
export type { PreKeyPoolStorage, PreKeyPoolOptions, PreKeyPoolStatus } from "./prekey-pool.js";
|
|
14
16
|
export { setLogger, getLogger } from "./logger.js";
|
|
15
17
|
export type { SignalLogger } from "./logger.js";
|
|
16
18
|
export { wipeBuffer, wipeBuffers } from "./util.js";
|
package/lib/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,MAAM,UAAU,CAAA;AAClC,OAAO,KAAK,KAAK,MAAM,SAAS,CAAA;AAChC,OAAO,KAAK,SAAS,MAAM,aAAa,CAAA;AACxC,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAA;AACpD,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAA;AAClD,OAAO,EAAE,0BAA0B,EAAE,MAAM,2BAA2B,CAAA;AACtE,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAA;AAChD,OAAO,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAA;AAC9D,OAAO,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAA;AAC5D,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAA;AAC7C,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAA;AACxC,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAA;AACvC,OAAO,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAA;AACtD,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,UAAU,CAAA;AAC/C,YAAY,EAAE,YAAY,EAAE,MAAM,UAAU,CAAA;AAC5C,OAAO,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,QAAQ,CAAA;AAChD,cAAc,UAAU,CAAA;AACxB,YAAY,EAAE,OAAO,EAAE,MAAM,SAAS,CAAA;AACtC,YAAY,EAAE,aAAa,EAAE,cAAc,EAAE,eAAe,EAAE,qBAAqB,EAAE,gBAAgB,EAAE,MAAM,SAAS,CAAA;AACtH,YAAY,EACV,KAAK,EACL,QAAQ,EACR,cAAc,EACd,SAAS,EACT,aAAa,EACb,sBAAsB,EACvB,MAAM,kBAAkB,CAAA;AAGzB,OAAO,KAAK,cAAc,MAAM,mBAAmB,CAAA;AACnD,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAA;AACxD,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAA;AAC5C,OAAO,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAA;AAC7D,OAAO,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAA;AACnD,OAAO,EAAE,4BAA4B,EAAE,MAAM,mCAAmC,CAAA;AAChF,OAAO,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAA;AACvD,OAAO,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAA;AACjD,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAA;AACrD,OAAO,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAA;AACnD,YAAY,EAAE,yBAAyB,EAAE,MAAM,qBAAqB,CAAA;AACpE,YAAY,EAAE,wBAAwB,EAAE,MAAM,oBAAoB,CAAA;AAClE,OAAO,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAA"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,MAAM,UAAU,CAAA;AAClC,OAAO,KAAK,KAAK,MAAM,SAAS,CAAA;AAChC,OAAO,KAAK,SAAS,MAAM,aAAa,CAAA;AACxC,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAA;AACpD,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAA;AAClD,OAAO,EAAE,0BAA0B,EAAE,MAAM,2BAA2B,CAAA;AACtE,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAA;AAChD,OAAO,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAA;AAC9D,OAAO,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAA;AAC5D,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAA;AAC7C,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAA;AACxC,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAA;AACvC,OAAO,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAA;AACtD,OAAO,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAA;AACjD,YAAY,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAA;AAC3F,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,UAAU,CAAA;AAC/C,YAAY,EAAE,YAAY,EAAE,MAAM,UAAU,CAAA;AAC5C,OAAO,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,QAAQ,CAAA;AAChD,cAAc,UAAU,CAAA;AACxB,YAAY,EAAE,OAAO,EAAE,MAAM,SAAS,CAAA;AACtC,YAAY,EAAE,aAAa,EAAE,cAAc,EAAE,eAAe,EAAE,qBAAqB,EAAE,gBAAgB,EAAE,MAAM,SAAS,CAAA;AACtH,YAAY,EACV,KAAK,EACL,QAAQ,EACR,cAAc,EACd,SAAS,EACT,aAAa,EACb,sBAAsB,EACvB,MAAM,kBAAkB,CAAA;AAGzB,OAAO,KAAK,cAAc,MAAM,mBAAmB,CAAA;AACnD,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAA;AACxD,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAA;AAC5C,OAAO,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAA;AAC7D,OAAO,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAA;AACnD,OAAO,EAAE,4BAA4B,EAAE,MAAM,mCAAmC,CAAA;AAChF,OAAO,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAA;AACvD,OAAO,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAA;AACjD,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAA;AACrD,OAAO,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAA;AACnD,YAAY,EAAE,yBAAyB,EAAE,MAAM,qBAAqB,CAAA;AACpE,YAAY,EAAE,wBAAwB,EAAE,MAAM,oBAAoB,CAAA;AAClE,OAAO,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAA"}
|
package/lib/index.js
CHANGED
|
@@ -11,6 +11,7 @@ export { BaseKeyType } from "./base-key-type.js";
|
|
|
11
11
|
export { ChainType } from "./chain-type.js";
|
|
12
12
|
export { Direction } from "./direction.js";
|
|
13
13
|
export { MemorySignalStorage } from "./memory-storage.js";
|
|
14
|
+
export { PreKeyPoolManager } from "./prekey-pool.js";
|
|
14
15
|
export { setLogger, getLogger } from "./logger.js";
|
|
15
16
|
export { wipeBuffer, wipeBuffers } from "./util.js";
|
|
16
17
|
export * from "./errors.js";
|
package/lib/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,MAAM,UAAU,CAAA;AAClC,OAAO,KAAK,KAAK,MAAM,SAAS,CAAA;AAChC,OAAO,KAAK,SAAS,MAAM,aAAa,CAAA;AACxC,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAA;AACpD,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAA;AAClD,OAAO,EAAE,0BAA0B,EAAE,MAAM,2BAA2B,CAAA;AACtE,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAA;AAChD,OAAO,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAA;AAC9D,OAAO,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAA;AAC5D,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAA;AAC7C,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAA;AACxC,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAA;AACvC,OAAO,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAA;AACtD,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,UAAU,CAAA;AAE/C,OAAO,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,QAAQ,CAAA;AAChD,cAAc,UAAU,CAAA;AAaxB,OAAO,KAAK,cAAc,MAAM,mBAAmB,CAAA;AACnD,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAA;AACxD,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAA;AAC5C,OAAO,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAA;AAC7D,OAAO,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAA;AACnD,OAAO,EAAE,4BAA4B,EAAE,MAAM,mCAAmC,CAAA;AAChF,OAAO,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAA;AACvD,OAAO,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAA;AACjD,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAA;AACrD,OAAO,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAA;AAGnD,OAAO,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAA"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,MAAM,UAAU,CAAA;AAClC,OAAO,KAAK,KAAK,MAAM,SAAS,CAAA;AAChC,OAAO,KAAK,SAAS,MAAM,aAAa,CAAA;AACxC,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAA;AACpD,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAA;AAClD,OAAO,EAAE,0BAA0B,EAAE,MAAM,2BAA2B,CAAA;AACtE,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAA;AAChD,OAAO,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAA;AAC9D,OAAO,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAA;AAC5D,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAA;AAC7C,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAA;AACxC,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAA;AACvC,OAAO,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAA;AACtD,OAAO,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAA;AAEjD,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,UAAU,CAAA;AAE/C,OAAO,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,QAAQ,CAAA;AAChD,cAAc,UAAU,CAAA;AAaxB,OAAO,KAAK,cAAc,MAAM,mBAAmB,CAAA;AACnD,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAA;AACxD,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAA;AAC5C,OAAO,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAA;AAC7D,OAAO,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAA;AACnD,OAAO,EAAE,4BAA4B,EAAE,MAAM,mCAAmC,CAAA;AAChF,OAAO,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAA;AACvD,OAAO,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAA;AACjD,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAA;AACrD,OAAO,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAA;AAGnD,OAAO,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAA"}
|
package/lib/keyhelper.d.ts
CHANGED
|
@@ -16,4 +16,10 @@ export declare const generateIdentityKeyPair: typeof curve.generateKeyPair;
|
|
|
16
16
|
export declare function generateRegistrationId(): number;
|
|
17
17
|
export declare function generateSignedPreKey(identityKeyPair: KeyPair, signedKeyId: number): SignedPreKey;
|
|
18
18
|
export declare function generatePreKey(keyId: number): PreKey;
|
|
19
|
+
export declare function generateSignedPreKeyAsync(identityKeyPair: KeyPair, signedKeyId: number): Promise<SignedPreKey>;
|
|
20
|
+
export declare function generatePreKeyAsync(keyId: number): Promise<PreKey>;
|
|
21
|
+
export interface PreKeyBatchOptions {
|
|
22
|
+
concurrency?: number;
|
|
23
|
+
}
|
|
24
|
+
export declare function generatePreKeysBatch(startId: number, count: number, options?: PreKeyBatchOptions): Promise<PreKey[]>;
|
|
19
25
|
//# sourceMappingURL=keyhelper.d.ts.map
|
package/lib/keyhelper.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"keyhelper.d.ts","sourceRoot":"","sources":["../src/keyhelper.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,KAAK,MAAM,SAAS,CAAA;AAChC,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,SAAS,CAAA;AAMtC,MAAM,WAAW,YAAY;IAC3B,KAAK,EAAE,MAAM,CAAA;IACb,OAAO,EAAE,OAAO,CAAA;IAChB,SAAS,EAAE,MAAM,CAAA;IACjB,SAAS,EAAE,MAAM,CAAA;CAClB;AAED,MAAM,WAAW,MAAM;IACrB,KAAK,EAAE,MAAM,CAAA;IACb,OAAO,EAAE,OAAO,CAAA;CACjB;AAED,eAAO,MAAM,iCAAiC,QAA0B,CAAA;AAExE,wBAAgB,wBAAwB,CACtC,SAAS,EAAE,MAAM,EACjB,QAAQ,GAAE,MAA0C,GACnD,OAAO,CAUT;AAED,eAAO,MAAM,uBAAuB,8BAAwB,CAAA;AAE5D,wBAAgB,sBAAsB,IAAI,MAAM,CAO/C;AAED,wBAAgB,oBAAoB,CAAC,eAAe,EAAE,OAAO,EAAE,WAAW,EAAE,MAAM,GAAG,YAAY,CAuBhG;AAED,wBAAgB,cAAc,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAWpD"}
|
|
1
|
+
{"version":3,"file":"keyhelper.d.ts","sourceRoot":"","sources":["../src/keyhelper.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,KAAK,MAAM,SAAS,CAAA;AAChC,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,SAAS,CAAA;AAMtC,MAAM,WAAW,YAAY;IAC3B,KAAK,EAAE,MAAM,CAAA;IACb,OAAO,EAAE,OAAO,CAAA;IAChB,SAAS,EAAE,MAAM,CAAA;IACjB,SAAS,EAAE,MAAM,CAAA;CAClB;AAED,MAAM,WAAW,MAAM;IACrB,KAAK,EAAE,MAAM,CAAA;IACb,OAAO,EAAE,OAAO,CAAA;CACjB;AAED,eAAO,MAAM,iCAAiC,QAA0B,CAAA;AAExE,wBAAgB,wBAAwB,CACtC,SAAS,EAAE,MAAM,EACjB,QAAQ,GAAE,MAA0C,GACnD,OAAO,CAUT;AAED,eAAO,MAAM,uBAAuB,8BAAwB,CAAA;AAE5D,wBAAgB,sBAAsB,IAAI,MAAM,CAO/C;AAED,wBAAgB,oBAAoB,CAAC,eAAe,EAAE,OAAO,EAAE,WAAW,EAAE,MAAM,GAAG,YAAY,CAuBhG;AAED,wBAAgB,cAAc,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAWpD;AAED,wBAAsB,yBAAyB,CAAC,eAAe,EAAE,OAAO,EAAE,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,CAAC,CAuBpH;AAED,wBAAsB,mBAAmB,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAWxE;AAED,MAAM,WAAW,kBAAkB;IACjC,WAAW,CAAC,EAAE,MAAM,CAAA;CACrB;AAED,wBAAsB,oBAAoB,CACxC,OAAO,EAAE,MAAM,EACf,KAAK,EAAE,MAAM,EACb,OAAO,GAAE,kBAAuB,GAC/B,OAAO,CAAC,MAAM,EAAE,CAAC,CAyBnB"}
|
package/lib/keyhelper.js
CHANGED
|
@@ -50,4 +50,55 @@ export function generatePreKey(keyId) {
|
|
|
50
50
|
keyPair
|
|
51
51
|
};
|
|
52
52
|
}
|
|
53
|
+
export async function generateSignedPreKeyAsync(identityKeyPair, signedKeyId) {
|
|
54
|
+
if (!(identityKeyPair.privKey instanceof Buffer) ||
|
|
55
|
+
identityKeyPair.privKey.byteLength !== 32 ||
|
|
56
|
+
!(identityKeyPair.pubKey instanceof Buffer) ||
|
|
57
|
+
identityKeyPair.pubKey.byteLength !== 33) {
|
|
58
|
+
throw new TypeError("Invalid argument for identityKeyPair");
|
|
59
|
+
}
|
|
60
|
+
if (!isNonNegativeInteger(signedKeyId)) {
|
|
61
|
+
throw new TypeError("Invalid argument for signedKeyId: " + signedKeyId);
|
|
62
|
+
}
|
|
63
|
+
const keyPair = await curve.generateKeyPairAsync();
|
|
64
|
+
const sig = curve.calculateSignature(identityKeyPair.privKey, keyPair.pubKey);
|
|
65
|
+
return {
|
|
66
|
+
keyId: signedKeyId,
|
|
67
|
+
keyPair,
|
|
68
|
+
signature: sig,
|
|
69
|
+
createdAt: Date.now()
|
|
70
|
+
};
|
|
71
|
+
}
|
|
72
|
+
export async function generatePreKeyAsync(keyId) {
|
|
73
|
+
if (!isNonNegativeInteger(keyId)) {
|
|
74
|
+
throw new TypeError("Invalid argument for keyId: " + keyId);
|
|
75
|
+
}
|
|
76
|
+
const keyPair = await curve.generateKeyPairAsync();
|
|
77
|
+
return {
|
|
78
|
+
keyId,
|
|
79
|
+
keyPair
|
|
80
|
+
};
|
|
81
|
+
}
|
|
82
|
+
export async function generatePreKeysBatch(startId, count, options = {}) {
|
|
83
|
+
if (!isNonNegativeInteger(startId)) {
|
|
84
|
+
throw new TypeError("Invalid argument for startId: " + startId);
|
|
85
|
+
}
|
|
86
|
+
if (!isNonNegativeInteger(count) || count === 0) {
|
|
87
|
+
throw new TypeError("Invalid argument for count: " + count);
|
|
88
|
+
}
|
|
89
|
+
const concurrency = Math.max(1, Math.min(options.concurrency ?? 8, count));
|
|
90
|
+
const results = new Array(count);
|
|
91
|
+
let next = 0;
|
|
92
|
+
async function worker() {
|
|
93
|
+
for (;;) {
|
|
94
|
+
const i = next++;
|
|
95
|
+
if (i >= count) {
|
|
96
|
+
return;
|
|
97
|
+
}
|
|
98
|
+
results[i] = await generatePreKeyAsync(startId + i);
|
|
99
|
+
}
|
|
100
|
+
}
|
|
101
|
+
await Promise.all(Array.from({ length: concurrency }, worker));
|
|
102
|
+
return results;
|
|
103
|
+
}
|
|
53
104
|
//# sourceMappingURL=keyhelper.js.map
|
package/lib/keyhelper.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"keyhelper.js","sourceRoot":"","sources":["../src/keyhelper.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,UAAU,MAAM,QAAQ,CAAA;AACpC,OAAO,KAAK,KAAK,MAAM,SAAS,CAAA;AAGhC,SAAS,oBAAoB,CAAC,CAAS;IACrC,OAAO,OAAO,CAAC,KAAK,QAAQ,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;AACvD,CAAC;AAcD,MAAM,CAAC,MAAM,iCAAiC,GAAG,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAA;AAExE,MAAM,UAAU,wBAAwB,CACtC,SAAiB,EACjB,WAAmB,iCAAiC;IAEpD,IAAI,CAAC,oBAAoB,CAAC,SAAS,CAAC,EAAE,CAAC;QACrC,MAAM,IAAI,SAAS,CAAC,kCAAkC,GAAG,SAAS,CAAC,CAAA;IACrE,CAAC;IAED,IAAI,CAAC,oBAAoB,CAAC,QAAQ,CAAC,EAAE,CAAC;QACpC,MAAM,IAAI,SAAS,CAAC,iCAAiC,GAAG,QAAQ,CAAC,CAAA;IACnE,CAAC;IAED,OAAO,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,IAAI,QAAQ,CAAA;AAC3C,CAAC;AAED,MAAM,CAAC,MAAM,uBAAuB,GAAG,KAAK,CAAC,eAAe,CAAA;AAE5D,MAAM,UAAU,sBAAsB;IACpC,IAAI,cAAsB,CAAA;IAC1B,GAAG,CAAC;QACF,cAAc,GAAG,UAAU,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,GAAG,MAAM,CAAA;IACrE,CAAC,QAAQ,cAAc,KAAK,CAAC,EAAC;IAE9B,OAAO,cAAc,CAAA;AACvB,CAAC;AAED,MAAM,UAAU,oBAAoB,CAAC,eAAwB,EAAE,WAAmB;IAChF,IACE,CAAC,CAAC,eAAe,CAAC,OAAO,YAAY,MAAM,CAAC;QAC5C,eAAe,CAAC,OAAO,CAAC,UAAU,KAAK,EAAE;QACzC,CAAC,CAAC,eAAe,CAAC,MAAM,YAAY,MAAM,CAAC;QAC3C,eAAe,CAAC,MAAM,CAAC,UAAU,KAAK,EAAE,EACxC,CAAC;QACD,MAAM,IAAI,SAAS,CAAC,sCAAsC,CAAC,CAAA;IAC7D,CAAC;IAED,IAAI,CAAC,oBAAoB,CAAC,WAAW,CAAC,EAAE,CAAC;QACvC,MAAM,IAAI,SAAS,CAAC,oCAAoC,GAAG,WAAW,CAAC,CAAA;IACzE,CAAC;IAED,MAAM,OAAO,GAAG,KAAK,CAAC,eAAe,EAAE,CAAA;IACvC,MAAM,GAAG,GAAG,KAAK,CAAC,kBAAkB,CAAC,eAAe,CAAC,OAAO,EAAE,OAAO,CAAC,MAAM,CAAC,CAAA;IAE7E,OAAO;QACL,KAAK,EAAE,WAAW;QAClB,OAAO;QACP,SAAS,EAAE,GAAG;QACd,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE;KACtB,CAAA;AACH,CAAC;AAED,MAAM,UAAU,cAAc,CAAC,KAAa;IAC1C,IAAI,CAAC,oBAAoB,CAAC,KAAK,CAAC,EAAE,CAAC;QACjC,MAAM,IAAI,SAAS,CAAC,8BAA8B,GAAG,KAAK,CAAC,CAAA;IAC7D,CAAC;IAED,MAAM,OAAO,GAAG,KAAK,CAAC,eAAe,EAAE,CAAA;IAEvC,OAAO;QACL,KAAK;QACL,OAAO;KACR,CAAA;AACH,CAAC"}
|
|
1
|
+
{"version":3,"file":"keyhelper.js","sourceRoot":"","sources":["../src/keyhelper.ts"],"names":[],"mappings":"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"}
|
package/lib/memory-storage.d.ts
CHANGED
|
@@ -1,14 +1,18 @@
|
|
|
1
1
|
import type { KeyPair } from "./curve.js";
|
|
2
2
|
import type { Direction } from "./direction.js";
|
|
3
|
+
import type { SignedPreKey } from "./keyhelper.js";
|
|
4
|
+
import type { PreKeyPoolStorage } from "./prekey-pool.js";
|
|
3
5
|
import { SessionRecord } from "./session-record.js";
|
|
4
6
|
import type { SignalStorage } from "./types.js";
|
|
5
|
-
export declare class MemorySignalStorage implements SignalStorage {
|
|
7
|
+
export declare class MemorySignalStorage implements SignalStorage, PreKeyPoolStorage {
|
|
6
8
|
private identityKeyPair;
|
|
7
9
|
private registrationId;
|
|
8
10
|
private sessions;
|
|
9
11
|
private preKeys;
|
|
10
12
|
private signedPreKeys;
|
|
11
13
|
private trustedIdentities;
|
|
14
|
+
private nextPreKeyId;
|
|
15
|
+
private latestSignedPreKey;
|
|
12
16
|
constructor(identityKeyPair: KeyPair, registrationId: number);
|
|
13
17
|
loadSession(id: string): Promise<SessionRecord | undefined>;
|
|
14
18
|
storeSession(id: string, session: SessionRecord): Promise<void>;
|
|
@@ -21,6 +25,10 @@ export declare class MemorySignalStorage implements SignalStorage {
|
|
|
21
25
|
getOurRegistrationId(): Promise<number>;
|
|
22
26
|
getOurIdentity(): Promise<KeyPair>;
|
|
23
27
|
storePreKey(id: number, keyPair: KeyPair): void;
|
|
24
|
-
storeSignedPreKey(
|
|
28
|
+
storeSignedPreKey(idOrRecord: number | SignedPreKey, keyPair?: KeyPair): void;
|
|
29
|
+
getPreKeyCount(): Promise<number>;
|
|
30
|
+
getNextPreKeyId(): Promise<number>;
|
|
31
|
+
setNextPreKeyId(id: number): Promise<void>;
|
|
32
|
+
loadLatestSignedPreKey(): Promise<SignedPreKey | undefined>;
|
|
25
33
|
}
|
|
26
34
|
//# sourceMappingURL=memory-storage.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"memory-storage.d.ts","sourceRoot":"","sources":["../src/memory-storage.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,SAAS,CAAA;AACtC,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,aAAa,CAAA;AAC5C,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAA;AAChD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,SAAS,CAAA;AAU5C,qBAAa,mBAAoB,YAAW,aAAa;
|
|
1
|
+
{"version":3,"file":"memory-storage.d.ts","sourceRoot":"","sources":["../src/memory-storage.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,SAAS,CAAA;AACtC,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,aAAa,CAAA;AAC5C,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,aAAa,CAAA;AAC/C,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAA;AACtD,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAA;AAChD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,SAAS,CAAA;AAU5C,qBAAa,mBAAoB,YAAW,aAAa,EAAE,iBAAiB;IAC1E,OAAO,CAAC,eAAe,CAAS;IAChC,OAAO,CAAC,cAAc,CAAQ;IAC9B,OAAO,CAAC,QAAQ,CAAmC;IACnD,OAAO,CAAC,OAAO,CAA6B;IAC5C,OAAO,CAAC,aAAa,CAA6B;IAClD,OAAO,CAAC,iBAAiB,CAA4B;IACrD,OAAO,CAAC,YAAY,CAAI;IACxB,OAAO,CAAC,kBAAkB,CAA0B;gBAExC,eAAe,EAAE,OAAO,EAAE,cAAc,EAAE,MAAM;IAKtD,WAAW,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,GAAG,SAAS,CAAC;IAI3D,YAAY,CAAC,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,aAAa,GAAG,OAAO,CAAC,IAAI,CAAC;IAI/D,iBAAiB,CAAC,UAAU,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,UAAU,EAAE,SAAS,GAAG,OAAO,CAAC,OAAO,CAAC;IAUnG,YAAY,CAAC,UAAU,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAMvE,cAAc,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAKjD,UAAU,CAAC,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC,OAAO,GAAG,SAAS,CAAC;IAQ9D,YAAY,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAIvC,gBAAgB,CAAC,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC,OAAO,GAAG,SAAS,CAAC;IAQpE,oBAAoB,IAAI,OAAO,CAAC,MAAM,CAAC;IAIvC,cAAc,IAAI,OAAO,CAAC,OAAO,CAAC;IAIxC,WAAW,CAAC,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,GAAG,IAAI;IAI/C,iBAAiB,CAAC,UAAU,EAAE,MAAM,GAAG,YAAY,EAAE,OAAO,CAAC,EAAE,OAAO,GAAG,IAAI;IAUvE,cAAc,IAAI,OAAO,CAAC,MAAM,CAAC;IAIjC,eAAe,IAAI,OAAO,CAAC,MAAM,CAAC;IAIlC,eAAe,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAI1C,sBAAsB,IAAI,OAAO,CAAC,YAAY,GAAG,SAAS,CAAC;CAGlE"}
|
package/lib/memory-storage.js
CHANGED
|
@@ -12,6 +12,7 @@ export class MemorySignalStorage {
|
|
|
12
12
|
this.preKeys = new Map();
|
|
13
13
|
this.signedPreKeys = new Map();
|
|
14
14
|
this.trustedIdentities = new Map();
|
|
15
|
+
this.nextPreKeyId = 1;
|
|
15
16
|
this.identityKeyPair = identityKeyPair;
|
|
16
17
|
this.registrationId = registrationId;
|
|
17
18
|
}
|
|
@@ -62,8 +63,25 @@ export class MemorySignalStorage {
|
|
|
62
63
|
storePreKey(id, keyPair) {
|
|
63
64
|
this.preKeys.set(id, keyPair);
|
|
64
65
|
}
|
|
65
|
-
storeSignedPreKey(
|
|
66
|
-
|
|
66
|
+
storeSignedPreKey(idOrRecord, keyPair) {
|
|
67
|
+
if (typeof idOrRecord === "number") {
|
|
68
|
+
this.signedPreKeys.set(idOrRecord, keyPair);
|
|
69
|
+
return;
|
|
70
|
+
}
|
|
71
|
+
this.signedPreKeys.set(idOrRecord.keyId, idOrRecord.keyPair);
|
|
72
|
+
this.latestSignedPreKey = idOrRecord;
|
|
73
|
+
}
|
|
74
|
+
async getPreKeyCount() {
|
|
75
|
+
return this.preKeys.size;
|
|
76
|
+
}
|
|
77
|
+
async getNextPreKeyId() {
|
|
78
|
+
return this.nextPreKeyId;
|
|
79
|
+
}
|
|
80
|
+
async setNextPreKeyId(id) {
|
|
81
|
+
this.nextPreKeyId = id;
|
|
82
|
+
}
|
|
83
|
+
async loadLatestSignedPreKey() {
|
|
84
|
+
return this.latestSignedPreKey;
|
|
67
85
|
}
|
|
68
86
|
}
|
|
69
87
|
//# sourceMappingURL=memory-storage.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"memory-storage.js","sourceRoot":"","sources":["../src/memory-storage.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,QAAQ,CAAA;
|
|
1
|
+
{"version":3,"file":"memory-storage.js","sourceRoot":"","sources":["../src/memory-storage.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
import type { KeyPair } from "./curve.js";
|
|
2
|
+
import type { PreKey, SignedPreKey } from "./keyhelper.js";
|
|
3
|
+
export interface PreKeyPoolStorage {
|
|
4
|
+
storePreKey(id: number, keyPair: KeyPair): Promise<void> | void;
|
|
5
|
+
getPreKeyCount(): Promise<number> | number;
|
|
6
|
+
getNextPreKeyId(): Promise<number> | number;
|
|
7
|
+
setNextPreKeyId(id: number): Promise<void> | void;
|
|
8
|
+
storeSignedPreKey(record: SignedPreKey): Promise<void> | void;
|
|
9
|
+
loadLatestSignedPreKey(): Promise<SignedPreKey | undefined> | SignedPreKey | undefined;
|
|
10
|
+
}
|
|
11
|
+
export interface PreKeyPoolOptions {
|
|
12
|
+
minCount?: number;
|
|
13
|
+
replenishCount?: number;
|
|
14
|
+
concurrency?: number;
|
|
15
|
+
signedPreKeyMaxAgeMs?: number;
|
|
16
|
+
}
|
|
17
|
+
export interface PreKeyPoolStatus {
|
|
18
|
+
preKeyCount: number;
|
|
19
|
+
nextPreKeyId: number;
|
|
20
|
+
signedPreKeyId?: number;
|
|
21
|
+
signedPreKeyAgeMs?: number;
|
|
22
|
+
}
|
|
23
|
+
export declare class PreKeyPoolManager {
|
|
24
|
+
private storage;
|
|
25
|
+
private identityKeyPair;
|
|
26
|
+
private minCount;
|
|
27
|
+
private replenishCount;
|
|
28
|
+
private concurrency;
|
|
29
|
+
private signedPreKeyMaxAgeMs;
|
|
30
|
+
private replenishing;
|
|
31
|
+
private rotatingSignedPreKey;
|
|
32
|
+
constructor(storage: PreKeyPoolStorage, identityKeyPair: KeyPair, options?: PreKeyPoolOptions);
|
|
33
|
+
ensurePreKeys(): Promise<void>;
|
|
34
|
+
replenishPreKeys(count?: number): Promise<PreKey[]>;
|
|
35
|
+
private _replenishPreKeys;
|
|
36
|
+
ensureSignedPreKey(): Promise<SignedPreKey>;
|
|
37
|
+
rotateSignedPreKey(keyId: number): Promise<SignedPreKey>;
|
|
38
|
+
private _rotateSignedPreKey;
|
|
39
|
+
getStatus(): Promise<PreKeyPoolStatus>;
|
|
40
|
+
}
|
|
41
|
+
//# sourceMappingURL=prekey-pool.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"prekey-pool.d.ts","sourceRoot":"","sources":["../src/prekey-pool.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,SAAS,CAAA;AAEtC,OAAO,KAAK,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,aAAa,CAAA;AAGvD,MAAM,WAAW,iBAAiB;IAChC,WAAW,CAAC,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAA;IAC/D,cAAc,IAAI,OAAO,CAAC,MAAM,CAAC,GAAG,MAAM,CAAA;IAC1C,eAAe,IAAI,OAAO,CAAC,MAAM,CAAC,GAAG,MAAM,CAAA;IAC3C,eAAe,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAA;IACjD,iBAAiB,CAAC,MAAM,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAA;IAC7D,sBAAsB,IAAI,OAAO,CAAC,YAAY,GAAG,SAAS,CAAC,GAAG,YAAY,GAAG,SAAS,CAAA;CACvF;AAED,MAAM,WAAW,iBAAiB;IAChC,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,cAAc,CAAC,EAAE,MAAM,CAAA;IACvB,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,oBAAoB,CAAC,EAAE,MAAM,CAAA;CAC9B;AAED,MAAM,WAAW,gBAAgB;IAC/B,WAAW,EAAE,MAAM,CAAA;IACnB,YAAY,EAAE,MAAM,CAAA;IACpB,cAAc,CAAC,EAAE,MAAM,CAAA;IACvB,iBAAiB,CAAC,EAAE,MAAM,CAAA;CAC3B;AAKD,qBAAa,iBAAiB;IAC5B,OAAO,CAAC,OAAO,CAAmB;IAClC,OAAO,CAAC,eAAe,CAAS;IAChC,OAAO,CAAC,QAAQ,CAAQ;IACxB,OAAO,CAAC,cAAc,CAAQ;IAC9B,OAAO,CAAC,WAAW,CAAoB;IACvC,OAAO,CAAC,oBAAoB,CAAQ;IACpC,OAAO,CAAC,YAAY,CAA+B;IACnD,OAAO,CAAC,oBAAoB,CAAmC;gBAEnD,OAAO,EAAE,iBAAiB,EAAE,eAAe,EAAE,OAAO,EAAE,OAAO,GAAE,iBAAsB;IAS3F,aAAa,IAAI,OAAO,CAAC,IAAI,CAAC;IAS9B,gBAAgB,CAAC,KAAK,GAAE,MAA4B,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC;YAahE,iBAAiB;IAazB,kBAAkB,IAAI,OAAO,CAAC,YAAY,CAAC;IAS3C,kBAAkB,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,CAAC;YAahD,mBAAmB;IAO3B,SAAS,IAAI,OAAO,CAAC,gBAAgB,CAAC;CAc7C"}
|
|
@@ -0,0 +1,82 @@
|
|
|
1
|
+
import * as keyhelper from "./keyhelper.js";
|
|
2
|
+
import { getLogger } from "./logger.js";
|
|
3
|
+
const DEFAULT_MIN_COUNT = 20;
|
|
4
|
+
const DEFAULT_REPLENISH_COUNT = 100;
|
|
5
|
+
export class PreKeyPoolManager {
|
|
6
|
+
constructor(storage, identityKeyPair, options = {}) {
|
|
7
|
+
this.storage = storage;
|
|
8
|
+
this.identityKeyPair = identityKeyPair;
|
|
9
|
+
this.minCount = options.minCount ?? DEFAULT_MIN_COUNT;
|
|
10
|
+
this.replenishCount = options.replenishCount ?? DEFAULT_REPLENISH_COUNT;
|
|
11
|
+
this.concurrency = options.concurrency;
|
|
12
|
+
this.signedPreKeyMaxAgeMs = options.signedPreKeyMaxAgeMs ?? keyhelper.DEFAULT_SIGNED_PRE_KEY_MAX_AGE_MS;
|
|
13
|
+
}
|
|
14
|
+
async ensurePreKeys() {
|
|
15
|
+
const count = await this.storage.getPreKeyCount();
|
|
16
|
+
if (count >= this.minCount) {
|
|
17
|
+
return;
|
|
18
|
+
}
|
|
19
|
+
await this.replenishPreKeys();
|
|
20
|
+
}
|
|
21
|
+
async replenishPreKeys(count = this.replenishCount) {
|
|
22
|
+
if (this.replenishing) {
|
|
23
|
+
return this.replenishing;
|
|
24
|
+
}
|
|
25
|
+
this.replenishing = this._replenishPreKeys(count);
|
|
26
|
+
try {
|
|
27
|
+
return await this.replenishing;
|
|
28
|
+
}
|
|
29
|
+
finally {
|
|
30
|
+
this.replenishing = undefined;
|
|
31
|
+
}
|
|
32
|
+
}
|
|
33
|
+
async _replenishPreKeys(count) {
|
|
34
|
+
const startId = await this.storage.getNextPreKeyId();
|
|
35
|
+
const generated = await keyhelper.generatePreKeysBatch(startId, count, { concurrency: this.concurrency });
|
|
36
|
+
for (const preKey of generated) {
|
|
37
|
+
await this.storage.storePreKey(preKey.keyId, preKey.keyPair);
|
|
38
|
+
}
|
|
39
|
+
await this.storage.setNextPreKeyId(startId + count);
|
|
40
|
+
getLogger().debug(`Replenished ${count} prekeys starting at id ${startId}`);
|
|
41
|
+
return generated;
|
|
42
|
+
}
|
|
43
|
+
async ensureSignedPreKey() {
|
|
44
|
+
const latest = await this.storage.loadLatestSignedPreKey();
|
|
45
|
+
if (latest && !keyhelper.shouldRotateSignedPreKey(latest.createdAt, this.signedPreKeyMaxAgeMs)) {
|
|
46
|
+
return latest;
|
|
47
|
+
}
|
|
48
|
+
return this.rotateSignedPreKey(latest ? latest.keyId + 1 : 1);
|
|
49
|
+
}
|
|
50
|
+
async rotateSignedPreKey(keyId) {
|
|
51
|
+
if (this.rotatingSignedPreKey) {
|
|
52
|
+
return this.rotatingSignedPreKey;
|
|
53
|
+
}
|
|
54
|
+
this.rotatingSignedPreKey = this._rotateSignedPreKey(keyId);
|
|
55
|
+
try {
|
|
56
|
+
return await this.rotatingSignedPreKey;
|
|
57
|
+
}
|
|
58
|
+
finally {
|
|
59
|
+
this.rotatingSignedPreKey = undefined;
|
|
60
|
+
}
|
|
61
|
+
}
|
|
62
|
+
async _rotateSignedPreKey(keyId) {
|
|
63
|
+
const signedPreKey = await keyhelper.generateSignedPreKeyAsync(this.identityKeyPair, keyId);
|
|
64
|
+
await this.storage.storeSignedPreKey(signedPreKey);
|
|
65
|
+
getLogger().debug(`Rotated signed prekey to id ${keyId}`);
|
|
66
|
+
return signedPreKey;
|
|
67
|
+
}
|
|
68
|
+
async getStatus() {
|
|
69
|
+
const [preKeyCount, nextPreKeyId, latestSignedPreKey] = await Promise.all([
|
|
70
|
+
this.storage.getPreKeyCount(),
|
|
71
|
+
this.storage.getNextPreKeyId(),
|
|
72
|
+
this.storage.loadLatestSignedPreKey()
|
|
73
|
+
]);
|
|
74
|
+
return {
|
|
75
|
+
preKeyCount,
|
|
76
|
+
nextPreKeyId,
|
|
77
|
+
signedPreKeyId: latestSignedPreKey?.keyId,
|
|
78
|
+
signedPreKeyAgeMs: latestSignedPreKey ? Date.now() - latestSignedPreKey.createdAt : undefined
|
|
79
|
+
};
|
|
80
|
+
}
|
|
81
|
+
}
|
|
82
|
+
//# sourceMappingURL=prekey-pool.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"prekey-pool.js","sourceRoot":"","sources":["../src/prekey-pool.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"session-cipher.d.ts","sourceRoot":"","sources":["../src/session-cipher.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAA;AAKpD,OAAO,KAAK,EAAE,KAAK,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAA;AAC3D,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAA;AAChD,OAAO,KAAK,EAAE,gBAAgB,EAAE,aAAa,EAAE,MAAM,SAAS,CAAA;AAc9D,qBAAa,aAAa;IACxB,OAAO,CAAC,IAAI,CAAiB;IAC7B,OAAO,CAAC,OAAO,CAAe;IAC9B,OAAO,CAAC,oBAAoB,CAAC,CAAQ;gBAGnC,OAAO,EAAE,aAAa,EACtB,eAAe,EAAE,eAAe,EAChC,oBAAoB,GAAE,MAAM,GAAG,SAA4C;IAW7E,OAAO,CAAC,gBAAgB;IAQxB,OAAO,CAAC,gBAAgB;IAIxB,QAAQ,IAAI,MAAM;IAIZ,SAAS,IAAI,OAAO,CAAC,aAAa,GAAG,SAAS,CAAC;IAS/C,WAAW,CAAC,MAAM,EAAE,aAAa,GAAG,OAAO,CAAC,IAAI,CAAC;IASjD,QAAQ,CAAC,CAAC,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC;IAIpD,OAAO,CAAC,IAAI,EAAE,UAAU,GAAG,OAAO,CAAC,gBAAgB,CAAC;IA8FpD,mBAAmB,CACvB,IAAI,EAAE,UAAU,EAChB,QAAQ,EAAE,YAAY,EAAE,GACvB,OAAO,CAAC;QAAE,OAAO,EAAE,YAAY,CAAC;QAAC,SAAS,EAAE,MAAM,CAAA;KAAE,CAAC;IAuBlD,qBAAqB,CAAC,IAAI,EAAE,UAAU,GAAG,OAAO,CAAC,MAAM,CAAC;IAuBxD,2BAA2B,CAAC,IAAI,EAAE,UAAU,GAAG,OAAO,CAAC,MAAM,CAAC;IAiD9D,uBAAuB,CAAC,aAAa,EAAE,UAAU,EAAE,OAAO,EAAE,YAAY,GAAG,OAAO,CAAC,MAAM,CAAC;IAyDhG,eAAe,CAAC,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,GAAG,IAAI;
|
|
1
|
+
{"version":3,"file":"session-cipher.d.ts","sourceRoot":"","sources":["../src/session-cipher.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAA;AAKpD,OAAO,KAAK,EAAE,KAAK,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAA;AAC3D,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAA;AAChD,OAAO,KAAK,EAAE,gBAAgB,EAAE,aAAa,EAAE,MAAM,SAAS,CAAA;AAc9D,qBAAa,aAAa;IACxB,OAAO,CAAC,IAAI,CAAiB;IAC7B,OAAO,CAAC,OAAO,CAAe;IAC9B,OAAO,CAAC,oBAAoB,CAAC,CAAQ;gBAGnC,OAAO,EAAE,aAAa,EACtB,eAAe,EAAE,eAAe,EAChC,oBAAoB,GAAE,MAAM,GAAG,SAA4C;IAW7E,OAAO,CAAC,gBAAgB;IAQxB,OAAO,CAAC,gBAAgB;IAIxB,QAAQ,IAAI,MAAM;IAIZ,SAAS,IAAI,OAAO,CAAC,aAAa,GAAG,SAAS,CAAC;IAS/C,WAAW,CAAC,MAAM,EAAE,aAAa,GAAG,OAAO,CAAC,IAAI,CAAC;IASjD,QAAQ,CAAC,CAAC,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC;IAIpD,OAAO,CAAC,IAAI,EAAE,UAAU,GAAG,OAAO,CAAC,gBAAgB,CAAC;IA8FpD,mBAAmB,CACvB,IAAI,EAAE,UAAU,EAChB,QAAQ,EAAE,YAAY,EAAE,GACvB,OAAO,CAAC;QAAE,OAAO,EAAE,YAAY,CAAC;QAAC,SAAS,EAAE,MAAM,CAAA;KAAE,CAAC;IAuBlD,qBAAqB,CAAC,IAAI,EAAE,UAAU,GAAG,OAAO,CAAC,MAAM,CAAC;IAuBxD,2BAA2B,CAAC,IAAI,EAAE,UAAU,GAAG,OAAO,CAAC,MAAM,CAAC;IAiD9D,uBAAuB,CAAC,aAAa,EAAE,UAAU,EAAE,OAAO,EAAE,YAAY,GAAG,OAAO,CAAC,MAAM,CAAC;IAyDhG,eAAe,CAAC,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,GAAG,IAAI;IAkBpD,gBAAgB,CAAC,OAAO,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,EAAE,eAAe,EAAE,MAAM,GAAG,IAAI;IA6BzF,gBAAgB,CAAC,OAAO,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,GAAG,IAAI;IAsB5E,cAAc,IAAI,OAAO,CAAC,OAAO,CAAC;IAWlC,gBAAgB,IAAI,OAAO,CAAC,IAAI,CAAC;CAYxC"}
|
package/lib/session-cipher.js
CHANGED
|
@@ -263,6 +263,7 @@ export class SessionCipher {
|
|
|
263
263
|
const key = chain.chainKey.key;
|
|
264
264
|
chain.messageKeys[chain.chainKey.counter + 1] = crypto.calculateMAC(key, Buffer.from([1]));
|
|
265
265
|
chain.chainKey.key = crypto.calculateMAC(key, Buffer.from([2]));
|
|
266
|
+
wipeBuffer(key);
|
|
266
267
|
chain.chainKey.counter += 1;
|
|
267
268
|
}
|
|
268
269
|
}
|
|
@@ -283,7 +284,9 @@ export class SessionCipher {
|
|
|
283
284
|
ratchet.previousCounter = prevCounter.chainKey.counter;
|
|
284
285
|
session.deleteChain(ratchet.ephemeralKeyPair.pubKey);
|
|
285
286
|
}
|
|
287
|
+
const previousEphemeralPrivKey = ratchet.ephemeralKeyPair.privKey;
|
|
286
288
|
ratchet.ephemeralKeyPair = curve.generateKeyPair();
|
|
289
|
+
wipeBuffer(previousEphemeralPrivKey);
|
|
287
290
|
this.calculateRatchet(session, remoteKey, true);
|
|
288
291
|
ratchet.lastRemoteEphemeralKey = remoteKey;
|
|
289
292
|
}
|
|
@@ -291,6 +294,7 @@ export class SessionCipher {
|
|
|
291
294
|
const ratchet = session.currentRatchet;
|
|
292
295
|
const sharedSecret = curve.calculateAgreement(remoteKey, ratchet.ephemeralKeyPair.privKey);
|
|
293
296
|
const masterKey = crypto.deriveSecrets(sharedSecret, ratchet.rootKey, Buffer.from("WhisperRatchet"), 2);
|
|
297
|
+
wipeBuffer(sharedSecret);
|
|
294
298
|
const chainKey = sending ? ratchet.ephemeralKeyPair.pubKey : remoteKey;
|
|
295
299
|
session.addChain(chainKey, {
|
|
296
300
|
messageKeys: {},
|
|
@@ -300,7 +304,9 @@ export class SessionCipher {
|
|
|
300
304
|
},
|
|
301
305
|
chainType: sending ? ChainType.SENDING : ChainType.RECEIVING
|
|
302
306
|
});
|
|
307
|
+
const previousRootKey = ratchet.rootKey;
|
|
303
308
|
ratchet.rootKey = masterKey[0];
|
|
309
|
+
wipeBuffer(previousRootKey);
|
|
304
310
|
}
|
|
305
311
|
async hasOpenSession() {
|
|
306
312
|
return await this.queueJob(async () => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"session-cipher.js","sourceRoot":"","sources":["../src/session-cipher.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"session-cipher.js","sourceRoot":"","sources":["../src/session-cipher.ts"],"names":[],"mappings":"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"}
|
package/lib/session-record.d.ts
CHANGED
|
@@ -79,6 +79,7 @@ export declare class SessionEntry {
|
|
|
79
79
|
getChain(key: Buffer): Chain | undefined;
|
|
80
80
|
deleteChain(key: Buffer): void;
|
|
81
81
|
chains(): IterableIterator<[Buffer, Chain]>;
|
|
82
|
+
wipeKeyMaterial(): void;
|
|
82
83
|
serialize(): SerializedSessionEntry;
|
|
83
84
|
static migrateEntry(data: SerializedSessionEntry): void;
|
|
84
85
|
static deserialize(data: SerializedSessionEntry): SessionEntry;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"session-record.d.ts","sourceRoot":"","sources":["../src/session-record.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAA;AAC7C,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,cAAc,CAAA;
|
|
1
|
+
{"version":3,"file":"session-record.d.ts","sourceRoot":"","sources":["../src/session-record.ts"],"names":[],"mappings":"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"}
|
package/lib/session-record.js
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { BaseKeyType } from "./base-key-type.js";
|
|
2
2
|
import { getLogger } from "./logger.js";
|
|
3
|
+
import { wipeBuffer } from "./util.js";
|
|
3
4
|
const CLOSED_SESSIONS_MAX = 40;
|
|
4
5
|
const SESSION_RECORD_VERSION = "v1";
|
|
5
6
|
const SESSION_ENTRY_VERSION = "v1";
|
|
@@ -36,9 +37,14 @@ export class SessionEntry {
|
|
|
36
37
|
deleteChain(key) {
|
|
37
38
|
assertBuffer(key);
|
|
38
39
|
const id = key.toString("base64");
|
|
39
|
-
|
|
40
|
+
const chain = this._chains[id];
|
|
41
|
+
if (!chain) {
|
|
40
42
|
throw new ReferenceError("Not Found");
|
|
41
43
|
}
|
|
44
|
+
wipeBuffer(chain.chainKey.key);
|
|
45
|
+
for (const messageKey of Object.values(chain.messageKeys)) {
|
|
46
|
+
wipeBuffer(messageKey);
|
|
47
|
+
}
|
|
42
48
|
delete this._chains[id];
|
|
43
49
|
}
|
|
44
50
|
*chains() {
|
|
@@ -46,6 +52,16 @@ export class SessionEntry {
|
|
|
46
52
|
yield [Buffer.from(k, "base64"), v];
|
|
47
53
|
}
|
|
48
54
|
}
|
|
55
|
+
wipeKeyMaterial() {
|
|
56
|
+
wipeBuffer(this.currentRatchet.ephemeralKeyPair.privKey);
|
|
57
|
+
wipeBuffer(this.currentRatchet.rootKey);
|
|
58
|
+
for (const chain of Object.values(this._chains)) {
|
|
59
|
+
wipeBuffer(chain.chainKey.key);
|
|
60
|
+
for (const messageKey of Object.values(chain.messageKeys)) {
|
|
61
|
+
wipeBuffer(messageKey);
|
|
62
|
+
}
|
|
63
|
+
}
|
|
64
|
+
}
|
|
49
65
|
serialize() {
|
|
50
66
|
const data = {
|
|
51
67
|
entryVersion: this.entryVersion,
|
|
@@ -284,6 +300,7 @@ export class SessionRecord {
|
|
|
284
300
|
}
|
|
285
301
|
}
|
|
286
302
|
if (oldestKey) {
|
|
303
|
+
this.sessions[oldestKey].wipeKeyMaterial();
|
|
287
304
|
delete this.sessions[oldestKey];
|
|
288
305
|
}
|
|
289
306
|
else {
|
|
@@ -296,12 +313,14 @@ export class SessionRecord {
|
|
|
296
313
|
for (const [key, session] of Object.entries(this.sessions)) {
|
|
297
314
|
const lastUsed = session.indexInfo.used || session.indexInfo.created || 0;
|
|
298
315
|
if (session.indexInfo.closed !== -1 && lastUsed < cutoff) {
|
|
316
|
+
session.wipeKeyMaterial();
|
|
299
317
|
delete this.sessions[key];
|
|
300
318
|
}
|
|
301
319
|
}
|
|
302
320
|
}
|
|
303
321
|
deleteAllSessions() {
|
|
304
322
|
for (const key of Object.keys(this.sessions)) {
|
|
323
|
+
this.sessions[key].wipeKeyMaterial();
|
|
305
324
|
delete this.sessions[key];
|
|
306
325
|
}
|
|
307
326
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"session-record.js","sourceRoot":"","sources":["../src/session-record.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"session-record.js","sourceRoot":"","sources":["../src/session-record.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@neykoor/libsignal-node",
|
|
3
|
-
"version": "1.0.
|
|
3
|
+
"version": "1.0.9",
|
|
4
4
|
"description": "TypeScript port of libsignal-node, compatible with BaileysX",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "lib/index.js",
|
|
@@ -25,7 +25,9 @@
|
|
|
25
25
|
"prepack": "npm run build",
|
|
26
26
|
"prepare": "npm run build",
|
|
27
27
|
"format": "prettier --write \"src/**/*.ts\"",
|
|
28
|
-
"lint": "eslint \"src/**/*.ts\""
|
|
28
|
+
"lint": "eslint \"src/**/*.ts\" \"scripts/**/*.mjs\"",
|
|
29
|
+
"generate:proto": "node scripts/generate-proto.mjs",
|
|
30
|
+
"verify:proto": "node scripts/verify-proto.mjs"
|
|
29
31
|
},
|
|
30
32
|
"dependencies": {
|
|
31
33
|
"@neykoor/curve25519-ts": "^0.0.11",
|
|
@@ -40,7 +42,8 @@
|
|
|
40
42
|
"prettier": "^3.3.2",
|
|
41
43
|
"eslint": "^8.57.0",
|
|
42
44
|
"@typescript-eslint/eslint-plugin": "^7.13.0",
|
|
43
|
-
"@typescript-eslint/parser": "^7.13.0"
|
|
45
|
+
"@typescript-eslint/parser": "^7.13.0",
|
|
46
|
+
"protobufjs-cli": "^1.1.3"
|
|
44
47
|
},
|
|
45
48
|
"engines": {
|
|
46
49
|
"node": ">=20.0.0"
|