@digitaldefiance/node-ecies-lib 4.7.2 → 4.7.6
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
CHANGED
|
@@ -179,6 +179,23 @@ const ecies = new ECIESService();
|
|
|
179
179
|
const id = config.idProvider.generate(); // Returns 16-byte Uint8Array
|
|
180
180
|
```
|
|
181
181
|
|
|
182
|
+
**Note**: The `ECIESService` constructor accepts both `IConstants` (from `createRuntimeConfiguration` or `registerNodeRuntimeConfiguration`) and `Partial<IECIESConfig>` for backward compatibility:
|
|
183
|
+
|
|
184
|
+
```typescript
|
|
185
|
+
// Option 1: Pass IConstants directly (recommended)
|
|
186
|
+
const config = registerNodeRuntimeConfiguration({ idProvider: new GuidV4Provider() });
|
|
187
|
+
const ecies1 = new ECIESService(config);
|
|
188
|
+
|
|
189
|
+
// Option 2: Pass partial ECIES config (legacy)
|
|
190
|
+
const ecies2 = new ECIESService({
|
|
191
|
+
curveName: 'secp256k1',
|
|
192
|
+
symmetricAlgorithm: 'aes-256-gcm'
|
|
193
|
+
});
|
|
194
|
+
|
|
195
|
+
// Option 3: Use defaults
|
|
196
|
+
const ecies3 = new ECIESService();
|
|
197
|
+
```
|
|
198
|
+
|
|
182
199
|
### 3. Streaming Encryption (Large Files)
|
|
183
200
|
|
|
184
201
|
Encrypt gigabytes of data with minimal memory footprint (<10MB).
|
|
@@ -233,6 +250,10 @@ const encrypted = member.encryptData('My Secrets');
|
|
|
233
250
|
### Core Services
|
|
234
251
|
|
|
235
252
|
- **`ECIESService`**: The main entry point for encryption/decryption operations.
|
|
253
|
+
- **Constructor**: `constructor(config?: Partial<IECIESConfig> | IConstants, eciesParams?: IECIESConstants)`
|
|
254
|
+
- Accepts either `IConstants` (from `createRuntimeConfiguration`) or `Partial<IECIESConfig>` for backward compatibility
|
|
255
|
+
- When `IConstants` is provided, ECIES configuration is automatically extracted
|
|
256
|
+
- Optional `eciesParams` provides default values for any missing configuration
|
|
236
257
|
- **`EciesCryptoCore`**: Low-level cryptographic primitives (keys, signatures, ECDH).
|
|
237
258
|
- **`EciesMultiRecipient`**: Specialized service for handling multi-recipient messages.
|
|
238
259
|
- **`EncryptionStream`**: Helper for chunked file encryption.
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@digitaldefiance/node-ecies-lib",
|
|
3
|
-
"version": "4.7.
|
|
3
|
+
"version": "4.7.6",
|
|
4
4
|
"description": "Digital Defiance Node ECIES Library",
|
|
5
5
|
"homepage": "https://github.com/Digital-Defiance/node-ecies-lib",
|
|
6
6
|
"repository": {
|
|
@@ -57,7 +57,7 @@
|
|
|
57
57
|
"license": "MIT",
|
|
58
58
|
"packageManager": "yarn@4.10.3",
|
|
59
59
|
"dependencies": {
|
|
60
|
-
"@digitaldefiance/ecies-lib": "4.7.
|
|
60
|
+
"@digitaldefiance/ecies-lib": "4.7.6",
|
|
61
61
|
"@digitaldefiance/express-suite-test-utils": "1.0.14",
|
|
62
62
|
"@digitaldefiance/i18n-lib": "3.8.16",
|
|
63
63
|
"@ethereumjs/wallet": "^10.0.0",
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { EciesEncryptionType, EciesEncryptionTypeEnum, HexString, IECIESConfig, IECIESConstants, SecureString } from '@digitaldefiance/ecies-lib';
|
|
1
|
+
import { EciesEncryptionType, EciesEncryptionTypeEnum, HexString, IConstants, IECIESConfig, IECIESConstants, SecureString } from '@digitaldefiance/ecies-lib';
|
|
2
2
|
import { Wallet } from '@ethereumjs/wallet';
|
|
3
3
|
import type { IMember } from '../../interfaces/member';
|
|
4
4
|
import type { IMultiEncryptedMessage } from '../../interfaces/multi-encrypted-message';
|
|
@@ -21,7 +21,7 @@ export declare class ECIESService {
|
|
|
21
21
|
protected readonly singleRecipient: EciesSingleRecipientCore;
|
|
22
22
|
protected readonly multiRecipient: EciesMultiRecipient;
|
|
23
23
|
protected readonly utilities: EciesUtilities;
|
|
24
|
-
constructor(config?: Partial<IECIESConfig
|
|
24
|
+
constructor(config?: Partial<IECIESConfig> | IConstants, eciesParams?: IECIESConstants);
|
|
25
25
|
get core(): EciesCryptoCore;
|
|
26
26
|
get config(): IECIESConfig;
|
|
27
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,EAEL,mBAAmB,EACnB,uBAAuB,EAGvB,SAAS,EACT,YAAY,EACZ,eAAe,EACf,YAAY,EACb,MAAM,4BAA4B,CAAC;AACpC,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAI5C,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,yBAAyB,CAAC;AACvD,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,0CAA0C,CAAC;AACvF,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,gDAAgD,CAAC;AAClG,OAAO,KAAK,EAAE,4BAA4B,EAAE,MAAM,iDAAiD,CAAC;AACpG,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,8BAA8B,CAAC;AAChE,OAAO,EAAE,eAAe,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAE/D,OAAO,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAChD,OAAO,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AACxD,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAC7C,OAAO,EAAE,wBAAwB,EAAE,MAAM,oBAAoB,CAAC;AAC9D,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAE7C;;GAEG;AACH,qBAAa,YAAY;IACvB,SAAS,CAAC,QAAQ,CAAC,OAAO,EAAE,YAAY,CAAC;IACzC,SAAS,CAAC,QAAQ,CAAC,UAAU,EAAE,eAAe,CAAC;IAC/C,SAAS,CAAC,QAAQ,CAAC,SAAS,EAAE,cAAc,CAAC;IAC7C,SAAS,CAAC,QAAQ,CAAC,eAAe,EAAE,wBAAwB,CAAC;IAC7D,SAAS,CAAC,QAAQ,CAAC,cAAc,EAAE,mBAAmB,CAAC;IACvD,SAAS,CAAC,QAAQ,CAAC,SAAS,EAAE,cAAc,CAAC;gBAG3C,MAAM,CAAC,EAAE,OAAO,CAAC,YAAY,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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"}
|
|
@@ -20,17 +20,32 @@ class ECIESService {
|
|
|
20
20
|
multiRecipient;
|
|
21
21
|
utilities;
|
|
22
22
|
constructor(config, eciesParams = constants_1.Constants.ECIES) {
|
|
23
|
-
|
|
23
|
+
// Type guard to check if config is IConstants
|
|
24
|
+
const isFullConfig = config &&
|
|
25
|
+
typeof config === 'object' &&
|
|
26
|
+
'ECIES' in config &&
|
|
27
|
+
'idProvider' in config;
|
|
28
|
+
// Extract ECIES config from IConstants or use config directly
|
|
29
|
+
const eciesConfig = isFullConfig
|
|
30
|
+
? {
|
|
31
|
+
curveName: config.ECIES.CURVE_NAME,
|
|
32
|
+
primaryKeyDerivationPath: config.ECIES
|
|
33
|
+
.PRIMARY_KEY_DERIVATION_PATH,
|
|
34
|
+
mnemonicStrength: config.ECIES.MNEMONIC_STRENGTH,
|
|
35
|
+
symmetricAlgorithm: config.ECIES.SYMMETRIC.ALGORITHM,
|
|
36
|
+
symmetricKeyBits: config.ECIES.SYMMETRIC.KEY_BITS,
|
|
37
|
+
symmetricKeyMode: config.ECIES.SYMMETRIC.MODE,
|
|
38
|
+
}
|
|
39
|
+
: config || {};
|
|
24
40
|
const eciesConsts = eciesParams || constants_1.Constants.ECIES;
|
|
25
41
|
this._config = {
|
|
26
|
-
...config,
|
|
27
42
|
curveName: eciesConsts.CURVE_NAME,
|
|
28
43
|
primaryKeyDerivationPath: eciesConsts.PRIMARY_KEY_DERIVATION_PATH,
|
|
29
44
|
mnemonicStrength: eciesConsts.MNEMONIC_STRENGTH,
|
|
30
45
|
symmetricAlgorithm: eciesConsts.SYMMETRIC.ALGORITHM,
|
|
31
46
|
symmetricKeyBits: eciesConsts.SYMMETRIC.KEY_BITS,
|
|
32
47
|
symmetricKeyMode: eciesConsts.SYMMETRIC.MODE,
|
|
33
|
-
...
|
|
48
|
+
...eciesConfig,
|
|
34
49
|
};
|
|
35
50
|
// Initialize all components
|
|
36
51
|
this.cryptoCore = new crypto_core_1.EciesCryptoCore(this._config, eciesParams);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"service.js","sourceRoot":"","sources":["../../../../../../packages/digitaldefiance-node-ecies-lib/src/services/ecies/service.ts"],"names":[],"mappings":";;;AAAA,
|
|
1
|
+
{"version":3,"file":"service.js","sourceRoot":"","sources":["../../../../../../packages/digitaldefiance-node-ecies-lib/src/services/ecies/service.ts"],"names":[],"mappings":"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"}
|