@digitaldefiance/ecies-lib 4.4.14 → 4.4.15

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 (228) hide show
  1. package/package.json +2 -3
  2. package/src/builders/ecies-builder.js +9 -5
  3. package/src/builders/ecies-builder.js.map +1 -1
  4. package/src/builders/index.js +5 -2
  5. package/src/builders/index.js.map +1 -1
  6. package/src/builders/member-builder.js +25 -21
  7. package/src/builders/member-builder.js.map +1 -1
  8. package/src/constants.js +79 -68
  9. package/src/constants.js.map +1 -1
  10. package/src/core/errors/crypto-error.js +14 -10
  11. package/src/core/errors/crypto-error.js.map +1 -1
  12. package/src/core/index.js +5 -2
  13. package/src/core/index.js.map +1 -1
  14. package/src/core/types/result.js +5 -1
  15. package/src/core/types/result.js.map +1 -1
  16. package/src/email-string.js +13 -8
  17. package/src/email-string.js.map +1 -1
  18. package/src/enumerations/disposed-error-type.js +5 -2
  19. package/src/enumerations/disposed-error-type.js.map +1 -1
  20. package/src/enumerations/ecies-cipher-suite.js +5 -2
  21. package/src/enumerations/ecies-cipher-suite.js.map +1 -1
  22. package/src/enumerations/ecies-encryption-type.js +9 -6
  23. package/src/enumerations/ecies-encryption-type.js.map +1 -1
  24. package/src/enumerations/ecies-error-type.js +5 -2
  25. package/src/enumerations/ecies-error-type.js.map +1 -1
  26. package/src/enumerations/ecies-string-key.js +5 -2
  27. package/src/enumerations/ecies-string-key.js.map +1 -1
  28. package/src/enumerations/ecies-version.js +5 -2
  29. package/src/enumerations/ecies-version.js.map +1 -1
  30. package/src/enumerations/guid-brand-type.js +5 -2
  31. package/src/enumerations/guid-brand-type.js.map +1 -1
  32. package/src/enumerations/guid-error-type.js +5 -2
  33. package/src/enumerations/guid-error-type.js.map +1 -1
  34. package/src/enumerations/id-provider-error-type.js +5 -2
  35. package/src/enumerations/id-provider-error-type.js.map +1 -1
  36. package/src/enumerations/index.js +20 -17
  37. package/src/enumerations/index.js.map +1 -1
  38. package/src/enumerations/invalid-email-type.js +5 -2
  39. package/src/enumerations/invalid-email-type.js.map +1 -1
  40. package/src/enumerations/length-encoding-type.js +5 -2
  41. package/src/enumerations/length-encoding-type.js.map +1 -1
  42. package/src/enumerations/length-error-type.js +5 -2
  43. package/src/enumerations/length-error-type.js.map +1 -1
  44. package/src/enumerations/member-error-type.js +6 -3
  45. package/src/enumerations/member-error-type.js.map +1 -1
  46. package/src/enumerations/member-type.js +6 -3
  47. package/src/enumerations/member-type.js.map +1 -1
  48. package/src/enumerations/password-login-error-type.js +5 -2
  49. package/src/enumerations/password-login-error-type.js.map +1 -1
  50. package/src/enumerations/pbkdf2-error-type.js +5 -2
  51. package/src/enumerations/pbkdf2-error-type.js.map +1 -1
  52. package/src/enumerations/pbkdf2-profile.js +5 -2
  53. package/src/enumerations/pbkdf2-profile.js.map +1 -1
  54. package/src/enumerations/secure-storage-error-type.js +5 -2
  55. package/src/enumerations/secure-storage-error-type.js.map +1 -1
  56. package/src/errors/disposed.js +9 -5
  57. package/src/errors/disposed.js.map +1 -1
  58. package/src/errors/ecies.js +9 -5
  59. package/src/errors/ecies.js.map +1 -1
  60. package/src/errors/guid.js +13 -9
  61. package/src/errors/guid.js.map +1 -1
  62. package/src/errors/id-provider.js +10 -6
  63. package/src/errors/id-provider.js.map +1 -1
  64. package/src/errors/index.js +12 -9
  65. package/src/errors/index.js.map +1 -1
  66. package/src/errors/invalid-email.js +9 -5
  67. package/src/errors/invalid-email.js.map +1 -1
  68. package/src/errors/length.js +9 -5
  69. package/src/errors/length.js.map +1 -1
  70. package/src/errors/member.js +9 -5
  71. package/src/errors/member.js.map +1 -1
  72. package/src/errors/pbkdf2.js +9 -5
  73. package/src/errors/pbkdf2.js.map +1 -1
  74. package/src/errors/secure-storage.js +10 -6
  75. package/src/errors/secure-storage.js.map +1 -1
  76. package/src/errors/simple-ecies.js +10 -6
  77. package/src/errors/simple-ecies.js.map +1 -1
  78. package/src/errors/simple-test-error.js +5 -1
  79. package/src/errors/simple-test-error.js.map +1 -1
  80. package/src/i18n-setup.js +37 -29
  81. package/src/i18n-setup.js.map +1 -1
  82. package/src/index.d.ts +3 -3
  83. package/src/index.d.ts.map +1 -1
  84. package/src/index.js +123 -60
  85. package/src/index.js.map +1 -1
  86. package/src/interfaces/checksum-config.js +2 -1
  87. package/src/interfaces/checksum-consts.js +2 -1
  88. package/src/interfaces/configuration-provenance.js +6 -1
  89. package/src/interfaces/configuration-provenance.js.map +1 -1
  90. package/src/interfaces/constants.js +2 -1
  91. package/src/interfaces/ecies-config.js +2 -1
  92. package/src/interfaces/ecies-consts.js +2 -1
  93. package/src/interfaces/ecies-file-service.js +2 -1
  94. package/src/interfaces/encrypted-chunk.js +4 -1
  95. package/src/interfaces/encrypted-chunk.js.map +1 -1
  96. package/src/interfaces/encryption-state.js +4 -1
  97. package/src/interfaces/encryption-state.js.map +1 -1
  98. package/src/interfaces/frontend-member-operational.js +2 -1
  99. package/src/interfaces/guid.js +2 -1
  100. package/src/interfaces/id-provider.js +5 -1
  101. package/src/interfaces/id-provider.js.map +1 -1
  102. package/src/interfaces/index.js +15 -12
  103. package/src/interfaces/index.js.map +1 -1
  104. package/src/interfaces/invariant.js +5 -1
  105. package/src/interfaces/invariant.js.map +1 -1
  106. package/src/interfaces/library-error.js +2 -1
  107. package/src/interfaces/member-storage.js +2 -1
  108. package/src/interfaces/member-with-mnemonic.js +2 -1
  109. package/src/interfaces/member.js +2 -1
  110. package/src/interfaces/multi-recipient-chunk.js +6 -1
  111. package/src/interfaces/multi-recipient-chunk.js.map +1 -1
  112. package/src/interfaces/pbkdf2-config.js +2 -1
  113. package/src/interfaces/pbkdf2-consts.js +2 -1
  114. package/src/interfaces/pbkdf2-result.js +2 -1
  115. package/src/interfaces/stream-config.js +4 -1
  116. package/src/interfaces/stream-config.js.map +1 -1
  117. package/src/interfaces/stream-header.js +4 -1
  118. package/src/interfaces/stream-header.js.map +1 -1
  119. package/src/interfaces/stream-progress.js +2 -1
  120. package/src/lib/configuration-provenance-utils.js +9 -5
  121. package/src/lib/configuration-provenance-utils.js.map +1 -1
  122. package/src/lib/crypto-container.js +13 -9
  123. package/src/lib/crypto-container.js.map +1 -1
  124. package/src/lib/guid.js +81 -76
  125. package/src/lib/guid.js.map +1 -1
  126. package/src/lib/id-providers/custom-provider.js +14 -10
  127. package/src/lib/id-providers/custom-provider.js.map +1 -1
  128. package/src/lib/id-providers/guidv4-provider.js +20 -16
  129. package/src/lib/id-providers/guidv4-provider.js.map +1 -1
  130. package/src/lib/id-providers/index.js +13 -5
  131. package/src/lib/id-providers/index.js.map +1 -1
  132. package/src/lib/id-providers/objectid-provider.js +15 -11
  133. package/src/lib/id-providers/objectid-provider.js.map +1 -1
  134. package/src/lib/id-providers/uuid-provider.js +16 -12
  135. package/src/lib/id-providers/uuid-provider.js.map +1 -1
  136. package/src/lib/index.js +5 -2
  137. package/src/lib/index.js.map +1 -1
  138. package/src/lib/invariant-validator.js +18 -14
  139. package/src/lib/invariant-validator.js.map +1 -1
  140. package/src/lib/invariants/encryption-algorithm-consistency.js +6 -2
  141. package/src/lib/invariants/encryption-algorithm-consistency.js.map +1 -1
  142. package/src/lib/invariants/index.js +6 -3
  143. package/src/lib/invariants/index.js.map +1 -1
  144. package/src/lib/invariants/pbkdf2-profiles-validity.js +13 -9
  145. package/src/lib/invariants/pbkdf2-profiles-validity.js.map +1 -1
  146. package/src/lib/invariants/recipient-id-consistency.js +6 -2
  147. package/src/lib/invariants/recipient-id-consistency.js.map +1 -1
  148. package/src/lib/multi-recipient-chunk-utils.js +6 -2
  149. package/src/lib/multi-recipient-chunk-utils.js.map +1 -1
  150. package/src/member.js +48 -43
  151. package/src/member.js.map +1 -1
  152. package/src/pbkdf2-profiles.js +2 -1
  153. package/src/phone-number.js +11 -7
  154. package/src/phone-number.js.map +1 -1
  155. package/src/regexes.js +6 -3
  156. package/src/regexes.js.map +1 -1
  157. package/src/secure-buffer.js +21 -17
  158. package/src/secure-buffer.js.map +1 -1
  159. package/src/secure-string.js +23 -19
  160. package/src/secure-string.js.map +1 -1
  161. package/src/services/aes-gcm.js +25 -21
  162. package/src/services/aes-gcm.js.map +1 -1
  163. package/src/services/chunk-processor.js +36 -32
  164. package/src/services/chunk-processor.js.map +1 -1
  165. package/src/services/ecies/crypto-core.js +44 -40
  166. package/src/services/ecies/crypto-core.js.map +1 -1
  167. package/src/services/ecies/example.js +44 -37
  168. package/src/services/ecies/example.js.map +1 -1
  169. package/src/services/ecies/file.js +5 -1
  170. package/src/services/ecies/file.js.map +1 -1
  171. package/src/services/ecies/index.js +15 -10
  172. package/src/services/ecies/index.js.map +1 -1
  173. package/src/services/ecies/integration.js +28 -23
  174. package/src/services/ecies/integration.js.map +1 -1
  175. package/src/services/ecies/interfaces.js +2 -1
  176. package/src/services/ecies/interfaces.js.map +1 -1
  177. package/src/services/ecies/manual-test.js +34 -26
  178. package/src/services/ecies/manual-test.js.map +1 -1
  179. package/src/services/ecies/multi-recipient.js +68 -64
  180. package/src/services/ecies/multi-recipient.js.map +1 -1
  181. package/src/services/ecies/service.js +31 -27
  182. package/src/services/ecies/service.js.map +1 -1
  183. package/src/services/ecies/signature.js +13 -9
  184. package/src/services/ecies/signature.js.map +1 -1
  185. package/src/services/ecies/single-recipient.js +53 -49
  186. package/src/services/ecies/single-recipient.js.map +1 -1
  187. package/src/services/encryption-stream.js +46 -42
  188. package/src/services/encryption-stream.js.map +1 -1
  189. package/src/services/index.js +13 -10
  190. package/src/services/index.js.map +1 -1
  191. package/src/services/multi-recipient-processor.js +44 -40
  192. package/src/services/multi-recipient-processor.js.map +1 -1
  193. package/src/services/password-login.js +37 -33
  194. package/src/services/password-login.js.map +1 -1
  195. package/src/services/pbkdf2.js +12 -8
  196. package/src/services/pbkdf2.js.map +1 -1
  197. package/src/services/progress-tracker.js +9 -5
  198. package/src/services/progress-tracker.js.map +1 -1
  199. package/src/services/resumable-encryption.js +28 -24
  200. package/src/services/resumable-encryption.js.map +1 -1
  201. package/src/services/xor.js +5 -1
  202. package/src/services/xor.js.map +1 -1
  203. package/src/test-mocks/index.js +4 -1
  204. package/src/test-mocks/index.js.map +1 -1
  205. package/src/test-mocks/mock-frontend-member.js +24 -20
  206. package/src/test-mocks/mock-frontend-member.js.map +1 -1
  207. package/src/testing.js +4 -1
  208. package/src/testing.js.map +1 -1
  209. package/src/translations/de.js +195 -192
  210. package/src/translations/de.js.map +1 -1
  211. package/src/translations/en-US.js +195 -192
  212. package/src/translations/en-US.js.map +1 -1
  213. package/src/translations/es.js +195 -192
  214. package/src/translations/es.js.map +1 -1
  215. package/src/translations/fr.js +195 -192
  216. package/src/translations/fr.js.map +1 -1
  217. package/src/translations/ja.js +195 -192
  218. package/src/translations/ja.js.map +1 -1
  219. package/src/translations/uk.js +195 -192
  220. package/src/translations/uk.js.map +1 -1
  221. package/src/translations/zh-cn.js +195 -192
  222. package/src/translations/zh-cn.js.map +1 -1
  223. package/src/types/deep-partial.js +2 -1
  224. package/src/types.js +2 -1
  225. package/src/utils/encryption-type-utils.js +21 -15
  226. package/src/utils/encryption-type-utils.js.map +1 -1
  227. package/src/utils.js +77 -59
  228. package/src/utils.js.map +1 -1
@@ -1,20 +1,23 @@
1
- import { Constants } from '../../constants';
2
- import { concatUint8Arrays } from '../../utils';
3
- import { AESGCMService } from '../aes-gcm';
4
- import { EciesCryptoCore } from './crypto-core';
5
- import { EciesComponentId, getEciesI18nEngine } from '../../i18n-setup';
6
- import { EciesStringKey } from '../../enumerations';
7
- import { EciesVersionEnum } from '../../enumerations/ecies-version';
8
- import { EciesCipherSuiteEnum } from '../../enumerations/ecies-cipher-suite';
9
- import { EciesEncryptionTypeEnum } from '../../enumerations/ecies-encryption-type';
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.EciesMultiRecipient = void 0;
4
+ const constants_1 = require("../../constants");
5
+ const utils_1 = require("../../utils");
6
+ const aes_gcm_1 = require("../aes-gcm");
7
+ const crypto_core_1 = require("./crypto-core");
8
+ const i18n_setup_1 = require("../../i18n-setup");
9
+ const enumerations_1 = require("../../enumerations");
10
+ const ecies_version_1 = require("../../enumerations/ecies-version");
11
+ const ecies_cipher_suite_1 = require("../../enumerations/ecies-cipher-suite");
12
+ const ecies_encryption_type_1 = require("../../enumerations/ecies-encryption-type");
10
13
  /**
11
14
  * Browser-compatible multi-recipient ECIES encryption/decryption
12
15
  */
13
- export class EciesMultiRecipient {
16
+ class EciesMultiRecipient {
14
17
  cryptoCore;
15
18
  eciesConsts;
16
- constructor(config, eciesParams = Constants.ECIES) {
17
- this.cryptoCore = new EciesCryptoCore(config, eciesParams);
19
+ constructor(config, eciesParams = constants_1.Constants.ECIES) {
20
+ this.cryptoCore = new crypto_core_1.EciesCryptoCore(config, eciesParams);
18
21
  this.eciesConsts = eciesParams;
19
22
  }
20
23
  /**
@@ -44,14 +47,14 @@ export class EciesMultiRecipient {
44
47
  const symKey = this.cryptoCore.deriveSharedKey(sharedSecret, new Uint8Array(0), // No salt
45
48
  new TextEncoder().encode('ecies-v2-key-derivation'), // Info
46
49
  this.eciesConsts.SYMMETRIC.KEY_SIZE);
47
- const encryptResult = await AESGCMService.encrypt(messageSymmetricKey, symKey, true, this.eciesConsts, aad);
50
+ const encryptResult = await aes_gcm_1.AESGCMService.encrypt(messageSymmetricKey, symKey, true, this.eciesConsts, aad);
48
51
  const { encrypted, iv } = encryptResult;
49
52
  const authTag = encryptResult.tag;
50
53
  if (!authTag) {
51
- const engine = getEciesI18nEngine();
52
- throw new Error(engine.translate(EciesComponentId, EciesStringKey.Error_ECIESError_AuthenticationTagIsRequiredForKeyEncryption));
54
+ const engine = (0, i18n_setup_1.getEciesI18nEngine)();
55
+ throw new Error(engine.translate(i18n_setup_1.EciesComponentId, enumerations_1.EciesStringKey.Error_ECIESError_AuthenticationTagIsRequiredForKeyEncryption));
53
56
  }
54
- return concatUint8Arrays(iv, authTag, encrypted);
57
+ return (0, utils_1.concatUint8Arrays)(iv, authTag, encrypted);
55
58
  }
56
59
  /**
57
60
  * Decrypts symmetric key encrypted with ECIES
@@ -63,8 +66,8 @@ export class EciesMultiRecipient {
63
66
  */
64
67
  async decryptKey(privateKey, encryptedKey, ephemeralPublicKey, aad) {
65
68
  if (encryptedKey.length !== this.eciesConsts.MULTIPLE.ENCRYPTED_KEY_SIZE) {
66
- const engine = getEciesI18nEngine();
67
- throw new Error(engine.translate(EciesComponentId, EciesStringKey.Error_ECIESError_InvalidEncryptedKeyLengthTemplate, { keySize: this.eciesConsts.MULTIPLE.ENCRYPTED_KEY_SIZE, encryptedKeyLength: encryptedKey.length }));
69
+ const engine = (0, i18n_setup_1.getEciesI18nEngine)();
70
+ throw new Error(engine.translate(i18n_setup_1.EciesComponentId, enumerations_1.EciesStringKey.Error_ECIESError_InvalidEncryptedKeyLengthTemplate, { keySize: this.eciesConsts.MULTIPLE.ENCRYPTED_KEY_SIZE, encryptedKeyLength: encryptedKey.length }));
68
71
  }
69
72
  const iv = encryptedKey.slice(0, this.eciesConsts.IV_SIZE);
70
73
  const authTag = encryptedKey.slice(this.eciesConsts.IV_SIZE, this.eciesConsts.IV_SIZE + this.eciesConsts.AUTH_TAG_SIZE);
@@ -74,37 +77,37 @@ export class EciesMultiRecipient {
74
77
  const symKey = this.cryptoCore.deriveSharedKey(sharedSecret, new Uint8Array(0), // No salt
75
78
  new TextEncoder().encode('ecies-v2-key-derivation'), // Info
76
79
  this.eciesConsts.SYMMETRIC.KEY_SIZE);
77
- const encryptedWithTag = AESGCMService.combineEncryptedDataAndTag(encrypted, authTag);
80
+ const encryptedWithTag = aes_gcm_1.AESGCMService.combineEncryptedDataAndTag(encrypted, authTag);
78
81
  try {
79
- const decrypted = await AESGCMService.decrypt(iv, encryptedWithTag, symKey, true, this.eciesConsts, aad);
82
+ const decrypted = await aes_gcm_1.AESGCMService.decrypt(iv, encryptedWithTag, symKey, true, this.eciesConsts, aad);
80
83
  if (decrypted.length !== this.eciesConsts.SYMMETRIC.KEY_SIZE) {
81
- const engine = getEciesI18nEngine();
82
- throw new Error(engine.translate(EciesComponentId, EciesStringKey.Error_ECIESError_InvalidDataLength));
84
+ const engine = (0, i18n_setup_1.getEciesI18nEngine)();
85
+ throw new Error(engine.translate(i18n_setup_1.EciesComponentId, enumerations_1.EciesStringKey.Error_ECIESError_InvalidDataLength));
83
86
  }
84
87
  return decrypted;
85
88
  }
86
89
  catch (error) {
87
90
  console.error('Failed to decrypt key:', error);
88
- const engine = getEciesI18nEngine();
89
- throw new Error(engine.translate(EciesComponentId, EciesStringKey.Error_ECIESError_FailedToDecryptKey));
91
+ const engine = (0, i18n_setup_1.getEciesI18nEngine)();
92
+ throw new Error(engine.translate(i18n_setup_1.EciesComponentId, enumerations_1.EciesStringKey.Error_ECIESError_FailedToDecryptKey));
90
93
  }
91
94
  }
92
95
  /**
93
96
  * Encrypt a message for multiple recipients
94
97
  */
95
98
  async encryptMultiple(recipients, message, preamble = new Uint8Array(0), senderPrivateKey) {
96
- const engine = getEciesI18nEngine();
99
+ const engine = (0, i18n_setup_1.getEciesI18nEngine)();
97
100
  if (recipients.length > this.eciesConsts.MULTIPLE.MAX_RECIPIENTS) {
98
- throw new Error(engine.translate(EciesComponentId, EciesStringKey.Error_ECIESError_TooManyRecipientsTemplate, { recipientsCount: recipients.length }));
101
+ throw new Error(engine.translate(i18n_setup_1.EciesComponentId, enumerations_1.EciesStringKey.Error_ECIESError_TooManyRecipientsTemplate, { recipientsCount: recipients.length }));
99
102
  }
100
103
  // Sign-then-Encrypt: If sender key provided, sign the message and prepend signature
101
104
  let messageToEncrypt = message;
102
105
  if (senderPrivateKey) {
103
106
  const signature = this.cryptoCore.sign(senderPrivateKey, message);
104
- messageToEncrypt = concatUint8Arrays(signature, message);
107
+ messageToEncrypt = (0, utils_1.concatUint8Arrays)(signature, message);
105
108
  }
106
109
  if (messageToEncrypt.length > this.eciesConsts.MAX_RAW_DATA_SIZE) {
107
- throw new Error(engine.translate(EciesComponentId, EciesStringKey.Error_ECIESError_MessageTooLargeTemplate, { length: messageToEncrypt.length }));
110
+ throw new Error(engine.translate(i18n_setup_1.EciesComponentId, enumerations_1.EciesStringKey.Error_ECIESError_MessageTooLargeTemplate, { length: messageToEncrypt.length }));
108
111
  }
109
112
  // Generate symmetric key
110
113
  const symmetricKey = crypto.getRandomValues(new Uint8Array(this.eciesConsts.SYMMETRIC.KEY_SIZE));
@@ -133,16 +136,16 @@ export class EciesMultiRecipient {
133
136
  };
134
137
  const headerBytes = this.buildHeader(tempHeaderData);
135
138
  // Encrypt message with symmetric key, using Header as AAD
136
- const encryptResult = await AESGCMService.encrypt(messageToEncrypt, symmetricKey, true, this.eciesConsts, headerBytes // Bind header to ciphertext
139
+ const encryptResult = await aes_gcm_1.AESGCMService.encrypt(messageToEncrypt, symmetricKey, true, this.eciesConsts, headerBytes // Bind header to ciphertext
137
140
  );
138
141
  const { encrypted, iv } = encryptResult;
139
142
  const authTag = encryptResult.tag;
140
143
  if (!authTag) {
141
- const engine = getEciesI18nEngine();
142
- throw new Error(engine.translate(EciesComponentId, EciesStringKey.Error_ECIESError_AuthenticationTagIsRequiredForMultiRecipientECIESEncryption));
144
+ const engine = (0, i18n_setup_1.getEciesI18nEngine)();
145
+ throw new Error(engine.translate(i18n_setup_1.EciesComponentId, enumerations_1.EciesStringKey.Error_ECIESError_AuthenticationTagIsRequiredForMultiRecipientECIESEncryption));
143
146
  }
144
147
  // Create stored message: preamble + iv + authTag + encrypted
145
- const storedMessage = concatUint8Arrays(preamble, iv, authTag, encrypted);
148
+ const storedMessage = (0, utils_1.concatUint8Arrays)(preamble, iv, authTag, encrypted);
146
149
  return {
147
150
  dataLength: messageToEncrypt.length,
148
151
  recipientCount: recipients.length,
@@ -160,14 +163,14 @@ export class EciesMultiRecipient {
160
163
  // Find recipient's encrypted key
161
164
  const recipientIndex = encryptedData.recipientIds.findIndex((id) => this.arraysEqual(id, recipientId));
162
165
  if (recipientIndex === -1) {
163
- const engine = getEciesI18nEngine();
164
- throw new Error(engine.translate(EciesComponentId, EciesStringKey.Error_ECIESError_RecipientNotFound));
166
+ const engine = (0, i18n_setup_1.getEciesI18nEngine)();
167
+ throw new Error(engine.translate(i18n_setup_1.EciesComponentId, enumerations_1.EciesStringKey.Error_ECIESError_RecipientNotFound));
165
168
  }
166
169
  const encryptedKey = encryptedData.recipientKeys[recipientIndex];
167
170
  // Decrypt the symmetric key using the shared ephemeral public key
168
171
  if (!encryptedData.ephemeralPublicKey) {
169
- const engine = getEciesI18nEngine();
170
- throw new Error(engine.translate(EciesComponentId, EciesStringKey.Error_ECIESError_MissingEphemeralPublicKey));
172
+ const engine = (0, i18n_setup_1.getEciesI18nEngine)();
173
+ throw new Error(engine.translate(i18n_setup_1.EciesComponentId, enumerations_1.EciesStringKey.Error_ECIESError_MissingEphemeralPublicKey));
171
174
  }
172
175
  // Use Recipient ID as AAD for key decryption
173
176
  const symmetricKey = await this.decryptKey(privateKey, encryptedKey, encryptedData.ephemeralPublicKey, recipientId);
@@ -182,12 +185,12 @@ export class EciesMultiRecipient {
182
185
  const encrypted = encryptedData.encryptedMessage.slice(offset);
183
186
  // AES-GCM provides authentication via auth tag (no separate CRC needed)
184
187
  // Decrypt with symmetric key and Header as AAD
185
- const encryptedWithTag = AESGCMService.combineEncryptedDataAndTag(encrypted, authTag);
186
- const decrypted = await AESGCMService.decrypt(iv, encryptedWithTag, symmetricKey, true, this.eciesConsts, headerBytes);
188
+ const encryptedWithTag = aes_gcm_1.AESGCMService.combineEncryptedDataAndTag(encrypted, authTag);
189
+ const decrypted = await aes_gcm_1.AESGCMService.decrypt(iv, encryptedWithTag, symmetricKey, true, this.eciesConsts, headerBytes);
187
190
  // Verify length
188
191
  if (decrypted.length !== encryptedData.dataLength) {
189
- const engine = getEciesI18nEngine();
190
- throw new Error(engine.translate(EciesComponentId, EciesStringKey.Error_ECIESError_DecryptedDataLengthMismatch));
192
+ const engine = (0, i18n_setup_1.getEciesI18nEngine)();
193
+ throw new Error(engine.translate(i18n_setup_1.EciesComponentId, enumerations_1.EciesStringKey.Error_ECIESError_DecryptedDataLengthMismatch));
191
194
  }
192
195
  // If sender public key is provided, verify signature
193
196
  if (senderPublicKey) {
@@ -210,19 +213,19 @@ export class EciesMultiRecipient {
210
213
  */
211
214
  buildHeader(data) {
212
215
  if (data.recipientIds.length !== data.recipientKeys.length) {
213
- const engine = getEciesI18nEngine();
214
- throw new Error(engine.translate(EciesComponentId, EciesStringKey.Error_ECIESError_RecipientCountMismatch));
216
+ const engine = (0, i18n_setup_1.getEciesI18nEngine)();
217
+ throw new Error(engine.translate(i18n_setup_1.EciesComponentId, enumerations_1.EciesStringKey.Error_ECIESError_RecipientCountMismatch));
215
218
  }
216
219
  if (data.dataLength < 0 || data.dataLength > this.eciesConsts.MAX_RAW_DATA_SIZE) {
217
- const engine = getEciesI18nEngine();
218
- throw new Error(engine.translate(EciesComponentId, EciesStringKey.Error_ECIESError_InvalidDataLength));
220
+ const engine = (0, i18n_setup_1.getEciesI18nEngine)();
221
+ throw new Error(engine.translate(i18n_setup_1.EciesComponentId, enumerations_1.EciesStringKey.Error_ECIESError_InvalidDataLength));
219
222
  }
220
- const versionArray = new Uint8Array([EciesVersionEnum.V1]);
221
- const cipherSuiteArray = new Uint8Array([EciesCipherSuiteEnum.Secp256k1_Aes256Gcm_Sha256]);
222
- const encryptionTypeArray = new Uint8Array([EciesEncryptionTypeEnum.Multiple]);
223
+ const versionArray = new Uint8Array([ecies_version_1.EciesVersionEnum.V1]);
224
+ const cipherSuiteArray = new Uint8Array([ecies_cipher_suite_1.EciesCipherSuiteEnum.Secp256k1_Aes256Gcm_Sha256]);
225
+ const encryptionTypeArray = new Uint8Array([ecies_encryption_type_1.EciesEncryptionTypeEnum.Multiple]);
223
226
  if (!data.ephemeralPublicKey) {
224
- const engine = getEciesI18nEngine();
225
- throw new Error(engine.translate(EciesComponentId, EciesStringKey.Error_ECIESError_MissingEphemeralPublicKey));
227
+ const engine = (0, i18n_setup_1.getEciesI18nEngine)();
228
+ throw new Error(engine.translate(i18n_setup_1.EciesComponentId, enumerations_1.EciesStringKey.Error_ECIESError_MissingEphemeralPublicKey));
226
229
  }
227
230
  // Data length (8 bytes)
228
231
  // We use the most significant byte (MSB) to store the recipient ID size
@@ -230,8 +233,8 @@ export class EciesMultiRecipient {
230
233
  // Max data size is 2^53-1, so the top byte is always 0 for valid data lengths
231
234
  const recipientIdSize = this.eciesConsts.MULTIPLE.RECIPIENT_ID_SIZE;
232
235
  if (recipientIdSize > 255) {
233
- const engine = getEciesI18nEngine();
234
- throw new Error(engine.translate(EciesComponentId, EciesStringKey.Error_ECIESError_RecipientIdSizeTooLargeTemplate, { size: recipientIdSize }));
236
+ const engine = (0, i18n_setup_1.getEciesI18nEngine)();
237
+ throw new Error(engine.translate(i18n_setup_1.EciesComponentId, enumerations_1.EciesStringKey.Error_ECIESError_RecipientIdSizeTooLargeTemplate, { size: recipientIdSize }));
235
238
  }
236
239
  const dataLengthBigInt = BigInt(data.dataLength);
237
240
  const recipientIdSizeBigInt = BigInt(recipientIdSize);
@@ -242,39 +245,39 @@ export class EciesMultiRecipient {
242
245
  const recipientCountUint8Array = new Uint8Array(2);
243
246
  new DataView(recipientCountUint8Array.buffer).setUint16(0, data.recipientIds.length, false);
244
247
  // Recipient IDs
245
- const recipientIdsUint8Array = concatUint8Arrays(...data.recipientIds);
248
+ const recipientIdsUint8Array = (0, utils_1.concatUint8Arrays)(...data.recipientIds);
246
249
  // Encrypted keys
247
- const encryptedKeysUint8Array = concatUint8Arrays(...data.recipientKeys);
248
- return concatUint8Arrays(versionArray, cipherSuiteArray, encryptionTypeArray, data.ephemeralPublicKey, dataLengthUint8Array, recipientCountUint8Array, recipientIdsUint8Array, encryptedKeysUint8Array);
250
+ const encryptedKeysUint8Array = (0, utils_1.concatUint8Arrays)(...data.recipientKeys);
251
+ return (0, utils_1.concatUint8Arrays)(versionArray, cipherSuiteArray, encryptionTypeArray, data.ephemeralPublicKey, dataLengthUint8Array, recipientCountUint8Array, recipientIdsUint8Array, encryptedKeysUint8Array);
249
252
  }
250
253
  /**
251
254
  * Parse multi-recipient header
252
255
  */
253
256
  parseHeader(data) {
254
- const engine = getEciesI18nEngine();
257
+ const engine = (0, i18n_setup_1.getEciesI18nEngine)();
255
258
  // minimum: 1 (ver) + 1 (suite) + 1 (type) + 33 (pubkey) + 8 (len) + 2 (count) = 46
256
259
  if (data.length < 46) {
257
- throw new Error(engine.translate(EciesComponentId, EciesStringKey.Error_ECIESError_DataTooShortForMultiRecipientHeader));
260
+ throw new Error(engine.translate(i18n_setup_1.EciesComponentId, enumerations_1.EciesStringKey.Error_ECIESError_DataTooShortForMultiRecipientHeader));
258
261
  }
259
262
  let offset = 0;
260
263
  const view = new DataView(data.buffer, data.byteOffset);
261
264
  // Read Version
262
265
  const version = data[offset];
263
266
  offset += this.eciesConsts.VERSION_SIZE;
264
- if (version !== EciesVersionEnum.V1) {
265
- throw new Error(engine.translate(EciesComponentId, EciesStringKey.Error_ECIESError_InvalidVersionTemplate, { version }));
267
+ if (version !== ecies_version_1.EciesVersionEnum.V1) {
268
+ throw new Error(engine.translate(i18n_setup_1.EciesComponentId, enumerations_1.EciesStringKey.Error_ECIESError_InvalidVersionTemplate, { version }));
266
269
  }
267
270
  // Read CipherSuite
268
271
  const cipherSuite = data[offset];
269
272
  offset += this.eciesConsts.CIPHER_SUITE_SIZE;
270
- if (cipherSuite !== EciesCipherSuiteEnum.Secp256k1_Aes256Gcm_Sha256) {
271
- throw new Error(engine.translate(EciesComponentId, EciesStringKey.Error_ECIESError_InvalidCipherSuiteTemplate, { cipherSuite }));
273
+ if (cipherSuite !== ecies_cipher_suite_1.EciesCipherSuiteEnum.Secp256k1_Aes256Gcm_Sha256) {
274
+ throw new Error(engine.translate(i18n_setup_1.EciesComponentId, enumerations_1.EciesStringKey.Error_ECIESError_InvalidCipherSuiteTemplate, { cipherSuite }));
272
275
  }
273
276
  // Read Encryption Type
274
277
  const encryptionType = data[offset];
275
278
  offset += this.eciesConsts.ENCRYPTION_TYPE_SIZE;
276
- if (encryptionType !== EciesEncryptionTypeEnum.Multiple) {
277
- throw new Error(engine.translate(EciesComponentId, EciesStringKey.Error_ECIESError_InvalidEncryptionTypeTemplate, { encryptionType: encryptionType.toString(16) }));
279
+ if (encryptionType !== ecies_encryption_type_1.EciesEncryptionTypeEnum.Multiple) {
280
+ throw new Error(engine.translate(i18n_setup_1.EciesComponentId, enumerations_1.EciesStringKey.Error_ECIESError_InvalidEncryptionTypeTemplate, { encryptionType: encryptionType.toString(16) }));
278
281
  }
279
282
  // Read Ephemeral Public Key
280
283
  const ephemeralPublicKey = data.slice(offset, offset + this.eciesConsts.PUBLIC_KEY_LENGTH);
@@ -287,7 +290,7 @@ export class EciesMultiRecipient {
287
290
  // Extract data length from lower 56 bits
288
291
  const dataLength = Number(combinedLength & 0x00ffffffffffffffn);
289
292
  if (dataLength <= 0 || dataLength > this.eciesConsts.MAX_RAW_DATA_SIZE) {
290
- throw new Error(engine.translate(EciesComponentId, EciesStringKey.Error_ECIESError_InvalidDataLength));
293
+ throw new Error(engine.translate(i18n_setup_1.EciesComponentId, enumerations_1.EciesStringKey.Error_ECIESError_InvalidDataLength));
291
294
  }
292
295
  // Use stored recipient ID size if available (non-legacy), otherwise fallback to config
293
296
  const recipientIdSize = storedRecipientIdSize > 0
@@ -297,7 +300,7 @@ export class EciesMultiRecipient {
297
300
  const recipientCount = view.getUint16(offset, false);
298
301
  offset += 2;
299
302
  if (recipientCount <= 0 || recipientCount > this.eciesConsts.MULTIPLE.MAX_RECIPIENTS) {
300
- throw new Error(engine.translate(EciesComponentId, EciesStringKey.Error_ECIESError_InvalidRecipientCount));
303
+ throw new Error(engine.translate(i18n_setup_1.EciesComponentId, enumerations_1.EciesStringKey.Error_ECIESError_InvalidRecipientCount));
301
304
  }
302
305
  // Read recipient IDs
303
306
  const recipientIds = [];
@@ -341,4 +344,5 @@ export class EciesMultiRecipient {
341
344
  return true;
342
345
  }
343
346
  }
347
+ exports.EciesMultiRecipient = EciesMultiRecipient;
344
348
  //# sourceMappingURL=multi-recipient.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"multi-recipient.js","sourceRoot":"","sources":["../../../../../../packages/digitaldefiance-ecies-lib/src/services/ecies/multi-recipient.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"multi-recipient.js","sourceRoot":"","sources":["../../../../../../packages/digitaldefiance-ecies-lib/src/services/ecies/multi-recipient.ts"],"names":[],"mappings":"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"}
@@ -1,23 +1,26 @@
1
- import { Constants } from '../../constants';
2
- import { EciesEncryptionTypeEnum, } from '../../enumerations/ecies-encryption-type';
3
- import { EciesCryptoCore } from './crypto-core';
4
- import { EciesSignature } from './signature';
5
- import { EciesSingleRecipient } from './single-recipient';
6
- import { getEciesI18nEngine, EciesComponentId } from '../../i18n-setup';
7
- import { EciesStringKey } from '../../enumerations/ecies-string-key';
8
- import { EciesMultiRecipient } from './multi-recipient';
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ECIESService = void 0;
4
+ const constants_1 = require("../../constants");
5
+ const ecies_encryption_type_1 = require("../../enumerations/ecies-encryption-type");
6
+ const crypto_core_1 = require("./crypto-core");
7
+ const signature_1 = require("./signature");
8
+ const single_recipient_1 = require("./single-recipient");
9
+ const i18n_setup_1 = require("../../i18n-setup");
10
+ const ecies_string_key_1 = require("../../enumerations/ecies-string-key");
11
+ const multi_recipient_1 = require("./multi-recipient");
9
12
  /**
10
13
  * Browser-compatible ECIES service that mirrors the server-side functionality
11
14
  * Uses Web Crypto API and @scure/@noble libraries for browser compatibility
12
15
  */
13
- export class ECIESService {
16
+ class ECIESService {
14
17
  _config;
15
18
  cryptoCore;
16
19
  signature;
17
20
  singleRecipient;
18
21
  multiRecipient;
19
22
  eciesConsts;
20
- constructor(config, eciesParams = Constants.ECIES) {
23
+ constructor(config, eciesParams = constants_1.Constants.ECIES) {
21
24
  this.eciesConsts = eciesParams;
22
25
  this._config = {
23
26
  curveName: this.eciesConsts.CURVE_NAME,
@@ -29,10 +32,10 @@ export class ECIESService {
29
32
  ...config,
30
33
  };
31
34
  // Initialize components
32
- this.cryptoCore = new EciesCryptoCore(this._config, this.eciesConsts);
33
- this.signature = new EciesSignature(this.cryptoCore);
34
- this.singleRecipient = new EciesSingleRecipient(this._config, this.eciesConsts);
35
- this.multiRecipient = new EciesMultiRecipient(this._config, this.eciesConsts);
35
+ this.cryptoCore = new crypto_core_1.EciesCryptoCore(this._config, this.eciesConsts);
36
+ this.signature = new signature_1.EciesSignature(this.cryptoCore);
37
+ this.singleRecipient = new single_recipient_1.EciesSingleRecipient(this._config, this.eciesConsts);
38
+ this.multiRecipient = new multi_recipient_1.EciesMultiRecipient(this._config, this.eciesConsts);
36
39
  }
37
40
  get core() {
38
41
  return this.cryptoCore;
@@ -93,8 +96,8 @@ export class ECIESService {
93
96
  */
94
97
  async decryptSimpleOrSingleWithHeader(decryptSimple, privateKey, encryptedData, preambleSize = 0, options) {
95
98
  return await this.singleRecipient.decryptWithHeader(decryptSimple
96
- ? EciesEncryptionTypeEnum.Simple
97
- : EciesEncryptionTypeEnum.Single, privateKey, encryptedData, preambleSize, options);
99
+ ? ecies_encryption_type_1.EciesEncryptionTypeEnum.Simple
100
+ : ecies_encryption_type_1.EciesEncryptionTypeEnum.Single, privateKey, encryptedData, preambleSize, options);
98
101
  }
99
102
  /**
100
103
  * Extended decrypt with header
@@ -140,8 +143,8 @@ export class ECIESService {
140
143
  */
141
144
  computeEncryptedLengthFromDataLength(dataLength, encryptionMode, recipientCount) {
142
145
  if (dataLength < 0) {
143
- const engine = getEciesI18nEngine();
144
- throw new Error(engine.translate(EciesComponentId, EciesStringKey.Error_Service_InvalidDataLength));
146
+ const engine = (0, i18n_setup_1.getEciesI18nEngine)();
147
+ throw new Error(engine.translate(i18n_setup_1.EciesComponentId, ecies_string_key_1.EciesStringKey.Error_Service_InvalidDataLength));
145
148
  }
146
149
  switch (encryptionMode) {
147
150
  case 'simple':
@@ -154,8 +157,8 @@ export class ECIESService {
154
157
  this.eciesConsts.MULTIPLE.FIXED_OVERHEAD_SIZE +
155
158
  (recipientCount ?? 1) * this.eciesConsts.MULTIPLE.ENCRYPTED_KEY_SIZE);
156
159
  default:
157
- const engine = getEciesI18nEngine();
158
- throw new Error(engine.translate(EciesComponentId, EciesStringKey.Error_Service_InvalidEncryptionType));
160
+ const engine = (0, i18n_setup_1.getEciesI18nEngine)();
161
+ throw new Error(engine.translate(i18n_setup_1.EciesComponentId, ecies_string_key_1.EciesStringKey.Error_Service_InvalidEncryptionType));
159
162
  }
160
163
  }
161
164
  /**
@@ -163,15 +166,15 @@ export class ECIESService {
163
166
  */
164
167
  computeDecryptedLengthFromEncryptedDataLength(encryptedDataLength, padding) {
165
168
  if (encryptedDataLength < 0) {
166
- const engine = getEciesI18nEngine();
167
- throw new Error(engine.translate(EciesComponentId, EciesStringKey.Error_Service_InvalidEncryptedDataLength));
169
+ const engine = (0, i18n_setup_1.getEciesI18nEngine)();
170
+ throw new Error(engine.translate(i18n_setup_1.EciesComponentId, ecies_string_key_1.EciesStringKey.Error_Service_InvalidEncryptedDataLength));
168
171
  }
169
172
  const overhead = this.eciesConsts.SINGLE.FIXED_OVERHEAD_SIZE;
170
173
  const actualPadding = padding !== undefined ? padding : 0;
171
174
  const decryptedLength = encryptedDataLength - overhead - actualPadding;
172
175
  if (decryptedLength < 0) {
173
- const engine = getEciesI18nEngine();
174
- throw new Error(engine.translate(EciesComponentId, EciesStringKey.Error_Service_ComputedDecryptedLengthNegative));
176
+ const engine = (0, i18n_setup_1.getEciesI18nEngine)();
177
+ throw new Error(engine.translate(i18n_setup_1.EciesComponentId, ecies_string_key_1.EciesStringKey.Error_Service_ComputedDecryptedLengthNegative));
175
178
  }
176
179
  return decryptedLength;
177
180
  }
@@ -179,10 +182,10 @@ export class ECIESService {
179
182
  * Generic encrypt method
180
183
  */
181
184
  async encrypt(encryptionType, recipientPublicKey, message, preamble) {
182
- if (encryptionType === EciesEncryptionTypeEnum.Multiple) {
183
- throw new Error(getEciesI18nEngine().translate(EciesComponentId, EciesStringKey.Error_ECIESError_MultipleEncryptionTypeNotSupportedInSingleRecipientMode));
185
+ if (encryptionType === ecies_encryption_type_1.EciesEncryptionTypeEnum.Multiple) {
186
+ throw new Error((0, i18n_setup_1.getEciesI18nEngine)().translate(i18n_setup_1.EciesComponentId, ecies_string_key_1.EciesStringKey.Error_ECIESError_MultipleEncryptionTypeNotSupportedInSingleRecipientMode));
184
187
  }
185
- return this.singleRecipient.encrypt(encryptionType === EciesEncryptionTypeEnum.Simple, recipientPublicKey, message, preamble);
188
+ return this.singleRecipient.encrypt(encryptionType === ecies_encryption_type_1.EciesEncryptionTypeEnum.Simple, recipientPublicKey, message, preamble);
186
189
  }
187
190
  /**
188
191
  * Encrypt for multiple recipients
@@ -207,4 +210,5 @@ export class ECIESService {
207
210
  return this.multiRecipient.decryptKey(privateKey, encryptedKey, ephemeralPublicKey, aad);
208
211
  }
209
212
  }
213
+ exports.ECIESService = ECIESService;
210
214
  //# sourceMappingURL=service.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"service.js","sourceRoot":"","sources":["../../../../../../packages/digitaldefiance-ecies-lib/src/services/ecies/service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"service.js","sourceRoot":"","sources":["../../../../../../packages/digitaldefiance-ecies-lib/src/services/ecies/service.ts"],"names":[],"mappings":"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"}
@@ -1,10 +1,13 @@
1
- import { secp256k1 } from '@noble/curves/secp256k1.js';
2
- import { sha256 } from '@noble/hashes/sha2.js';
3
- import { uint8ArrayToHex } from '../../utils';
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.EciesSignature = void 0;
4
+ const secp256k1_js_1 = require("@noble/curves/secp256k1.js");
5
+ const sha2_js_1 = require("@noble/hashes/sha2.js");
6
+ const utils_1 = require("../../utils");
4
7
  /**
5
8
  * Browser-compatible ECDSA signature operations
6
9
  */
7
- export class EciesSignature {
10
+ class EciesSignature {
8
11
  cryptoCore;
9
12
  constructor(cryptoCore) {
10
13
  this.cryptoCore = cryptoCore;
@@ -14,9 +17,9 @@ export class EciesSignature {
14
17
  * Returns 64 bytes: [r(32) | s(32)]
15
18
  */
16
19
  signMessage(privateKey, data) {
17
- const hash = sha256(data);
20
+ const hash = (0, sha2_js_1.sha256)(data);
18
21
  // Use deterministic signatures (RFC 6979) for consistency
19
- const signature = secp256k1.sign(hash, privateKey, {
22
+ const signature = secp256k1_js_1.secp256k1.sign(hash, privateKey, {
20
23
  format: 'compact',
21
24
  extraEntropy: false,
22
25
  });
@@ -29,11 +32,11 @@ export class EciesSignature {
29
32
  try {
30
33
  if (!signature || signature.length !== 64)
31
34
  return false;
32
- const hash = sha256(data);
35
+ const hash = (0, sha2_js_1.sha256)(data);
33
36
  const normalizedPublicKey = this.cryptoCore.normalizePublicKey(publicKey);
34
37
  // Try direct verification first
35
38
  try {
36
- const directResult = secp256k1.verify(signature, hash, normalizedPublicKey);
39
+ const directResult = secp256k1_js_1.secp256k1.verify(signature, hash, normalizedPublicKey);
37
40
  if (directResult)
38
41
  return true;
39
42
  }
@@ -66,7 +69,8 @@ export class EciesSignature {
66
69
  * Convert signature buffer to signature string
67
70
  */
68
71
  signatureUint8ArrayToSignatureString(signatureArray) {
69
- return uint8ArrayToHex(signatureArray);
72
+ return (0, utils_1.uint8ArrayToHex)(signatureArray);
70
73
  }
71
74
  }
75
+ exports.EciesSignature = EciesSignature;
72
76
  //# sourceMappingURL=signature.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"signature.js","sourceRoot":"","sources":["../../../../../../packages/digitaldefiance-ecies-lib/src/services/ecies/signature.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,4BAA4B,CAAC;AACvD,OAAO,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAE/C,OAAO,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAG9C;;GAEG;AACH,MAAM,OAAO,cAAc;IACR,UAAU,CAAkB;IAE7C,YAAY,UAA2B;QACrC,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;IAC/B,CAAC;IAED;;;OAGG;IACI,WAAW,CAChB,UAAsB,EACtB,IAAgB;QAEhB,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC;QAC1B,0DAA0D;QAC1D,MAAM,SAAS,GAAG,SAAS,CAAC,IAAI,CAAC,IAAI,EAAE,UAAU,EAAE;YACjD,MAAM,EAAE,SAAS;YACjB,YAAY,EAAE,KAAK;SACpB,CAAC,CAAC;QACH,OAAO,SAAgC,CAAC;IAC1C,CAAC;IAED;;OAEG;IACI,aAAa,CAClB,SAAqB,EACrB,IAAgB,EAChB,SAA8B;QAE9B,IAAI,CAAC;YACH,IAAI,CAAC,SAAS,IAAI,SAAS,CAAC,MAAM,KAAK,EAAE;gBAAE,OAAO,KAAK,CAAC;YACxD,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC;YAC1B,MAAM,mBAAmB,GAAG,IAAI,CAAC,UAAU,CAAC,kBAAkB,CAAC,SAAS,CAAC,CAAC;YAE1E,gCAAgC;YAChC,IAAI,CAAC;gBACH,MAAM,YAAY,GAAG,SAAS,CAAC,MAAM,CACnC,SAAS,EACT,IAAI,EACJ,mBAAmB,CACpB,CAAC;gBACF,IAAI,YAAY;oBAAE,OAAO,IAAI,CAAC;YAChC,CAAC;YAAC,MAAM,CAAC;gBACP,+CAA+C;YACjD,CAAC;YAED,gFAAgF;YAChF,0EAA0E;YAC1E,4EAA4E;YAC5E,gFAAgF;YAEhF,OAAO,KAAK,CAAC;QACf,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,OAAO,CAAC,KAAK,CAAC,gCAAgC,EAAE,GAAG,CAAC,CAAC;YACrD,OAAO,KAAK,CAAC;QACf,CAAC;IACH,CAAC;IAED;;OAEG;IACI,oCAAoC,CACzC,eAAgC;QAEhC,MAAM,QAAQ,GAAG,eAAe,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;QACpD,MAAM,MAAM,GAAG,IAAI,UAAU,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;QACnD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,QAAQ,CAAC,MAAM,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC;YAC5C,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,QAAQ,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;QAC7D,CAAC;QACD,OAAO,MAA6B,CAAC;IACvC,CAAC;IAED;;OAEG;IACI,oCAAoC,CACzC,cAAmC;QAEnC,OAAO,eAAe,CAAC,cAAc,CAAoB,CAAC;IAC5D,CAAC;CACF"}
1
+ {"version":3,"file":"signature.js","sourceRoot":"","sources":["../../../../../../packages/digitaldefiance-ecies-lib/src/services/ecies/signature.ts"],"names":[],"mappings":";;;AAAA,6DAAuD;AACvD,mDAA+C;AAE/C,uCAA8C;AAG9C;;GAEG;AACH,MAAa,cAAc;IACR,UAAU,CAAkB;IAE7C,YAAY,UAA2B;QACrC,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;IAC/B,CAAC;IAED;;;OAGG;IACI,WAAW,CAChB,UAAsB,EACtB,IAAgB;QAEhB,MAAM,IAAI,GAAG,IAAA,gBAAM,EAAC,IAAI,CAAC,CAAC;QAC1B,0DAA0D;QAC1D,MAAM,SAAS,GAAG,wBAAS,CAAC,IAAI,CAAC,IAAI,EAAE,UAAU,EAAE;YACjD,MAAM,EAAE,SAAS;YACjB,YAAY,EAAE,KAAK;SACpB,CAAC,CAAC;QACH,OAAO,SAAgC,CAAC;IAC1C,CAAC;IAED;;OAEG;IACI,aAAa,CAClB,SAAqB,EACrB,IAAgB,EAChB,SAA8B;QAE9B,IAAI,CAAC;YACH,IAAI,CAAC,SAAS,IAAI,SAAS,CAAC,MAAM,KAAK,EAAE;gBAAE,OAAO,KAAK,CAAC;YACxD,MAAM,IAAI,GAAG,IAAA,gBAAM,EAAC,IAAI,CAAC,CAAC;YAC1B,MAAM,mBAAmB,GAAG,IAAI,CAAC,UAAU,CAAC,kBAAkB,CAAC,SAAS,CAAC,CAAC;YAE1E,gCAAgC;YAChC,IAAI,CAAC;gBACH,MAAM,YAAY,GAAG,wBAAS,CAAC,MAAM,CACnC,SAAS,EACT,IAAI,EACJ,mBAAmB,CACpB,CAAC;gBACF,IAAI,YAAY;oBAAE,OAAO,IAAI,CAAC;YAChC,CAAC;YAAC,MAAM,CAAC;gBACP,+CAA+C;YACjD,CAAC;YAED,gFAAgF;YAChF,0EAA0E;YAC1E,4EAA4E;YAC5E,gFAAgF;YAEhF,OAAO,KAAK,CAAC;QACf,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,OAAO,CAAC,KAAK,CAAC,gCAAgC,EAAE,GAAG,CAAC,CAAC;YACrD,OAAO,KAAK,CAAC;QACf,CAAC;IACH,CAAC;IAED;;OAEG;IACI,oCAAoC,CACzC,eAAgC;QAEhC,MAAM,QAAQ,GAAG,eAAe,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;QACpD,MAAM,MAAM,GAAG,IAAI,UAAU,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;QACnD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,QAAQ,CAAC,MAAM,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC;YAC5C,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,QAAQ,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;QAC7D,CAAC;QACD,OAAO,MAA6B,CAAC;IACvC,CAAC;IAED;;OAEG;IACI,oCAAoC,CACzC,cAAmC;QAEnC,OAAO,IAAA,uBAAe,EAAC,cAAc,CAAoB,CAAC;IAC5D,CAAC;CACF;AAnFD,wCAmFC"}