@digitaldefiance/node-ecies-lib 1.1.10 → 1.1.12
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 +10 -0
- package/dist/constants.js +44 -39
- package/dist/constants.js.map +1 -1
- package/dist/enumerations/index.js +17 -1
- package/dist/enumerations/index.js.map +1 -1
- package/dist/enumerations/pbkdf2-profile.js +5 -2
- package/dist/enumerations/pbkdf2-profile.js.map +1 -1
- package/dist/i18n/ecies-i18n-factory.d.ts +1 -0
- package/dist/i18n/ecies-i18n-factory.d.ts.map +1 -1
- package/dist/i18n/ecies-i18n-factory.js +27 -20
- package/dist/i18n/ecies-i18n-factory.js.map +1 -1
- package/dist/i18n/index.js +17 -1
- package/dist/i18n/index.js.map +1 -1
- package/dist/index.js +23 -7
- package/dist/index.js.map +1 -1
- package/dist/interfaces/authenticated-cipher.js +2 -1
- package/dist/interfaces/authenticated-decipher.js +2 -1
- package/dist/interfaces/checksum-config.js +2 -1
- package/dist/interfaces/checksum-consts.js +2 -1
- package/dist/interfaces/constants.js +2 -1
- package/dist/interfaces/ecies-consts.js +2 -1
- package/dist/interfaces/encryption-consts.js +2 -1
- package/dist/interfaces/index.js +33 -17
- package/dist/interfaces/index.js.map +1 -1
- package/dist/interfaces/keypair-buffer-with-un-encrypted-private-key.js +2 -1
- package/dist/interfaces/keyring-consts.js +2 -1
- package/dist/interfaces/member-operational.js +2 -1
- package/dist/interfaces/member-with-mnemonic.js +2 -1
- package/dist/interfaces/multi-encrypted-message.js +2 -1
- package/dist/interfaces/multi-encrypted-parsed-header.js +2 -1
- package/dist/interfaces/pbkdf-profiles.js +2 -1
- package/dist/interfaces/pbkdf2-result.js +2 -1
- package/dist/interfaces/signing-key-private-key-info.js +2 -1
- package/dist/interfaces/simple-keypair-buffer.js +2 -1
- package/dist/interfaces/simple-keypair.js +2 -1
- package/dist/interfaces/simple-public-key-only-buffer.js +2 -1
- package/dist/interfaces/simple-public-key-only.js +2 -1
- package/dist/interfaces/single-encrypted-parsed-header.js +2 -1
- package/dist/interfaces/wallet-seed.js +2 -1
- package/dist/interfaces/wrapped-key-consts.js +2 -1
- package/dist/member.js +35 -30
- package/dist/member.js.map +1 -1
- package/dist/services/aes-gcm.d.ts +1 -1
- package/dist/services/aes-gcm.d.ts.map +1 -1
- package/dist/services/aes-gcm.js +14 -9
- package/dist/services/aes-gcm.js.map +1 -1
- package/dist/services/ecies/crypto-core.d.ts.map +1 -1
- package/dist/services/ecies/crypto-core.js +30 -25
- package/dist/services/ecies/crypto-core.js.map +1 -1
- package/dist/services/ecies/file.js +39 -2
- package/dist/services/ecies/file.js.map +1 -1
- package/dist/services/ecies/index.js +23 -7
- package/dist/services/ecies/index.js.map +1 -1
- package/dist/services/ecies/multi-recipient.js +50 -46
- package/dist/services/ecies/multi-recipient.js.map +1 -1
- package/dist/services/ecies/service.d.ts.map +1 -1
- package/dist/services/ecies/service.js +26 -21
- package/dist/services/ecies/service.js.map +1 -1
- package/dist/services/ecies/signature.js +15 -11
- package/dist/services/ecies/signature.js.map +1 -1
- package/dist/services/ecies/single-recipient.js +60 -56
- package/dist/services/ecies/single-recipient.js.map +1 -1
- package/dist/services/ecies/utilities.js +17 -13
- package/dist/services/ecies/utilities.js.map +1 -1
- package/dist/services/index.js +19 -3
- package/dist/services/index.js.map +1 -1
- package/dist/services/pbkdf2.d.ts.map +1 -1
- package/dist/services/pbkdf2.js +25 -20
- package/dist/services/pbkdf2.js.map +1 -1
- package/dist/types.js +2 -1
- package/dist/utils.d.ts.map +1 -1
- package/dist/utils.js +26 -22
- package/dist/utils.js.map +1 -1
- package/package.json +3 -4
- package/dist/interfaces/fec-consts.d.ts +0 -5
- package/dist/interfaces/fec-consts.d.ts.map +0 -1
- package/dist/interfaces/fec-consts.js +0 -2
- package/dist/interfaces/fec-consts.js.map +0 -1
- package/dist/services/ecies/crypto-core.debug.d.ts +0 -13
- package/dist/services/ecies/crypto-core.debug.d.ts.map +0 -1
- package/dist/services/ecies/crypto-core.debug.js +0 -91
- package/dist/services/ecies/crypto-core.debug.js.map +0 -1
- package/dist/services/ecies/debug-aes-gcm.d.ts +0 -2
- package/dist/services/ecies/debug-aes-gcm.d.ts.map +0 -1
- package/dist/services/ecies/debug-aes-gcm.js +0 -106
- package/dist/services/ecies/debug-aes-gcm.js.map +0 -1
- package/dist/services/ecies/debug-ecdh.d.ts +0 -2
- package/dist/services/ecies/debug-ecdh.d.ts.map +0 -1
- package/dist/services/ecies/debug-ecdh.js +0 -123
- package/dist/services/ecies/debug-ecdh.js.map +0 -1
- package/dist/services/ecies/debug-ecies-burnbag.d.ts +0 -2
- package/dist/services/ecies/debug-ecies-burnbag.d.ts.map +0 -1
- package/dist/services/ecies/debug-ecies-burnbag.js +0 -134
- package/dist/services/ecies/debug-ecies-burnbag.js.map +0 -1
- package/dist/services/ecies/debug-ecies.d.ts +0 -2
- package/dist/services/ecies/debug-ecies.d.ts.map +0 -1
- package/dist/services/ecies/debug-ecies.js +0 -110
- package/dist/services/ecies/debug-ecies.js.map +0 -1
- package/dist/services/ecies/debug-test.d.ts +0 -2
- package/dist/services/ecies/debug-test.d.ts.map +0 -1
- package/dist/services/ecies/debug-test.js +0 -57
- package/dist/services/ecies/debug-test.js.map +0 -1
|
@@ -1,14 +1,18 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.ECIESService = void 0;
|
|
4
|
+
const ecies_lib_1 = require("@digitaldefiance/ecies-lib");
|
|
5
|
+
const ecies_i18n_factory_1 = require("../../i18n/ecies-i18n-factory");
|
|
6
|
+
const crypto_core_1 = require("./crypto-core");
|
|
7
|
+
const multi_recipient_1 = require("./multi-recipient");
|
|
8
|
+
const signature_1 = require("./signature");
|
|
9
|
+
const single_recipient_1 = require("./single-recipient");
|
|
10
|
+
const utilities_1 = require("./utilities");
|
|
11
|
+
const constants_1 = require("../../constants");
|
|
8
12
|
/**
|
|
9
13
|
* Unified ECIES service that integrates all the modular components
|
|
10
14
|
*/
|
|
11
|
-
|
|
15
|
+
class ECIESService {
|
|
12
16
|
_config;
|
|
13
17
|
cryptoCore;
|
|
14
18
|
signature;
|
|
@@ -16,7 +20,7 @@ export class ECIESService {
|
|
|
16
20
|
multiRecipient;
|
|
17
21
|
utilities;
|
|
18
22
|
engine;
|
|
19
|
-
constructor(engineOrConfig, config, eciesParams) {
|
|
23
|
+
constructor(engineOrConfig, config, eciesParams = constants_1.Constants.ECIES) {
|
|
20
24
|
// Determine if first parameter is engine or config
|
|
21
25
|
let engine;
|
|
22
26
|
let actualConfig;
|
|
@@ -27,10 +31,10 @@ export class ECIESService {
|
|
|
27
31
|
}
|
|
28
32
|
else {
|
|
29
33
|
// First parameter is config or undefined
|
|
30
|
-
engine = createEciesTranslationEngine();
|
|
34
|
+
engine = (0, ecies_i18n_factory_1.createEciesTranslationEngine)();
|
|
31
35
|
actualConfig = engineOrConfig || {};
|
|
32
36
|
}
|
|
33
|
-
const eciesConsts = eciesParams
|
|
37
|
+
const eciesConsts = eciesParams;
|
|
34
38
|
this._config = {
|
|
35
39
|
...config,
|
|
36
40
|
curveName: eciesConsts.CURVE_NAME,
|
|
@@ -43,11 +47,11 @@ export class ECIESService {
|
|
|
43
47
|
};
|
|
44
48
|
// Initialize all components
|
|
45
49
|
this.engine = engine;
|
|
46
|
-
this.cryptoCore = new EciesCryptoCore(this._config, eciesParams);
|
|
47
|
-
this.signature = new EciesSignature(this.cryptoCore);
|
|
48
|
-
this.singleRecipient = new EciesSingleRecipientCore(this._config, engine);
|
|
49
|
-
this.multiRecipient = new EciesMultiRecipient(this.cryptoCore, engine);
|
|
50
|
-
this.utilities = new EciesUtilities();
|
|
50
|
+
this.cryptoCore = new crypto_core_1.EciesCryptoCore(this._config, eciesParams);
|
|
51
|
+
this.signature = new signature_1.EciesSignature(this.cryptoCore);
|
|
52
|
+
this.singleRecipient = new single_recipient_1.EciesSingleRecipientCore(this._config, engine);
|
|
53
|
+
this.multiRecipient = new multi_recipient_1.EciesMultiRecipient(this.cryptoCore, engine);
|
|
54
|
+
this.utilities = new utilities_1.EciesUtilities();
|
|
51
55
|
}
|
|
52
56
|
get core() {
|
|
53
57
|
return this.cryptoCore;
|
|
@@ -90,8 +94,8 @@ export class ECIESService {
|
|
|
90
94
|
}
|
|
91
95
|
decryptSimpleOrSingleWithHeader(decryptSimple, privateKey, encryptedData, preambleSize = 0, options) {
|
|
92
96
|
return this.singleRecipient.decryptWithHeader(decryptSimple
|
|
93
|
-
? EciesEncryptionTypeEnum.Simple
|
|
94
|
-
: EciesEncryptionTypeEnum.Single, privateKey, encryptedData, preambleSize, options);
|
|
97
|
+
? ecies_lib_1.EciesEncryptionTypeEnum.Simple
|
|
98
|
+
: ecies_lib_1.EciesEncryptionTypeEnum.Single, privateKey, encryptedData, preambleSize, options);
|
|
95
99
|
}
|
|
96
100
|
decryptSimpleOrSingleWithHeaderEx(encryptionType, privateKey, encryptedData, preambleSize = 0, options) {
|
|
97
101
|
return this.singleRecipient.decryptWithHeaderEx(encryptionType, privateKey, encryptedData, preambleSize, options);
|
|
@@ -150,13 +154,14 @@ export class ECIESService {
|
|
|
150
154
|
return result.encryptedMessage;
|
|
151
155
|
}
|
|
152
156
|
else {
|
|
153
|
-
const pluginEngine = getEciesPluginI18nEngine();
|
|
154
|
-
throw new ECIESError(ECIESErrorTypeEnum.InvalidEncryptionType, this.engine, undefined, undefined, {
|
|
155
|
-
error: pluginEngine.translate(
|
|
157
|
+
const pluginEngine = (0, ecies_i18n_factory_1.getEciesPluginI18nEngine)();
|
|
158
|
+
throw new ecies_lib_1.ECIESError(ecies_lib_1.ECIESErrorTypeEnum.InvalidEncryptionType, this.engine, undefined, undefined, {
|
|
159
|
+
error: pluginEngine.translate(ecies_i18n_factory_1.NodeEciesComponentId, ecies_i18n_factory_1.NodeEciesStringKey.Error_InvalidEncryptionTypeOrNumberOfRecipients),
|
|
156
160
|
encryptionType: encryptionType,
|
|
157
161
|
recipients: String(recipients.length),
|
|
158
162
|
});
|
|
159
163
|
}
|
|
160
164
|
}
|
|
161
165
|
}
|
|
166
|
+
exports.ECIESService = ECIESService;
|
|
162
167
|
//# sourceMappingURL=service.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"service.js","sourceRoot":"","sources":["../../../src/services/ecies/service.ts"],"names":[],"mappings":"AAAA,
|
|
1
|
+
{"version":3,"file":"service.js","sourceRoot":"","sources":["../../../src/services/ecies/service.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,11 +1,14 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.EciesSignature = void 0;
|
|
4
|
+
const ecies_lib_1 = require("@digitaldefiance/ecies-lib");
|
|
5
|
+
const secp256k1_js_1 = require("@noble/curves/secp256k1.js");
|
|
6
|
+
const sha2_js_1 = require("@noble/hashes/sha2.js");
|
|
7
|
+
const ecies_i18n_factory_1 = require("../../i18n/ecies-i18n-factory");
|
|
5
8
|
/**
|
|
6
9
|
* Signature-related functions for ECIES
|
|
7
10
|
*/
|
|
8
|
-
|
|
11
|
+
class EciesSignature {
|
|
9
12
|
cryptoCore;
|
|
10
13
|
constructor(cryptoCore) {
|
|
11
14
|
this.cryptoCore = cryptoCore;
|
|
@@ -17,8 +20,8 @@ export class EciesSignature {
|
|
|
17
20
|
* @returns The signature (64 bytes: r + s).
|
|
18
21
|
*/
|
|
19
22
|
signMessage(privateKey, data) {
|
|
20
|
-
const hash = sha256(data);
|
|
21
|
-
const signature = secp256k1.sign(hash, privateKey, {
|
|
23
|
+
const hash = (0, sha2_js_1.sha256)(data);
|
|
24
|
+
const signature = secp256k1_js_1.secp256k1.sign(hash, privateKey, {
|
|
22
25
|
format: 'compact',
|
|
23
26
|
extraEntropy: false,
|
|
24
27
|
});
|
|
@@ -33,17 +36,17 @@ export class EciesSignature {
|
|
|
33
36
|
*/
|
|
34
37
|
verifyMessage(publicKey, data, signature) {
|
|
35
38
|
if (signature.length !== 64) {
|
|
36
|
-
throw new ECIESError(ECIESErrorTypeEnum.InvalidSignature, createEciesTranslationEngine());
|
|
39
|
+
throw new ecies_lib_1.ECIESError(ecies_lib_1.ECIESErrorTypeEnum.InvalidSignature, (0, ecies_i18n_factory_1.createEciesTranslationEngine)());
|
|
37
40
|
}
|
|
38
41
|
// Normalize and validate the public key
|
|
39
42
|
try {
|
|
40
43
|
publicKey = this.cryptoCore.normalizePublicKey(publicKey);
|
|
41
44
|
}
|
|
42
45
|
catch {
|
|
43
|
-
throw new ECIESError(ECIESErrorTypeEnum.InvalidSenderPublicKey, createEciesTranslationEngine());
|
|
46
|
+
throw new ecies_lib_1.ECIESError(ecies_lib_1.ECIESErrorTypeEnum.InvalidSenderPublicKey, (0, ecies_i18n_factory_1.createEciesTranslationEngine)());
|
|
44
47
|
}
|
|
45
|
-
const hash = sha256(data);
|
|
46
|
-
return secp256k1.verify(signature, hash, publicKey);
|
|
48
|
+
const hash = (0, sha2_js_1.sha256)(data);
|
|
49
|
+
return secp256k1_js_1.secp256k1.verify(signature, hash, publicKey);
|
|
47
50
|
}
|
|
48
51
|
/**
|
|
49
52
|
* Converts a signature string to a signature buffer.
|
|
@@ -62,4 +65,5 @@ export class EciesSignature {
|
|
|
62
65
|
return signatureBuffer.toString('hex');
|
|
63
66
|
}
|
|
64
67
|
}
|
|
68
|
+
exports.EciesSignature = EciesSignature;
|
|
65
69
|
//# sourceMappingURL=signature.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"signature.js","sourceRoot":"","sources":["../../../src/services/ecies/signature.ts"],"names":[],"mappings":"AAAA,
|
|
1
|
+
{"version":3,"file":"signature.js","sourceRoot":"","sources":["../../../src/services/ecies/signature.ts"],"names":[],"mappings":";;;AAAA,0DAIoC;AACpC,6DAAuD;AACvD,mDAA+C;AAC/C,sEAA6E;AAI7E;;GAEG;AACH,MAAa,cAAc;IACR,UAAU,CAAkB;IAE7C,YAAY,UAA2B;QACrC,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;IAC/B,CAAC;IAED;;;;;OAKG;IACI,WAAW,CAAC,UAAkB,EAAE,IAAY;QACjD,MAAM,IAAI,GAAG,IAAA,gBAAM,EAAC,IAAI,CAAC,CAAC;QAC1B,MAAM,SAAS,GAAG,wBAAS,CAAC,IAAI,CAAC,IAAI,EAAE,UAAU,EAAE;YACjD,MAAM,EAAE,SAAS;YACjB,YAAY,EAAE,KAAK;SACpB,CAAC,CAAC;QACH,OAAO,MAAM,CAAC,IAAI,CAAC,SAAS,CAAoB,CAAC;IACnD,CAAC;IAED;;;;;;OAMG;IACI,aAAa,CAClB,SAAiB,EACjB,IAAY,EACZ,SAA0B;QAE1B,IAAI,SAAS,CAAC,MAAM,KAAK,EAAE,EAAE,CAAC;YAC5B,MAAM,IAAI,sBAAU,CAClB,8BAAkB,CAAC,gBAAgB,EACnC,IAAA,iDAA4B,GAAE,CAC/B,CAAC;QACJ,CAAC;QAED,wCAAwC;QACxC,IAAI,CAAC;YACH,SAAS,GAAG,IAAI,CAAC,UAAU,CAAC,kBAAkB,CAAC,SAAS,CAAC,CAAC;QAC5D,CAAC;QAAC,MAAM,CAAC;YACP,MAAM,IAAI,sBAAU,CAClB,8BAAkB,CAAC,sBAAsB,EACzC,IAAA,iDAA4B,GAAE,CAC/B,CAAC;QACJ,CAAC;QAED,MAAM,IAAI,GAAG,IAAA,gBAAM,EAAC,IAAI,CAAC,CAAC;QAC1B,OAAO,wBAAS,CAAC,MAAM,CAAC,SAAS,EAAE,IAAI,EAAE,SAAS,CAAC,CAAC;IACtD,CAAC;IAED;;;;OAIG;IACI,gCAAgC,CACrC,eAA0B;QAE1B,OAAO,MAAM,CAAC,IAAI,CAAC,eAAe,EAAE,KAAK,CAAoB,CAAC;IAChE,CAAC;IAED;;;;OAIG;IACI,gCAAgC,CACrC,eAAgC;QAEhC,OAAO,eAAe,CAAC,QAAQ,CAAC,KAAK,CAAoB,CAAC;IAC5D,CAAC;CACF;AA5ED,wCA4EC"}
|
|
@@ -1,15 +1,18 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.EciesSingleRecipientCore = void 0;
|
|
4
|
+
const ecies_lib_1 = require("@digitaldefiance/ecies-lib");
|
|
5
|
+
const crypto_1 = require("crypto");
|
|
6
|
+
const ecies_i18n_factory_1 = require("../../i18n/ecies-i18n-factory");
|
|
7
|
+
const crypto_core_1 = require("./crypto-core");
|
|
8
|
+
class EciesSingleRecipientCore {
|
|
6
9
|
cryptoCore;
|
|
7
10
|
config;
|
|
8
11
|
engine;
|
|
9
12
|
constructor(config, engine) {
|
|
10
13
|
this.config = config;
|
|
11
|
-
this.cryptoCore = new EciesCryptoCore(config);
|
|
12
|
-
this.engine = engine || createEciesTranslationEngine();
|
|
14
|
+
this.cryptoCore = new crypto_core_1.EciesCryptoCore(config);
|
|
15
|
+
this.engine = engine || (0, ecies_i18n_factory_1.createEciesTranslationEngine)();
|
|
13
16
|
}
|
|
14
17
|
/**
|
|
15
18
|
* Get the size of the header for a given encryption type
|
|
@@ -23,7 +26,7 @@ export class EciesSingleRecipientCore {
|
|
|
23
26
|
case 'single':
|
|
24
27
|
return this.cryptoCore.consts.SINGLE.FIXED_OVERHEAD_SIZE;
|
|
25
28
|
default:
|
|
26
|
-
throw new ECIESError(ECIESErrorTypeEnum.InvalidEncryptionType, this.engine);
|
|
29
|
+
throw new ecies_lib_1.ECIESError(ecies_lib_1.ECIESErrorTypeEnum.InvalidEncryptionType, this.engine);
|
|
27
30
|
}
|
|
28
31
|
}
|
|
29
32
|
/**
|
|
@@ -41,17 +44,17 @@ export class EciesSingleRecipientCore {
|
|
|
41
44
|
? 'simple'
|
|
42
45
|
: 'single';
|
|
43
46
|
const encryptionTypeBuffer = Buffer.alloc(1);
|
|
44
|
-
encryptionTypeBuffer.writeUint8(EciesEncryptionTypeMap[encryptionType]);
|
|
47
|
+
encryptionTypeBuffer.writeUint8(ecies_lib_1.EciesEncryptionTypeMap[encryptionType]);
|
|
45
48
|
if (message.length > this.cryptoCore.consts.MAX_RAW_DATA_SIZE) {
|
|
46
|
-
const pluginEngine = getEciesPluginI18nEngine();
|
|
47
|
-
throw new ECIESError(ECIESErrorTypeEnum.InvalidDataLength, this.engine, undefined, undefined, {
|
|
48
|
-
error: pluginEngine.translate(
|
|
49
|
-
maxLength: String(UINT32_MAX),
|
|
49
|
+
const pluginEngine = (0, ecies_i18n_factory_1.getEciesPluginI18nEngine)();
|
|
50
|
+
throw new ecies_lib_1.ECIESError(ecies_lib_1.ECIESErrorTypeEnum.InvalidDataLength, this.engine, undefined, undefined, {
|
|
51
|
+
error: pluginEngine.translate(ecies_i18n_factory_1.NodeEciesComponentId, ecies_i18n_factory_1.NodeEciesStringKey.Error_MessageLengthExceedsMaximumAllowedSize),
|
|
52
|
+
maxLength: String(ecies_lib_1.UINT32_MAX),
|
|
50
53
|
messageLength: String(message.length),
|
|
51
54
|
});
|
|
52
55
|
}
|
|
53
56
|
// Generate ephemeral ECDH key pair
|
|
54
|
-
const ecdh = createECDH(this.config.curveName);
|
|
57
|
+
const ecdh = (0, crypto_1.createECDH)(this.config.curveName);
|
|
55
58
|
ecdh.generateKeys();
|
|
56
59
|
// Compute shared secret
|
|
57
60
|
let sharedSecret;
|
|
@@ -67,15 +70,15 @@ export class EciesSingleRecipientCore {
|
|
|
67
70
|
if (error instanceof Error) {
|
|
68
71
|
if ('code' in error &&
|
|
69
72
|
error.code === 'ERR_CRYPTO_ECDH_INVALID_PUBLIC_KEY') {
|
|
70
|
-
throw new ECIESError(ECIESErrorTypeEnum.InvalidRecipientPublicKey, this.engine, undefined, undefined, {
|
|
73
|
+
throw new ecies_lib_1.ECIESError(ecies_lib_1.ECIESErrorTypeEnum.InvalidRecipientPublicKey, this.engine, undefined, undefined, {
|
|
71
74
|
nodeError: error.code,
|
|
72
75
|
});
|
|
73
76
|
}
|
|
74
|
-
throw new ECIESError(ECIESErrorTypeEnum.SecretComputationFailed, this.engine, undefined, undefined, {
|
|
77
|
+
throw new ecies_lib_1.ECIESError(ecies_lib_1.ECIESErrorTypeEnum.SecretComputationFailed, this.engine, undefined, undefined, {
|
|
75
78
|
error: error.message,
|
|
76
79
|
});
|
|
77
80
|
}
|
|
78
|
-
throw new ECIESError(ECIESErrorTypeEnum.SecretComputationFailed, this.engine);
|
|
81
|
+
throw new ecies_lib_1.ECIESError(ecies_lib_1.ECIESErrorTypeEnum.SecretComputationFailed, this.engine);
|
|
79
82
|
}
|
|
80
83
|
// Get the ephemeral public key and ensure it has the 0x04 prefix
|
|
81
84
|
let ephemeralPublicKey = ecdh.getPublicKey();
|
|
@@ -86,11 +89,11 @@ export class EciesSingleRecipientCore {
|
|
|
86
89
|
]);
|
|
87
90
|
}
|
|
88
91
|
// Generate random IV
|
|
89
|
-
const iv = randomBytes(this.cryptoCore.consts.IV_SIZE);
|
|
92
|
+
const iv = (0, crypto_1.randomBytes)(this.cryptoCore.consts.IV_SIZE);
|
|
90
93
|
// Get the key from the shared secret (always use first 32 bytes)
|
|
91
94
|
const symKey = sharedSecret.subarray(0, this.cryptoCore.consts.SYMMETRIC.KEY_SIZE);
|
|
92
95
|
// Create cipher with the derived symmetric key
|
|
93
|
-
const cipher = createCipheriv(this.cryptoCore.consts.SYMMETRIC_ALGORITHM_CONFIGURATION, symKey, iv);
|
|
96
|
+
const cipher = (0, crypto_1.createCipheriv)(this.cryptoCore.consts.SYMMETRIC_ALGORITHM_CONFIGURATION, symKey, iv);
|
|
94
97
|
// Ensure auto padding is enabled
|
|
95
98
|
cipher.setAutoPadding(true);
|
|
96
99
|
// Encrypt the message
|
|
@@ -99,7 +102,7 @@ export class EciesSingleRecipientCore {
|
|
|
99
102
|
// Get and explicitly set the authentication tag to max tag length for consistency
|
|
100
103
|
const authTag = cipher.getAuthTag();
|
|
101
104
|
// Add a length prefix to the encrypted data to ensure we can extract the exact number of bytes during decryption
|
|
102
|
-
const lengthBuffer = encryptionType === 'simple' ? Buffer.alloc(0) : Buffer.alloc(UINT64_SIZE);
|
|
105
|
+
const lengthBuffer = encryptionType === 'simple' ? Buffer.alloc(0) : Buffer.alloc(ecies_lib_1.UINT64_SIZE);
|
|
103
106
|
if (encryptionType === 'single') {
|
|
104
107
|
lengthBuffer.writeBigUInt64BE(BigInt(encrypted.length));
|
|
105
108
|
}
|
|
@@ -125,28 +128,28 @@ export class EciesSingleRecipientCore {
|
|
|
125
128
|
*/
|
|
126
129
|
parseEncryptedMessage(encryptionType, data, preambleSize = 0, options) {
|
|
127
130
|
// read the encryption type from the first byte after the preamble
|
|
128
|
-
const actualEncryptionTypeEnum = ensureEciesEncryptionTypeEnum(data.readUInt8(preambleSize));
|
|
131
|
+
const actualEncryptionTypeEnum = (0, ecies_lib_1.ensureEciesEncryptionTypeEnum)(data.readUInt8(preambleSize));
|
|
129
132
|
// if a type is provided, ensure it matches the actual type
|
|
130
133
|
if (encryptionType !== undefined &&
|
|
131
134
|
actualEncryptionTypeEnum !== encryptionType) {
|
|
132
|
-
throw new ECIESError(ECIESErrorTypeEnum.InvalidEncryptionType, this.engine, undefined, undefined, {
|
|
133
|
-
expected: encryptionTypeToString(encryptionType),
|
|
134
|
-
actual: encryptionTypeToString(actualEncryptionTypeEnum),
|
|
135
|
+
throw new ecies_lib_1.ECIESError(ecies_lib_1.ECIESErrorTypeEnum.InvalidEncryptionType, this.engine, undefined, undefined, {
|
|
136
|
+
expected: (0, ecies_lib_1.encryptionTypeToString)(encryptionType),
|
|
137
|
+
actual: (0, ecies_lib_1.encryptionTypeToString)(actualEncryptionTypeEnum),
|
|
135
138
|
});
|
|
136
139
|
}
|
|
137
|
-
if (actualEncryptionTypeEnum === EciesEncryptionTypeEnum.Multiple) {
|
|
138
|
-
throw new ECIESError(ECIESErrorTypeEnum.InvalidEncryptionType, this.engine, undefined, undefined, {
|
|
140
|
+
if (actualEncryptionTypeEnum === ecies_lib_1.EciesEncryptionTypeEnum.Multiple) {
|
|
141
|
+
throw new ecies_lib_1.ECIESError(ecies_lib_1.ECIESErrorTypeEnum.InvalidEncryptionType, this.engine, undefined, undefined, {
|
|
139
142
|
expected: 'single or simple',
|
|
140
|
-
actual: encryptionTypeToString(actualEncryptionTypeEnum),
|
|
143
|
+
actual: (0, ecies_lib_1.encryptionTypeToString)(actualEncryptionTypeEnum),
|
|
141
144
|
});
|
|
142
145
|
}
|
|
143
|
-
const includeLengthAndCrc = actualEncryptionTypeEnum === EciesEncryptionTypeEnum.Single;
|
|
146
|
+
const includeLengthAndCrc = actualEncryptionTypeEnum === ecies_lib_1.EciesEncryptionTypeEnum.Single;
|
|
144
147
|
// check for impossible message
|
|
145
148
|
if (data.length <
|
|
146
149
|
(includeLengthAndCrc
|
|
147
150
|
? this.cryptoCore.consts.SINGLE.FIXED_OVERHEAD_SIZE
|
|
148
151
|
: this.cryptoCore.consts.SIMPLE.FIXED_OVERHEAD_SIZE)) {
|
|
149
|
-
throw new ECIESError(ECIESErrorTypeEnum.InvalidEncryptedDataLength, this.engine, undefined, undefined, {
|
|
152
|
+
throw new ecies_lib_1.ECIESError(ecies_lib_1.ECIESErrorTypeEnum.InvalidEncryptedDataLength, this.engine, undefined, undefined, {
|
|
150
153
|
required: String(this.cryptoCore.consts.SINGLE.FIXED_OVERHEAD_SIZE),
|
|
151
154
|
actual: String(data.length),
|
|
152
155
|
});
|
|
@@ -178,9 +181,9 @@ export class EciesSingleRecipientCore {
|
|
|
178
181
|
if (includeLengthAndCrc &&
|
|
179
182
|
options?.dataLength !== undefined &&
|
|
180
183
|
dataLength !== options.dataLength) {
|
|
181
|
-
const pluginEngine = getEciesPluginI18nEngine();
|
|
182
|
-
throw new ECIESError(ECIESErrorTypeEnum.InvalidEncryptedDataLength, this.engine, undefined, undefined, {
|
|
183
|
-
error: pluginEngine.translate(
|
|
184
|
+
const pluginEngine = (0, ecies_i18n_factory_1.getEciesPluginI18nEngine)();
|
|
185
|
+
throw new ecies_lib_1.ECIESError(ecies_lib_1.ECIESErrorTypeEnum.InvalidEncryptedDataLength, this.engine, undefined, undefined, {
|
|
186
|
+
error: pluginEngine.translate(ecies_i18n_factory_1.NodeEciesComponentId, ecies_i18n_factory_1.NodeEciesStringKey.Error_EncryptedDataLengthMismatch),
|
|
184
187
|
expected: String(dataLength),
|
|
185
188
|
actual: String(options.dataLength),
|
|
186
189
|
});
|
|
@@ -193,7 +196,7 @@ export class EciesSingleRecipientCore {
|
|
|
193
196
|
offset += dataLength;
|
|
194
197
|
}
|
|
195
198
|
if (includeLengthAndCrc && encryptedData.length !== dataLength) {
|
|
196
|
-
throw new ECIESError(ECIESErrorTypeEnum.InvalidEncryptedDataLength, this.engine, undefined, undefined, {
|
|
199
|
+
throw new ecies_lib_1.ECIESError(ecies_lib_1.ECIESErrorTypeEnum.InvalidEncryptedDataLength, this.engine, undefined, undefined, {
|
|
197
200
|
expected: String(dataLength),
|
|
198
201
|
actual: String(encryptedData.length),
|
|
199
202
|
});
|
|
@@ -204,21 +207,21 @@ export class EciesSingleRecipientCore {
|
|
|
204
207
|
// No CRC validation needed (AES-GCM provides authentication)
|
|
205
208
|
// Validate all header components have the correct lengths
|
|
206
209
|
if (normalizedKey.length !== this.cryptoCore.consts.PUBLIC_KEY_LENGTH) {
|
|
207
|
-
const pluginEngine = getEciesPluginI18nEngine();
|
|
208
|
-
throw new ECIESError(ECIESErrorTypeEnum.InvalidEphemeralPublicKey, this.engine, undefined, undefined, {
|
|
209
|
-
error: pluginEngine.translate(
|
|
210
|
+
const pluginEngine = (0, ecies_i18n_factory_1.getEciesPluginI18nEngine)();
|
|
211
|
+
throw new ecies_lib_1.ECIESError(ecies_lib_1.ECIESErrorTypeEnum.InvalidEphemeralPublicKey, this.engine, undefined, undefined, {
|
|
212
|
+
error: pluginEngine.translate(ecies_i18n_factory_1.NodeEciesComponentId, ecies_i18n_factory_1.NodeEciesStringKey.Error_EphemeralPublicKeyLengthMismatch),
|
|
210
213
|
expected: String(this.cryptoCore.consts.PUBLIC_KEY_LENGTH),
|
|
211
214
|
actual: String(normalizedKey.length),
|
|
212
215
|
});
|
|
213
216
|
}
|
|
214
217
|
if (iv.length !== this.cryptoCore.consts.IV_SIZE) {
|
|
215
|
-
throw new ECIESError(ECIESErrorTypeEnum.InvalidIVLength, this.engine, undefined, undefined, {
|
|
218
|
+
throw new ecies_lib_1.ECIESError(ecies_lib_1.ECIESErrorTypeEnum.InvalidIVLength, this.engine, undefined, undefined, {
|
|
216
219
|
expected: String(this.cryptoCore.consts.IV_SIZE),
|
|
217
220
|
actual: String(iv.length),
|
|
218
221
|
});
|
|
219
222
|
}
|
|
220
223
|
if (authTag.length !== this.cryptoCore.consts.AUTH_TAG_SIZE) {
|
|
221
|
-
throw new ECIESError(ECIESErrorTypeEnum.InvalidAuthTagLength, this.engine, undefined, undefined, {
|
|
224
|
+
throw new ecies_lib_1.ECIESError(ecies_lib_1.ECIESErrorTypeEnum.InvalidAuthTagLength, this.engine, undefined, undefined, {
|
|
222
225
|
expected: String(this.cryptoCore.consts.AUTH_TAG_SIZE),
|
|
223
226
|
actual: String(authTag.length),
|
|
224
227
|
});
|
|
@@ -252,12 +255,12 @@ export class EciesSingleRecipientCore {
|
|
|
252
255
|
*/
|
|
253
256
|
decryptWithHeader(encryptionType, privateKey, encryptedData, preambleSize = 0, options) {
|
|
254
257
|
const readEncryptionType = encryptedData.readUInt8(preambleSize);
|
|
255
|
-
const actualEncryptionTypeEnum = ensureEciesEncryptionTypeEnum(readEncryptionType);
|
|
258
|
+
const actualEncryptionTypeEnum = (0, ecies_lib_1.ensureEciesEncryptionTypeEnum)(readEncryptionType);
|
|
256
259
|
if (encryptionType !== undefined &&
|
|
257
260
|
actualEncryptionTypeEnum !== encryptionType) {
|
|
258
|
-
const expectedType = encryptionTypeEnumToType(encryptionType);
|
|
259
|
-
const actualEncryptionType = encryptionTypeEnumToType(actualEncryptionTypeEnum);
|
|
260
|
-
throw new ECIESError(ECIESErrorTypeEnum.InvalidEncryptionType, this.engine, undefined, undefined, {
|
|
261
|
+
const expectedType = (0, ecies_lib_1.encryptionTypeEnumToType)(encryptionType);
|
|
262
|
+
const actualEncryptionType = (0, ecies_lib_1.encryptionTypeEnumToType)(actualEncryptionTypeEnum);
|
|
263
|
+
throw new ecies_lib_1.ECIESError(ecies_lib_1.ECIESErrorTypeEnum.InvalidEncryptionType, this.engine, undefined, undefined, {
|
|
261
264
|
expected: expectedType,
|
|
262
265
|
actual: actualEncryptionType,
|
|
263
266
|
});
|
|
@@ -268,10 +271,10 @@ export class EciesSingleRecipientCore {
|
|
|
268
271
|
return result.decrypted;
|
|
269
272
|
}
|
|
270
273
|
catch (error) {
|
|
271
|
-
if (error instanceof ECIESError) {
|
|
274
|
+
if (error instanceof ecies_lib_1.ECIESError) {
|
|
272
275
|
throw error;
|
|
273
276
|
}
|
|
274
|
-
throw new ECIESError(ECIESErrorTypeEnum.DecryptionFailed, this.engine, undefined, undefined, {
|
|
277
|
+
throw new ecies_lib_1.ECIESError(ecies_lib_1.ECIESErrorTypeEnum.DecryptionFailed, this.engine, undefined, undefined, {
|
|
275
278
|
error: error instanceof Error ? error.message : String(error),
|
|
276
279
|
});
|
|
277
280
|
}
|
|
@@ -299,10 +302,10 @@ export class EciesSingleRecipientCore {
|
|
|
299
302
|
};
|
|
300
303
|
}
|
|
301
304
|
catch (error) {
|
|
302
|
-
if (error instanceof ECIESError) {
|
|
305
|
+
if (error instanceof ecies_lib_1.ECIESError) {
|
|
303
306
|
throw error;
|
|
304
307
|
}
|
|
305
|
-
throw new ECIESError(ECIESErrorTypeEnum.DecryptionFailed, this.engine, undefined, undefined, {
|
|
308
|
+
throw new ecies_lib_1.ECIESError(ecies_lib_1.ECIESErrorTypeEnum.DecryptionFailed, this.engine, undefined, undefined, {
|
|
306
309
|
error: error instanceof Error ? error.message : String(error),
|
|
307
310
|
});
|
|
308
311
|
}
|
|
@@ -321,7 +324,7 @@ export class EciesSingleRecipientCore {
|
|
|
321
324
|
// Ensure the ephemeral public key has the correct format
|
|
322
325
|
const normalizedEphemeralKey = this.cryptoCore.normalizePublicKey(ephemeralPublicKey);
|
|
323
326
|
// Set up ECDH with the private key
|
|
324
|
-
const ecdh = createECDH(this.config.curveName);
|
|
327
|
+
const ecdh = (0, crypto_1.createECDH)(this.config.curveName);
|
|
325
328
|
ecdh.setPrivateKey(privateKey);
|
|
326
329
|
// Based on our ECDH test, we need to consistently use the full key with 0x04 prefix
|
|
327
330
|
// Our debugging showed the raw keys without prefix always fail
|
|
@@ -331,7 +334,7 @@ export class EciesSingleRecipientCore {
|
|
|
331
334
|
}
|
|
332
335
|
catch (err) {
|
|
333
336
|
console.error('[ERROR][decrypt] Failed to compute shared secret:', err);
|
|
334
|
-
throw new ECIESError(ECIESErrorTypeEnum.DecryptionFailed, this.engine, undefined, undefined, {
|
|
337
|
+
throw new ecies_lib_1.ECIESError(ecies_lib_1.ECIESErrorTypeEnum.DecryptionFailed, this.engine, undefined, undefined, {
|
|
335
338
|
originalError: err instanceof Error ? err.message : String(err),
|
|
336
339
|
stage: 'shared_secret_computation',
|
|
337
340
|
});
|
|
@@ -339,17 +342,17 @@ export class EciesSingleRecipientCore {
|
|
|
339
342
|
// Get the key from the shared secret (always use first 32 bytes)
|
|
340
343
|
const symKey = sharedSecret.subarray(0, this.cryptoCore.consts.SYMMETRIC.KEY_SIZE);
|
|
341
344
|
// Create decipher with shared secret-derived key
|
|
342
|
-
const decipher = createDecipheriv(this.cryptoCore.consts.SYMMETRIC_ALGORITHM_CONFIGURATION, symKey, iv);
|
|
345
|
+
const decipher = (0, crypto_1.createDecipheriv)(this.cryptoCore.consts.SYMMETRIC_ALGORITHM_CONFIGURATION, symKey, iv);
|
|
343
346
|
// Validate the tag and IV
|
|
344
347
|
if (authTag.length !== this.cryptoCore.consts.AUTH_TAG_SIZE) {
|
|
345
|
-
throw new ECIESError(ECIESErrorTypeEnum.DecryptionFailed, this.engine, undefined, undefined, {
|
|
348
|
+
throw new ecies_lib_1.ECIESError(ecies_lib_1.ECIESErrorTypeEnum.DecryptionFailed, this.engine, undefined, undefined, {
|
|
346
349
|
expected: String(this.cryptoCore.consts.AUTH_TAG_SIZE),
|
|
347
350
|
actual: String(authTag.length),
|
|
348
351
|
stage: 'auth_tag_validation',
|
|
349
352
|
});
|
|
350
353
|
}
|
|
351
354
|
if (iv.length !== this.cryptoCore.consts.IV_SIZE) {
|
|
352
|
-
throw new ECIESError(ECIESErrorTypeEnum.DecryptionFailed, this.engine, undefined, undefined, {
|
|
355
|
+
throw new ecies_lib_1.ECIESError(ecies_lib_1.ECIESErrorTypeEnum.DecryptionFailed, this.engine, undefined, undefined, {
|
|
353
356
|
expected: String(this.cryptoCore.consts.IV_SIZE),
|
|
354
357
|
actual: String(iv.length),
|
|
355
358
|
stage: 'iv_validation',
|
|
@@ -360,9 +363,9 @@ export class EciesSingleRecipientCore {
|
|
|
360
363
|
// Decrypt the data
|
|
361
364
|
try {
|
|
362
365
|
// Handle edge case where encrypted data might be empty or malformed
|
|
363
|
-
const pluginEngine = getEciesPluginI18nEngine();
|
|
366
|
+
const pluginEngine = (0, ecies_i18n_factory_1.getEciesPluginI18nEngine)();
|
|
364
367
|
if (encrypted.length === 0) {
|
|
365
|
-
throw new Error(pluginEngine.translate(
|
|
368
|
+
throw new Error(pluginEngine.translate(ecies_i18n_factory_1.NodeEciesComponentId, ecies_i18n_factory_1.NodeEciesStringKey.Error_EncryptedDataIsEmpty));
|
|
366
369
|
}
|
|
367
370
|
const firstPart = decipher.update(encrypted);
|
|
368
371
|
const finalPart = decipher.final();
|
|
@@ -370,18 +373,18 @@ export class EciesSingleRecipientCore {
|
|
|
370
373
|
return result;
|
|
371
374
|
}
|
|
372
375
|
catch (err) {
|
|
373
|
-
throw new ECIESError(ECIESErrorTypeEnum.DecryptionFailed, this.engine, undefined, undefined, {
|
|
376
|
+
throw new ecies_lib_1.ECIESError(ecies_lib_1.ECIESErrorTypeEnum.DecryptionFailed, this.engine, undefined, undefined, {
|
|
374
377
|
error: err instanceof Error ? err.message : String(err),
|
|
375
378
|
stage: 'decipher_operation',
|
|
376
379
|
});
|
|
377
380
|
}
|
|
378
381
|
}
|
|
379
382
|
catch (error) {
|
|
380
|
-
if (error instanceof ECIESError) {
|
|
383
|
+
if (error instanceof ecies_lib_1.ECIESError) {
|
|
381
384
|
throw error;
|
|
382
385
|
}
|
|
383
386
|
// Wrap non-EciesError in an EciesError
|
|
384
|
-
throw new ECIESError(ECIESErrorTypeEnum.DecryptionFailed, this.engine, undefined, undefined, {
|
|
387
|
+
throw new ecies_lib_1.ECIESError(ecies_lib_1.ECIESErrorTypeEnum.DecryptionFailed, this.engine, undefined, undefined, {
|
|
385
388
|
error: error instanceof Error ? error.message : String(error),
|
|
386
389
|
privateKeyLength: String(privateKey.length),
|
|
387
390
|
ephemeralPublicKeyLength: String(ephemeralPublicKey.length),
|
|
@@ -392,4 +395,5 @@ export class EciesSingleRecipientCore {
|
|
|
392
395
|
}
|
|
393
396
|
}
|
|
394
397
|
}
|
|
398
|
+
exports.EciesSingleRecipientCore = EciesSingleRecipientCore;
|
|
395
399
|
//# sourceMappingURL=single-recipient.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"single-recipient.js","sourceRoot":"","sources":["../../../src/services/ecies/single-recipient.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"single-recipient.js","sourceRoot":"","sources":["../../../src/services/ecies/single-recipient.ts"],"names":[],"mappings":"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"}
|