@digitaldefiance/node-ecies-lib 1.1.11 → 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 +5 -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.js +27 -21
- 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.js +14 -10
- package/dist/services/aes-gcm.js.map +1 -1
- package/dist/services/ecies/crypto-core.js +29 -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.js +25 -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.js +25 -20
- package/dist/services/pbkdf2.js.map +1 -1
- package/dist/types.js +2 -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,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(NodeEciesComponentId, NodeEciesStringKey.Error_MessageLengthExceedsMaximumAllowedSize),
|
|
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(NodeEciesComponentId, NodeEciesStringKey.Error_EncryptedDataLengthMismatch),
|
|
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(NodeEciesComponentId, NodeEciesStringKey.Error_EphemeralPublicKeyLengthMismatch),
|
|
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(NodeEciesComponentId, NodeEciesStringKey.Error_EncryptedDataIsEmpty));
|
|
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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"}
|
|
@@ -1,11 +1,14 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.EciesUtilities = void 0;
|
|
4
|
+
const ecies_lib_1 = require("@digitaldefiance/ecies-lib");
|
|
5
|
+
const ecies_i18n_factory_1 = require("../../i18n/ecies-i18n-factory");
|
|
6
|
+
const service_1 = require("./service");
|
|
7
|
+
const constants_1 = require("../../constants");
|
|
5
8
|
/**
|
|
6
9
|
* Utility functions for ECIES operations
|
|
7
10
|
*/
|
|
8
|
-
|
|
11
|
+
class EciesUtilities {
|
|
9
12
|
/**
|
|
10
13
|
* Computes the encrypted length from the data length.
|
|
11
14
|
* @param dataLength - The length of the data.
|
|
@@ -15,9 +18,9 @@ export class EciesUtilities {
|
|
|
15
18
|
*/
|
|
16
19
|
computeEncryptedLengthFromDataLength(dataLength, encryptionMode, recipientCount) {
|
|
17
20
|
if (dataLength < 0) {
|
|
18
|
-
throw new ECIESError(ECIESErrorTypeEnum.InvalidDataLength, createEciesTranslationEngine());
|
|
21
|
+
throw new ecies_lib_1.ECIESError(ecies_lib_1.ECIESErrorTypeEnum.InvalidDataLength, (0, ecies_i18n_factory_1.createEciesTranslationEngine)());
|
|
19
22
|
}
|
|
20
|
-
const runtimeDefaults = getNodeRuntimeConfiguration();
|
|
23
|
+
const runtimeDefaults = (0, constants_1.getNodeRuntimeConfiguration)();
|
|
21
24
|
const eciesDefaults = runtimeDefaults.ECIES;
|
|
22
25
|
const config = {
|
|
23
26
|
curveName: eciesDefaults.CURVE_NAME,
|
|
@@ -27,8 +30,8 @@ export class EciesUtilities {
|
|
|
27
30
|
symmetricKeyBits: eciesDefaults.SYMMETRIC.KEY_BITS,
|
|
28
31
|
symmetricKeyMode: eciesDefaults.SYMMETRIC.MODE,
|
|
29
32
|
};
|
|
30
|
-
const engine = createEciesTranslationEngine();
|
|
31
|
-
const eciesService = new ECIESService(engine, config, eciesDefaults);
|
|
33
|
+
const engine = (0, ecies_i18n_factory_1.createEciesTranslationEngine)();
|
|
34
|
+
const eciesService = new service_1.ECIESService(engine, config, eciesDefaults);
|
|
32
35
|
switch (encryptionMode) {
|
|
33
36
|
case 'simple':
|
|
34
37
|
// type (1) + public key (65) + IV (16) + auth tag (16) = 98
|
|
@@ -40,7 +43,7 @@ export class EciesUtilities {
|
|
|
40
43
|
return (dataLength +
|
|
41
44
|
eciesService.calculateECIESMultipleRecipientOverhead(recipientCount ?? 1, true));
|
|
42
45
|
default:
|
|
43
|
-
throw new ECIESError(ECIESErrorTypeEnum.InvalidEncryptionType, createEciesTranslationEngine());
|
|
46
|
+
throw new ecies_lib_1.ECIESError(ecies_lib_1.ECIESErrorTypeEnum.InvalidEncryptionType, (0, ecies_i18n_factory_1.createEciesTranslationEngine)());
|
|
44
47
|
}
|
|
45
48
|
}
|
|
46
49
|
/**
|
|
@@ -51,14 +54,14 @@ export class EciesUtilities {
|
|
|
51
54
|
*/
|
|
52
55
|
computeDecryptedLengthFromEncryptedDataLength(encryptedDataLength, padding) {
|
|
53
56
|
if (encryptedDataLength < 0) {
|
|
54
|
-
throw new ECIESError(ECIESErrorTypeEnum.InvalidEncryptedDataLength, createEciesTranslationEngine());
|
|
57
|
+
throw new ecies_lib_1.ECIESError(ecies_lib_1.ECIESErrorTypeEnum.InvalidEncryptedDataLength, (0, ecies_i18n_factory_1.createEciesTranslationEngine)());
|
|
55
58
|
}
|
|
56
|
-
const { ECIES: eciesDefaults } = getNodeRuntimeConfiguration();
|
|
59
|
+
const { ECIES: eciesDefaults } = (0, constants_1.getNodeRuntimeConfiguration)();
|
|
57
60
|
const overhead = eciesDefaults.SINGLE.FIXED_OVERHEAD_SIZE;
|
|
58
61
|
const actualPadding = padding !== undefined ? padding : 0;
|
|
59
62
|
const decryptedLength = encryptedDataLength - overhead - actualPadding;
|
|
60
63
|
if (decryptedLength < 0) {
|
|
61
|
-
throw new ECIESError(ECIESErrorTypeEnum.InvalidEncryptedDataLength, createEciesTranslationEngine(), undefined, undefined, {
|
|
64
|
+
throw new ecies_lib_1.ECIESError(ecies_lib_1.ECIESErrorTypeEnum.InvalidEncryptedDataLength, (0, ecies_i18n_factory_1.createEciesTranslationEngine)(), undefined, undefined, {
|
|
62
65
|
encryptedDataLength: String(encryptedDataLength),
|
|
63
66
|
overhead: String(overhead),
|
|
64
67
|
padding: String(actualPadding),
|
|
@@ -68,4 +71,5 @@ export class EciesUtilities {
|
|
|
68
71
|
return decryptedLength;
|
|
69
72
|
}
|
|
70
73
|
}
|
|
74
|
+
exports.EciesUtilities = EciesUtilities;
|
|
71
75
|
//# sourceMappingURL=utilities.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utilities.js","sourceRoot":"","sources":["../../../src/services/ecies/utilities.ts"],"names":[],"mappings":"AAAA,
|
|
1
|
+
{"version":3,"file":"utilities.js","sourceRoot":"","sources":["../../../src/services/ecies/utilities.ts"],"names":[],"mappings":";;;AAAA,0DAKoC;AACpC,sEAA6E;AAC7E,uCAAyC;AACzC,+CAA8D;AAE9D;;GAEG;AACH,MAAa,cAAc;IACzB;;;;;;OAMG;IACI,oCAAoC,CACzC,UAAkB,EAClB,cAAmC,EACnC,cAAuB;QAEvB,IAAI,UAAU,GAAG,CAAC,EAAE,CAAC;YACnB,MAAM,IAAI,sBAAU,CAClB,8BAAkB,CAAC,iBAAiB,EACpC,IAAA,iDAA4B,GAAE,CAC/B,CAAC;QACJ,CAAC;QACD,MAAM,eAAe,GAAG,IAAA,uCAA2B,GAAE,CAAC;QACtD,MAAM,aAAa,GAAG,eAAe,CAAC,KAAK,CAAC;QAC5C,MAAM,MAAM,GAAiB;YAC3B,SAAS,EAAE,aAAa,CAAC,UAAU;YACnC,wBAAwB,EAAE,aAAa,CAAC,2BAA2B;YACnE,gBAAgB,EAAE,aAAa,CAAC,iBAAiB;YACjD,kBAAkB,EAAE,aAAa,CAAC,iCAAiC;YACnE,gBAAgB,EAAE,aAAa,CAAC,SAAS,CAAC,QAAQ;YAClD,gBAAgB,EAAE,aAAa,CAAC,SAAS,CAAC,IAAI;SAC/C,CAAC;QACF,MAAM,MAAM,GAAG,IAAA,iDAA4B,GAAE,CAAC;QAC9C,MAAM,YAAY,GAAiB,IAAI,sBAAY,CACjD,MAAM,EACN,MAAM,EACN,aAAa,CACd,CAAC;QACF,QAAQ,cAAc,EAAE,CAAC;YACvB,KAAK,QAAQ;gBACX,4DAA4D;gBAC5D,OAAO,UAAU,GAAG,aAAa,CAAC,MAAM,CAAC,mBAAmB,CAAC;YAC/D,KAAK,QAAQ;gBACX,2FAA2F;gBAC3F,OAAO,UAAU,GAAG,aAAa,CAAC,MAAM,CAAC,mBAAmB,CAAC;YAC/D,KAAK,UAAU;gBACb,OAAO,CACL,UAAU;oBACV,YAAY,CAAC,uCAAuC,CAClD,cAAc,IAAI,CAAC,EACnB,IAAI,CACL,CACF,CAAC;YACJ;gBACE,MAAM,IAAI,sBAAU,CAClB,8BAAkB,CAAC,qBAAqB,EACxC,IAAA,iDAA4B,GAAE,CAC/B,CAAC;QACN,CAAC;IACH,CAAC;IAED;;;;;OAKG;IACI,6CAA6C,CAClD,mBAA2B,EAC3B,OAAgB;QAEhB,IAAI,mBAAmB,GAAG,CAAC,EAAE,CAAC;YAC5B,MAAM,IAAI,sBAAU,CAClB,8BAAkB,CAAC,0BAA0B,EAC7C,IAAA,iDAA4B,GAAE,CAC/B,CAAC;QACJ,CAAC;QAED,MAAM,EAAE,KAAK,EAAE,aAAa,EAAE,GAAG,IAAA,uCAA2B,GAAE,CAAC;QAC/D,MAAM,QAAQ,GAAG,aAAa,CAAC,MAAM,CAAC,mBAAmB,CAAC;QAC1D,MAAM,aAAa,GAAG,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC;QAE1D,MAAM,eAAe,GAAG,mBAAmB,GAAG,QAAQ,GAAG,aAAa,CAAC;QACvE,IAAI,eAAe,GAAG,CAAC,EAAE,CAAC;YACxB,MAAM,IAAI,sBAAU,CAClB,8BAAkB,CAAC,0BAA0B,EAC7C,IAAA,iDAA4B,GAAE,EAC9B,SAAS,EACT,SAAS,EACT;gBACE,mBAAmB,EAAE,MAAM,CAAC,mBAAmB,CAAC;gBAChD,QAAQ,EAAE,MAAM,CAAC,QAAQ,CAAC;gBAC1B,OAAO,EAAE,MAAM,CAAC,aAAa,CAAC;gBAC9B,cAAc,EAAE,MAAM,CAAC,eAAe,CAAC;aACxC,CACF,CAAC;QACJ,CAAC;QAED,OAAO,eAAe,CAAC;IACzB,CAAC;CACF;AAjGD,wCAiGC"}
|
package/dist/services/index.js
CHANGED
|
@@ -1,4 +1,20 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
+
};
|
|
16
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
+
__exportStar(require("./aes-gcm"), exports);
|
|
18
|
+
__exportStar(require("./ecies"), exports);
|
|
19
|
+
__exportStar(require("./pbkdf2"), exports);
|
|
4
20
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/services/index.ts"],"names":[],"mappings":"AAAA,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/services/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,4CAA0B;AAC1B,0CAAwB;AACxB,2CAAyB"}
|
package/dist/services/pbkdf2.js
CHANGED
|
@@ -1,12 +1,15 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.Pbkdf2Service = exports.NodePbkdf2Error = void 0;
|
|
4
|
+
const ecies_lib_1 = require("@digitaldefiance/ecies-lib");
|
|
5
|
+
const crypto_1 = require("crypto");
|
|
6
|
+
const util_1 = require("util");
|
|
7
|
+
const ecies_i18n_factory_1 = require("../i18n/ecies-i18n-factory");
|
|
8
|
+
const constants_1 = require("../constants");
|
|
6
9
|
/**
|
|
7
10
|
* Custom PBKDF2 error class that works with the plugin i18n system
|
|
8
11
|
*/
|
|
9
|
-
|
|
12
|
+
class NodePbkdf2Error extends Error {
|
|
10
13
|
type;
|
|
11
14
|
constructor(message, type) {
|
|
12
15
|
super(message);
|
|
@@ -14,6 +17,7 @@ export class NodePbkdf2Error extends Error {
|
|
|
14
17
|
this.name = 'NodePbkdf2Error';
|
|
15
18
|
}
|
|
16
19
|
}
|
|
20
|
+
exports.NodePbkdf2Error = NodePbkdf2Error;
|
|
17
21
|
/**
|
|
18
22
|
* Service for handling PBKDF2 (Password-Based Key Derivation Function 2) operations.
|
|
19
23
|
* This service provides functionality for:
|
|
@@ -22,15 +26,15 @@ export class NodePbkdf2Error extends Error {
|
|
|
22
26
|
* - Managing salt and iteration parameters
|
|
23
27
|
* - Both synchronous and asynchronous key derivation
|
|
24
28
|
*/
|
|
25
|
-
|
|
29
|
+
class Pbkdf2Service {
|
|
26
30
|
engine;
|
|
27
31
|
profiles;
|
|
28
32
|
eciesConsts;
|
|
29
33
|
pbkdf2Consts;
|
|
30
|
-
constructor(engine, profiles, eciesParams = Constants.ECIES, pbkdf2Params = Constants.PBKDF2) {
|
|
34
|
+
constructor(engine, profiles, eciesParams = constants_1.Constants.ECIES, pbkdf2Params = constants_1.Constants.PBKDF2) {
|
|
31
35
|
this.engine = engine;
|
|
32
36
|
this.profiles = profiles ? { ...profiles } : {};
|
|
33
|
-
const runtimeDefaults = getNodeRuntimeConfiguration();
|
|
37
|
+
const runtimeDefaults = (0, constants_1.getNodeRuntimeConfiguration)();
|
|
34
38
|
this.eciesConsts = eciesParams ?? runtimeDefaults.ECIES;
|
|
35
39
|
this.pbkdf2Consts =
|
|
36
40
|
pbkdf2Params ?? runtimeDefaults.PBKDF2;
|
|
@@ -64,8 +68,8 @@ export class Pbkdf2Service {
|
|
|
64
68
|
* @returns A new Pbkdf2Service instance
|
|
65
69
|
*/
|
|
66
70
|
static fromConstants(constants) {
|
|
67
|
-
const engine = createEciesTranslationEngine();
|
|
68
|
-
const runtimeDefaults = getNodeRuntimeConfiguration();
|
|
71
|
+
const engine = (0, ecies_i18n_factory_1.createEciesTranslationEngine)();
|
|
72
|
+
const runtimeDefaults = (0, constants_1.getNodeRuntimeConfiguration)();
|
|
69
73
|
return new Pbkdf2Service(engine, constants.PBKDF2_PROFILES, runtimeDefaults.ECIES, constants.PBKDF2);
|
|
70
74
|
}
|
|
71
75
|
/**
|
|
@@ -76,7 +80,7 @@ export class Pbkdf2Service {
|
|
|
76
80
|
getProfileConfig(profile) {
|
|
77
81
|
const profileConfig = this.profiles[profile];
|
|
78
82
|
if (!profileConfig) {
|
|
79
|
-
throw new NodePbkdf2Error(getNodeEciesTranslation(NodeEciesStringKey.Error_Pbkdf2_InvalidSaltLength), Pbkdf2ErrorType.InvalidProfile);
|
|
83
|
+
throw new NodePbkdf2Error((0, ecies_i18n_factory_1.getNodeEciesTranslation)(ecies_i18n_factory_1.NodeEciesStringKey.Error_Pbkdf2_InvalidSaltLength), ecies_lib_1.Pbkdf2ErrorType.InvalidProfile);
|
|
80
84
|
}
|
|
81
85
|
return {
|
|
82
86
|
hashBytes: profileConfig.hashBytes,
|
|
@@ -122,13 +126,13 @@ export class Pbkdf2Service {
|
|
|
122
126
|
*/
|
|
123
127
|
deriveKeyFromPassword(password, salt, iterations, saltBytes, keySize, algorithm) {
|
|
124
128
|
const config = this.getConfig(iterations, saltBytes, keySize, algorithm);
|
|
125
|
-
const saltBytes_ = salt ?? randomBytes(config.saltBytes);
|
|
129
|
+
const saltBytes_ = salt ?? (0, crypto_1.randomBytes)(config.saltBytes);
|
|
126
130
|
if (saltBytes_.length !== config.saltBytes) {
|
|
127
|
-
throw new NodePbkdf2Error(getNodeEciesTranslation(NodeEciesStringKey.Error_Pbkdf2_InvalidSaltLength), Pbkdf2ErrorType.InvalidSaltLength);
|
|
131
|
+
throw new NodePbkdf2Error((0, ecies_i18n_factory_1.getNodeEciesTranslation)(ecies_i18n_factory_1.NodeEciesStringKey.Error_Pbkdf2_InvalidSaltLength), ecies_lib_1.Pbkdf2ErrorType.InvalidSaltLength);
|
|
128
132
|
}
|
|
129
|
-
const hashBytes = pbkdf2Sync(password, saltBytes_, config.iterations, config.hashBytes, config.algorithm);
|
|
133
|
+
const hashBytes = (0, crypto_1.pbkdf2Sync)(password, saltBytes_, config.iterations, config.hashBytes, config.algorithm);
|
|
130
134
|
if (hashBytes.length !== config.hashBytes) {
|
|
131
|
-
throw new NodePbkdf2Error(getNodeEciesTranslation(NodeEciesStringKey.Error_Pbkdf2_InvalidHashLength), Pbkdf2ErrorType.InvalidHashLength);
|
|
135
|
+
throw new NodePbkdf2Error((0, ecies_i18n_factory_1.getNodeEciesTranslation)(ecies_i18n_factory_1.NodeEciesStringKey.Error_Pbkdf2_InvalidHashLength), ecies_lib_1.Pbkdf2ErrorType.InvalidHashLength);
|
|
132
136
|
}
|
|
133
137
|
return {
|
|
134
138
|
salt: saltBytes_,
|
|
@@ -149,14 +153,14 @@ export class Pbkdf2Service {
|
|
|
149
153
|
*/
|
|
150
154
|
async deriveKeyFromPasswordAsync(password, salt, iterations, saltBytes, keySize, algorithm) {
|
|
151
155
|
const config = this.getConfig(iterations, saltBytes, keySize, algorithm);
|
|
152
|
-
const saltBytes_ = salt ?? randomBytes(config.saltBytes);
|
|
156
|
+
const saltBytes_ = salt ?? (0, crypto_1.randomBytes)(config.saltBytes);
|
|
153
157
|
if (saltBytes_.length !== config.saltBytes) {
|
|
154
|
-
throw new NodePbkdf2Error(getNodeEciesTranslation(NodeEciesStringKey.Error_Pbkdf2_InvalidSaltLength), Pbkdf2ErrorType.InvalidSaltLength);
|
|
158
|
+
throw new NodePbkdf2Error((0, ecies_i18n_factory_1.getNodeEciesTranslation)(ecies_i18n_factory_1.NodeEciesStringKey.Error_Pbkdf2_InvalidSaltLength), ecies_lib_1.Pbkdf2ErrorType.InvalidSaltLength);
|
|
155
159
|
}
|
|
156
|
-
const pbkdf2 = promisify(
|
|
160
|
+
const pbkdf2 = (0, util_1.promisify)(crypto_1.pbkdf2);
|
|
157
161
|
const hashBytes = (await pbkdf2(password, saltBytes_, config.iterations, config.hashBytes, config.algorithm));
|
|
158
162
|
if (hashBytes.length !== config.hashBytes) {
|
|
159
|
-
throw new NodePbkdf2Error(getNodeEciesTranslation(NodeEciesStringKey.Error_Pbkdf2_InvalidHashLength), Pbkdf2ErrorType.InvalidHashLength);
|
|
163
|
+
throw new NodePbkdf2Error((0, ecies_i18n_factory_1.getNodeEciesTranslation)(ecies_i18n_factory_1.NodeEciesStringKey.Error_Pbkdf2_InvalidHashLength), ecies_lib_1.Pbkdf2ErrorType.InvalidHashLength);
|
|
160
164
|
}
|
|
161
165
|
return {
|
|
162
166
|
salt: saltBytes_,
|
|
@@ -187,4 +191,5 @@ export class Pbkdf2Service {
|
|
|
187
191
|
return this.deriveKeyFromPasswordAsync(password, salt, config.iterations, config.saltBytes, config.hashBytes, config.algorithm);
|
|
188
192
|
}
|
|
189
193
|
}
|
|
194
|
+
exports.Pbkdf2Service = Pbkdf2Service;
|
|
190
195
|
//# sourceMappingURL=pbkdf2.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pbkdf2.js","sourceRoot":"","sources":["../../src/services/pbkdf2.ts"],"names":[],"mappings":"AAEA,
|
|
1
|
+
{"version":3,"file":"pbkdf2.js","sourceRoot":"","sources":["../../src/services/pbkdf2.ts"],"names":[],"mappings":"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"}
|