@digitaldefiance/node-ecies-lib 1.3.27 → 2.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/README.md +329 -37
- package/package.json +7 -4
- package/src/builders/ecies-builder.d.ts +9 -0
- package/src/builders/ecies-builder.d.ts.map +1 -0
- package/src/builders/ecies-builder.js +20 -0
- package/src/builders/ecies-builder.js.map +1 -0
- package/src/builders/index.d.ts +3 -0
- package/src/builders/index.d.ts.map +1 -0
- package/src/builders/index.js +6 -0
- package/src/builders/index.js.map +1 -0
- package/src/builders/member-builder.d.ts +16 -0
- package/src/builders/member-builder.d.ts.map +1 -0
- package/src/builders/member-builder.js +39 -0
- package/src/builders/member-builder.js.map +1 -0
- package/src/core/errors/crypto-error.d.ts +6 -0
- package/src/core/errors/crypto-error.d.ts.map +1 -0
- package/src/core/errors/crypto-error.js +15 -0
- package/src/core/errors/crypto-error.js.map +1 -0
- package/src/core/index.d.ts +3 -0
- package/src/core/index.d.ts.map +1 -0
- package/src/core/index.js +6 -0
- package/src/core/index.js.map +1 -0
- package/src/core/types/result.d.ts +8 -0
- package/src/core/types/result.d.ts.map +1 -0
- package/src/core/types/result.js +3 -0
- package/src/core/types/result.js.map +1 -0
- package/src/i18n/ecies-i18n-factory.d.ts +6 -1
- package/src/i18n/ecies-i18n-factory.d.ts.map +1 -1
- package/src/i18n/ecies-i18n-factory.js +49 -33
- package/src/i18n/ecies-i18n-factory.js.map +1 -1
- package/src/i18n/index.d.ts +1 -0
- package/src/i18n/index.d.ts.map +1 -1
- package/src/i18n/index.js +3 -0
- package/src/i18n/index.js.map +1 -1
- package/src/i18n/node-ecies-i18n-setup.d.ts +4 -0
- package/src/i18n/node-ecies-i18n-setup.d.ts.map +1 -0
- package/src/i18n/node-ecies-i18n-setup.js +27 -0
- package/src/i18n/node-ecies-i18n-setup.js.map +1 -0
- package/src/index.d.ts +3 -0
- package/src/index.d.ts.map +1 -1
- package/src/index.js +5 -0
- package/src/index.js.map +1 -1
- package/src/interfaces/member-operational.d.ts +1 -1
- package/src/interfaces/member-operational.d.ts.map +1 -1
- package/src/lib/crypto-container.d.ts +13 -0
- package/src/lib/crypto-container.d.ts.map +1 -0
- package/src/lib/crypto-container.js +29 -0
- package/src/lib/crypto-container.js.map +1 -0
- package/src/lib/index.d.ts +2 -0
- package/src/lib/index.d.ts.map +1 -0
- package/src/lib/index.js +5 -0
- package/src/lib/index.js.map +1 -0
- package/src/member.d.ts +1 -6
- package/src/member.d.ts.map +1 -1
- package/src/member.js +1 -6
- package/src/member.js.map +1 -1
- package/src/services/ecies/crypto-core.d.ts.map +1 -1
- package/src/services/ecies/crypto-core.js +2 -4
- package/src/services/ecies/crypto-core.js.map +1 -1
- package/src/services/ecies/multi-recipient.d.ts +1 -3
- package/src/services/ecies/multi-recipient.d.ts.map +1 -1
- package/src/services/ecies/multi-recipient.js +24 -27
- package/src/services/ecies/multi-recipient.js.map +1 -1
- package/src/services/ecies/service.d.ts +1 -3
- package/src/services/ecies/service.d.ts.map +1 -1
- package/src/services/ecies/service.js +6 -20
- package/src/services/ecies/service.js.map +1 -1
- package/src/services/ecies/single-recipient.d.ts +1 -3
- package/src/services/ecies/single-recipient.d.ts.map +1 -1
- package/src/services/ecies/single-recipient.js +22 -24
- package/src/services/ecies/single-recipient.js.map +1 -1
- package/src/services/ecies/utilities.d.ts.map +1 -1
- package/src/services/ecies/utilities.js +5 -7
- package/src/services/ecies/utilities.js.map +1 -1
- package/src/services/pbkdf2.d.ts +2 -3
- package/src/services/pbkdf2.d.ts.map +1 -1
- package/src/services/pbkdf2.js +3 -6
- package/src/services/pbkdf2.js.map +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"multi-recipient.d.ts","sourceRoot":"","sources":["../../../../../../packages/digitaldefiance-node-ecies-lib/src/services/ecies/multi-recipient.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"multi-recipient.d.ts","sourceRoot":"","sources":["../../../../../../packages/digitaldefiance-node-ecies-lib/src/services/ecies/multi-recipient.ts"],"names":[],"mappings":"AAgBA,OAAO,EAAE,sBAAsB,EAAE,MAAM,0CAA0C,CAAC;AAClF,OAAO,EAAE,2BAA2B,EAAE,MAAM,gDAAgD,CAAC;AAC7F,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AACtC,OAAO,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAChD,OAAO,EAAE,wBAAwB,EAAE,MAAM,oBAAoB,CAAC;AAE9D;;GAEG;AACH,qBAAa,mBAAmB;IAC9B,SAAS,CAAC,QAAQ,CAAC,UAAU,EAAE,eAAe,CAAC;IAC/C,SAAS,CAAC,QAAQ,CAAC,mBAAmB,EAAE,wBAAwB,CAAC;gBAG/D,UAAU,EAAE,eAAe;IAQ7B;;;;;;OAMG;IACI,aAAa,CAAC,cAAc,EAAE,MAAM,GAAG,MAAM;IAOpD;;;;;OAKG;IACI,UAAU,CACf,iBAAiB,EAAE,MAAM,EACzB,mBAAmB,EAAE,MAAM,GAC1B,MAAM;IAqFT;;;;;OAKG;IACI,UAAU,CAAC,UAAU,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,GAAG,MAAM;IA+DnE;;;;;;;OAOG;IACI,eAAe,CACpB,UAAU,EAAE,MAAM,EAAE,EACpB,OAAO,EAAE,MAAM,EACf,QAAQ,CAAC,EAAE,MAAM,GAChB,sBAAsB;IAiEzB;;;;;OAKG;IACI,+BAA+B,CACpC,aAAa,EAAE,sBAAsB,EACrC,SAAS,EAAE,MAAM,GAChB,MAAM;IA0DT;;;;;;OAMG;IACI,uCAAuC,CAC5C,cAAc,EAAE,MAAM,EACtB,sBAAsB,EAAE,OAAO,EAC/B,aAAa,CAAC,EAAE,MAAM,EAAE,GACvB,MAAM;IA+BT;;;;;;OAMG;IACI,iCAAiC,CACtC,IAAI,EAAE,sBAAsB,GAC3B,MAAM;IA6ET;;;;OAIG;IACI,yBAAyB,CAAC,IAAI,EAAE,MAAM,GAAG,2BAA2B;IA8F3E;;;;OAIG;IACI,yBAAyB,CAAC,IAAI,EAAE,MAAM,GAAG,sBAAsB;CASvE"}
|
|
@@ -5,7 +5,6 @@ const ecies_lib_1 = require("@digitaldefiance/ecies-lib");
|
|
|
5
5
|
const crypto_1 = require("crypto");
|
|
6
6
|
const mongodb_1 = require("mongodb");
|
|
7
7
|
const constants_1 = require("../../constants");
|
|
8
|
-
const ecies_i18n_factory_1 = require("../../i18n/ecies-i18n-factory");
|
|
9
8
|
const single_recipient_1 = require("./single-recipient");
|
|
10
9
|
/**
|
|
11
10
|
* Multiple recipient encryption/decryption functions for ECIES
|
|
@@ -13,11 +12,9 @@ const single_recipient_1 = require("./single-recipient");
|
|
|
13
12
|
class EciesMultiRecipient {
|
|
14
13
|
cryptoCore;
|
|
15
14
|
singleRecipientCore;
|
|
16
|
-
|
|
17
|
-
constructor(cryptoCore, engine) {
|
|
15
|
+
constructor(cryptoCore) {
|
|
18
16
|
this.cryptoCore = cryptoCore;
|
|
19
|
-
this.
|
|
20
|
-
this.singleRecipientCore = new single_recipient_1.EciesSingleRecipientCore(cryptoCore.config, this.engine);
|
|
17
|
+
this.singleRecipientCore = new single_recipient_1.EciesSingleRecipientCore(cryptoCore.config);
|
|
21
18
|
}
|
|
22
19
|
/**
|
|
23
20
|
* Get the size of the header for a given encryption type
|
|
@@ -54,15 +51,15 @@ class EciesMultiRecipient {
|
|
|
54
51
|
if (error instanceof Error) {
|
|
55
52
|
if ('code' in error &&
|
|
56
53
|
error.code === 'ERR_CRYPTO_ECDH_INVALID_PUBLIC_KEY') {
|
|
57
|
-
throw new ecies_lib_1.ECIESError(ecies_lib_1.ECIESErrorTypeEnum.InvalidRecipientPublicKey,
|
|
54
|
+
throw new ecies_lib_1.ECIESError(ecies_lib_1.ECIESErrorTypeEnum.InvalidRecipientPublicKey, undefined, undefined, {
|
|
58
55
|
nodeError: error.code,
|
|
59
56
|
});
|
|
60
57
|
}
|
|
61
|
-
throw new ecies_lib_1.ECIESError(ecies_lib_1.ECIESErrorTypeEnum.SecretComputationFailed,
|
|
58
|
+
throw new ecies_lib_1.ECIESError(ecies_lib_1.ECIESErrorTypeEnum.SecretComputationFailed, undefined, undefined, {
|
|
62
59
|
error: error.message,
|
|
63
60
|
});
|
|
64
61
|
}
|
|
65
|
-
throw new ecies_lib_1.ECIESError(ecies_lib_1.ECIESErrorTypeEnum.SecretComputationFailed
|
|
62
|
+
throw new ecies_lib_1.ECIESError(ecies_lib_1.ECIESErrorTypeEnum.SecretComputationFailed);
|
|
66
63
|
}
|
|
67
64
|
// Get the ephemeral public key and ensure it has the 0x04 prefix
|
|
68
65
|
let ephemeralPublicKey = ecdh.getPublicKey();
|
|
@@ -95,7 +92,7 @@ class EciesMultiRecipient {
|
|
|
95
92
|
*/
|
|
96
93
|
decryptKey(privateKey, encryptedKey) {
|
|
97
94
|
if (encryptedKey.length !== this.cryptoCore.consts.MULTIPLE.ENCRYPTED_KEY_SIZE) {
|
|
98
|
-
throw new ecies_lib_1.ECIESError(ecies_lib_1.ECIESErrorTypeEnum.InvalidEncryptedKeyLength,
|
|
95
|
+
throw new ecies_lib_1.ECIESError(ecies_lib_1.ECIESErrorTypeEnum.InvalidEncryptedKeyLength, undefined, undefined, {
|
|
99
96
|
expected: String(this.cryptoCore.consts.MULTIPLE.ENCRYPTED_KEY_SIZE),
|
|
100
97
|
actual: String(encryptedKey.length),
|
|
101
98
|
});
|
|
@@ -116,7 +113,7 @@ class EciesMultiRecipient {
|
|
|
116
113
|
// Decrypt using components with the normalized key
|
|
117
114
|
const decrypted = this.singleRecipientCore.decryptWithComponents(privateKey, normalizedKey, iv, authTag, encrypted);
|
|
118
115
|
if (decrypted.length !== this.cryptoCore.consts.SYMMETRIC.KEY_SIZE) {
|
|
119
|
-
throw new ecies_lib_1.ECIESError(ecies_lib_1.ECIESErrorTypeEnum.InvalidDataLength,
|
|
116
|
+
throw new ecies_lib_1.ECIESError(ecies_lib_1.ECIESErrorTypeEnum.InvalidDataLength, undefined, undefined, {
|
|
120
117
|
expected: String(this.cryptoCore.consts.SYMMETRIC.KEY_SIZE),
|
|
121
118
|
actual: String(decrypted.length),
|
|
122
119
|
});
|
|
@@ -133,7 +130,7 @@ class EciesMultiRecipient {
|
|
|
133
130
|
*/
|
|
134
131
|
encryptMultiple(recipients, message, preamble) {
|
|
135
132
|
if (recipients.length > ecies_lib_1.Constants.UINT16_MAX) {
|
|
136
|
-
throw new ecies_lib_1.ECIESError(ecies_lib_1.ECIESErrorTypeEnum.TooManyRecipients
|
|
133
|
+
throw new ecies_lib_1.ECIESError(ecies_lib_1.ECIESErrorTypeEnum.TooManyRecipients);
|
|
137
134
|
}
|
|
138
135
|
const messageTypeBuffer = Buffer.alloc(1);
|
|
139
136
|
messageTypeBuffer.writeUint8(ecies_lib_1.EciesEncryptionTypeEnum.Multiple);
|
|
@@ -160,7 +157,7 @@ class EciesMultiRecipient {
|
|
|
160
157
|
const recipientKeys = encryptionResults.map(({ encryptedKey }) => encryptedKey);
|
|
161
158
|
// Verify the encrypted message size (just the encrypted content)
|
|
162
159
|
if (encryptedMessage.length !== message.length) {
|
|
163
|
-
throw new ecies_lib_1.ECIESError(ecies_lib_1.ECIESErrorTypeEnum.MessageLengthMismatch
|
|
160
|
+
throw new ecies_lib_1.ECIESError(ecies_lib_1.ECIESErrorTypeEnum.MessageLengthMismatch);
|
|
164
161
|
}
|
|
165
162
|
const headerSize = this.calculateECIESMultipleRecipientOverhead(recipients.length, false, recipientKeys);
|
|
166
163
|
return {
|
|
@@ -180,12 +177,12 @@ class EciesMultiRecipient {
|
|
|
180
177
|
*/
|
|
181
178
|
decryptMultipleECIEForRecipient(encryptedData, recipient) {
|
|
182
179
|
if (recipient.privateKey === undefined) {
|
|
183
|
-
throw new ecies_lib_1.ECIESError(ecies_lib_1.ECIESErrorTypeEnum.PrivateKeyNotLoaded
|
|
180
|
+
throw new ecies_lib_1.ECIESError(ecies_lib_1.ECIESErrorTypeEnum.PrivateKeyNotLoaded);
|
|
184
181
|
}
|
|
185
182
|
// Find this recipient's encrypted key
|
|
186
183
|
const recipientIndex = encryptedData.recipientIds.findIndex((id) => id.equals(recipient.id));
|
|
187
184
|
if (recipientIndex === -1) {
|
|
188
|
-
throw new ecies_lib_1.ECIESError(ecies_lib_1.ECIESErrorTypeEnum.RecipientNotFound
|
|
185
|
+
throw new ecies_lib_1.ECIESError(ecies_lib_1.ECIESErrorTypeEnum.RecipientNotFound);
|
|
189
186
|
}
|
|
190
187
|
const encryptedKey = encryptedData.recipientKeys[recipientIndex];
|
|
191
188
|
// Decrypt the symmetric key using the detected encryption type
|
|
@@ -204,7 +201,7 @@ class EciesMultiRecipient {
|
|
|
204
201
|
// AES-GCM provides authentication via auth tag (no separate CRC needed)
|
|
205
202
|
// The decrypted message should match the original data length
|
|
206
203
|
if (decryptedMessage.length !== encryptedData.dataLength) {
|
|
207
|
-
throw new ecies_lib_1.ECIESError(ecies_lib_1.ECIESErrorTypeEnum.InvalidDataLength
|
|
204
|
+
throw new ecies_lib_1.ECIESError(ecies_lib_1.ECIESErrorTypeEnum.InvalidDataLength);
|
|
208
205
|
}
|
|
209
206
|
return decryptedMessage;
|
|
210
207
|
}
|
|
@@ -217,7 +214,7 @@ class EciesMultiRecipient {
|
|
|
217
214
|
*/
|
|
218
215
|
calculateECIESMultipleRecipientOverhead(recipientCount, includeMessageOverhead, encryptedKeys) {
|
|
219
216
|
if (recipientCount < 2) {
|
|
220
|
-
throw new ecies_lib_1.ECIESError(ecies_lib_1.ECIESErrorTypeEnum.InvalidRecipientCount
|
|
217
|
+
throw new ecies_lib_1.ECIESError(ecies_lib_1.ECIESErrorTypeEnum.InvalidRecipientCount);
|
|
221
218
|
}
|
|
222
219
|
// Calculate encrypted keys size
|
|
223
220
|
let encryptedKeysSize;
|
|
@@ -246,14 +243,14 @@ class EciesMultiRecipient {
|
|
|
246
243
|
*/
|
|
247
244
|
buildECIESMultipleRecipientHeader(data) {
|
|
248
245
|
if (data.recipientIds.length > this.cryptoCore.consts.MULTIPLE.MAX_RECIPIENTS) {
|
|
249
|
-
throw new ecies_lib_1.ECIESError(ecies_lib_1.ECIESErrorTypeEnum.TooManyRecipients
|
|
246
|
+
throw new ecies_lib_1.ECIESError(ecies_lib_1.ECIESErrorTypeEnum.TooManyRecipients);
|
|
250
247
|
}
|
|
251
248
|
else if (data.recipientIds.length !== data.recipientKeys.length) {
|
|
252
|
-
throw new ecies_lib_1.ECIESError(ecies_lib_1.ECIESErrorTypeEnum.RecipientKeyCountMismatch
|
|
249
|
+
throw new ecies_lib_1.ECIESError(ecies_lib_1.ECIESErrorTypeEnum.RecipientKeyCountMismatch);
|
|
253
250
|
}
|
|
254
251
|
else if (data.dataLength < 0 ||
|
|
255
252
|
data.dataLength > this.cryptoCore.consts.MAX_RAW_DATA_SIZE) {
|
|
256
|
-
throw new ecies_lib_1.ECIESError(ecies_lib_1.ECIESErrorTypeEnum.FileSizeTooLarge
|
|
253
|
+
throw new ecies_lib_1.ECIESError(ecies_lib_1.ECIESErrorTypeEnum.FileSizeTooLarge);
|
|
257
254
|
}
|
|
258
255
|
// Create data length buffer
|
|
259
256
|
const dataLengthBuffer = Buffer.alloc(this.cryptoCore.consts.MULTIPLE.DATA_LENGTH_SIZE);
|
|
@@ -269,11 +266,11 @@ class EciesMultiRecipient {
|
|
|
269
266
|
// Validate encrypted key lengths based on their encryption type
|
|
270
267
|
data.recipientKeys.forEach((encryptedKey) => {
|
|
271
268
|
if (encryptedKey.length === 0) {
|
|
272
|
-
throw new ecies_lib_1.ECIESError(ecies_lib_1.ECIESErrorTypeEnum.InvalidEncryptedKeyLength
|
|
269
|
+
throw new ecies_lib_1.ECIESError(ecies_lib_1.ECIESErrorTypeEnum.InvalidEncryptedKeyLength);
|
|
273
270
|
}
|
|
274
271
|
if (encryptedKey.length !==
|
|
275
272
|
this.cryptoCore.consts.MULTIPLE.ENCRYPTED_KEY_SIZE) {
|
|
276
|
-
throw new ecies_lib_1.ECIESError(ecies_lib_1.ECIESErrorTypeEnum.InvalidEncryptedKeyLength,
|
|
273
|
+
throw new ecies_lib_1.ECIESError(ecies_lib_1.ECIESErrorTypeEnum.InvalidEncryptedKeyLength, undefined, undefined, {
|
|
277
274
|
expected: String(this.cryptoCore.consts.MULTIPLE.ENCRYPTED_KEY_SIZE),
|
|
278
275
|
actual: String(encryptedKey.length),
|
|
279
276
|
});
|
|
@@ -297,27 +294,27 @@ class EciesMultiRecipient {
|
|
|
297
294
|
parseMultiEncryptedHeader(data) {
|
|
298
295
|
// Ensure there's enough data to read headers
|
|
299
296
|
if (data.length < this.cryptoCore.consts.MULTIPLE.FIXED_OVERHEAD_SIZE) {
|
|
300
|
-
throw new ecies_lib_1.ECIESError(ecies_lib_1.ECIESErrorTypeEnum.InvalidDataLength
|
|
297
|
+
throw new ecies_lib_1.ECIESError(ecies_lib_1.ECIESErrorTypeEnum.InvalidDataLength);
|
|
301
298
|
}
|
|
302
299
|
let offset = 0;
|
|
303
300
|
// Read data length
|
|
304
301
|
const dataLength = Number(data.readBigUInt64BE(offset));
|
|
305
302
|
if (dataLength <= 0 ||
|
|
306
303
|
dataLength > this.cryptoCore.consts.MAX_RAW_DATA_SIZE) {
|
|
307
|
-
throw new ecies_lib_1.ECIESError(ecies_lib_1.ECIESErrorTypeEnum.InvalidDataLength
|
|
304
|
+
throw new ecies_lib_1.ECIESError(ecies_lib_1.ECIESErrorTypeEnum.InvalidDataLength);
|
|
308
305
|
}
|
|
309
306
|
offset += this.cryptoCore.consts.MULTIPLE.DATA_LENGTH_SIZE; // 8 bytes
|
|
310
307
|
// Read recipient count
|
|
311
308
|
const recipientCount = data.readUInt16BE(offset);
|
|
312
309
|
if (recipientCount <= 0 ||
|
|
313
310
|
recipientCount > this.cryptoCore.consts.MULTIPLE.MAX_RECIPIENTS) {
|
|
314
|
-
throw new ecies_lib_1.ECIESError(ecies_lib_1.ECIESErrorTypeEnum.InvalidRecipientCount
|
|
311
|
+
throw new ecies_lib_1.ECIESError(ecies_lib_1.ECIESErrorTypeEnum.InvalidRecipientCount);
|
|
315
312
|
}
|
|
316
313
|
offset += this.cryptoCore.consts.MULTIPLE.RECIPIENT_COUNT_SIZE; // 2 bytes
|
|
317
314
|
// Ensure there's enough data for all recipients
|
|
318
315
|
const requiredLength = this.calculateECIESMultipleRecipientOverhead(recipientCount, false);
|
|
319
316
|
if (data.length < requiredLength) {
|
|
320
|
-
throw new ecies_lib_1.ECIESError(ecies_lib_1.ECIESErrorTypeEnum.InvalidDataLength
|
|
317
|
+
throw new ecies_lib_1.ECIESError(ecies_lib_1.ECIESErrorTypeEnum.InvalidDataLength);
|
|
321
318
|
}
|
|
322
319
|
// Read recipient IDs
|
|
323
320
|
const recipientIds = [];
|
|
@@ -331,11 +328,11 @@ class EciesMultiRecipient {
|
|
|
331
328
|
const recipientKeys = [];
|
|
332
329
|
for (let i = 0; i < recipientCount; i++) {
|
|
333
330
|
if (offset >= data.length) {
|
|
334
|
-
throw new ecies_lib_1.ECIESError(ecies_lib_1.ECIESErrorTypeEnum.InvalidDataLength
|
|
331
|
+
throw new ecies_lib_1.ECIESError(ecies_lib_1.ECIESErrorTypeEnum.InvalidDataLength);
|
|
335
332
|
}
|
|
336
333
|
if (offset + this.cryptoCore.consts.MULTIPLE.ENCRYPTED_KEY_SIZE >
|
|
337
334
|
data.length) {
|
|
338
|
-
throw new ecies_lib_1.ECIESError(ecies_lib_1.ECIESErrorTypeEnum.InvalidDataLength,
|
|
335
|
+
throw new ecies_lib_1.ECIESError(ecies_lib_1.ECIESErrorTypeEnum.InvalidDataLength, undefined, undefined, {
|
|
339
336
|
required: String(this.cryptoCore.consts.MULTIPLE.ENCRYPTED_KEY_SIZE),
|
|
340
337
|
available: String(data.length - offset),
|
|
341
338
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"multi-recipient.js","sourceRoot":"","sources":["../../../../../../packages/digitaldefiance-node-ecies-lib/src/services/ecies/multi-recipient.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"multi-recipient.js","sourceRoot":"","sources":["../../../../../../packages/digitaldefiance-node-ecies-lib/src/services/ecies/multi-recipient.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
import { EciesEncryptionType, EciesEncryptionTypeEnum, HexString, IECIESConfig, IECIESConstants, SecureString } from '@digitaldefiance/ecies-lib';
|
|
2
2
|
import { Wallet } from '@ethereumjs/wallet';
|
|
3
3
|
import { Member } from '../../member';
|
|
4
|
-
import { CoreLanguageCode, PluginI18nEngine } from '@digitaldefiance/i18n-lib';
|
|
5
4
|
import { IWalletSeed } from '../../interfaces';
|
|
6
5
|
import { IMultiEncryptedMessage } from '../../interfaces/multi-encrypted-message';
|
|
7
6
|
import { IMultiEncryptedParsedHeader } from '../../interfaces/multi-encrypted-parsed-header';
|
|
@@ -22,8 +21,7 @@ export declare class ECIESService {
|
|
|
22
21
|
protected readonly singleRecipient: EciesSingleRecipientCore;
|
|
23
22
|
protected readonly multiRecipient: EciesMultiRecipient;
|
|
24
23
|
protected readonly utilities: EciesUtilities;
|
|
25
|
-
|
|
26
|
-
constructor(engineOrConfig?: PluginI18nEngine<CoreLanguageCode> | Partial<IECIESConfig>, config?: Partial<IECIESConfig>, eciesParams?: IECIESConstants);
|
|
24
|
+
constructor(config?: Partial<IECIESConfig>, eciesParams?: IECIESConstants);
|
|
27
25
|
get core(): EciesCryptoCore;
|
|
28
26
|
get config(): IECIESConfig;
|
|
29
27
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"service.d.ts","sourceRoot":"","sources":["../../../../../../packages/digitaldefiance-node-ecies-lib/src/services/ecies/service.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,mBAAmB,EACnB,uBAAuB,EAGvB,SAAS,EACT,YAAY,EACZ,eAAe,EACf,YAAY,EACb,MAAM,4BAA4B,CAAC;AACpC,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAO5C,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;
|
|
1
|
+
{"version":3,"file":"service.d.ts","sourceRoot":"","sources":["../../../../../../packages/digitaldefiance-node-ecies-lib/src/services/ecies/service.ts"],"names":[],"mappings":"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"}
|
|
@@ -19,22 +19,9 @@ class ECIESService {
|
|
|
19
19
|
singleRecipient;
|
|
20
20
|
multiRecipient;
|
|
21
21
|
utilities;
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
let engine;
|
|
26
|
-
let actualConfig;
|
|
27
|
-
if (engineOrConfig && 'translate' in engineOrConfig) {
|
|
28
|
-
// First parameter is an engine
|
|
29
|
-
engine = engineOrConfig;
|
|
30
|
-
actualConfig = config || {};
|
|
31
|
-
}
|
|
32
|
-
else {
|
|
33
|
-
// First parameter is config or undefined
|
|
34
|
-
engine = (0, ecies_i18n_factory_1.createEciesTranslationEngine)();
|
|
35
|
-
actualConfig = engineOrConfig || {};
|
|
36
|
-
}
|
|
37
|
-
const eciesConsts = eciesParams;
|
|
22
|
+
constructor(config, eciesParams = constants_1.Constants.ECIES) {
|
|
23
|
+
const actualConfig = config || {};
|
|
24
|
+
const eciesConsts = eciesParams || constants_1.Constants.ECIES;
|
|
38
25
|
this._config = {
|
|
39
26
|
...config,
|
|
40
27
|
curveName: eciesConsts.CURVE_NAME,
|
|
@@ -46,11 +33,10 @@ class ECIESService {
|
|
|
46
33
|
...actualConfig,
|
|
47
34
|
};
|
|
48
35
|
// Initialize all components
|
|
49
|
-
this.engine = engine;
|
|
50
36
|
this.cryptoCore = new crypto_core_1.EciesCryptoCore(this._config, eciesParams);
|
|
51
37
|
this.signature = new signature_1.EciesSignature(this.cryptoCore);
|
|
52
|
-
this.singleRecipient = new single_recipient_1.EciesSingleRecipientCore(this._config
|
|
53
|
-
this.multiRecipient = new multi_recipient_1.EciesMultiRecipient(this.cryptoCore
|
|
38
|
+
this.singleRecipient = new single_recipient_1.EciesSingleRecipientCore(this._config);
|
|
39
|
+
this.multiRecipient = new multi_recipient_1.EciesMultiRecipient(this.cryptoCore);
|
|
54
40
|
this.utilities = new utilities_1.EciesUtilities();
|
|
55
41
|
}
|
|
56
42
|
get core() {
|
|
@@ -155,7 +141,7 @@ class ECIESService {
|
|
|
155
141
|
}
|
|
156
142
|
else {
|
|
157
143
|
const pluginEngine = (0, ecies_i18n_factory_1.getEciesPluginI18nEngine)();
|
|
158
|
-
throw new ecies_lib_1.ECIESError(ecies_lib_1.ECIESErrorTypeEnum.InvalidEncryptionType,
|
|
144
|
+
throw new ecies_lib_1.ECIESError(ecies_lib_1.ECIESErrorTypeEnum.InvalidEncryptionType, undefined, undefined, {
|
|
159
145
|
error: pluginEngine.translate(ecies_i18n_factory_1.NodeEciesComponentId, ecies_i18n_factory_1.NodeEciesStringKey.Error_InvalidEncryptionTypeOrNumberOfRecipients),
|
|
160
146
|
encryptionType: encryptionType,
|
|
161
147
|
recipients: String(recipients.length),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"service.js","sourceRoot":"","sources":["../../../../../../packages/digitaldefiance-node-ecies-lib/src/services/ecies/service.ts"],"names":[],"mappings":";;;AAAA,0DASoC;AAEpC,sEAKuC;AAKvC,+CAA4C;AAM5C,+CAAgD;AAChD,uDAAwD;AACxD,2CAA6C;AAC7C,yDAA8D;AAC9D,2CAA6C;AAE7C;;GAEG;AACH,MAAa,YAAY;IACJ,OAAO,CAAe;IACtB,UAAU,CAAkB;IAC5B,SAAS,CAAiB;IAC1B,eAAe,CAA2B;IAC1C,cAAc,CAAsB;IACpC,SAAS,CAAiB;
|
|
1
|
+
{"version":3,"file":"service.js","sourceRoot":"","sources":["../../../../../../packages/digitaldefiance-node-ecies-lib/src/services/ecies/service.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,12 +1,10 @@
|
|
|
1
1
|
import { EciesEncryptionType, EciesEncryptionTypeEnum, IECIESConfig } from '@digitaldefiance/ecies-lib';
|
|
2
|
-
import { PluginI18nEngine, CoreLanguageCode } from '@digitaldefiance/i18n-lib';
|
|
3
2
|
import { ISingleEncryptedParsedHeader } from '../../interfaces/single-encrypted-parsed-header';
|
|
4
3
|
import { EciesCryptoCore } from './crypto-core';
|
|
5
4
|
export declare class EciesSingleRecipientCore {
|
|
6
5
|
protected readonly cryptoCore: EciesCryptoCore;
|
|
7
6
|
protected readonly config: IECIESConfig;
|
|
8
|
-
|
|
9
|
-
constructor(config: IECIESConfig, engine?: PluginI18nEngine<CoreLanguageCode>);
|
|
7
|
+
constructor(config: IECIESConfig);
|
|
10
8
|
/**
|
|
11
9
|
* Get the size of the header for a given encryption type
|
|
12
10
|
* @param encryptionType The encryption type (single, simple, etc.)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"single-recipient.d.ts","sourceRoot":"","sources":["../../../../../../packages/digitaldefiance-node-ecies-lib/src/services/ecies/single-recipient.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,mBAAmB,EACnB,uBAAuB,EAOvB,YAAY,EAGb,MAAM,4BAA4B,CAAC;
|
|
1
|
+
{"version":3,"file":"single-recipient.d.ts","sourceRoot":"","sources":["../../../../../../packages/digitaldefiance-node-ecies-lib/src/services/ecies/single-recipient.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,mBAAmB,EACnB,uBAAuB,EAOvB,YAAY,EAGb,MAAM,4BAA4B,CAAC;AAgBpC,OAAO,EAAE,4BAA4B,EAAE,MAAM,iDAAiD,CAAC;AAC/F,OAAO,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAEhD,qBAAa,wBAAwB;IACnC,SAAS,CAAC,QAAQ,CAAC,UAAU,EAAE,eAAe,CAAC;IAC/C,SAAS,CAAC,QAAQ,CAAC,MAAM,EAAE,YAAY,CAAC;gBAGtC,MAAM,EAAE,YAAY;IAMtB;;;;OAIG;IACI,aAAa,CAAC,cAAc,EAAE,mBAAmB,GAAG,MAAM;IAajE;;;;;;;;;OASG;IACI,OAAO,CACZ,aAAa,EAAE,OAAO,EACtB,iBAAiB,EAAE,MAAM,EACzB,OAAO,EAAE,MAAM,EACf,QAAQ,GAAE,MAAwB,GACjC,MAAM;IA8HT;;;;;;;;OAQG;IACI,qBAAqB,CAC1B,cAAc,EAAE,uBAAuB,GAAG,SAAS,EACnD,IAAI,EAAE,MAAM,EACZ,YAAY,GAAE,MAAU,EACxB,OAAO,CAAC,EAAE;QACR,UAAU,CAAC,EAAE,MAAM,CAAC;KACrB,GACA;QAAE,MAAM,EAAE,4BAA4B,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,CAAA;KAAE;IA0M5E;;;;;;;;;;;OAWG;IACI,iBAAiB,CACtB,cAAc,EAAE,uBAAuB,GAAG,SAAS,EACnD,UAAU,EAAE,MAAM,EAClB,aAAa,EAAE,MAAM,EACrB,YAAY,GAAE,MAAU,EACxB,OAAO,CAAC,EAAE;QACR,UAAU,CAAC,EAAE,MAAM,CAAC;KACrB,GACA,MAAM;IAiDT;;;;;;;;;OASG;IACI,mBAAmB,CACxB,cAAc,EAAE,uBAAuB,GAAG,SAAS,EACnD,UAAU,EAAE,MAAM,EAClB,aAAa,EAAE,MAAM,EACrB,YAAY,GAAE,MAAU,EACxB,OAAO,CAAC,EAAE;QACR,UAAU,CAAC,EAAE,MAAM,CAAC;KACrB,GACA;QAAE,SAAS,EAAE,MAAM,CAAC;QAAC,aAAa,EAAE,MAAM,CAAA;KAAE;IA0C/C;;;;;;;;OAQG;IACI,qBAAqB,CAC1B,UAAU,EAAE,MAAM,EAClB,kBAAkB,EAAE,MAAM,EAC1B,EAAE,EAAE,MAAM,EACV,OAAO,EAAE,MAAM,EACf,SAAS,EAAE,MAAM,GAChB,MAAM;CAyHV"}
|
|
@@ -8,11 +8,9 @@ const crypto_core_1 = require("./crypto-core");
|
|
|
8
8
|
class EciesSingleRecipientCore {
|
|
9
9
|
cryptoCore;
|
|
10
10
|
config;
|
|
11
|
-
|
|
12
|
-
constructor(config, engine) {
|
|
11
|
+
constructor(config) {
|
|
13
12
|
this.config = config;
|
|
14
13
|
this.cryptoCore = new crypto_core_1.EciesCryptoCore(config);
|
|
15
|
-
this.engine = engine || (0, ecies_i18n_factory_1.createEciesTranslationEngine)();
|
|
16
14
|
}
|
|
17
15
|
/**
|
|
18
16
|
* Get the size of the header for a given encryption type
|
|
@@ -26,7 +24,7 @@ class EciesSingleRecipientCore {
|
|
|
26
24
|
case 'single':
|
|
27
25
|
return this.cryptoCore.consts.SINGLE.FIXED_OVERHEAD_SIZE;
|
|
28
26
|
default:
|
|
29
|
-
throw new ecies_lib_1.ECIESError(ecies_lib_1.ECIESErrorTypeEnum.InvalidEncryptionType
|
|
27
|
+
throw new ecies_lib_1.ECIESError(ecies_lib_1.ECIESErrorTypeEnum.InvalidEncryptionType);
|
|
30
28
|
}
|
|
31
29
|
}
|
|
32
30
|
/**
|
|
@@ -47,7 +45,7 @@ class EciesSingleRecipientCore {
|
|
|
47
45
|
encryptionTypeBuffer.writeUint8(ecies_lib_1.EciesEncryptionTypeMap[encryptionType]);
|
|
48
46
|
if (message.length > this.cryptoCore.consts.MAX_RAW_DATA_SIZE) {
|
|
49
47
|
const pluginEngine = (0, ecies_i18n_factory_1.getEciesPluginI18nEngine)();
|
|
50
|
-
throw new ecies_lib_1.ECIESError(ecies_lib_1.ECIESErrorTypeEnum.InvalidDataLength,
|
|
48
|
+
throw new ecies_lib_1.ECIESError(ecies_lib_1.ECIESErrorTypeEnum.InvalidDataLength, undefined, undefined, {
|
|
51
49
|
error: pluginEngine.translate(ecies_i18n_factory_1.NodeEciesComponentId, ecies_i18n_factory_1.NodeEciesStringKey.Error_MessageLengthExceedsMaximumAllowedSize),
|
|
52
50
|
maxLength: String(ecies_lib_1.UINT32_MAX),
|
|
53
51
|
messageLength: String(message.length),
|
|
@@ -70,15 +68,15 @@ class EciesSingleRecipientCore {
|
|
|
70
68
|
if (error instanceof Error) {
|
|
71
69
|
if ('code' in error &&
|
|
72
70
|
error.code === 'ERR_CRYPTO_ECDH_INVALID_PUBLIC_KEY') {
|
|
73
|
-
throw new ecies_lib_1.ECIESError(ecies_lib_1.ECIESErrorTypeEnum.InvalidRecipientPublicKey,
|
|
71
|
+
throw new ecies_lib_1.ECIESError(ecies_lib_1.ECIESErrorTypeEnum.InvalidRecipientPublicKey, undefined, undefined, {
|
|
74
72
|
nodeError: error.code,
|
|
75
73
|
});
|
|
76
74
|
}
|
|
77
|
-
throw new ecies_lib_1.ECIESError(ecies_lib_1.ECIESErrorTypeEnum.SecretComputationFailed,
|
|
75
|
+
throw new ecies_lib_1.ECIESError(ecies_lib_1.ECIESErrorTypeEnum.SecretComputationFailed, undefined, undefined, {
|
|
78
76
|
error: error.message,
|
|
79
77
|
});
|
|
80
78
|
}
|
|
81
|
-
throw new ecies_lib_1.ECIESError(ecies_lib_1.ECIESErrorTypeEnum.SecretComputationFailed
|
|
79
|
+
throw new ecies_lib_1.ECIESError(ecies_lib_1.ECIESErrorTypeEnum.SecretComputationFailed);
|
|
82
80
|
}
|
|
83
81
|
// Get the ephemeral public key and ensure it has the 0x04 prefix
|
|
84
82
|
let ephemeralPublicKey = ecdh.getPublicKey();
|
|
@@ -132,13 +130,13 @@ class EciesSingleRecipientCore {
|
|
|
132
130
|
// if a type is provided, ensure it matches the actual type
|
|
133
131
|
if (encryptionType !== undefined &&
|
|
134
132
|
actualEncryptionTypeEnum !== encryptionType) {
|
|
135
|
-
throw new ecies_lib_1.ECIESError(ecies_lib_1.ECIESErrorTypeEnum.InvalidEncryptionType,
|
|
133
|
+
throw new ecies_lib_1.ECIESError(ecies_lib_1.ECIESErrorTypeEnum.InvalidEncryptionType, undefined, undefined, {
|
|
136
134
|
expected: (0, ecies_lib_1.encryptionTypeToString)(encryptionType),
|
|
137
135
|
actual: (0, ecies_lib_1.encryptionTypeToString)(actualEncryptionTypeEnum),
|
|
138
136
|
});
|
|
139
137
|
}
|
|
140
138
|
if (actualEncryptionTypeEnum === ecies_lib_1.EciesEncryptionTypeEnum.Multiple) {
|
|
141
|
-
throw new ecies_lib_1.ECIESError(ecies_lib_1.ECIESErrorTypeEnum.InvalidEncryptionType,
|
|
139
|
+
throw new ecies_lib_1.ECIESError(ecies_lib_1.ECIESErrorTypeEnum.InvalidEncryptionType, undefined, undefined, {
|
|
142
140
|
expected: 'single or simple',
|
|
143
141
|
actual: (0, ecies_lib_1.encryptionTypeToString)(actualEncryptionTypeEnum),
|
|
144
142
|
});
|
|
@@ -149,7 +147,7 @@ class EciesSingleRecipientCore {
|
|
|
149
147
|
(includeLengthAndCrc
|
|
150
148
|
? this.cryptoCore.consts.SINGLE.FIXED_OVERHEAD_SIZE
|
|
151
149
|
: this.cryptoCore.consts.SIMPLE.FIXED_OVERHEAD_SIZE)) {
|
|
152
|
-
throw new ecies_lib_1.ECIESError(ecies_lib_1.ECIESErrorTypeEnum.InvalidEncryptedDataLength,
|
|
150
|
+
throw new ecies_lib_1.ECIESError(ecies_lib_1.ECIESErrorTypeEnum.InvalidEncryptedDataLength, undefined, undefined, {
|
|
153
151
|
required: String(this.cryptoCore.consts.SINGLE.FIXED_OVERHEAD_SIZE),
|
|
154
152
|
actual: String(data.length),
|
|
155
153
|
});
|
|
@@ -182,7 +180,7 @@ class EciesSingleRecipientCore {
|
|
|
182
180
|
options?.dataLength !== undefined &&
|
|
183
181
|
dataLength !== options.dataLength) {
|
|
184
182
|
const pluginEngine = (0, ecies_i18n_factory_1.getEciesPluginI18nEngine)();
|
|
185
|
-
throw new ecies_lib_1.ECIESError(ecies_lib_1.ECIESErrorTypeEnum.InvalidEncryptedDataLength,
|
|
183
|
+
throw new ecies_lib_1.ECIESError(ecies_lib_1.ECIESErrorTypeEnum.InvalidEncryptedDataLength, undefined, undefined, {
|
|
186
184
|
error: pluginEngine.translate(ecies_i18n_factory_1.NodeEciesComponentId, ecies_i18n_factory_1.NodeEciesStringKey.Error_EncryptedDataLengthMismatch),
|
|
187
185
|
expected: String(dataLength),
|
|
188
186
|
actual: String(options.dataLength),
|
|
@@ -196,7 +194,7 @@ class EciesSingleRecipientCore {
|
|
|
196
194
|
offset += dataLength;
|
|
197
195
|
}
|
|
198
196
|
if (includeLengthAndCrc && encryptedData.length !== dataLength) {
|
|
199
|
-
throw new ecies_lib_1.ECIESError(ecies_lib_1.ECIESErrorTypeEnum.InvalidEncryptedDataLength,
|
|
197
|
+
throw new ecies_lib_1.ECIESError(ecies_lib_1.ECIESErrorTypeEnum.InvalidEncryptedDataLength, undefined, undefined, {
|
|
200
198
|
expected: String(dataLength),
|
|
201
199
|
actual: String(encryptedData.length),
|
|
202
200
|
});
|
|
@@ -208,20 +206,20 @@ class EciesSingleRecipientCore {
|
|
|
208
206
|
// Validate all header components have the correct lengths
|
|
209
207
|
if (normalizedKey.length !== this.cryptoCore.consts.PUBLIC_KEY_LENGTH) {
|
|
210
208
|
const pluginEngine = (0, ecies_i18n_factory_1.getEciesPluginI18nEngine)();
|
|
211
|
-
throw new ecies_lib_1.ECIESError(ecies_lib_1.ECIESErrorTypeEnum.InvalidEphemeralPublicKey,
|
|
209
|
+
throw new ecies_lib_1.ECIESError(ecies_lib_1.ECIESErrorTypeEnum.InvalidEphemeralPublicKey, undefined, undefined, {
|
|
212
210
|
error: pluginEngine.translate(ecies_i18n_factory_1.NodeEciesComponentId, ecies_i18n_factory_1.NodeEciesStringKey.Error_EphemeralPublicKeyLengthMismatch),
|
|
213
211
|
expected: String(this.cryptoCore.consts.PUBLIC_KEY_LENGTH),
|
|
214
212
|
actual: String(normalizedKey.length),
|
|
215
213
|
});
|
|
216
214
|
}
|
|
217
215
|
if (iv.length !== this.cryptoCore.consts.IV_SIZE) {
|
|
218
|
-
throw new ecies_lib_1.ECIESError(ecies_lib_1.ECIESErrorTypeEnum.InvalidIVLength,
|
|
216
|
+
throw new ecies_lib_1.ECIESError(ecies_lib_1.ECIESErrorTypeEnum.InvalidIVLength, undefined, undefined, {
|
|
219
217
|
expected: String(this.cryptoCore.consts.IV_SIZE),
|
|
220
218
|
actual: String(iv.length),
|
|
221
219
|
});
|
|
222
220
|
}
|
|
223
221
|
if (authTag.length !== this.cryptoCore.consts.AUTH_TAG_SIZE) {
|
|
224
|
-
throw new ecies_lib_1.ECIESError(ecies_lib_1.ECIESErrorTypeEnum.InvalidAuthTagLength,
|
|
222
|
+
throw new ecies_lib_1.ECIESError(ecies_lib_1.ECIESErrorTypeEnum.InvalidAuthTagLength, undefined, undefined, {
|
|
225
223
|
expected: String(this.cryptoCore.consts.AUTH_TAG_SIZE),
|
|
226
224
|
actual: String(authTag.length),
|
|
227
225
|
});
|
|
@@ -260,7 +258,7 @@ class EciesSingleRecipientCore {
|
|
|
260
258
|
actualEncryptionTypeEnum !== encryptionType) {
|
|
261
259
|
const expectedType = (0, ecies_lib_1.encryptionTypeEnumToType)(encryptionType);
|
|
262
260
|
const actualEncryptionType = (0, ecies_lib_1.encryptionTypeEnumToType)(actualEncryptionTypeEnum);
|
|
263
|
-
throw new ecies_lib_1.ECIESError(ecies_lib_1.ECIESErrorTypeEnum.InvalidEncryptionType,
|
|
261
|
+
throw new ecies_lib_1.ECIESError(ecies_lib_1.ECIESErrorTypeEnum.InvalidEncryptionType, undefined, undefined, {
|
|
264
262
|
expected: expectedType,
|
|
265
263
|
actual: actualEncryptionType,
|
|
266
264
|
});
|
|
@@ -274,7 +272,7 @@ class EciesSingleRecipientCore {
|
|
|
274
272
|
if (error instanceof ecies_lib_1.ECIESError) {
|
|
275
273
|
throw error;
|
|
276
274
|
}
|
|
277
|
-
throw new ecies_lib_1.ECIESError(ecies_lib_1.ECIESErrorTypeEnum.DecryptionFailed,
|
|
275
|
+
throw new ecies_lib_1.ECIESError(ecies_lib_1.ECIESErrorTypeEnum.DecryptionFailed, undefined, undefined, {
|
|
278
276
|
error: error instanceof Error ? error.message : String(error),
|
|
279
277
|
});
|
|
280
278
|
}
|
|
@@ -305,7 +303,7 @@ class EciesSingleRecipientCore {
|
|
|
305
303
|
if (error instanceof ecies_lib_1.ECIESError) {
|
|
306
304
|
throw error;
|
|
307
305
|
}
|
|
308
|
-
throw new ecies_lib_1.ECIESError(ecies_lib_1.ECIESErrorTypeEnum.DecryptionFailed,
|
|
306
|
+
throw new ecies_lib_1.ECIESError(ecies_lib_1.ECIESErrorTypeEnum.DecryptionFailed, undefined, undefined, {
|
|
309
307
|
error: error instanceof Error ? error.message : String(error),
|
|
310
308
|
});
|
|
311
309
|
}
|
|
@@ -334,7 +332,7 @@ class EciesSingleRecipientCore {
|
|
|
334
332
|
}
|
|
335
333
|
catch (err) {
|
|
336
334
|
console.error('[ERROR][decrypt] Failed to compute shared secret:', err);
|
|
337
|
-
throw new ecies_lib_1.ECIESError(ecies_lib_1.ECIESErrorTypeEnum.DecryptionFailed,
|
|
335
|
+
throw new ecies_lib_1.ECIESError(ecies_lib_1.ECIESErrorTypeEnum.DecryptionFailed, undefined, undefined, {
|
|
338
336
|
originalError: err instanceof Error ? err.message : String(err),
|
|
339
337
|
stage: 'shared_secret_computation',
|
|
340
338
|
});
|
|
@@ -345,14 +343,14 @@ class EciesSingleRecipientCore {
|
|
|
345
343
|
const decipher = (0, crypto_1.createDecipheriv)(this.cryptoCore.consts.SYMMETRIC_ALGORITHM_CONFIGURATION, symKey, iv);
|
|
346
344
|
// Validate the tag and IV
|
|
347
345
|
if (authTag.length !== this.cryptoCore.consts.AUTH_TAG_SIZE) {
|
|
348
|
-
throw new ecies_lib_1.ECIESError(ecies_lib_1.ECIESErrorTypeEnum.DecryptionFailed,
|
|
346
|
+
throw new ecies_lib_1.ECIESError(ecies_lib_1.ECIESErrorTypeEnum.DecryptionFailed, undefined, undefined, {
|
|
349
347
|
expected: String(this.cryptoCore.consts.AUTH_TAG_SIZE),
|
|
350
348
|
actual: String(authTag.length),
|
|
351
349
|
stage: 'auth_tag_validation',
|
|
352
350
|
});
|
|
353
351
|
}
|
|
354
352
|
if (iv.length !== this.cryptoCore.consts.IV_SIZE) {
|
|
355
|
-
throw new ecies_lib_1.ECIESError(ecies_lib_1.ECIESErrorTypeEnum.DecryptionFailed,
|
|
353
|
+
throw new ecies_lib_1.ECIESError(ecies_lib_1.ECIESErrorTypeEnum.DecryptionFailed, undefined, undefined, {
|
|
356
354
|
expected: String(this.cryptoCore.consts.IV_SIZE),
|
|
357
355
|
actual: String(iv.length),
|
|
358
356
|
stage: 'iv_validation',
|
|
@@ -373,7 +371,7 @@ class EciesSingleRecipientCore {
|
|
|
373
371
|
return result;
|
|
374
372
|
}
|
|
375
373
|
catch (err) {
|
|
376
|
-
throw new ecies_lib_1.ECIESError(ecies_lib_1.ECIESErrorTypeEnum.DecryptionFailed,
|
|
374
|
+
throw new ecies_lib_1.ECIESError(ecies_lib_1.ECIESErrorTypeEnum.DecryptionFailed, undefined, undefined, {
|
|
377
375
|
error: err instanceof Error ? err.message : String(err),
|
|
378
376
|
stage: 'decipher_operation',
|
|
379
377
|
});
|
|
@@ -384,7 +382,7 @@ class EciesSingleRecipientCore {
|
|
|
384
382
|
throw error;
|
|
385
383
|
}
|
|
386
384
|
// Wrap non-EciesError in an EciesError
|
|
387
|
-
throw new ecies_lib_1.ECIESError(ecies_lib_1.ECIESErrorTypeEnum.DecryptionFailed,
|
|
385
|
+
throw new ecies_lib_1.ECIESError(ecies_lib_1.ECIESErrorTypeEnum.DecryptionFailed, undefined, undefined, {
|
|
388
386
|
error: error instanceof Error ? error.message : String(error),
|
|
389
387
|
privateKeyLength: String(privateKey.length),
|
|
390
388
|
ephemeralPublicKeyLength: String(ephemeralPublicKey.length),
|