@digitaldefiance/node-ecies-lib 1.1.22 → 1.1.23

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.
Files changed (212) hide show
  1. package/README.md +4 -0
  2. package/package.json +6 -5
  3. package/src/constants.d.ts +32 -0
  4. package/src/constants.d.ts.map +1 -0
  5. package/src/constants.js +137 -0
  6. package/src/constants.js.map +1 -0
  7. package/src/enumerations/index.d.ts +2 -0
  8. package/src/enumerations/index.d.ts.map +1 -0
  9. package/src/enumerations/index.js +5 -0
  10. package/src/enumerations/index.js.map +1 -0
  11. package/src/enumerations/pbkdf2-profile.d.ts +9 -0
  12. package/src/enumerations/pbkdf2-profile.d.ts.map +1 -0
  13. package/src/enumerations/pbkdf2-profile.js +13 -0
  14. package/src/enumerations/pbkdf2-profile.js.map +1 -0
  15. package/src/i18n/ecies-i18n-factory.d.ts +54 -0
  16. package/src/i18n/ecies-i18n-factory.d.ts.map +1 -0
  17. package/src/i18n/ecies-i18n-factory.js +333 -0
  18. package/src/i18n/ecies-i18n-factory.js.map +1 -0
  19. package/src/i18n/{index.ts → index.d.ts} +1 -0
  20. package/src/i18n/index.d.ts.map +1 -0
  21. package/src/i18n/index.js +5 -0
  22. package/src/i18n/index.js.map +1 -0
  23. package/src/{index.ts → index.d.ts} +1 -0
  24. package/src/index.d.ts.map +1 -0
  25. package/src/index.js +11 -0
  26. package/src/index.js.map +1 -0
  27. package/src/interfaces/authenticated-cipher.d.ts +10 -0
  28. package/src/interfaces/authenticated-cipher.d.ts.map +1 -0
  29. package/src/interfaces/authenticated-cipher.js +3 -0
  30. package/src/interfaces/authenticated-cipher.js.map +1 -0
  31. package/src/interfaces/authenticated-decipher.d.ts +9 -0
  32. package/src/interfaces/authenticated-decipher.d.ts.map +1 -0
  33. package/src/interfaces/authenticated-decipher.js +3 -0
  34. package/src/interfaces/authenticated-decipher.js.map +1 -0
  35. package/src/interfaces/checksum-config.d.ts +5 -0
  36. package/src/interfaces/checksum-config.d.ts.map +1 -0
  37. package/src/interfaces/checksum-config.js +3 -0
  38. package/src/interfaces/checksum-config.js.map +1 -0
  39. package/src/interfaces/checksum-consts.d.ts +11 -0
  40. package/src/interfaces/checksum-consts.d.ts.map +1 -0
  41. package/src/interfaces/checksum-consts.js +3 -0
  42. package/src/interfaces/checksum-consts.js.map +1 -0
  43. package/src/interfaces/constants.d.ts +43 -0
  44. package/src/interfaces/constants.d.ts.map +1 -0
  45. package/src/interfaces/constants.js +3 -0
  46. package/src/interfaces/constants.js.map +1 -0
  47. package/src/interfaces/ecies-consts.d.ts +88 -0
  48. package/src/interfaces/ecies-consts.d.ts.map +1 -0
  49. package/src/interfaces/ecies-consts.js +3 -0
  50. package/src/interfaces/ecies-consts.js.map +1 -0
  51. package/src/interfaces/encryption-consts.d.ts +11 -0
  52. package/src/interfaces/encryption-consts.d.ts.map +1 -0
  53. package/src/interfaces/encryption-consts.js +3 -0
  54. package/src/interfaces/encryption-consts.js.map +1 -0
  55. package/src/interfaces/{index.ts → index.d.ts} +1 -0
  56. package/src/interfaces/index.d.ts.map +1 -0
  57. package/src/interfaces/index.js +21 -0
  58. package/src/interfaces/index.js.map +1 -0
  59. package/src/interfaces/keypair-buffer-with-un-encrypted-private-key.d.ts +6 -0
  60. package/src/interfaces/keypair-buffer-with-un-encrypted-private-key.d.ts.map +1 -0
  61. package/src/interfaces/keypair-buffer-with-un-encrypted-private-key.js +3 -0
  62. package/src/interfaces/keypair-buffer-with-un-encrypted-private-key.js.map +1 -0
  63. package/src/interfaces/keyring-consts.d.ts +6 -0
  64. package/src/interfaces/keyring-consts.d.ts.map +1 -0
  65. package/src/interfaces/keyring-consts.js +3 -0
  66. package/src/interfaces/keyring-consts.js.map +1 -0
  67. package/src/interfaces/member-operational.d.ts +36 -0
  68. package/src/interfaces/member-operational.d.ts.map +1 -0
  69. package/src/interfaces/member-operational.js +3 -0
  70. package/src/interfaces/member-operational.js.map +1 -0
  71. package/src/interfaces/{member-with-mnemonic.ts → member-with-mnemonic.d.ts} +3 -3
  72. package/src/interfaces/member-with-mnemonic.d.ts.map +1 -0
  73. package/src/interfaces/member-with-mnemonic.js +3 -0
  74. package/src/interfaces/member-with-mnemonic.js.map +1 -0
  75. package/src/interfaces/{multi-encrypted-message.ts → multi-encrypted-message.d.ts} +5 -5
  76. package/src/interfaces/multi-encrypted-message.d.ts.map +1 -0
  77. package/src/interfaces/multi-encrypted-message.js +3 -0
  78. package/src/interfaces/multi-encrypted-message.js.map +1 -0
  79. package/src/interfaces/multi-encrypted-parsed-header.d.ts +24 -0
  80. package/src/interfaces/multi-encrypted-parsed-header.d.ts.map +1 -0
  81. package/src/interfaces/multi-encrypted-parsed-header.js +3 -0
  82. package/src/interfaces/multi-encrypted-parsed-header.js.map +1 -0
  83. package/src/interfaces/{pbkdf-profiles.ts → pbkdf-profiles.d.ts} +2 -2
  84. package/src/interfaces/pbkdf-profiles.d.ts.map +1 -0
  85. package/src/interfaces/pbkdf-profiles.js +3 -0
  86. package/src/interfaces/pbkdf-profiles.js.map +1 -0
  87. package/src/interfaces/pbkdf2-result.d.ts +6 -0
  88. package/src/interfaces/pbkdf2-result.d.ts.map +1 -0
  89. package/src/interfaces/pbkdf2-result.js +3 -0
  90. package/src/interfaces/pbkdf2-result.js.map +1 -0
  91. package/src/interfaces/signing-key-private-key-info.d.ts +11 -0
  92. package/src/interfaces/signing-key-private-key-info.d.ts.map +1 -0
  93. package/src/interfaces/signing-key-private-key-info.js +3 -0
  94. package/src/interfaces/signing-key-private-key-info.js.map +1 -0
  95. package/src/interfaces/{simple-keypair-buffer.ts → simple-keypair-buffer.d.ts} +3 -3
  96. package/src/interfaces/simple-keypair-buffer.d.ts.map +1 -0
  97. package/src/interfaces/simple-keypair-buffer.js +3 -0
  98. package/src/interfaces/simple-keypair-buffer.js.map +1 -0
  99. package/src/interfaces/{simple-keypair.ts → simple-keypair.d.ts} +3 -3
  100. package/src/interfaces/simple-keypair.d.ts.map +1 -0
  101. package/src/interfaces/simple-keypair.js +3 -0
  102. package/src/interfaces/simple-keypair.js.map +1 -0
  103. package/src/interfaces/simple-public-key-only-buffer.d.ts +4 -0
  104. package/src/interfaces/simple-public-key-only-buffer.d.ts.map +1 -0
  105. package/src/interfaces/simple-public-key-only-buffer.js +3 -0
  106. package/src/interfaces/simple-public-key-only-buffer.js.map +1 -0
  107. package/src/interfaces/simple-public-key-only.d.ts +4 -0
  108. package/src/interfaces/simple-public-key-only.d.ts.map +1 -0
  109. package/src/interfaces/simple-public-key-only.js +3 -0
  110. package/src/interfaces/simple-public-key-only.js.map +1 -0
  111. package/src/interfaces/single-encrypted-parsed-header.d.ts +35 -0
  112. package/src/interfaces/single-encrypted-parsed-header.d.ts.map +1 -0
  113. package/src/interfaces/single-encrypted-parsed-header.js +3 -0
  114. package/src/interfaces/single-encrypted-parsed-header.js.map +1 -0
  115. package/src/interfaces/{wallet-seed.ts → wallet-seed.d.ts} +3 -3
  116. package/src/interfaces/wallet-seed.d.ts.map +1 -0
  117. package/src/interfaces/wallet-seed.js +3 -0
  118. package/src/interfaces/wallet-seed.js.map +1 -0
  119. package/src/interfaces/wrapped-key-consts.d.ts +7 -0
  120. package/src/interfaces/wrapped-key-consts.d.ts.map +1 -0
  121. package/src/interfaces/wrapped-key-consts.js +3 -0
  122. package/src/interfaces/wrapped-key-consts.js.map +1 -0
  123. package/src/member.d.ts +74 -0
  124. package/src/member.d.ts.map +1 -0
  125. package/src/member.js +273 -0
  126. package/src/member.js.map +1 -0
  127. package/src/services/aes-gcm.d.ts +66 -0
  128. package/src/services/aes-gcm.d.ts.map +1 -0
  129. package/src/services/aes-gcm.js +115 -0
  130. package/src/services/aes-gcm.js.map +1 -0
  131. package/src/services/ecies/crypto-core.d.ts +83 -0
  132. package/src/services/ecies/crypto-core.d.ts.map +1 -0
  133. package/src/services/ecies/crypto-core.js +166 -0
  134. package/src/services/ecies/crypto-core.js.map +1 -0
  135. package/src/services/ecies/file.d.ts +30 -0
  136. package/src/services/ecies/file.d.ts.map +1 -0
  137. package/src/services/ecies/file.js +112 -0
  138. package/src/services/ecies/file.js.map +1 -0
  139. package/src/services/ecies/{index.ts → index.d.ts} +1 -0
  140. package/src/services/ecies/index.d.ts.map +1 -0
  141. package/src/services/ecies/index.js +11 -0
  142. package/src/services/ecies/index.js.map +1 -0
  143. package/src/services/ecies/multi-recipient.d.ts +82 -0
  144. package/src/services/ecies/multi-recipient.d.ts.map +1 -0
  145. package/src/services/ecies/multi-recipient.js +360 -0
  146. package/src/services/ecies/multi-recipient.js.map +1 -0
  147. package/src/services/ecies/service.d.ts +70 -0
  148. package/src/services/ecies/service.d.ts.map +1 -0
  149. package/src/services/ecies/service.js +167 -0
  150. package/src/services/ecies/service.js.map +1 -0
  151. package/src/services/ecies/signature.d.ts +38 -0
  152. package/src/services/ecies/signature.d.ts.map +1 -0
  153. package/src/services/ecies/signature.js +69 -0
  154. package/src/services/ecies/signature.js.map +1 -0
  155. package/src/services/ecies/single-recipient.d.ts +85 -0
  156. package/src/services/ecies/single-recipient.d.ts.map +1 -0
  157. package/src/services/ecies/single-recipient.js +399 -0
  158. package/src/services/ecies/single-recipient.js.map +1 -0
  159. package/src/services/ecies/utilities.d.ts +22 -0
  160. package/src/services/ecies/utilities.d.ts.map +1 -0
  161. package/src/services/ecies/utilities.js +75 -0
  162. package/src/services/ecies/utilities.js.map +1 -0
  163. package/src/services/index.d.ts +4 -0
  164. package/src/services/index.d.ts.map +1 -0
  165. package/src/services/index.js +7 -0
  166. package/src/services/index.js.map +1 -0
  167. package/src/services/pbkdf2.d.ts +106 -0
  168. package/src/services/pbkdf2.d.ts.map +1 -0
  169. package/src/services/pbkdf2.js +195 -0
  170. package/src/services/pbkdf2.js.map +1 -0
  171. package/src/{types.ts → types.d.ts} +9 -26
  172. package/src/types.d.ts.map +1 -0
  173. package/src/types.js +3 -0
  174. package/src/types.js.map +1 -0
  175. package/src/utils.d.ts +11 -0
  176. package/src/utils.d.ts.map +1 -0
  177. package/src/utils.js +82 -0
  178. package/src/utils.js.map +1 -0
  179. package/LICENSE +0 -21
  180. package/src/constants.ts +0 -182
  181. package/src/enumerations/index.ts +0 -1
  182. package/src/enumerations/pbkdf2-profile.ts +0 -8
  183. package/src/i18n/ecies-i18n-factory.ts +0 -435
  184. package/src/interfaces/authenticated-cipher.ts +0 -9
  185. package/src/interfaces/authenticated-decipher.ts +0 -8
  186. package/src/interfaces/checksum-config.ts +0 -4
  187. package/src/interfaces/checksum-consts.ts +0 -13
  188. package/src/interfaces/constants.ts +0 -43
  189. package/src/interfaces/ecies-consts.ts +0 -99
  190. package/src/interfaces/encryption-consts.ts +0 -10
  191. package/src/interfaces/keypair-buffer-with-un-encrypted-private-key.ts +0 -7
  192. package/src/interfaces/keyring-consts.ts +0 -5
  193. package/src/interfaces/member-operational.ts +0 -52
  194. package/src/interfaces/multi-encrypted-parsed-header.ts +0 -24
  195. package/src/interfaces/pbkdf2-result.ts +0 -5
  196. package/src/interfaces/signing-key-private-key-info.ts +0 -12
  197. package/src/interfaces/simple-public-key-only-buffer.ts +0 -3
  198. package/src/interfaces/simple-public-key-only.ts +0 -3
  199. package/src/interfaces/single-encrypted-parsed-header.ts +0 -35
  200. package/src/interfaces/wrapped-key-consts.ts +0 -6
  201. package/src/member.ts +0 -463
  202. package/src/services/aes-gcm.ts +0 -160
  203. package/src/services/ecies/crypto-core.ts +0 -213
  204. package/src/services/ecies/file.ts +0 -174
  205. package/src/services/ecies/multi-recipient.ts +0 -583
  206. package/src/services/ecies/service.ts +0 -351
  207. package/src/services/ecies/signature.ts +0 -91
  208. package/src/services/ecies/single-recipient.ts +0 -676
  209. package/src/services/ecies/utilities.ts +0 -111
  210. package/src/services/index.ts +0 -3
  211. package/src/services/pbkdf2.ts +0 -307
  212. package/src/utils.ts +0 -104
package/README.md CHANGED
@@ -265,6 +265,10 @@ Please read the contributing guidelines in the main repository.
265
265
 
266
266
  ## ChangeLog
267
267
 
268
+ ### Version 1.1.23
269
+
270
+ - Re-export with js
271
+
268
272
  ### Version 1.1.22
269
273
 
270
274
  - Upgrade to es2022/nx monorepo
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@digitaldefiance/node-ecies-lib",
3
- "version": "1.1.22",
3
+ "version": "1.1.23",
4
4
  "description": "Digital Defiance Node ECIES Library",
5
5
  "main": "src/index.js",
6
6
  "types": "src/index.d.ts",
@@ -31,8 +31,8 @@
31
31
  "license": "MIT",
32
32
  "packageManager": "yarn@4.10.3",
33
33
  "dependencies": {
34
- "@digitaldefiance/ecies-lib": "1.1.24",
35
- "@digitaldefiance/i18n-lib": "1.3.13",
34
+ "@digitaldefiance/ecies-lib": "1.1.25",
35
+ "@digitaldefiance/i18n-lib": "1.3.14",
36
36
  "@ethereumjs/wallet": "^10.0.0",
37
37
  "@noble/curves": "^2.0.1",
38
38
  "@noble/hashes": "^2.0.1",
@@ -40,5 +40,6 @@
40
40
  "bson": "^6.10.4",
41
41
  "ethereum-cryptography": "^3.2.0",
42
42
  "ts-brand": "^0.2.0"
43
- }
44
- }
43
+ },
44
+ "type": "commonjs"
45
+ }
@@ -0,0 +1,32 @@
1
+ import { IPBkdf2Consts, getRuntimeConfiguration, registerRuntimeConfiguration } from '@digitaldefiance/ecies-lib';
2
+ import { CipherGCMTypes } from 'crypto';
3
+ import { IChecksumConsts } from './interfaces/checksum-consts';
4
+ import { IConstants } from './interfaces/constants';
5
+ import { IEncryptionConsts } from './interfaces/encryption-consts';
6
+ import { IKeyringConsts } from './interfaces/keyring-consts';
7
+ import { PbkdfProfiles } from './interfaces/pbkdf-profiles';
8
+ import { IWrappedKeyConsts } from './interfaces/wrapped-key-consts';
9
+ /**
10
+ * Constants for checksum operations
11
+ * These values are critical for data integrity and MUST NOT be changed
12
+ * in an already established system as it will break all existing checksums.
13
+ */
14
+ export declare const NODE_RUNTIME_CONFIGURATION_KEY: unique symbol;
15
+ type NodeRuntimeConfiguration = ReturnType<typeof getRuntimeConfiguration>;
16
+ type NodeRuntimeOverrides = Parameters<typeof registerRuntimeConfiguration>[1];
17
+ export declare const NODE_DEFAULTS_OVERRIDES: NodeRuntimeOverrides;
18
+ export declare function getNodeRuntimeConfiguration(): NodeRuntimeConfiguration;
19
+ export declare function registerNodeRuntimeConfiguration(configOrOverrides?: NodeRuntimeOverrides | NodeRuntimeConfiguration, options?: Parameters<typeof registerRuntimeConfiguration>[2]): NodeRuntimeConfiguration;
20
+ export declare const CHECKSUM: IChecksumConsts;
21
+ export declare const KEYRING: IKeyringConsts;
22
+ export declare const PBKDF2: IPBkdf2Consts;
23
+ export declare const PBKDF2_PROFILES: PbkdfProfiles;
24
+ export declare const WRAPPED_KEY: IWrappedKeyConsts;
25
+ export declare const KEYRING_ALGORITHM_CONFIGURATION: CipherGCMTypes;
26
+ /**
27
+ * Constants for encrypted data
28
+ */
29
+ export declare const ENCRYPTION: IEncryptionConsts;
30
+ export declare const Constants: IConstants;
31
+ export {};
32
+ //# sourceMappingURL=constants.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../../../packages/digitaldefiance-node-ecies-lib/src/constants.ts"],"names":[],"mappings":"AAAA,OAAO,EAGL,aAAa,EACb,uBAAuB,EACvB,4BAA4B,EAC7B,MAAM,4BAA4B,CAAC;AACpC,OAAO,EAAE,cAAc,EAAE,MAAM,QAAQ,CAAC;AAExC,OAAO,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;AAC/D,OAAO,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AACpD,OAAO,EAAE,iBAAiB,EAAE,MAAM,gCAAgC,CAAC;AACnE,OAAO,EAAE,cAAc,EAAE,MAAM,6BAA6B,CAAC;AAC7D,OAAO,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAC;AAC5D,OAAO,EAAE,iBAAiB,EAAE,MAAM,iCAAiC,CAAC;AAIpE;;;;GAIG;AACH,eAAO,MAAM,8BAA8B,eAE1C,CAAC;AAEF,KAAK,wBAAwB,GAAG,UAAU,CAAC,OAAO,uBAAuB,CAAC,CAAC;AAC3E,KAAK,oBAAoB,GAAG,UAAU,CACpC,OAAO,4BAA4B,CACpC,CAAC,CAAC,CAAC,CAAC;AAEL,eAAO,MAAM,uBAAuB,EAAE,oBAIpC,CAAC;AAOH,wBAAgB,2BAA2B,IAAI,wBAAwB,CAEtE;AAED,wBAAgB,gCAAgC,CAC9C,iBAAiB,CAAC,EAAE,oBAAoB,GAAG,wBAAwB,EACnE,OAAO,CAAC,EAAE,UAAU,CAAC,OAAO,4BAA4B,CAAC,CAAC,CAAC,CAAC,GAC3D,wBAAwB,CAO1B;AAED,eAAO,MAAM,QAAQ,EAAE,eAA0C,CAAC;AAElE,eAAO,MAAM,OAAO,EAAE,cAIX,CAAC;AAEZ,eAAO,MAAM,MAAM,EAAE,aAAsC,CAAC;AAE5D,eAAO,MAAM,eAAe,EAAE,aAwCnB,CAAC;AAEZ,eAAO,MAAM,WAAW,EAAE,iBAKf,CAAC;AAEZ,eAAO,MAAM,+BAA+B,EACoB,cAAc,CAAC;AAE/E;;GAEG;AACH,eAAO,MAAM,UAAU,EAAE,iBAGd,CAAC;AAGZ,eAAO,MAAM,SAAS,EAAE,UAoCb,CAAC"}
@@ -0,0 +1,137 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.Constants = exports.ENCRYPTION = exports.KEYRING_ALGORITHM_CONFIGURATION = exports.WRAPPED_KEY = exports.PBKDF2_PROFILES = exports.PBKDF2 = exports.KEYRING = exports.CHECKSUM = exports.NODE_DEFAULTS_OVERRIDES = exports.NODE_RUNTIME_CONFIGURATION_KEY = void 0;
4
+ exports.getNodeRuntimeConfiguration = getNodeRuntimeConfiguration;
5
+ exports.registerNodeRuntimeConfiguration = registerNodeRuntimeConfiguration;
6
+ const ecies_lib_1 = require("@digitaldefiance/ecies-lib");
7
+ const mongodb_1 = require("mongodb");
8
+ const pbkdf2_profile_1 = require("./enumerations/pbkdf2-profile");
9
+ const i18n_1 = require("./i18n");
10
+ /**
11
+ * Constants for checksum operations
12
+ * These values are critical for data integrity and MUST NOT be changed
13
+ * in an already established system as it will break all existing checksums.
14
+ */
15
+ exports.NODE_RUNTIME_CONFIGURATION_KEY = Symbol.for('digitaldefiance.node.ecies.defaults');
16
+ exports.NODE_DEFAULTS_OVERRIDES = Object.freeze({
17
+ PBKDF2: {
18
+ ALGORITHM: 'sha256',
19
+ },
20
+ });
21
+ let runtimeDefaults = (0, ecies_lib_1.registerRuntimeConfiguration)(exports.NODE_RUNTIME_CONFIGURATION_KEY, exports.NODE_DEFAULTS_OVERRIDES);
22
+ function getNodeRuntimeConfiguration() {
23
+ return runtimeDefaults;
24
+ }
25
+ function registerNodeRuntimeConfiguration(configOrOverrides, options) {
26
+ runtimeDefaults = (0, ecies_lib_1.registerRuntimeConfiguration)(exports.NODE_RUNTIME_CONFIGURATION_KEY, configOrOverrides, options);
27
+ return runtimeDefaults;
28
+ }
29
+ exports.CHECKSUM = runtimeDefaults.CHECKSUM;
30
+ exports.KEYRING = Object.freeze({
31
+ ALGORITHM: 'aes',
32
+ KEY_BITS: 256,
33
+ MODE: 'gcm',
34
+ });
35
+ exports.PBKDF2 = runtimeDefaults.PBKDF2;
36
+ exports.PBKDF2_PROFILES = Object.freeze({
37
+ // Align browser password profile with high security expectations (sha512, 64-byte salt/hash, 2M iterations)
38
+ [pbkdf2_profile_1.Pbkdf2ProfileEnum.BROWSER_PASSWORD]: Object.freeze({
39
+ saltBytes: 64,
40
+ iterations: 2000000,
41
+ algorithm: 'sha512',
42
+ hashBytes: 64,
43
+ }),
44
+ // High security profile (sha512, 64-byte salt/hash, 2M iterations)
45
+ [pbkdf2_profile_1.Pbkdf2ProfileEnum.HIGH_SECURITY]: Object.freeze({
46
+ saltBytes: 64,
47
+ iterations: 2000000,
48
+ algorithm: 'sha512',
49
+ hashBytes: 64,
50
+ }),
51
+ // Fast test profile (small salt and iterations for speed)
52
+ [pbkdf2_profile_1.Pbkdf2ProfileEnum.TEST_FAST]: Object.freeze({
53
+ saltBytes: 16,
54
+ iterations: 500,
55
+ algorithm: 'sha256',
56
+ hashBytes: 32,
57
+ }),
58
+ [pbkdf2_profile_1.Pbkdf2ProfileEnum.USER_LOGIN]: Object.freeze({
59
+ saltBytes: 32,
60
+ iterations: 1304000,
61
+ algorithm: 'sha256',
62
+ hashBytes: 32,
63
+ }),
64
+ [pbkdf2_profile_1.Pbkdf2ProfileEnum.KEY_WRAPPING]: Object.freeze({
65
+ saltBytes: 32,
66
+ iterations: 100000,
67
+ algorithm: 'sha256',
68
+ hashBytes: 32,
69
+ }),
70
+ [pbkdf2_profile_1.Pbkdf2ProfileEnum.BACKUP_CODES]: Object.freeze({
71
+ saltBytes: 32,
72
+ iterations: 1304000,
73
+ algorithm: 'sha256',
74
+ hashBytes: 32,
75
+ }),
76
+ });
77
+ exports.WRAPPED_KEY = Object.freeze({
78
+ SALT_SIZE: exports.PBKDF2.SALT_BYTES, // Use PBKDF2 standard salt size
79
+ IV_SIZE: 16,
80
+ MASTER_KEY_SIZE: 32,
81
+ MIN_ITERATIONS: 100000, // Keep lower for key-wrapping operations
82
+ });
83
+ exports.KEYRING_ALGORITHM_CONFIGURATION = `${exports.KEYRING.ALGORITHM}-${exports.KEYRING.KEY_BITS}-${exports.KEYRING.MODE}`;
84
+ /**
85
+ * Constants for encrypted data
86
+ */
87
+ exports.ENCRYPTION = Object.freeze({
88
+ ENCRYPTION_TYPE_SIZE: 1,
89
+ RECIPIENT_ID_SIZE: ecies_lib_1.GUID_SIZE,
90
+ });
91
+ const objectIdLength = Buffer.from(new mongodb_1.ObjectId().toHexString(), 'hex').length;
92
+ exports.Constants = Object.freeze({
93
+ ...ecies_lib_1.Constants,
94
+ /**
95
+ * The length of a raw object ID (not the hex string representation)
96
+ */
97
+ OBJECT_ID_LENGTH: objectIdLength,
98
+ /**
99
+ * PBKDF2 constants
100
+ */
101
+ PBKDF2: exports.PBKDF2,
102
+ /**
103
+ * PBKDF2 configuration profiles
104
+ */
105
+ PBKDF2_PROFILES: exports.PBKDF2_PROFILES,
106
+ /**
107
+ * Key Wrapping Service constants
108
+ */
109
+ WRAPPED_KEY: exports.WRAPPED_KEY,
110
+ /**
111
+ * Checksum constants used for data integrity
112
+ */
113
+ CHECKSUM: exports.CHECKSUM,
114
+ /**
115
+ * Keyring constants used for key management
116
+ */
117
+ KEYRING: exports.KEYRING,
118
+ /**
119
+ * Encryption constants used for encrypted data
120
+ */
121
+ ENCRYPTION: exports.ENCRYPTION,
122
+ /**
123
+ * Algorithm configuration string for keyring operations
124
+ */
125
+ KEYRING_ALGORITHM_CONFIGURATION: exports.KEYRING_ALGORITHM_CONFIGURATION,
126
+ PasswordRegex: runtimeDefaults.PasswordRegex,
127
+ MnemonicRegex: runtimeDefaults.MnemonicRegex,
128
+ });
129
+ if (exports.CHECKSUM.SHA3_BUFFER_LENGTH !== exports.CHECKSUM.SHA3_DEFAULT_HASH_BITS / 8 ||
130
+ exports.CHECKSUM.SHA3_BUFFER_LENGTH !== exports.CHECKSUM.SHA3_DEFAULT_HASH_BITS / 8) {
131
+ const pluginEngine = (0, i18n_1.getEciesPluginI18nEngine)();
132
+ throw new Error(pluginEngine.translate(i18n_1.NodeEciesComponentId, i18n_1.NodeEciesStringKey.Error_InvalidChecksumConstants));
133
+ }
134
+ if (objectIdLength !== 12) {
135
+ console.warn('ObjectID length may have changed, breaking encryption', objectIdLength);
136
+ }
137
+ //# sourceMappingURL=constants.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../../../packages/digitaldefiance-node-ecies-lib/src/constants.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export * from './pbkdf2-profile';
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../packages/digitaldefiance-node-ecies-lib/src/enumerations/index.ts"],"names":[],"mappings":"AAAA,cAAc,kBAAkB,CAAC"}
@@ -0,0 +1,5 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const tslib_1 = require("tslib");
4
+ tslib_1.__exportStar(require("./pbkdf2-profile"), exports);
5
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../packages/digitaldefiance-node-ecies-lib/src/enumerations/index.ts"],"names":[],"mappings":";;;AAAA,2DAAiC"}
@@ -0,0 +1,9 @@
1
+ export declare enum Pbkdf2ProfileEnum {
2
+ USER_LOGIN = "USER_LOGIN",
3
+ KEY_WRAPPING = "KEY_WRAPPING",
4
+ BACKUP_CODES = "BACKUP_CODES",
5
+ HIGH_SECURITY = "HIGH_SECURITY",
6
+ BROWSER_PASSWORD = "BROWSER_PASSWORD",
7
+ TEST_FAST = "TEST_FAST"
8
+ }
9
+ //# sourceMappingURL=pbkdf2-profile.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pbkdf2-profile.d.ts","sourceRoot":"","sources":["../../../../../packages/digitaldefiance-node-ecies-lib/src/enumerations/pbkdf2-profile.ts"],"names":[],"mappings":"AAAA,oBAAY,iBAAiB;IAC3B,UAAU,eAAe;IACzB,YAAY,iBAAiB;IAC7B,YAAY,iBAAiB;IAC7B,aAAa,kBAAkB;IAC/B,gBAAgB,qBAAqB;IACrC,SAAS,cAAc;CACxB"}
@@ -0,0 +1,13 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.Pbkdf2ProfileEnum = void 0;
4
+ var Pbkdf2ProfileEnum;
5
+ (function (Pbkdf2ProfileEnum) {
6
+ Pbkdf2ProfileEnum["USER_LOGIN"] = "USER_LOGIN";
7
+ Pbkdf2ProfileEnum["KEY_WRAPPING"] = "KEY_WRAPPING";
8
+ Pbkdf2ProfileEnum["BACKUP_CODES"] = "BACKUP_CODES";
9
+ Pbkdf2ProfileEnum["HIGH_SECURITY"] = "HIGH_SECURITY";
10
+ Pbkdf2ProfileEnum["BROWSER_PASSWORD"] = "BROWSER_PASSWORD";
11
+ Pbkdf2ProfileEnum["TEST_FAST"] = "TEST_FAST";
12
+ })(Pbkdf2ProfileEnum || (exports.Pbkdf2ProfileEnum = Pbkdf2ProfileEnum = {}));
13
+ //# sourceMappingURL=pbkdf2-profile.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pbkdf2-profile.js","sourceRoot":"","sources":["../../../../../packages/digitaldefiance-node-ecies-lib/src/enumerations/pbkdf2-profile.ts"],"names":[],"mappings":";;;AAAA,IAAY,iBAOX;AAPD,WAAY,iBAAiB;IAC3B,8CAAyB,CAAA;IACzB,kDAA6B,CAAA;IAC7B,kDAA6B,CAAA;IAC7B,oDAA+B,CAAA;IAC/B,0DAAqC,CAAA;IACrC,4CAAuB,CAAA;AACzB,CAAC,EAPW,iBAAiB,iCAAjB,iBAAiB,QAO5B"}
@@ -0,0 +1,54 @@
1
+ import { PluginI18nEngine, CoreLanguageCode } from '@digitaldefiance/i18n-lib';
2
+ /**
3
+ * ECIES-specific string keys for the node ECIES library
4
+ */
5
+ declare enum NodeEciesStringKey {
6
+ Error_LengthError_LengthIsInvalidType = "error_length_error_length_is_invalid_type",
7
+ Error_Member_MissingMemberName = "error_member_missing_member_name",
8
+ Error_Member_InvalidMemberNameWhitespace = "error_member_invalid_member_name_whitespace",
9
+ Error_Member_NoWallet = "error_member_no_wallet",
10
+ Error_Member_WalletAlreadyLoaded = "error_member_wallet_already_loaded",
11
+ Error_Member_InvalidMnemonic = "error_member_invalid_mnemonic",
12
+ Error_Member_MissingPrivateKey = "error_member_missing_private_key",
13
+ Error_Member_MissingEncryptionData = "error_member_missing_encryption_data",
14
+ Error_Member_EncryptionDataTooLarge = "error_member_encryption_data_too_large",
15
+ Error_Member_MissingEmail = "error_member_missing_email",
16
+ Error_Member_InvalidEmailWhitespace = "error_member_invalid_email_whitespace",
17
+ Error_InvalidPublicKey = "error_invalidPublicKey",
18
+ Error_InvalidPublicKeyFormat = "error_invalidPublicKeyFormat",
19
+ Error_MessageLengthExceedsMaximumAllowedSize = "error_messageLengthExceedsMaximumAllowedSize",
20
+ Error_InvalidEncryptionTypeOrNumberOfRecipients = "error_invalidEncryptionTypeOrNumberOfRecipients",
21
+ Error_EncryptedDataLengthMismatch = "error_encryptedDataLengthMismatch",
22
+ Error_EphemeralPublicKeyLengthMismatch = "error_ephemeralPublicKeyLengthMismatch",
23
+ Error_EncryptedDataIsEmpty = "error_encryptedDataIsEmpty",
24
+ Error_CombinedDataTooShort = "error_combinedDataTooShort",
25
+ Error_BufferIsTooShort = "error_bufferIsTooShort",
26
+ Error_BufferIsTooShortToReadFullLengthValue = "error_bufferIsTooShortToReadFullLengthValue",
27
+ Error_LengthExceedsMaximumSafeInteger = "error_lengthExceedsMaximumSafeInteger",
28
+ Error_BufferIsTooShortForDeclaredDataLength = "error_bufferIsTooShortForDeclaredDataLength",
29
+ Error_InvalidChecksumConstants = "error_invalidChecksumConstants",
30
+ Error_Pbkdf2_InvalidSaltLength = "error_pbkdf2_invalid_salt_length",
31
+ Error_Pbkdf2_InvalidHashLength = "error_pbkdf2_invalid_hash_length"
32
+ }
33
+ export declare const NodeEciesComponentId = "node-ecies";
34
+ /**
35
+ * Create or get the ECIES I18n engine with proper component registration
36
+ * This replaces the legacy getEciesI18nEngine() function
37
+ */
38
+ export declare function getEciesPluginI18nEngine(): PluginI18nEngine<CoreLanguageCode>;
39
+ /**
40
+ * Reset the engine instance (useful for testing)
41
+ */
42
+ export declare function resetEciesPluginI18nEngine(): void;
43
+ /**
44
+ * Get a translation from the Node ECIES component
45
+ */
46
+ export declare function getNodeEciesTranslation(key: NodeEciesStringKey, variables?: Record<string, string | number>, language?: CoreLanguageCode): string;
47
+ /**
48
+ * Get the ECIES PluginI18nEngine for use in node-ecies services
49
+ * Uses the base ecies-lib's engine which has all EciesStringKey translations
50
+ * Cast to any to handle cross-package type compatibility
51
+ */
52
+ export declare function createEciesTranslationEngine(): any;
53
+ export { NodeEciesStringKey };
54
+ //# sourceMappingURL=ecies-i18n-factory.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ecies-i18n-factory.d.ts","sourceRoot":"","sources":["../../../../../packages/digitaldefiance-node-ecies-lib/src/i18n/ecies-i18n-factory.ts"],"names":[],"mappings":"AAAA,OAAO,EAIL,gBAAgB,EAEhB,gBAAgB,EACjB,MAAM,2BAA2B,CAAC;AAGnC;;GAEG;AACH,aAAK,kBAAkB;IACrB,qCAAqC,8CAA8C;IAGnF,8BAA8B,qCAAqC;IACnE,wCAAwC,gDAAgD;IACxF,qBAAqB,2BAA2B;IAChD,gCAAgC,uCAAuC;IACvE,4BAA4B,kCAAkC;IAC9D,8BAA8B,qCAAqC;IACnE,kCAAkC,yCAAyC;IAC3E,mCAAmC,2CAA2C;IAC9E,yBAAyB,+BAA+B;IACxD,mCAAmC,0CAA0C;IAC7E,sBAAsB,2BAA2B;IACjD,4BAA4B,iCAAiC;IAC7D,4CAA4C,iDAAiD;IAC7F,+CAA+C,oDAAoD;IACnG,iCAAiC,sCAAsC;IACvE,sCAAsC,2CAA2C;IACjF,0BAA0B,+BAA+B;IACzD,0BAA0B,+BAA+B;IACzD,sBAAsB,2BAA2B;IACjD,2CAA2C,gDAAgD;IAC3F,qCAAqC,0CAA0C;IAC/E,2CAA2C,gDAAgD;IAC3F,8BAA8B,mCAAmC;IAGjE,8BAA8B,qCAAqC;IACnE,8BAA8B,qCAAqC;CACpE;AACD,eAAO,MAAM,oBAAoB,eAAe,CAAC;AA2UjD;;;GAGG;AACH,wBAAgB,wBAAwB,IAAI,gBAAgB,CAAC,gBAAgB,CAAC,CAwB7E;AAED;;GAEG;AACH,wBAAgB,0BAA0B,IAAI,IAAI,CAEjD;AAED;;GAEG;AACH,wBAAgB,uBAAuB,CACrC,GAAG,EAAE,kBAAkB,EACvB,SAAS,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAAC,EAC3C,QAAQ,CAAC,EAAE,gBAAgB,GAC1B,MAAM,CAGR;AAED;;;;GAIG;AACH,wBAAgB,4BAA4B,IAAI,GAAG,CAElD;AAED,OAAO,EAAE,kBAAkB,EAAE,CAAC"}