@digitaldefiance/node-ecies-lib 3.0.8 → 4.1.1
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 +232 -408
- package/package.json +3 -3
- package/src/builders/member-builder.d.ts +1 -2
- package/src/builders/member-builder.d.ts.map +1 -1
- package/src/builders/member-builder.js.map +1 -1
- package/src/constants.d.ts.map +1 -1
- package/src/constants.js +38 -9
- package/src/constants.js.map +1 -1
- package/src/i18n/ecies-i18n-factory.d.ts +2 -52
- package/src/i18n/ecies-i18n-factory.d.ts.map +1 -1
- package/src/i18n/ecies-i18n-factory.js +9 -63
- package/src/i18n/ecies-i18n-factory.js.map +1 -1
- package/src/i18n/node-ecies-i18n-setup.d.ts.map +1 -1
- package/src/i18n/node-ecies-i18n-setup.js +5 -53
- package/src/i18n/node-ecies-i18n-setup.js.map +1 -1
- package/src/i18n/node-keys.d.ts +57 -0
- package/src/i18n/node-keys.d.ts.map +1 -0
- package/src/i18n/node-keys.js +67 -0
- package/src/i18n/node-keys.js.map +1 -0
- package/src/i18n/translations/de.d.ts +1 -1
- package/src/i18n/translations/de.d.ts.map +1 -1
- package/src/i18n/translations/de.js +51 -46
- package/src/i18n/translations/de.js.map +1 -1
- package/src/i18n/translations/en-GB.d.ts +1 -1
- package/src/i18n/translations/en-GB.d.ts.map +1 -1
- package/src/i18n/translations/en-GB.js +51 -46
- package/src/i18n/translations/en-GB.js.map +1 -1
- package/src/i18n/translations/en-US.d.ts +1 -1
- package/src/i18n/translations/en-US.d.ts.map +1 -1
- package/src/i18n/translations/en-US.js +52 -46
- package/src/i18n/translations/en-US.js.map +1 -1
- package/src/i18n/translations/es.d.ts +1 -1
- package/src/i18n/translations/es.d.ts.map +1 -1
- package/src/i18n/translations/es.js +51 -46
- package/src/i18n/translations/es.js.map +1 -1
- package/src/i18n/translations/fr.d.ts +1 -1
- package/src/i18n/translations/fr.d.ts.map +1 -1
- package/src/i18n/translations/fr.js +51 -46
- package/src/i18n/translations/fr.js.map +1 -1
- package/src/i18n/translations/index.d.ts +2 -0
- package/src/i18n/translations/index.d.ts.map +1 -1
- package/src/i18n/translations/index.js +5 -1
- package/src/i18n/translations/index.js.map +1 -1
- package/src/i18n/translations/ja.d.ts +1 -1
- package/src/i18n/translations/ja.d.ts.map +1 -1
- package/src/i18n/translations/ja.js +51 -46
- package/src/i18n/translations/ja.js.map +1 -1
- package/src/i18n/translations/uk.d.ts +1 -1
- package/src/i18n/translations/uk.d.ts.map +1 -1
- package/src/i18n/translations/uk.js +51 -46
- package/src/i18n/translations/uk.js.map +1 -1
- package/src/i18n/translations/zh-cn.d.ts +1 -1
- package/src/i18n/translations/zh-cn.d.ts.map +1 -1
- package/src/i18n/translations/zh-cn.js +51 -46
- package/src/i18n/translations/zh-cn.js.map +1 -1
- package/src/interfaces/authenticated-cipher.d.ts +3 -0
- package/src/interfaces/authenticated-cipher.d.ts.map +1 -1
- package/src/interfaces/authenticated-decipher.d.ts +3 -0
- package/src/interfaces/authenticated-decipher.d.ts.map +1 -1
- package/src/interfaces/backend-member-operational.d.ts +1 -1
- package/src/interfaces/backend-member-operational.d.ts.map +1 -1
- package/src/interfaces/constants.d.ts +26 -17
- package/src/interfaces/constants.d.ts.map +1 -1
- package/src/interfaces/multi-encrypted-parsed-header.d.ts +5 -2
- package/src/interfaces/multi-encrypted-parsed-header.d.ts.map +1 -1
- package/src/interfaces/multi-recipient-chunk.d.ts +16 -0
- package/src/interfaces/multi-recipient-chunk.d.ts.map +1 -1
- package/src/interfaces/multi-recipient-chunk.js +10 -0
- package/src/interfaces/multi-recipient-chunk.js.map +1 -1
- package/src/lib/index.d.ts +2 -0
- package/src/lib/index.d.ts.map +1 -1
- package/src/lib/index.js +2 -0
- package/src/lib/index.js.map +1 -1
- package/src/lib/invariant-validator.d.ts +62 -0
- package/src/lib/invariant-validator.d.ts.map +1 -0
- package/src/lib/invariant-validator.js +108 -0
- package/src/lib/invariant-validator.js.map +1 -0
- package/src/lib/invariants/index.d.ts +8 -0
- package/src/lib/invariants/index.d.ts.map +1 -0
- package/src/lib/invariants/index.js +12 -0
- package/src/lib/invariants/index.js.map +1 -0
- package/src/lib/invariants/recipient-id-consistency.d.ts +22 -0
- package/src/lib/invariants/recipient-id-consistency.d.ts.map +1 -0
- package/src/lib/invariants/recipient-id-consistency.js +62 -0
- package/src/lib/invariants/recipient-id-consistency.js.map +1 -0
- package/src/member.d.ts +6 -6
- package/src/member.d.ts.map +1 -1
- package/src/member.js +13 -20
- package/src/member.js.map +1 -1
- package/src/services/aes-gcm.d.ts +2 -2
- package/src/services/aes-gcm.d.ts.map +1 -1
- package/src/services/aes-gcm.js +8 -2
- package/src/services/aes-gcm.js.map +1 -1
- package/src/services/ecies/crypto-core.d.ts +21 -0
- package/src/services/ecies/crypto-core.d.ts.map +1 -1
- package/src/services/ecies/crypto-core.js +62 -7
- package/src/services/ecies/crypto-core.js.map +1 -1
- package/src/services/ecies/multi-recipient.d.ts +11 -7
- package/src/services/ecies/multi-recipient.d.ts.map +1 -1
- package/src/services/ecies/multi-recipient.js +200 -71
- package/src/services/ecies/multi-recipient.js.map +1 -1
- package/src/services/ecies/service.d.ts +1 -1
- package/src/services/ecies/service.d.ts.map +1 -1
- package/src/services/ecies/service.js +2 -2
- package/src/services/ecies/service.js.map +1 -1
- package/src/services/ecies/single-recipient.d.ts +1 -1
- package/src/services/ecies/single-recipient.d.ts.map +1 -1
- package/src/services/ecies/single-recipient.js +76 -43
- package/src/services/ecies/single-recipient.js.map +1 -1
- package/src/services/encryption-stream.js +3 -4
- package/src/services/encryption-stream.js.map +1 -1
- package/src/services/multi-recipient-processor.d.ts +42 -9
- package/src/services/multi-recipient-processor.d.ts.map +1 -1
- package/src/services/multi-recipient-processor.js +273 -177
- package/src/services/multi-recipient-processor.js.map +1 -1
- package/src/test-mocks/mock-backend-member.d.ts +7 -8
- package/src/test-mocks/mock-backend-member.d.ts.map +1 -1
- package/src/test-mocks/mock-backend-member.js +4 -4
- package/src/test-mocks/mock-backend-member.js.map +1 -1
|
@@ -3,8 +3,6 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.EciesMultiRecipient = void 0;
|
|
4
4
|
const ecies_lib_1 = require("@digitaldefiance/ecies-lib");
|
|
5
5
|
const crypto_1 = require("crypto");
|
|
6
|
-
const mongodb_1 = require("mongodb");
|
|
7
|
-
const constants_1 = require("../../constants");
|
|
8
6
|
const single_recipient_1 = require("./single-recipient");
|
|
9
7
|
/**
|
|
10
8
|
* Multiple recipient encryption/decryption functions for ECIES
|
|
@@ -18,32 +16,37 @@ class EciesMultiRecipient {
|
|
|
18
16
|
}
|
|
19
17
|
/**
|
|
20
18
|
* Get the size of the header for a given encryption type
|
|
21
|
-
* @param
|
|
22
|
-
* @param options Optional encryption options
|
|
23
|
-
* @param options.recipientCount The number of recipients
|
|
19
|
+
* @param recipientCount The number of recipients
|
|
24
20
|
* @returns
|
|
25
21
|
*/
|
|
26
22
|
getHeaderSize(recipientCount) {
|
|
27
|
-
return (this.cryptoCore.consts.
|
|
23
|
+
return (this.cryptoCore.consts.VERSION_SIZE +
|
|
24
|
+
this.cryptoCore.consts.CIPHER_SUITE_SIZE +
|
|
25
|
+
this.cryptoCore.consts.ENCRYPTION_TYPE_SIZE +
|
|
26
|
+
this.cryptoCore.consts.PUBLIC_KEY_LENGTH + // Shared ephemeral public key
|
|
27
|
+
this.cryptoCore.consts.MULTIPLE.DATA_LENGTH_SIZE +
|
|
28
|
+
this.cryptoCore.consts.MULTIPLE.RECIPIENT_COUNT_SIZE +
|
|
29
|
+
recipientCount * this.cryptoCore.consts.MULTIPLE.RECIPIENT_ID_SIZE +
|
|
28
30
|
recipientCount * this.cryptoCore.consts.MULTIPLE.ENCRYPTED_KEY_SIZE);
|
|
29
31
|
}
|
|
30
32
|
/**
|
|
31
33
|
* Encrypt a message symmetric key with a public key
|
|
32
34
|
* @param receiverPublicKey The public key of the receiver
|
|
33
35
|
* @param messageSymmetricKey The message to encrypt
|
|
36
|
+
* @param ephemeralPrivateKey The ephemeral private key to use for encryption
|
|
37
|
+
* @param aad Additional Authenticated Data (optional)
|
|
34
38
|
* @returns The encrypted message
|
|
35
39
|
*/
|
|
36
|
-
encryptKey(receiverPublicKey, messageSymmetricKey) {
|
|
37
|
-
// Generate ephemeral ECDH key pair
|
|
38
|
-
const ecdh = (0, crypto_1.createECDH)(this.cryptoCore.config.curveName);
|
|
39
|
-
ecdh.generateKeys();
|
|
40
|
+
encryptKey(receiverPublicKey, messageSymmetricKey, ephemeralPrivateKey, aad) {
|
|
40
41
|
// Compute shared secret
|
|
41
42
|
let sharedSecret;
|
|
42
43
|
try {
|
|
43
44
|
// Make sure we normalize the receiver's public key
|
|
44
45
|
const normalizedReceiverPublicKey = this.cryptoCore.normalizePublicKey(receiverPublicKey);
|
|
46
|
+
// Create ECDH instance with the ephemeral private key
|
|
47
|
+
const ecdh = (0, crypto_1.createECDH)(this.cryptoCore.config.curveName);
|
|
48
|
+
ecdh.setPrivateKey(ephemeralPrivateKey);
|
|
45
49
|
// Ensure we're using the properly formatted public key (with 0x04 prefix)
|
|
46
|
-
// Our debugging shows only the full format with prefix works correctly
|
|
47
50
|
sharedSecret = ecdh.computeSecret(normalizedReceiverPublicKey);
|
|
48
51
|
}
|
|
49
52
|
catch (error) {
|
|
@@ -61,85 +64,137 @@ class EciesMultiRecipient {
|
|
|
61
64
|
}
|
|
62
65
|
throw new ecies_lib_1.ECIESError(ecies_lib_1.ECIESErrorTypeEnum.SecretComputationFailed);
|
|
63
66
|
}
|
|
64
|
-
//
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
Buffer.from([this.cryptoCore.consts.PUBLIC_KEY_MAGIC]),
|
|
69
|
-
ephemeralPublicKey,
|
|
70
|
-
]);
|
|
71
|
-
}
|
|
72
|
-
// Get the key from the shared secret (always use first 32 bytes)
|
|
73
|
-
const symKey = sharedSecret.subarray(0, this.cryptoCore.consts.SYMMETRIC.KEY_SIZE);
|
|
67
|
+
// Use HKDF to derive the key
|
|
68
|
+
const symKey = this.cryptoCore.deriveSharedKey(sharedSecret, Buffer.alloc(0), // No salt
|
|
69
|
+
Buffer.from('ecies-v2-key-derivation'), // Info
|
|
70
|
+
this.cryptoCore.consts.SYMMETRIC.KEY_SIZE);
|
|
74
71
|
const iv = (0, crypto_1.randomBytes)(this.cryptoCore.consts.IV_SIZE);
|
|
75
72
|
// Create cipher with the derived symmetric key
|
|
76
73
|
const cipher = (0, crypto_1.createCipheriv)(this.cryptoCore.consts.SYMMETRIC_ALGORITHM_CONFIGURATION, symKey, iv);
|
|
77
74
|
// Ensure auto padding is enabled
|
|
78
75
|
cipher.setAutoPadding(true);
|
|
76
|
+
// Set AAD if provided
|
|
77
|
+
if (aad) {
|
|
78
|
+
cipher.setAAD(aad);
|
|
79
|
+
}
|
|
79
80
|
// Encrypt the message
|
|
80
81
|
let encrypted = cipher.update(messageSymmetricKey);
|
|
81
82
|
encrypted = Buffer.concat([encrypted, cipher.final()]);
|
|
82
83
|
// Get and explicitly set the authentication tag to max tag length for consistency
|
|
83
84
|
const authTag = cipher.getAuthTag();
|
|
84
|
-
// Format:
|
|
85
|
-
|
|
85
|
+
// Format: iv (16) | authTag (16) | encryptedData (32)
|
|
86
|
+
// Note: Ephemeral public key is now in the main header, not per-recipient
|
|
87
|
+
return Buffer.concat([iv, authTag, encrypted]);
|
|
86
88
|
}
|
|
87
89
|
/**
|
|
88
90
|
* Decrypts symmetric key encrypted with ECIES using a header
|
|
89
91
|
* @param privateKey The private key to decrypt the data
|
|
90
92
|
* @param encryptedKey The data to decrypt
|
|
93
|
+
* @param ephemeralPublicKey The ephemeral public key from the header
|
|
94
|
+
* @param aad Additional Authenticated Data (optional)
|
|
91
95
|
* @returns The decrypted data buffer
|
|
92
96
|
*/
|
|
93
|
-
decryptKey(privateKey, encryptedKey) {
|
|
97
|
+
decryptKey(privateKey, encryptedKey, ephemeralPublicKey, aad) {
|
|
94
98
|
if (encryptedKey.length !== this.cryptoCore.consts.MULTIPLE.ENCRYPTED_KEY_SIZE) {
|
|
95
99
|
throw new ecies_lib_1.ECIESError(ecies_lib_1.ECIESErrorTypeEnum.InvalidEncryptedKeyLength, undefined, undefined, {
|
|
96
100
|
expected: String(this.cryptoCore.consts.MULTIPLE.ENCRYPTED_KEY_SIZE),
|
|
97
101
|
actual: String(encryptedKey.length),
|
|
98
102
|
});
|
|
99
103
|
}
|
|
100
|
-
const
|
|
101
|
-
const
|
|
102
|
-
const
|
|
103
|
-
this.cryptoCore.consts.IV_SIZE +
|
|
104
|
-
this.cryptoCore.consts.AUTH_TAG_SIZE);
|
|
105
|
-
const encrypted = encryptedKey.subarray(this.cryptoCore.consts.PUBLIC_KEY_LENGTH +
|
|
106
|
-
this.cryptoCore.consts.IV_SIZE +
|
|
107
|
-
this.cryptoCore.consts.AUTH_TAG_SIZE, this.cryptoCore.consts.PUBLIC_KEY_LENGTH +
|
|
108
|
-
this.cryptoCore.consts.IV_SIZE +
|
|
109
|
-
this.cryptoCore.consts.AUTH_TAG_SIZE +
|
|
110
|
-
this.cryptoCore.consts.SYMMETRIC.KEY_SIZE);
|
|
104
|
+
const iv = encryptedKey.subarray(0, this.cryptoCore.consts.IV_SIZE);
|
|
105
|
+
const authTag = encryptedKey.subarray(this.cryptoCore.consts.IV_SIZE, this.cryptoCore.consts.IV_SIZE + this.cryptoCore.consts.AUTH_TAG_SIZE);
|
|
106
|
+
const encrypted = encryptedKey.subarray(this.cryptoCore.consts.IV_SIZE + this.cryptoCore.consts.AUTH_TAG_SIZE);
|
|
111
107
|
// Normalize the public key (ensuring 0x04 prefix)
|
|
112
108
|
const normalizedKey = this.cryptoCore.normalizePublicKey(ephemeralPublicKey);
|
|
113
|
-
//
|
|
114
|
-
const
|
|
115
|
-
|
|
109
|
+
// Compute shared secret
|
|
110
|
+
const ecdh = (0, crypto_1.createECDH)(this.cryptoCore.config.curveName);
|
|
111
|
+
ecdh.setPrivateKey(privateKey);
|
|
112
|
+
const sharedSecret = ecdh.computeSecret(normalizedKey);
|
|
113
|
+
// Use HKDF to derive the key
|
|
114
|
+
const symKey = this.cryptoCore.deriveSharedKey(sharedSecret, Buffer.alloc(0), // No salt
|
|
115
|
+
Buffer.from('ecies-v2-key-derivation'), // Info
|
|
116
|
+
this.cryptoCore.consts.SYMMETRIC.KEY_SIZE);
|
|
117
|
+
// Decrypt
|
|
118
|
+
const decipher = (0, crypto_1.createDecipheriv)(this.cryptoCore.consts.SYMMETRIC_ALGORITHM_CONFIGURATION, symKey, iv);
|
|
119
|
+
decipher.setAuthTag(authTag);
|
|
120
|
+
if (aad) {
|
|
121
|
+
decipher.setAAD(aad);
|
|
122
|
+
}
|
|
123
|
+
const decrypted = decipher.update(encrypted);
|
|
124
|
+
const final = decipher.final();
|
|
125
|
+
const decryptedMessage = Buffer.concat([decrypted, final]);
|
|
126
|
+
if (decryptedMessage.length !== this.cryptoCore.consts.SYMMETRIC.KEY_SIZE) {
|
|
116
127
|
throw new ecies_lib_1.ECIESError(ecies_lib_1.ECIESErrorTypeEnum.InvalidDataLength, undefined, undefined, {
|
|
117
128
|
expected: String(this.cryptoCore.consts.SYMMETRIC.KEY_SIZE),
|
|
118
|
-
actual: String(
|
|
129
|
+
actual: String(decryptedMessage.length),
|
|
119
130
|
});
|
|
120
131
|
}
|
|
121
|
-
return
|
|
132
|
+
return decryptedMessage;
|
|
122
133
|
}
|
|
123
134
|
/**
|
|
124
135
|
* Encrypts a message for multiple recipients.
|
|
125
136
|
* @param recipients The recipients to encrypt the message for.
|
|
126
137
|
* @param message The message to encrypt.
|
|
127
138
|
* @param preamble Optional preamble to include in the encrypted message.
|
|
139
|
+
* @param senderPrivateKey Optional sender private key for signing.
|
|
128
140
|
* @returns The encrypted message.
|
|
129
141
|
* @throws EciesError if the number of recipients is greater than 65535.
|
|
130
142
|
*/
|
|
131
|
-
encryptMultiple(recipients, message, preamble) {
|
|
143
|
+
encryptMultiple(recipients, message, preamble, senderPrivateKey) {
|
|
132
144
|
if (recipients.length > ecies_lib_1.Constants.UINT16_MAX) {
|
|
133
145
|
throw new ecies_lib_1.ECIESError(ecies_lib_1.ECIESErrorTypeEnum.TooManyRecipients);
|
|
134
146
|
}
|
|
147
|
+
// Sign-then-Encrypt: If sender key provided, sign the message and prepend signature
|
|
148
|
+
let messageToEncrypt = message;
|
|
149
|
+
if (senderPrivateKey) {
|
|
150
|
+
const signature = this.cryptoCore.sign(senderPrivateKey, message);
|
|
151
|
+
messageToEncrypt = Buffer.concat([signature, message]);
|
|
152
|
+
}
|
|
153
|
+
if (messageToEncrypt.length > this.cryptoCore.consts.MAX_RAW_DATA_SIZE) {
|
|
154
|
+
throw new ecies_lib_1.ECIESError(ecies_lib_1.ECIESErrorTypeEnum.FileSizeTooLarge);
|
|
155
|
+
}
|
|
135
156
|
const messageTypeBuffer = Buffer.alloc(1);
|
|
136
157
|
messageTypeBuffer.writeUint8(ecies_lib_1.EciesEncryptionTypeEnum.Multiple);
|
|
137
158
|
// Generate a random symmetric key
|
|
138
159
|
const symmetricKey = (0, crypto_1.randomBytes)(this.cryptoCore.consts.SYMMETRIC.KEY_SIZE);
|
|
160
|
+
// Generate ONE ephemeral key pair for all recipients
|
|
161
|
+
const ecdh = (0, crypto_1.createECDH)(this.cryptoCore.config.curveName);
|
|
162
|
+
ecdh.generateKeys();
|
|
163
|
+
const ephemeralPrivateKey = ecdh.getPrivateKey();
|
|
164
|
+
let ephemeralPublicKey = ecdh.getPublicKey(null, 'compressed');
|
|
165
|
+
// Ensure public key has 0x04 prefix
|
|
166
|
+
if (ephemeralPublicKey.length === this.cryptoCore.consts.RAW_PUBLIC_KEY_LENGTH) {
|
|
167
|
+
ephemeralPublicKey = Buffer.concat([
|
|
168
|
+
Buffer.from([this.cryptoCore.consts.PUBLIC_KEY_MAGIC]),
|
|
169
|
+
ephemeralPublicKey,
|
|
170
|
+
]);
|
|
171
|
+
}
|
|
172
|
+
const encryptionResults = recipients.map((member) => ({
|
|
173
|
+
id: member.id,
|
|
174
|
+
encryptedKey: this.encryptKey(member.publicKey, symmetricKey, ephemeralPrivateKey, member.id // Use Recipient ID as AAD
|
|
175
|
+
),
|
|
176
|
+
}));
|
|
177
|
+
const recipientIds = encryptionResults.map(({ id }) => id);
|
|
178
|
+
const recipientKeys = encryptionResults.map(({ encryptedKey }) => encryptedKey);
|
|
179
|
+
// Calculate header size
|
|
180
|
+
const headerSize = this.calculateECIESMultipleRecipientOverhead(recipients.length, false, recipientKeys);
|
|
181
|
+
// Build the header to use as AAD for message encryption
|
|
182
|
+
// We need to construct a temporary object to build the header
|
|
183
|
+
const tempHeaderData = {
|
|
184
|
+
dataLength: messageToEncrypt.length,
|
|
185
|
+
recipientCount: recipients.length,
|
|
186
|
+
recipientIds,
|
|
187
|
+
recipientKeys,
|
|
188
|
+
encryptedMessage: Buffer.alloc(0), // Placeholder
|
|
189
|
+
headerSize,
|
|
190
|
+
ephemeralPublicKey,
|
|
191
|
+
};
|
|
192
|
+
const headerBytes = this.buildECIESMultipleRecipientHeader(tempHeaderData);
|
|
193
|
+
// Encrypt the message with the symmetric key and Header as AAD
|
|
139
194
|
const iv = (0, crypto_1.randomBytes)(this.cryptoCore.consts.IV_SIZE);
|
|
140
|
-
// Encrypt the message with the symmetric key
|
|
141
195
|
const cipher = (0, crypto_1.createCipheriv)(this.cryptoCore.consts.SYMMETRIC_ALGORITHM_CONFIGURATION, symmetricKey, iv);
|
|
142
|
-
|
|
196
|
+
cipher.setAAD(headerBytes);
|
|
197
|
+
const encrypted = cipher.update(messageToEncrypt);
|
|
143
198
|
const final = cipher.final();
|
|
144
199
|
const authTag = cipher.getAuthTag();
|
|
145
200
|
const encryptedMessage = Buffer.concat([encrypted, final]);
|
|
@@ -149,33 +204,28 @@ class EciesMultiRecipient {
|
|
|
149
204
|
authTag,
|
|
150
205
|
encryptedMessage,
|
|
151
206
|
]);
|
|
152
|
-
const encryptionResults = recipients.map((member) => ({
|
|
153
|
-
id: member.id,
|
|
154
|
-
encryptedKey: this.encryptKey(member.publicKey, symmetricKey),
|
|
155
|
-
}));
|
|
156
|
-
const recipientIds = encryptionResults.map(({ id }) => id);
|
|
157
|
-
const recipientKeys = encryptionResults.map(({ encryptedKey }) => encryptedKey);
|
|
158
207
|
// Verify the encrypted message size (just the encrypted content)
|
|
159
|
-
if (encryptedMessage.length !==
|
|
208
|
+
if (encryptedMessage.length !== messageToEncrypt.length) {
|
|
160
209
|
throw new ecies_lib_1.ECIESError(ecies_lib_1.ECIESErrorTypeEnum.MessageLengthMismatch);
|
|
161
210
|
}
|
|
162
|
-
const headerSize = this.calculateECIESMultipleRecipientOverhead(recipients.length, false, recipientKeys);
|
|
163
211
|
return {
|
|
164
|
-
dataLength:
|
|
212
|
+
dataLength: messageToEncrypt.length,
|
|
165
213
|
recipientCount: recipients.length,
|
|
166
214
|
recipientIds,
|
|
167
215
|
recipientKeys,
|
|
168
216
|
encryptedMessage: storedMessage,
|
|
169
217
|
headerSize,
|
|
218
|
+
ephemeralPublicKey,
|
|
170
219
|
};
|
|
171
220
|
}
|
|
172
221
|
/**
|
|
173
222
|
* Decrypts a message encrypted with multiple ECIE for a recipient.
|
|
174
223
|
* @param encryptedData The encrypted data.
|
|
175
224
|
* @param recipient The recipient.
|
|
225
|
+
* @param senderPublicKey Optional sender public key for verification.
|
|
176
226
|
* @returns The decrypted message.
|
|
177
227
|
*/
|
|
178
|
-
decryptMultipleECIEForRecipient(encryptedData, recipient) {
|
|
228
|
+
decryptMultipleECIEForRecipient(encryptedData, recipient, senderPublicKey) {
|
|
179
229
|
if (recipient.privateKey === undefined) {
|
|
180
230
|
throw new ecies_lib_1.ECIESError(ecies_lib_1.ECIESErrorTypeEnum.PrivateKeyNotLoaded);
|
|
181
231
|
}
|
|
@@ -185,8 +235,14 @@ class EciesMultiRecipient {
|
|
|
185
235
|
throw new ecies_lib_1.ECIESError(ecies_lib_1.ECIESErrorTypeEnum.RecipientNotFound);
|
|
186
236
|
}
|
|
187
237
|
const encryptedKey = encryptedData.recipientKeys[recipientIndex];
|
|
238
|
+
if (!encryptedData.ephemeralPublicKey) {
|
|
239
|
+
throw new ecies_lib_1.ECIESError(ecies_lib_1.ECIESErrorTypeEnum.MissingEphemeralPublicKey);
|
|
240
|
+
}
|
|
188
241
|
// Decrypt the symmetric key using the detected encryption type
|
|
189
|
-
const symmetricKey = this.decryptKey(Buffer.from(recipient.privateKey.value), encryptedKey
|
|
242
|
+
const symmetricKey = this.decryptKey(Buffer.from(recipient.privateKey.value), encryptedKey, encryptedData.ephemeralPublicKey, recipient.id // Use Recipient ID as AAD
|
|
243
|
+
);
|
|
244
|
+
// Rebuild header to use as AAD
|
|
245
|
+
const headerBytes = this.buildECIESMultipleRecipientHeader(encryptedData);
|
|
190
246
|
// Extract the IV and auth tag from the encrypted message
|
|
191
247
|
const iv = encryptedData.encryptedMessage.subarray(0, this.cryptoCore.consts.IV_SIZE);
|
|
192
248
|
const authTag = encryptedData.encryptedMessage.subarray(this.cryptoCore.consts.IV_SIZE, this.cryptoCore.consts.IV_SIZE + this.cryptoCore.consts.AUTH_TAG_SIZE);
|
|
@@ -195,14 +251,28 @@ class EciesMultiRecipient {
|
|
|
195
251
|
// Decrypt the content with the symmetric key
|
|
196
252
|
const decipher = (0, crypto_1.createDecipheriv)(this.cryptoCore.consts.SYMMETRIC_ALGORITHM_CONFIGURATION, symmetricKey, iv);
|
|
197
253
|
decipher.setAuthTag(authTag);
|
|
254
|
+
decipher.setAAD(headerBytes);
|
|
198
255
|
const decrypted = decipher.update(encrypted);
|
|
199
256
|
const final = decipher.final();
|
|
200
257
|
const decryptedMessage = Buffer.concat([decrypted, final]);
|
|
201
|
-
// AES-GCM provides authentication via auth tag (no separate CRC needed)
|
|
202
258
|
// The decrypted message should match the original data length
|
|
203
259
|
if (decryptedMessage.length !== encryptedData.dataLength) {
|
|
204
260
|
throw new ecies_lib_1.ECIESError(ecies_lib_1.ECIESErrorTypeEnum.InvalidDataLength);
|
|
205
261
|
}
|
|
262
|
+
// If sender public key is provided, verify signature
|
|
263
|
+
if (senderPublicKey) {
|
|
264
|
+
// Expect [Signature (64)][Message]
|
|
265
|
+
if (decryptedMessage.length < 64) {
|
|
266
|
+
throw new ecies_lib_1.ECIESError(ecies_lib_1.ECIESErrorTypeEnum.InvalidSignature);
|
|
267
|
+
}
|
|
268
|
+
const signature = decryptedMessage.subarray(0, 64);
|
|
269
|
+
const message = decryptedMessage.subarray(64);
|
|
270
|
+
const isValid = this.cryptoCore.verify(senderPublicKey, message, signature);
|
|
271
|
+
if (!isValid) {
|
|
272
|
+
throw new ecies_lib_1.ECIESError(ecies_lib_1.ECIESErrorTypeEnum.InvalidSignature);
|
|
273
|
+
}
|
|
274
|
+
return message;
|
|
275
|
+
}
|
|
206
276
|
return decryptedMessage;
|
|
207
277
|
}
|
|
208
278
|
/**
|
|
@@ -213,7 +283,7 @@ class EciesMultiRecipient {
|
|
|
213
283
|
* @returns the overhead size in bytes
|
|
214
284
|
*/
|
|
215
285
|
calculateECIESMultipleRecipientOverhead(recipientCount, includeMessageOverhead, encryptedKeys) {
|
|
216
|
-
if (recipientCount <
|
|
286
|
+
if (recipientCount < 1) {
|
|
217
287
|
throw new ecies_lib_1.ECIESError(ecies_lib_1.ECIESErrorTypeEnum.InvalidRecipientCount);
|
|
218
288
|
}
|
|
219
289
|
// Calculate encrypted keys size
|
|
@@ -226,9 +296,12 @@ class EciesMultiRecipient {
|
|
|
226
296
|
encryptedKeysSize =
|
|
227
297
|
recipientCount * this.cryptoCore.consts.MULTIPLE.ENCRYPTED_KEY_SIZE;
|
|
228
298
|
}
|
|
229
|
-
const baseOverhead = this.cryptoCore.consts.
|
|
299
|
+
const baseOverhead = this.cryptoCore.consts.VERSION_SIZE +
|
|
300
|
+
this.cryptoCore.consts.CIPHER_SUITE_SIZE +
|
|
301
|
+
this.cryptoCore.consts.ENCRYPTION_TYPE_SIZE +
|
|
302
|
+
this.cryptoCore.consts.MULTIPLE.DATA_LENGTH_SIZE +
|
|
230
303
|
this.cryptoCore.consts.MULTIPLE.RECIPIENT_COUNT_SIZE +
|
|
231
|
-
recipientCount *
|
|
304
|
+
recipientCount * this.cryptoCore.consts.MULTIPLE.RECIPIENT_ID_SIZE + // recipient ids (dynamic based on ID provider)
|
|
232
305
|
encryptedKeysSize; // actual encrypted keys size
|
|
233
306
|
return includeMessageOverhead
|
|
234
307
|
? baseOverhead + this.cryptoCore.consts.MULTIPLE.FIXED_OVERHEAD_SIZE
|
|
@@ -252,16 +325,36 @@ class EciesMultiRecipient {
|
|
|
252
325
|
data.dataLength > this.cryptoCore.consts.MAX_RAW_DATA_SIZE) {
|
|
253
326
|
throw new ecies_lib_1.ECIESError(ecies_lib_1.ECIESErrorTypeEnum.FileSizeTooLarge);
|
|
254
327
|
}
|
|
328
|
+
if (!data.ephemeralPublicKey) {
|
|
329
|
+
throw new ecies_lib_1.ECIESError(ecies_lib_1.ECIESErrorTypeEnum.MissingEphemeralPublicKey);
|
|
330
|
+
}
|
|
331
|
+
// Create version buffer
|
|
332
|
+
const versionBuffer = Buffer.alloc(this.cryptoCore.consts.VERSION_SIZE);
|
|
333
|
+
versionBuffer.writeUInt8(ecies_lib_1.EciesVersionEnum.V1);
|
|
334
|
+
// Create cipher suite buffer
|
|
335
|
+
const cipherSuiteBuffer = Buffer.alloc(this.cryptoCore.consts.CIPHER_SUITE_SIZE);
|
|
336
|
+
cipherSuiteBuffer.writeUInt8(ecies_lib_1.EciesCipherSuiteEnum.Secp256k1_Aes256Gcm_Sha256);
|
|
337
|
+
// Create encryption type buffer
|
|
338
|
+
const encryptionTypeBuffer = Buffer.alloc(this.cryptoCore.consts.ENCRYPTION_TYPE_SIZE);
|
|
339
|
+
encryptionTypeBuffer.writeUInt8(ecies_lib_1.EciesEncryptionTypeEnum.Multiple);
|
|
255
340
|
// Create data length buffer
|
|
341
|
+
// We use the most significant byte (MSB) to store the recipient ID size
|
|
342
|
+
const recipientIdSize = this.cryptoCore.consts.MULTIPLE.RECIPIENT_ID_SIZE;
|
|
343
|
+
if (recipientIdSize > 255) {
|
|
344
|
+
throw new ecies_lib_1.ECIESError(ecies_lib_1.ECIESErrorTypeEnum.RecipientIdSizeTooLarge);
|
|
345
|
+
}
|
|
346
|
+
const dataLengthBigInt = BigInt(data.dataLength);
|
|
347
|
+
const recipientIdSizeBigInt = BigInt(recipientIdSize);
|
|
348
|
+
const combinedLength = (recipientIdSizeBigInt << 56n) | dataLengthBigInt;
|
|
256
349
|
const dataLengthBuffer = Buffer.alloc(this.cryptoCore.consts.MULTIPLE.DATA_LENGTH_SIZE);
|
|
257
|
-
dataLengthBuffer.writeBigUInt64BE(
|
|
350
|
+
dataLengthBuffer.writeBigUInt64BE(combinedLength);
|
|
258
351
|
// Create recipient count buffer
|
|
259
352
|
const recipientCountBuffer = Buffer.alloc(this.cryptoCore.consts.MULTIPLE.RECIPIENT_COUNT_SIZE);
|
|
260
353
|
recipientCountBuffer.writeUInt16BE(data.recipientIds.length);
|
|
261
354
|
// Create recipients buffer
|
|
262
|
-
const recipientsBuffer = Buffer.alloc(data.recipientIds.length *
|
|
355
|
+
const recipientsBuffer = Buffer.alloc(data.recipientIds.length * this.cryptoCore.consts.MULTIPLE.RECIPIENT_ID_SIZE);
|
|
263
356
|
data.recipientIds.forEach((recipientId, index) => {
|
|
264
|
-
recipientsBuffer.set(
|
|
357
|
+
recipientsBuffer.set(recipientId, index * this.cryptoCore.consts.MULTIPLE.RECIPIENT_ID_SIZE);
|
|
265
358
|
});
|
|
266
359
|
// Validate encrypted key lengths based on their encryption type
|
|
267
360
|
data.recipientKeys.forEach((encryptedKey) => {
|
|
@@ -280,6 +373,10 @@ class EciesMultiRecipient {
|
|
|
280
373
|
const encryptedKeysBuffer = Buffer.concat(data.recipientKeys);
|
|
281
374
|
// Combine all buffers to form the header
|
|
282
375
|
return Buffer.concat([
|
|
376
|
+
versionBuffer,
|
|
377
|
+
cipherSuiteBuffer,
|
|
378
|
+
encryptionTypeBuffer,
|
|
379
|
+
data.ephemeralPublicKey,
|
|
283
380
|
dataLengthBuffer,
|
|
284
381
|
recipientCountBuffer,
|
|
285
382
|
recipientsBuffer,
|
|
@@ -293,17 +390,47 @@ class EciesMultiRecipient {
|
|
|
293
390
|
*/
|
|
294
391
|
parseMultiEncryptedHeader(data) {
|
|
295
392
|
// Ensure there's enough data to read headers
|
|
296
|
-
|
|
393
|
+
// minimum: 1 (ver) + 1 (suite) + 1 (type) + 33 (pubkey) + 8 (len) + 2 (count) = 46
|
|
394
|
+
if (data.length < 46) {
|
|
297
395
|
throw new ecies_lib_1.ECIESError(ecies_lib_1.ECIESErrorTypeEnum.InvalidDataLength);
|
|
298
396
|
}
|
|
299
397
|
let offset = 0;
|
|
300
|
-
// Read
|
|
301
|
-
const
|
|
398
|
+
// Read Version
|
|
399
|
+
const version = data.readUInt8(offset);
|
|
400
|
+
offset += this.cryptoCore.consts.VERSION_SIZE;
|
|
401
|
+
if (version !== ecies_lib_1.EciesVersionEnum.V1) {
|
|
402
|
+
throw new ecies_lib_1.ECIESError(ecies_lib_1.ECIESErrorTypeEnum.InvalidVersion, undefined, undefined, { version: String(version) });
|
|
403
|
+
}
|
|
404
|
+
// Read CipherSuite
|
|
405
|
+
const cipherSuite = data.readUInt8(offset);
|
|
406
|
+
offset += this.cryptoCore.consts.CIPHER_SUITE_SIZE;
|
|
407
|
+
if (cipherSuite !== ecies_lib_1.EciesCipherSuiteEnum.Secp256k1_Aes256Gcm_Sha256) {
|
|
408
|
+
throw new ecies_lib_1.ECIESError(ecies_lib_1.ECIESErrorTypeEnum.InvalidCipherSuite, undefined, undefined, { cipherSuite: String(cipherSuite) });
|
|
409
|
+
}
|
|
410
|
+
// Read Encryption Type
|
|
411
|
+
const encryptionType = data.readUInt8(offset);
|
|
412
|
+
offset += this.cryptoCore.consts.ENCRYPTION_TYPE_SIZE;
|
|
413
|
+
if (encryptionType !== ecies_lib_1.EciesEncryptionTypeEnum.Multiple) {
|
|
414
|
+
throw new ecies_lib_1.ECIESError(ecies_lib_1.ECIESErrorTypeEnum.InvalidEncryptionType, undefined, undefined, { encryptionType: encryptionType.toString(16) });
|
|
415
|
+
}
|
|
416
|
+
// Read Ephemeral Public Key
|
|
417
|
+
const ephemeralPublicKey = data.subarray(offset, offset + this.cryptoCore.consts.PUBLIC_KEY_LENGTH);
|
|
418
|
+
offset += this.cryptoCore.consts.PUBLIC_KEY_LENGTH;
|
|
419
|
+
// Read data length and recipient ID size
|
|
420
|
+
const combinedLength = data.readBigUInt64BE(offset);
|
|
421
|
+
offset += this.cryptoCore.consts.MULTIPLE.DATA_LENGTH_SIZE; // 8 bytes
|
|
422
|
+
// Extract recipient ID size from MSB (top 8 bits)
|
|
423
|
+
const storedRecipientIdSize = Number(combinedLength >> 56n);
|
|
424
|
+
// Extract data length from lower 56 bits
|
|
425
|
+
const dataLength = Number(combinedLength & 0x00ffffffffffffffn);
|
|
302
426
|
if (dataLength <= 0 ||
|
|
303
427
|
dataLength > this.cryptoCore.consts.MAX_RAW_DATA_SIZE) {
|
|
304
428
|
throw new ecies_lib_1.ECIESError(ecies_lib_1.ECIESErrorTypeEnum.InvalidDataLength);
|
|
305
429
|
}
|
|
306
|
-
|
|
430
|
+
// Use stored recipient ID size if available (non-legacy), otherwise fallback to config
|
|
431
|
+
const recipientIdSize = storedRecipientIdSize > 0
|
|
432
|
+
? storedRecipientIdSize
|
|
433
|
+
: this.cryptoCore.consts.MULTIPLE.RECIPIENT_ID_SIZE;
|
|
307
434
|
// Read recipient count
|
|
308
435
|
const recipientCount = data.readUInt16BE(offset);
|
|
309
436
|
if (recipientCount <= 0 ||
|
|
@@ -312,17 +439,18 @@ class EciesMultiRecipient {
|
|
|
312
439
|
}
|
|
313
440
|
offset += this.cryptoCore.consts.MULTIPLE.RECIPIENT_COUNT_SIZE; // 2 bytes
|
|
314
441
|
// Ensure there's enough data for all recipients
|
|
315
|
-
|
|
316
|
-
|
|
442
|
+
// Note: We can't use calculateECIESMultipleRecipientOverhead here easily because it assumes fixed ID size
|
|
443
|
+
// But we can calculate manually
|
|
444
|
+
const remainingHeaderSize = recipientCount * recipientIdSize +
|
|
445
|
+
recipientCount * this.cryptoCore.consts.MULTIPLE.ENCRYPTED_KEY_SIZE;
|
|
446
|
+
if (data.length < offset + remainingHeaderSize) {
|
|
317
447
|
throw new ecies_lib_1.ECIESError(ecies_lib_1.ECIESErrorTypeEnum.InvalidDataLength);
|
|
318
448
|
}
|
|
319
449
|
// Read recipient IDs
|
|
320
450
|
const recipientIds = [];
|
|
321
451
|
for (let i = 0; i < recipientCount; i++) {
|
|
322
|
-
recipientIds.push(
|
|
323
|
-
|
|
324
|
-
.toString('hex')));
|
|
325
|
-
offset += constants_1.Constants.OBJECT_ID_LENGTH;
|
|
452
|
+
recipientIds.push(data.subarray(offset, offset + recipientIdSize));
|
|
453
|
+
offset += recipientIdSize;
|
|
326
454
|
}
|
|
327
455
|
// Read encrypted keys with variable lengths based on encryption type
|
|
328
456
|
const recipientKeys = [];
|
|
@@ -346,6 +474,7 @@ class EciesMultiRecipient {
|
|
|
346
474
|
recipientIds,
|
|
347
475
|
recipientKeys,
|
|
348
476
|
headerSize: offset,
|
|
477
|
+
ephemeralPublicKey,
|
|
349
478
|
};
|
|
350
479
|
}
|
|
351
480
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"multi-recipient.js","sourceRoot":"","sources":["../../../../../../packages/digitaldefiance-node-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-node-ecies-lib/src/services/ecies/multi-recipient.ts"],"names":[],"mappings":"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"}
|
|
@@ -48,7 +48,7 @@ export declare class ECIESService {
|
|
|
48
48
|
decrypted: Buffer;
|
|
49
49
|
consumedBytes: number;
|
|
50
50
|
};
|
|
51
|
-
decryptSingleWithComponents(privateKey: Buffer, ephemeralPublicKey: Buffer, iv: Buffer, authTag: Buffer, encrypted: Buffer): {
|
|
51
|
+
decryptSingleWithComponents(privateKey: Buffer, ephemeralPublicKey: Buffer, iv: Buffer, authTag: Buffer, encrypted: Buffer, aad?: Buffer): {
|
|
52
52
|
decrypted: Buffer;
|
|
53
53
|
ciphertextLength?: number;
|
|
54
54
|
};
|
|
@@ -1 +1 @@
|
|
|
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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
|
|
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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"}
|
|
@@ -89,8 +89,8 @@ class ECIESService {
|
|
|
89
89
|
decryptSimpleOrSingleWithHeaderEx(encryptionType, privateKey, encryptedData, preambleSize = 0, options) {
|
|
90
90
|
return this.singleRecipient.decryptWithHeaderEx(encryptionType, privateKey, encryptedData, preambleSize, options);
|
|
91
91
|
}
|
|
92
|
-
decryptSingleWithComponents(privateKey, ephemeralPublicKey, iv, authTag, encrypted) {
|
|
93
|
-
const decrypted = this.singleRecipient.decryptWithComponents(privateKey, ephemeralPublicKey, iv, authTag, encrypted);
|
|
92
|
+
decryptSingleWithComponents(privateKey, ephemeralPublicKey, iv, authTag, encrypted, aad) {
|
|
93
|
+
const decrypted = this.singleRecipient.decryptWithComponents(privateKey, ephemeralPublicKey, iv, authTag, encrypted, aad);
|
|
94
94
|
// Return an object with a 'decrypted' property for compatibility with existing code
|
|
95
95
|
return { decrypted, ciphertextLength: encrypted.length };
|
|
96
96
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"service.js","sourceRoot":"","sources":["../../../../../../packages/digitaldefiance-node-ecies-lib/src/services/ecies/service.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"service.js","sourceRoot":"","sources":["../../../../../../packages/digitaldefiance-node-ecies-lib/src/services/ecies/service.ts"],"names":[],"mappings":"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"}
|
|
@@ -78,6 +78,6 @@ export declare class EciesSingleRecipientCore {
|
|
|
78
78
|
* @param encrypted The encrypted data
|
|
79
79
|
* @returns The decrypted data
|
|
80
80
|
*/
|
|
81
|
-
decryptWithComponents(privateKey: Buffer, ephemeralPublicKey: Buffer, iv: Buffer, authTag: Buffer, encrypted: Buffer): Buffer;
|
|
81
|
+
decryptWithComponents(privateKey: Buffer, ephemeralPublicKey: Buffer, iv: Buffer, authTag: Buffer, encrypted: Buffer, aad?: Buffer): Buffer;
|
|
82
82
|
}
|
|
83
83
|
//# sourceMappingURL=single-recipient.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"single-recipient.d.ts","sourceRoot":"","sources":["../../../../../../packages/digitaldefiance-node-ecies-lib/src/services/ecies/single-recipient.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,mBAAmB,EACnB,uBAAuB,EAOvB,YAAY,
|
|
1
|
+
{"version":3,"file":"single-recipient.d.ts","sourceRoot":"","sources":["../../../../../../packages/digitaldefiance-node-ecies-lib/src/services/ecies/single-recipient.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,mBAAmB,EACnB,uBAAuB,EAOvB,YAAY,EAKb,MAAM,4BAA4B,CAAC;AAepC,OAAO,EAAE,4BAA4B,EAAE,MAAM,iDAAiD,CAAC;AAC/F,OAAO,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAEhD,qBAAa,wBAAwB;IACnC,SAAS,CAAC,QAAQ,CAAC,UAAU,EAAE,eAAe,CAAC;IAC/C,SAAS,CAAC,QAAQ,CAAC,MAAM,EAAE,YAAY,CAAC;gBAGtC,MAAM,EAAE,YAAY;IAMtB;;;;OAIG;IACI,aAAa,CAAC,cAAc,EAAE,mBAAmB,GAAG,MAAM;IAajE;;;;;;;;;OASG;IACI,OAAO,CACZ,aAAa,EAAE,OAAO,EACtB,iBAAiB,EAAE,MAAM,EACzB,OAAO,EAAE,MAAM,EACf,QAAQ,GAAE,MAAwB,GACjC,MAAM;IAyKT;;;;;;;;OAQG;IACI,qBAAqB,CAC1B,cAAc,EAAE,uBAAuB,GAAG,SAAS,EACnD,IAAI,EAAE,MAAM,EACZ,YAAY,GAAE,MAAU,EACxB,OAAO,CAAC,EAAE;QACR,UAAU,CAAC,EAAE,MAAM,CAAC;KACrB,GACA;QAAE,MAAM,EAAE,4BAA4B,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,CAAA;KAAE;IA2N5E;;;;;;;;;;;OAWG;IACI,iBAAiB,CACtB,cAAc,EAAE,uBAAuB,GAAG,SAAS,EACnD,UAAU,EAAE,MAAM,EAClB,aAAa,EAAE,MAAM,EACrB,YAAY,GAAE,MAAU,EACxB,OAAO,CAAC,EAAE;QACR,UAAU,CAAC,EAAE,MAAM,CAAC;KACrB,GACA,MAAM;IA0BT;;;;;;;;;OASG;IACI,mBAAmB,CACxB,cAAc,EAAE,uBAAuB,GAAG,SAAS,EACnD,UAAU,EAAE,MAAM,EAClB,aAAa,EAAE,MAAM,EACrB,YAAY,GAAE,MAAU,EACxB,OAAO,CAAC,EAAE;QACR,UAAU,CAAC,EAAE,MAAM,CAAC;KACrB,GACA;QAAE,SAAS,EAAE,MAAM,CAAC;QAAC,aAAa,EAAE,MAAM,CAAA;KAAE;IA6D/C;;;;;;;;OAQG;IACI,qBAAqB,CAC1B,UAAU,EAAE,MAAM,EAClB,kBAAkB,EAAE,MAAM,EAC1B,EAAE,EAAE,MAAM,EACV,OAAO,EAAE,MAAM,EACf,SAAS,EAAE,MAAM,EACjB,GAAG,CAAC,EAAE,MAAM,GACX,MAAM;CAsIV"}
|