mmn-client-js 1.0.2 → 1.0.3

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/dist/index.d.ts CHANGED
@@ -173,7 +173,19 @@ declare class MmnClient {
173
173
  private requestId;
174
174
  constructor(config: MmnClientConfig);
175
175
  private makeRequest;
176
+ /**
177
+ * Securely convert raw Ed25519 private key to PKCS#8 format
178
+ * @param raw - Raw 32-byte Ed25519 private key
179
+ * @returns PKCS#8 formatted private key in hex
180
+ * @throws Error if input validation fails
181
+ */
176
182
  private rawEd25519ToPkcs8Hex;
183
+ private encodeLength;
184
+ /**
185
+ * Securely generate ephemeral key pair with proper entropy
186
+ * @returns Ephemeral key pair with private and public keys
187
+ * @throws Error if key generation fails
188
+ */
177
189
  generateEphemeralKeyPair(): IEphemeralKeyPair;
178
190
  getAddressFromUserId(userId: string): string;
179
191
  /**
@@ -181,7 +193,11 @@ declare class MmnClient {
181
193
  */
182
194
  private createAndSignTx;
183
195
  /**
184
- * Sign a transaction with Ed25519
196
+ * Securely sign a transaction with Ed25519
197
+ * @param tx - Transaction message to sign
198
+ * @param privateKeyHex - Private key in PKCS#8 hex format
199
+ * @returns Base58 encoded signature
200
+ * @throws Error if signing fails
185
201
  */
186
202
  private signTransaction;
187
203
  /**
package/dist/index.esm.js CHANGED
@@ -79,6 +79,16 @@ class IndexerClient {
79
79
 
80
80
  // MMN Client
81
81
  // This client provides a complete interface for interacting with MMN blockchain
82
+ // Cryptographic constants
83
+ const CRYPTO_CONSTANTS = {
84
+ ED25519_PRIVATE_KEY_LENGTH: 32,
85
+ ED25519_PUBLIC_KEY_LENGTH: 32,
86
+ MNEMONIC_ENTROPY_BITS: 128,
87
+ PKCS8_VERSION: 0,
88
+ ASN1_SEQUENCE_TAG: 0x30,
89
+ ASN1_OCTET_STRING_TAG: 0x04,
90
+ ASN1_INTEGER_TAG: 0x02,
91
+ };
82
92
  const TX_TYPE = {
83
93
  TRANSFER: 0,
84
94
  FAUCET: 1,
@@ -136,61 +146,117 @@ class MmnClient {
136
146
  throw new Error('Unknown error occurred');
137
147
  }
138
148
  }
149
+ /**
150
+ * Securely convert raw Ed25519 private key to PKCS#8 format
151
+ * @param raw - Raw 32-byte Ed25519 private key
152
+ * @returns PKCS#8 formatted private key in hex
153
+ * @throws Error if input validation fails
154
+ */
139
155
  rawEd25519ToPkcs8Hex(raw) {
140
- // Helpers: DER building
141
- const concat = (...parts) => {
142
- const total = parts.reduce((s, p) => s + p.length, 0);
143
- const out = new Uint8Array(total);
144
- let offset = 0;
145
- for (const p of parts) {
146
- out.set(p, offset);
147
- offset += p.length;
148
- }
149
- return out;
150
- };
151
- const derLen = (n) => {
152
- if (n < 0x80)
153
- return Uint8Array.of(n);
154
- // support up to 4 bytes length which is plenty here
155
- const bytes = [];
156
- let x = n;
157
- while (x > 0) {
158
- bytes.unshift(x & 0xff);
159
- x >>= 8;
160
- }
161
- return Uint8Array.of(0x80 | bytes.length, ...bytes);
162
- };
163
- const derIntegerZero = Uint8Array.of(0x02, 0x01, 0x00); // INTEGER 0
164
- // AlgorithmIdentifier = SEQUENCE { OID 1.3.101.112 (ed25519), parameters ABSENT }
165
- const oidEd25519 = Uint8Array.of(0x06, 0x03, 0x2b, 0x65, 0x70);
166
- const algId = concat(Uint8Array.of(0x30), derLen(oidEd25519.length), oidEd25519);
167
- // privateKey = OCTET STRING of inner OCTET STRING (RFC8410 commonly seen form)
168
- const innerOctet = concat(Uint8Array.of(0x04, 0x20), new Uint8Array(raw)); // 0x04, len=0x20, 32 bytes
169
- const privateKeyField = concat(Uint8Array.of(0x04), derLen(innerOctet.length), innerOctet);
170
- // PrivateKeyInfo = SEQUENCE { version, algId, privateKey }
171
- const body = concat(derIntegerZero, algId, privateKeyField);
172
- const pkcs8 = concat(Uint8Array.of(0x30), derLen(body.length), body);
173
- return Buffer.from(pkcs8).toString('hex');
156
+ // Input validation
157
+ if (!Buffer.isBuffer(raw)) {
158
+ throw new Error('Private key must be a Buffer');
159
+ }
160
+ if (raw.length !== CRYPTO_CONSTANTS.ED25519_PRIVATE_KEY_LENGTH) {
161
+ throw new Error(`Ed25519 private key must be exactly ${CRYPTO_CONSTANTS.ED25519_PRIVATE_KEY_LENGTH} bytes`);
162
+ }
163
+ try {
164
+ // Ed25519 OID: 1.3.101.112 (constant-time)
165
+ const ED25519_OID = Buffer.from([0x06, 0x03, 0x2b, 0x65, 0x70]);
166
+ const VERSION_BYTES = Buffer.from([
167
+ CRYPTO_CONSTANTS.ASN1_INTEGER_TAG,
168
+ 0x01,
169
+ CRYPTO_CONSTANTS.PKCS8_VERSION,
170
+ ]); // INTEGER 0
171
+ // Create algorithm identifier sequence
172
+ const algorithmId = Buffer.concat([
173
+ Buffer.from([0x30, 0x0b]), // SEQUENCE, length 11
174
+ ED25519_OID,
175
+ ]);
176
+ // Create private key octet string
177
+ const privateKeyOctetString = Buffer.concat([
178
+ Buffer.from([CRYPTO_CONSTANTS.ASN1_OCTET_STRING_TAG, 0x22]), // OCTET STRING, length 34
179
+ Buffer.from([CRYPTO_CONSTANTS.ASN1_OCTET_STRING_TAG, 0x20]), // inner OCTET STRING, length 32
180
+ raw,
181
+ ]);
182
+ // Create PKCS#8 body
183
+ const pkcs8Body = Buffer.concat([
184
+ VERSION_BYTES,
185
+ algorithmId,
186
+ privateKeyOctetString,
187
+ ]);
188
+ // Create final PKCS#8 structure
189
+ const pkcs8 = Buffer.concat([
190
+ Buffer.from([CRYPTO_CONSTANTS.ASN1_SEQUENCE_TAG]), // SEQUENCE
191
+ this.encodeLength(pkcs8Body.length),
192
+ pkcs8Body,
193
+ ]);
194
+ const result = pkcs8.toString('hex');
195
+ // Clear sensitive data from memory
196
+ raw.fill(0);
197
+ privateKeyOctetString.fill(0);
198
+ pkcs8Body.fill(0);
199
+ pkcs8.fill(0);
200
+ return result;
201
+ }
202
+ catch (error) {
203
+ // Clear sensitive data on error
204
+ raw.fill(0);
205
+ throw new Error(`Failed to convert private key to PKCS#8: ${error instanceof Error ? error.message : 'Unknown error'}`);
206
+ }
207
+ }
208
+ encodeLength(length) {
209
+ if (length < 0x80) {
210
+ return Buffer.from([length]);
211
+ }
212
+ const bytes = [];
213
+ let len = length;
214
+ while (len > 0) {
215
+ bytes.unshift(len & 0xff);
216
+ len >>= 8;
217
+ }
218
+ return Buffer.from([0x80 | bytes.length, ...bytes]);
174
219
  }
220
+ /**
221
+ * Securely generate ephemeral key pair with proper entropy
222
+ * @returns Ephemeral key pair with private and public keys
223
+ * @throws Error if key generation fails
224
+ */
175
225
  generateEphemeralKeyPair() {
176
226
  try {
177
- const mnemonic = bip39.generateMnemonic(128);
227
+ // Generate cryptographically secure mnemonic
228
+ const mnemonic = bip39.generateMnemonic(CRYPTO_CONSTANTS.MNEMONIC_ENTROPY_BITS);
178
229
  if (!bip39.validateMnemonic(mnemonic)) {
179
230
  throw new Error('Generated mnemonic failed validation');
180
231
  }
232
+ // Convert mnemonic to seed
181
233
  const seed = bip39.mnemonicToSeedSync(mnemonic);
182
- const privateKey = seed.slice(0, 32);
183
- const kp = nacl.sign.keyPair.fromSeed(privateKey);
184
- const publicKeyBytes = kp.publicKey;
234
+ // Extract first 32 bytes as private key
235
+ const privateKey = seed.subarray(0, CRYPTO_CONSTANTS.ED25519_PRIVATE_KEY_LENGTH);
236
+ // Validate private key length
237
+ if (privateKey.length !== CRYPTO_CONSTANTS.ED25519_PRIVATE_KEY_LENGTH) {
238
+ throw new Error(`Invalid private key length: expected ${CRYPTO_CONSTANTS.ED25519_PRIVATE_KEY_LENGTH}, got ${privateKey.length}`);
239
+ }
240
+ // Generate key pair from seed
241
+ const keyPair = nacl.sign.keyPair.fromSeed(privateKey);
242
+ const publicKeyBytes = keyPair.publicKey;
243
+ // Validate public key
244
+ if (publicKeyBytes.length !== CRYPTO_CONSTANTS.ED25519_PUBLIC_KEY_LENGTH) {
245
+ throw new Error(`Invalid public key length: expected ${CRYPTO_CONSTANTS.ED25519_PUBLIC_KEY_LENGTH}, got ${publicKeyBytes.length}`);
246
+ }
247
+ // Convert private key to PKCS#8 format
185
248
  const privateKeyHex = this.rawEd25519ToPkcs8Hex(privateKey);
249
+ // Clear sensitive data
250
+ seed.fill(0);
251
+ privateKey.fill(0);
252
+ keyPair.secretKey.fill(0);
186
253
  return {
187
254
  privateKey: privateKeyHex,
188
255
  publicKey: bs58.encode(publicKeyBytes),
189
256
  };
190
257
  }
191
258
  catch (error) {
192
- console.error('Error generating wallet:', error);
193
- throw new Error('Failed to generate wallet');
259
+ throw new Error(`Failed to generate ephemeral key pair: ${error instanceof Error ? error.message : 'Unknown error'}`);
194
260
  }
195
261
  }
196
262
  getAddressFromUserId(userId) {
@@ -222,24 +288,60 @@ class MmnClient {
222
288
  };
223
289
  }
224
290
  /**
225
- * Sign a transaction with Ed25519
291
+ * Securely sign a transaction with Ed25519
292
+ * @param tx - Transaction message to sign
293
+ * @param privateKeyHex - Private key in PKCS#8 hex format
294
+ * @returns Base58 encoded signature
295
+ * @throws Error if signing fails
226
296
  */
227
297
  signTransaction(tx, privateKeyHex) {
228
- const serializedData = this.serializeTransaction(tx);
229
- // Extract the Ed25519 seed from the private key for nacl signing
230
- const privateKeyDer = Buffer.from(privateKeyHex, 'hex');
231
- const seed = privateKeyDer.slice(-32);
232
- const keyPair = nacl.sign.keyPair.fromSeed(seed);
233
- // Sign using Ed25519 (nacl)
234
- const signature = nacl.sign.detached(serializedData, keyPair.secretKey);
235
- if (tx.type === TX_TYPE.FAUCET) {
236
- return bs58.encode(Buffer.from(signature));
298
+ try {
299
+ // Validate inputs
300
+ if (!tx || typeof tx !== 'object') {
301
+ throw new Error('Invalid transaction object');
302
+ }
303
+ if (!privateKeyHex || typeof privateKeyHex !== 'string') {
304
+ throw new Error('Invalid private key format');
305
+ }
306
+ // Serialize transaction data
307
+ const serializedData = this.serializeTransaction(tx);
308
+ if (!serializedData || serializedData.length === 0) {
309
+ throw new Error('Failed to serialize transaction');
310
+ }
311
+ // Extract the Ed25519 seed from the private key for nacl signing
312
+ const privateKeyDer = Buffer.from(privateKeyHex, 'hex');
313
+ if (privateKeyDer.length < CRYPTO_CONSTANTS.ED25519_PRIVATE_KEY_LENGTH) {
314
+ throw new Error(`Invalid private key length: expected at least ${CRYPTO_CONSTANTS.ED25519_PRIVATE_KEY_LENGTH} bytes, got ${privateKeyDer.length}`);
315
+ }
316
+ const seed = privateKeyDer.subarray(-CRYPTO_CONSTANTS.ED25519_PRIVATE_KEY_LENGTH); // Last 32 bytes
317
+ const keyPair = nacl.sign.keyPair.fromSeed(seed);
318
+ // Validate key pair
319
+ if (!keyPair.publicKey || !keyPair.secretKey) {
320
+ throw new Error('Failed to create key pair from seed');
321
+ }
322
+ // Sign using Ed25519 (nacl) - constant time operation
323
+ const signature = nacl.sign.detached(serializedData, keyPair.secretKey);
324
+ if (!signature || signature.length === 0) {
325
+ throw new Error('Failed to generate signature');
326
+ }
327
+ // Clear sensitive data
328
+ privateKeyDer.fill(0);
329
+ seed.fill(0);
330
+ keyPair.secretKey.fill(0);
331
+ // Return signature based on transaction type
332
+ if (tx.type === TX_TYPE.FAUCET) {
333
+ return bs58.encode(Buffer.from(signature));
334
+ }
335
+ // For regular transactions, wrap signature with public key
336
+ const userSig = {
337
+ PubKey: Buffer.from(keyPair.publicKey).toString('base64'),
338
+ Sig: Buffer.from(signature).toString('base64'),
339
+ };
340
+ return bs58.encode(Buffer.from(JSON.stringify(userSig)));
341
+ }
342
+ catch (error) {
343
+ throw new Error(`Transaction signing failed: ${error instanceof Error ? error.message : 'Unknown error'}`);
237
344
  }
238
- const userSig = {
239
- PubKey: Buffer.from(keyPair.publicKey).toString('base64'),
240
- Sig: Buffer.from(signature).toString('base64'),
241
- };
242
- return bs58.encode(Buffer.from(JSON.stringify(userSig)));
243
345
  }
244
346
  /**
245
347
  * Serialize transaction for signing
@@ -1 +1 @@
1
- {"version":3,"file":"index.esm.js","sources":["../src/indexer-client.ts","../src/mmn-client.ts","../src/types.ts","../src/zk-client.ts"],"sourcesContent":[null,null,null,null],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.esm.js","sources":["../src/indexer-client.ts","../src/mmn-client.ts","../src/types.ts","../src/zk-client.ts"],"sourcesContent":[null,null,null,null],"names":[],"mappings":"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"}
package/dist/index.js CHANGED
@@ -100,6 +100,16 @@ class IndexerClient {
100
100
 
101
101
  // MMN Client
102
102
  // This client provides a complete interface for interacting with MMN blockchain
103
+ // Cryptographic constants
104
+ const CRYPTO_CONSTANTS = {
105
+ ED25519_PRIVATE_KEY_LENGTH: 32,
106
+ ED25519_PUBLIC_KEY_LENGTH: 32,
107
+ MNEMONIC_ENTROPY_BITS: 128,
108
+ PKCS8_VERSION: 0,
109
+ ASN1_SEQUENCE_TAG: 0x30,
110
+ ASN1_OCTET_STRING_TAG: 0x04,
111
+ ASN1_INTEGER_TAG: 0x02,
112
+ };
103
113
  const TX_TYPE = {
104
114
  TRANSFER: 0,
105
115
  FAUCET: 1,
@@ -157,61 +167,117 @@ class MmnClient {
157
167
  throw new Error('Unknown error occurred');
158
168
  }
159
169
  }
170
+ /**
171
+ * Securely convert raw Ed25519 private key to PKCS#8 format
172
+ * @param raw - Raw 32-byte Ed25519 private key
173
+ * @returns PKCS#8 formatted private key in hex
174
+ * @throws Error if input validation fails
175
+ */
160
176
  rawEd25519ToPkcs8Hex(raw) {
161
- // Helpers: DER building
162
- const concat = (...parts) => {
163
- const total = parts.reduce((s, p) => s + p.length, 0);
164
- const out = new Uint8Array(total);
165
- let offset = 0;
166
- for (const p of parts) {
167
- out.set(p, offset);
168
- offset += p.length;
169
- }
170
- return out;
171
- };
172
- const derLen = (n) => {
173
- if (n < 0x80)
174
- return Uint8Array.of(n);
175
- // support up to 4 bytes length which is plenty here
176
- const bytes = [];
177
- let x = n;
178
- while (x > 0) {
179
- bytes.unshift(x & 0xff);
180
- x >>= 8;
181
- }
182
- return Uint8Array.of(0x80 | bytes.length, ...bytes);
183
- };
184
- const derIntegerZero = Uint8Array.of(0x02, 0x01, 0x00); // INTEGER 0
185
- // AlgorithmIdentifier = SEQUENCE { OID 1.3.101.112 (ed25519), parameters ABSENT }
186
- const oidEd25519 = Uint8Array.of(0x06, 0x03, 0x2b, 0x65, 0x70);
187
- const algId = concat(Uint8Array.of(0x30), derLen(oidEd25519.length), oidEd25519);
188
- // privateKey = OCTET STRING of inner OCTET STRING (RFC8410 commonly seen form)
189
- const innerOctet = concat(Uint8Array.of(0x04, 0x20), new Uint8Array(raw)); // 0x04, len=0x20, 32 bytes
190
- const privateKeyField = concat(Uint8Array.of(0x04), derLen(innerOctet.length), innerOctet);
191
- // PrivateKeyInfo = SEQUENCE { version, algId, privateKey }
192
- const body = concat(derIntegerZero, algId, privateKeyField);
193
- const pkcs8 = concat(Uint8Array.of(0x30), derLen(body.length), body);
194
- return Buffer.from(pkcs8).toString('hex');
177
+ // Input validation
178
+ if (!Buffer.isBuffer(raw)) {
179
+ throw new Error('Private key must be a Buffer');
180
+ }
181
+ if (raw.length !== CRYPTO_CONSTANTS.ED25519_PRIVATE_KEY_LENGTH) {
182
+ throw new Error(`Ed25519 private key must be exactly ${CRYPTO_CONSTANTS.ED25519_PRIVATE_KEY_LENGTH} bytes`);
183
+ }
184
+ try {
185
+ // Ed25519 OID: 1.3.101.112 (constant-time)
186
+ const ED25519_OID = Buffer.from([0x06, 0x03, 0x2b, 0x65, 0x70]);
187
+ const VERSION_BYTES = Buffer.from([
188
+ CRYPTO_CONSTANTS.ASN1_INTEGER_TAG,
189
+ 0x01,
190
+ CRYPTO_CONSTANTS.PKCS8_VERSION,
191
+ ]); // INTEGER 0
192
+ // Create algorithm identifier sequence
193
+ const algorithmId = Buffer.concat([
194
+ Buffer.from([0x30, 0x0b]), // SEQUENCE, length 11
195
+ ED25519_OID,
196
+ ]);
197
+ // Create private key octet string
198
+ const privateKeyOctetString = Buffer.concat([
199
+ Buffer.from([CRYPTO_CONSTANTS.ASN1_OCTET_STRING_TAG, 0x22]), // OCTET STRING, length 34
200
+ Buffer.from([CRYPTO_CONSTANTS.ASN1_OCTET_STRING_TAG, 0x20]), // inner OCTET STRING, length 32
201
+ raw,
202
+ ]);
203
+ // Create PKCS#8 body
204
+ const pkcs8Body = Buffer.concat([
205
+ VERSION_BYTES,
206
+ algorithmId,
207
+ privateKeyOctetString,
208
+ ]);
209
+ // Create final PKCS#8 structure
210
+ const pkcs8 = Buffer.concat([
211
+ Buffer.from([CRYPTO_CONSTANTS.ASN1_SEQUENCE_TAG]), // SEQUENCE
212
+ this.encodeLength(pkcs8Body.length),
213
+ pkcs8Body,
214
+ ]);
215
+ const result = pkcs8.toString('hex');
216
+ // Clear sensitive data from memory
217
+ raw.fill(0);
218
+ privateKeyOctetString.fill(0);
219
+ pkcs8Body.fill(0);
220
+ pkcs8.fill(0);
221
+ return result;
222
+ }
223
+ catch (error) {
224
+ // Clear sensitive data on error
225
+ raw.fill(0);
226
+ throw new Error(`Failed to convert private key to PKCS#8: ${error instanceof Error ? error.message : 'Unknown error'}`);
227
+ }
228
+ }
229
+ encodeLength(length) {
230
+ if (length < 0x80) {
231
+ return Buffer.from([length]);
232
+ }
233
+ const bytes = [];
234
+ let len = length;
235
+ while (len > 0) {
236
+ bytes.unshift(len & 0xff);
237
+ len >>= 8;
238
+ }
239
+ return Buffer.from([0x80 | bytes.length, ...bytes]);
195
240
  }
241
+ /**
242
+ * Securely generate ephemeral key pair with proper entropy
243
+ * @returns Ephemeral key pair with private and public keys
244
+ * @throws Error if key generation fails
245
+ */
196
246
  generateEphemeralKeyPair() {
197
247
  try {
198
- const mnemonic = bip39__namespace.generateMnemonic(128);
248
+ // Generate cryptographically secure mnemonic
249
+ const mnemonic = bip39__namespace.generateMnemonic(CRYPTO_CONSTANTS.MNEMONIC_ENTROPY_BITS);
199
250
  if (!bip39__namespace.validateMnemonic(mnemonic)) {
200
251
  throw new Error('Generated mnemonic failed validation');
201
252
  }
253
+ // Convert mnemonic to seed
202
254
  const seed = bip39__namespace.mnemonicToSeedSync(mnemonic);
203
- const privateKey = seed.slice(0, 32);
204
- const kp = nacl.sign.keyPair.fromSeed(privateKey);
205
- const publicKeyBytes = kp.publicKey;
255
+ // Extract first 32 bytes as private key
256
+ const privateKey = seed.subarray(0, CRYPTO_CONSTANTS.ED25519_PRIVATE_KEY_LENGTH);
257
+ // Validate private key length
258
+ if (privateKey.length !== CRYPTO_CONSTANTS.ED25519_PRIVATE_KEY_LENGTH) {
259
+ throw new Error(`Invalid private key length: expected ${CRYPTO_CONSTANTS.ED25519_PRIVATE_KEY_LENGTH}, got ${privateKey.length}`);
260
+ }
261
+ // Generate key pair from seed
262
+ const keyPair = nacl.sign.keyPair.fromSeed(privateKey);
263
+ const publicKeyBytes = keyPair.publicKey;
264
+ // Validate public key
265
+ if (publicKeyBytes.length !== CRYPTO_CONSTANTS.ED25519_PUBLIC_KEY_LENGTH) {
266
+ throw new Error(`Invalid public key length: expected ${CRYPTO_CONSTANTS.ED25519_PUBLIC_KEY_LENGTH}, got ${publicKeyBytes.length}`);
267
+ }
268
+ // Convert private key to PKCS#8 format
206
269
  const privateKeyHex = this.rawEd25519ToPkcs8Hex(privateKey);
270
+ // Clear sensitive data
271
+ seed.fill(0);
272
+ privateKey.fill(0);
273
+ keyPair.secretKey.fill(0);
207
274
  return {
208
275
  privateKey: privateKeyHex,
209
276
  publicKey: bs58.encode(publicKeyBytes),
210
277
  };
211
278
  }
212
279
  catch (error) {
213
- console.error('Error generating wallet:', error);
214
- throw new Error('Failed to generate wallet');
280
+ throw new Error(`Failed to generate ephemeral key pair: ${error instanceof Error ? error.message : 'Unknown error'}`);
215
281
  }
216
282
  }
217
283
  getAddressFromUserId(userId) {
@@ -243,24 +309,60 @@ class MmnClient {
243
309
  };
244
310
  }
245
311
  /**
246
- * Sign a transaction with Ed25519
312
+ * Securely sign a transaction with Ed25519
313
+ * @param tx - Transaction message to sign
314
+ * @param privateKeyHex - Private key in PKCS#8 hex format
315
+ * @returns Base58 encoded signature
316
+ * @throws Error if signing fails
247
317
  */
248
318
  signTransaction(tx, privateKeyHex) {
249
- const serializedData = this.serializeTransaction(tx);
250
- // Extract the Ed25519 seed from the private key for nacl signing
251
- const privateKeyDer = Buffer.from(privateKeyHex, 'hex');
252
- const seed = privateKeyDer.slice(-32);
253
- const keyPair = nacl.sign.keyPair.fromSeed(seed);
254
- // Sign using Ed25519 (nacl)
255
- const signature = nacl.sign.detached(serializedData, keyPair.secretKey);
256
- if (tx.type === TX_TYPE.FAUCET) {
257
- return bs58.encode(Buffer.from(signature));
319
+ try {
320
+ // Validate inputs
321
+ if (!tx || typeof tx !== 'object') {
322
+ throw new Error('Invalid transaction object');
323
+ }
324
+ if (!privateKeyHex || typeof privateKeyHex !== 'string') {
325
+ throw new Error('Invalid private key format');
326
+ }
327
+ // Serialize transaction data
328
+ const serializedData = this.serializeTransaction(tx);
329
+ if (!serializedData || serializedData.length === 0) {
330
+ throw new Error('Failed to serialize transaction');
331
+ }
332
+ // Extract the Ed25519 seed from the private key for nacl signing
333
+ const privateKeyDer = Buffer.from(privateKeyHex, 'hex');
334
+ if (privateKeyDer.length < CRYPTO_CONSTANTS.ED25519_PRIVATE_KEY_LENGTH) {
335
+ throw new Error(`Invalid private key length: expected at least ${CRYPTO_CONSTANTS.ED25519_PRIVATE_KEY_LENGTH} bytes, got ${privateKeyDer.length}`);
336
+ }
337
+ const seed = privateKeyDer.subarray(-CRYPTO_CONSTANTS.ED25519_PRIVATE_KEY_LENGTH); // Last 32 bytes
338
+ const keyPair = nacl.sign.keyPair.fromSeed(seed);
339
+ // Validate key pair
340
+ if (!keyPair.publicKey || !keyPair.secretKey) {
341
+ throw new Error('Failed to create key pair from seed');
342
+ }
343
+ // Sign using Ed25519 (nacl) - constant time operation
344
+ const signature = nacl.sign.detached(serializedData, keyPair.secretKey);
345
+ if (!signature || signature.length === 0) {
346
+ throw new Error('Failed to generate signature');
347
+ }
348
+ // Clear sensitive data
349
+ privateKeyDer.fill(0);
350
+ seed.fill(0);
351
+ keyPair.secretKey.fill(0);
352
+ // Return signature based on transaction type
353
+ if (tx.type === TX_TYPE.FAUCET) {
354
+ return bs58.encode(Buffer.from(signature));
355
+ }
356
+ // For regular transactions, wrap signature with public key
357
+ const userSig = {
358
+ PubKey: Buffer.from(keyPair.publicKey).toString('base64'),
359
+ Sig: Buffer.from(signature).toString('base64'),
360
+ };
361
+ return bs58.encode(Buffer.from(JSON.stringify(userSig)));
362
+ }
363
+ catch (error) {
364
+ throw new Error(`Transaction signing failed: ${error instanceof Error ? error.message : 'Unknown error'}`);
258
365
  }
259
- const userSig = {
260
- PubKey: Buffer.from(keyPair.publicKey).toString('base64'),
261
- Sig: Buffer.from(signature).toString('base64'),
262
- };
263
- return bs58.encode(Buffer.from(JSON.stringify(userSig)));
264
366
  }
265
367
  /**
266
368
  * Serialize transaction for signing
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../src/indexer-client.ts","../src/mmn-client.ts","../src/types.ts","../src/zk-client.ts"],"sourcesContent":[null,null,null,null],"names":["bip39","createHash","ETransferType"],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sources":["../src/indexer-client.ts","../src/mmn-client.ts","../src/types.ts","../src/zk-client.ts"],"sourcesContent":[null,null,null,null],"names":["bip39","createHash","ETransferType"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;AAUA,MAAM,iBAAiB,GAAG;AACxB,IAAA,GAAG,EAAE,CAAC;AACN,IAAA,IAAI,EAAE,CAAC;AACP,IAAA,QAAQ,EAAE,CAAC;CACZ;MAEY,aAAa,CAAA;AAKxB,IAAA,WAAA,CAAY,MAA2B,EAAA;AACrC,QAAA,IAAI,CAAC,QAAQ,GAAG,MAAM,CAAC,QAAQ;AAC/B,QAAA,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC,OAAO;AAE7B,QAAA,IAAI,CAAC,aAAa,GAAG,KAAK,CAAC,MAAM,CAAC;YAChC,OAAO,EAAE,IAAI,CAAC,QAAQ;AACtB,YAAA,OAAO,EAAE,MAAM,CAAC,OAAO,IAAI,KAAK;AAChC,YAAA,OAAO,EAAE;AACP,gBAAA,cAAc,EAAE,kBAAkB;AAClC,gBAAA,MAAM,EAAE,kBAAkB;AAC1B,gBAAA,IAAI,MAAM,CAAC,OAAO,IAAI,EAAE,CAAC;AAC1B,aAAA;AACF,SAAA,CAAC;IACJ;IAEQ,MAAM,WAAW,CACvB,MAAsB,EACtB,IAAY,EACZ,MAAwC,EACxC,IAAU,EAAA;QAEV,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,OAAO,CAAI;YAC/C,MAAM;AACN,YAAA,GAAG,EAAE,IAAI;YACT,MAAM;AACN,YAAA,IAAI,EAAE,IAAI;AACX,SAAA,CAAC;QACF,OAAO,IAAI,CAAC,IAAI;IAClB;IAEA,MAAM,oBAAoB,CAAC,IAAY,EAAA;QACrC,MAAM,IAAI,GAAG,CAAA,EAAG,IAAI,CAAC,OAAO,CAAA,IAAA,EAAO,IAAI,CAAA,OAAA,CAAS;QAChD,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,WAAW,CAA4B,KAAK,EAAE,IAAI,CAAC;AAC1E,QAAA,OAAO,GAAG,CAAC,IAAI,CAAC,WAAW;IAC7B;AAEA,IAAA,MAAM,sBAAsB,CAC1B,MAAc,EACd,IAAI,GAAG,CAAC,EACR,KAAK,GAAG,EAAE,EACV,MAAc,EAAA;QAEd,IAAI,CAAC,MAAM,EAAE;AACX,YAAA,MAAM,IAAI,KAAK,CAAC,gCAAgC,CAAC;QACnD;QAEA,IAAI,IAAI,GAAG,CAAC;YAAE,IAAI,GAAG,CAAC;QACtB,IAAI,KAAK,IAAI,CAAC;YAAE,KAAK,GAAG,EAAE;QAC1B,IAAI,KAAK,GAAG,IAAI;YAAE,KAAK,GAAG,IAAI;AAE9B,QAAA,MAAM,MAAM,GAAoC;YAC9C,IAAI,EAAE,IAAI,GAAG,CAAC;YACd,KAAK;AACL,YAAA,OAAO,EAAE,iBAAiB;AAC1B,YAAA,UAAU,EAAE,MAAM;SACnB;QAED,QAAQ,MAAM;YACZ,KAAK,iBAAiB,CAAC,GAAG;AACxB,gBAAA,MAAM,CAAC,gBAAgB,CAAC,GAAG,MAAM;gBACjC;YACF,KAAK,iBAAiB,CAAC,IAAI;AACzB,gBAAA,MAAM,CAAC,qBAAqB,CAAC,GAAG,MAAM;gBACtC;YACF,KAAK,iBAAiB,CAAC,QAAQ;AAC7B,gBAAA,MAAM,CAAC,mBAAmB,CAAC,GAAG,MAAM;gBACpC;;AAKJ,QAAA,MAAM,IAAI,GAAG,CAAA,EAAG,IAAI,CAAC,OAAO,eAAe;QAC3C,OAAO,IAAI,CAAC,WAAW,CAA0B,KAAK,EAAE,IAAI,EAAE,MAAM,CAAC;IACvE;IAEA,MAAM,eAAe,CAAC,MAAc,EAAA;QAClC,IAAI,CAAC,MAAM,EAAE;AACX,YAAA,MAAM,IAAI,KAAK,CAAC,gCAAgC,CAAC;QACnD;QAEA,MAAM,IAAI,GAAG,CAAA,EAAG,IAAI,CAAC,OAAO,CAAA,SAAA,EAAY,MAAM,CAAA,OAAA,CAAS;QACvD,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,WAAW,CAAuB,KAAK,EAAE,IAAI,CAAC;QACrE,OAAO,GAAG,CAAC,IAAI;IACjB;AACD;;ACzGD;AACA;AAmBA;AACA,MAAM,gBAAgB,GAAG;AACvB,IAAA,0BAA0B,EAAE,EAAE;AAC9B,IAAA,yBAAyB,EAAE,EAAE;AAC7B,IAAA,qBAAqB,EAAE,GAAG;AAC1B,IAAA,aAAa,EAAE,CAAC;AAChB,IAAA,iBAAiB,EAAE,IAAI;AACvB,IAAA,qBAAqB,EAAE,IAAI;AAC3B,IAAA,gBAAgB,EAAE,IAAI;CACd;AAEV,MAAM,OAAO,GAAG;AACd,IAAA,QAAQ,EAAE,CAAC;AACX,IAAA,MAAM,EAAE,CAAC;CACD;MAEG,SAAS,CAAA;AAKpB,IAAA,WAAA,CAAY,MAAuB,EAAA;QAF3B,IAAA,CAAA,SAAS,GAAG,CAAC;QAGnB,IAAI,CAAC,MAAM,GAAG;AACZ,YAAA,OAAO,EAAE,KAAK;AACd,YAAA,OAAO,EAAE;AACP,gBAAA,cAAc,EAAE,kBAAkB;AACnC,aAAA;AACD,YAAA,GAAG,MAAM;SACV;AAED,QAAA,IAAI,CAAC,aAAa,GAAG,KAAK,CAAC,MAAM,CAAC;AAChC,YAAA,OAAO,EAAE,IAAI,CAAC,MAAM,CAAC,OAAO;AAC5B,YAAA,OAAO,EAAE,IAAI,CAAC,MAAM,CAAC,OAAO,IAAI,KAAK;AACrC,YAAA,OAAO,EAAE,IAAI,CAAC,MAAM,CAAC,OAAO,IAAI,EAAE;YAClC,IAAI,IAAI,CAAC,MAAM,CAAC,WAAW,IAAI,EAAE,CAAC;AACnC,SAAA,CAAC;IACJ;AAEQ,IAAA,MAAM,WAAW,CAAI,MAAc,EAAE,MAAgB,EAAA;AAC3D,QAAA,MAAM,OAAO,GAAmB;AAC9B,YAAA,OAAO,EAAE,KAAK;YACd,MAAM;YACN,MAAM;AACN,YAAA,EAAE,EAAE,EAAE,IAAI,CAAC,SAAS;SACrB;AAED,QAAA,IAAI;AACF,YAAA,MAAM,QAAQ,GACZ,MAAM,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,EAAE,EAAE,OAAO,CAAC;AAE5C,YAAA,MAAM,MAAM,GAAG,QAAQ,CAAC,IAAI;AAE5B,YAAA,IAAI,MAAM,CAAC,KAAK,EAAE;AAChB,gBAAA,MAAM,IAAI,KAAK,CACb,CAAA,eAAA,EAAkB,MAAM,CAAC,KAAK,CAAC,IAAI,CAAA,EAAA,EAAK,MAAM,CAAC,KAAK,CAAC,OAAO,CAAA,CAAE,CAC/D;YACH;YAEA,OAAO,MAAM,CAAC,MAAW;QAC3B;QAAE,OAAO,KAAK,EAAE;AACd,YAAA,IAAI,KAAK,CAAC,YAAY,CAAC,KAAK,CAAC,EAAE;AAC7B,gBAAA,IAAI,KAAK,CAAC,QAAQ,EAAE;;AAElB,oBAAA,MAAM,IAAI,KAAK,CACb,CAAA,KAAA,EAAQ,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAA,EAAA,EAAK,KAAK,CAAC,QAAQ,CAAC,UAAU,CAAA,CAAE,CAC9D;gBACH;AAAO,qBAAA,IAAI,KAAK,CAAC,OAAO,EAAE;;AAExB,oBAAA,MAAM,IAAI,KAAK,CAAC,qCAAqC,CAAC;gBACxD;qBAAO;;oBAEL,MAAM,IAAI,KAAK,CAAC,CAAA,eAAA,EAAkB,KAAK,CAAC,OAAO,CAAA,CAAE,CAAC;gBACpD;YACF;AAEA,YAAA,IAAI,KAAK,YAAY,KAAK,EAAE;AAC1B,gBAAA,MAAM,KAAK;YACb;AACA,YAAA,MAAM,IAAI,KAAK,CAAC,wBAAwB,CAAC;QAC3C;IACF;AAEA;;;;;AAKG;AACK,IAAA,oBAAoB,CAAC,GAAW,EAAA;;QAEtC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE;AACzB,YAAA,MAAM,IAAI,KAAK,CAAC,8BAA8B,CAAC;QACjD;QAEA,IAAI,GAAG,CAAC,MAAM,KAAK,gBAAgB,CAAC,0BAA0B,EAAE;YAC9D,MAAM,IAAI,KAAK,CACb,CAAA,oCAAA,EAAuC,gBAAgB,CAAC,0BAA0B,CAAA,MAAA,CAAQ,CAC3F;QACH;AAEA,QAAA,IAAI;;AAEF,YAAA,MAAM,WAAW,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;AAC/D,YAAA,MAAM,aAAa,GAAG,MAAM,CAAC,IAAI,CAAC;AAChC,gBAAA,gBAAgB,CAAC,gBAAgB;gBACjC,IAAI;AACJ,gBAAA,gBAAgB,CAAC,aAAa;aAC/B,CAAC,CAAC;;AAGH,YAAA,MAAM,WAAW,GAAG,MAAM,CAAC,MAAM,CAAC;gBAChC,MAAM,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;gBACzB,WAAW;AACZ,aAAA,CAAC;;AAGF,YAAA,MAAM,qBAAqB,GAAG,MAAM,CAAC,MAAM,CAAC;AAC1C,gBAAA,MAAM,CAAC,IAAI,CAAC,CAAC,gBAAgB,CAAC,qBAAqB,EAAE,IAAI,CAAC,CAAC;AAC3D,gBAAA,MAAM,CAAC,IAAI,CAAC,CAAC,gBAAgB,CAAC,qBAAqB,EAAE,IAAI,CAAC,CAAC;gBAC3D,GAAG;AACJ,aAAA,CAAC;;AAGF,YAAA,MAAM,SAAS,GAAG,MAAM,CAAC,MAAM,CAAC;gBAC9B,aAAa;gBACb,WAAW;gBACX,qBAAqB;AACtB,aAAA,CAAC;;AAGF,YAAA,MAAM,KAAK,GAAG,MAAM,CAAC,MAAM,CAAC;gBAC1B,MAAM,CAAC,IAAI,CAAC,CAAC,gBAAgB,CAAC,iBAAiB,CAAC,CAAC;AACjD,gBAAA,IAAI,CAAC,YAAY,CAAC,SAAS,CAAC,MAAM,CAAC;gBACnC,SAAS;AACV,aAAA,CAAC;YAEF,MAAM,MAAM,GAAG,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC;;AAGpC,YAAA,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC;AACX,YAAA,qBAAqB,CAAC,IAAI,CAAC,CAAC,CAAC;AAC7B,YAAA,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC;AACjB,YAAA,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC;AAEb,YAAA,OAAO,MAAM;QACf;QAAE,OAAO,KAAK,EAAE;;AAEd,YAAA,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC;AACX,YAAA,MAAM,IAAI,KAAK,CACb,4CACE,KAAK,YAAY,KAAK,GAAG,KAAK,CAAC,OAAO,GAAG,eAC3C,CAAA,CAAE,CACH;QACH;IACF;AAEQ,IAAA,YAAY,CAAC,MAAc,EAAA;AACjC,QAAA,IAAI,MAAM,GAAG,IAAI,EAAE;YACjB,OAAO,MAAM,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,CAAC;QAC9B;QACA,MAAM,KAAK,GAAG,EAAE;QAChB,IAAI,GAAG,GAAG,MAAM;AAChB,QAAA,OAAO,GAAG,GAAG,CAAC,EAAE;AACd,YAAA,KAAK,CAAC,OAAO,CAAC,GAAG,GAAG,IAAI,CAAC;YACzB,GAAG,KAAK,CAAC;QACX;AACA,QAAA,OAAO,MAAM,CAAC,IAAI,CAAC,CAAC,IAAI,GAAG,KAAK,CAAC,MAAM,EAAE,GAAG,KAAK,CAAC,CAAC;IACrD;AAEA;;;;AAIG;IACI,wBAAwB,GAAA;AAC7B,QAAA,IAAI;;YAEF,MAAM,QAAQ,GAAGA,gBAAK,CAAC,gBAAgB,CACrC,gBAAgB,CAAC,qBAAqB,CACvC;YAED,IAAI,CAACA,gBAAK,CAAC,gBAAgB,CAAC,QAAQ,CAAC,EAAE;AACrC,gBAAA,MAAM,IAAI,KAAK,CAAC,sCAAsC,CAAC;YACzD;;YAGA,MAAM,IAAI,GAAGA,gBAAK,CAAC,kBAAkB,CAAC,QAAQ,CAAC;;AAG/C,YAAA,MAAM,UAAU,GAAG,IAAI,CAAC,QAAQ,CAC9B,CAAC,EACD,gBAAgB,CAAC,0BAA0B,CAC5C;;YAGD,IAAI,UAAU,CAAC,MAAM,KAAK,gBAAgB,CAAC,0BAA0B,EAAE;AACrE,gBAAA,MAAM,IAAI,KAAK,CACb,CAAA,qCAAA,EAAwC,gBAAgB,CAAC,0BAA0B,CAAA,MAAA,EAAS,UAAU,CAAC,MAAM,CAAA,CAAE,CAChH;YACH;;AAGA,YAAA,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAC;AACtD,YAAA,MAAM,cAAc,GAAG,OAAO,CAAC,SAAS;;YAGxC,IACE,cAAc,CAAC,MAAM,KAAK,gBAAgB,CAAC,yBAAyB,EACpE;AACA,gBAAA,MAAM,IAAI,KAAK,CACb,CAAA,oCAAA,EAAuC,gBAAgB,CAAC,yBAAyB,CAAA,MAAA,EAAS,cAAc,CAAC,MAAM,CAAA,CAAE,CAClH;YACH;;YAGA,MAAM,aAAa,GAAG,IAAI,CAAC,oBAAoB,CAAC,UAAU,CAAC;;AAG3D,YAAA,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;AACZ,YAAA,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC;AAClB,YAAA,OAAO,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC;YAEzB,OAAO;AACL,gBAAA,UAAU,EAAE,aAAa;AACzB,gBAAA,SAAS,EAAE,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC;aACvC;QACH;QAAE,OAAO,KAAK,EAAE;AACd,YAAA,MAAM,IAAI,KAAK,CACb,0CACE,KAAK,YAAY,KAAK,GAAG,KAAK,CAAC,OAAO,GAAG,eAC3C,CAAA,CAAE,CACH;QACH;IACF;AAEO,IAAA,oBAAoB,CAAC,MAAc,EAAA;AACxC,QAAA,MAAM,IAAI,GAAGC,iBAAU,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,MAAM,EAAE;AACjE,QAAA,OAAO,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC;IAC1B;AAEA;;AAEG;AACK,IAAA,eAAe,CAAC,MAavB,EAAA;QACC,MAAM,WAAW,GAAG,IAAI,CAAC,oBAAoB,CAAC,MAAM,CAAC,MAAM,CAAC;QAC5D,MAAM,SAAS,GAAG,IAAI,CAAC,oBAAoB,CAAC,MAAM,CAAC,SAAS,CAAC;AAE7D,QAAA,MAAM,KAAK,GAAU;YACnB,IAAI,EAAE,MAAM,CAAC,IAAI;AACjB,YAAA,MAAM,EAAE,WAAW;AACnB,YAAA,SAAS,EAAE,SAAS;YACpB,MAAM,EAAE,MAAM,CAAC,MAAM;YACrB,SAAS,EAAE,MAAM,CAAC,SAAS,IAAI,IAAI,CAAC,GAAG,EAAE;AACzC,YAAA,SAAS,EAAE,MAAM,CAAC,QAAQ,IAAI,EAAE;YAChC,KAAK,EAAE,MAAM,CAAC,KAAK;YACnB,UAAU,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,SAAS,CAAC,IAAI,EAAE;YAClD,QAAQ,EAAE,MAAM,CAAC,OAAO;YACxB,MAAM,EAAE,MAAM,CAAC,KAAK;SACrB;AAED,QAAA,MAAM,SAAS,GAAG,IAAI,CAAC,eAAe,CAAC,KAAK,EAAE,MAAM,CAAC,UAAU,CAAC;QAEhE,OAAO;AACL,YAAA,MAAM,EAAE,KAAK;YACb,SAAS;SACV;IACH;AAEA;;;;;;AAMG;IACK,eAAe,CAAC,EAAS,EAAE,aAAqB,EAAA;AACtD,QAAA,IAAI;;YAEF,IAAI,CAAC,EAAE,IAAI,OAAO,EAAE,KAAK,QAAQ,EAAE;AACjC,gBAAA,MAAM,IAAI,KAAK,CAAC,4BAA4B,CAAC;YAC/C;YAEA,IAAI,CAAC,aAAa,IAAI,OAAO,aAAa,KAAK,QAAQ,EAAE;AACvD,gBAAA,MAAM,IAAI,KAAK,CAAC,4BAA4B,CAAC;YAC/C;;YAGA,MAAM,cAAc,GAAG,IAAI,CAAC,oBAAoB,CAAC,EAAE,CAAC;YAEpD,IAAI,CAAC,cAAc,IAAI,cAAc,CAAC,MAAM,KAAK,CAAC,EAAE;AAClD,gBAAA,MAAM,IAAI,KAAK,CAAC,iCAAiC,CAAC;YACpD;;YAGA,MAAM,aAAa,GAAG,MAAM,CAAC,IAAI,CAAC,aAAa,EAAE,KAAK,CAAC;YAEvD,IAAI,aAAa,CAAC,MAAM,GAAG,gBAAgB,CAAC,0BAA0B,EAAE;AACtE,gBAAA,MAAM,IAAI,KAAK,CACb,CAAA,8CAAA,EAAiD,gBAAgB,CAAC,0BAA0B,CAAA,YAAA,EAAe,aAAa,CAAC,MAAM,CAAA,CAAE,CAClI;YACH;AAEA,YAAA,MAAM,IAAI,GAAG,aAAa,CAAC,QAAQ,CACjC,CAAC,gBAAgB,CAAC,0BAA0B,CAC7C,CAAC;AACF,YAAA,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC;;YAGhD,IAAI,CAAC,OAAO,CAAC,SAAS,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE;AAC5C,gBAAA,MAAM,IAAI,KAAK,CAAC,qCAAqC,CAAC;YACxD;;AAGA,YAAA,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,EAAE,OAAO,CAAC,SAAS,CAAC;YAEvE,IAAI,CAAC,SAAS,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC,EAAE;AACxC,gBAAA,MAAM,IAAI,KAAK,CAAC,8BAA8B,CAAC;YACjD;;AAGA,YAAA,aAAa,CAAC,IAAI,CAAC,CAAC,CAAC;AACrB,YAAA,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;AACZ,YAAA,OAAO,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC;;YAGzB,IAAI,EAAE,CAAC,IAAI,KAAK,OAAO,CAAC,MAAM,EAAE;gBAC9B,OAAO,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;YAC5C;;AAGA,YAAA,MAAM,OAAO,GAAG;AACd,gBAAA,MAAM,EAAE,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC;gBACzD,GAAG,EAAE,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC;aAC/C;AAED,YAAA,OAAO,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC;QAC1D;QAAE,OAAO,KAAK,EAAE;AACd,YAAA,MAAM,IAAI,KAAK,CACb,+BACE,KAAK,YAAY,KAAK,GAAG,KAAK,CAAC,OAAO,GAAG,eAC3C,CAAA,CAAE,CACH;QACH;IACF;AAEA;;AAEG;AACK,IAAA,oBAAoB,CAAC,EAAS,EAAA;AACpC,QAAA,MAAM,IAAI,GAAG,CAAA,EAAG,EAAE,CAAC,IAAI,CAAA,CAAA,EAAI,EAAE,CAAC,MAAM,CAAA,CAAA,EAAI,EAAE,CAAC,SAAS,CAAA,CAAA,EAAI,EAAE,CAAC,MAAM,CAAA,CAAA,EAAI,EAAE,CAAC,SAAS,CAAA,CAAA,EAAI,EAAE,CAAC,KAAK,CAAA,CAAA,EAAI,EAAE,CAAC,UAAU,EAAE;QAChH,OAAO,MAAM,CAAC,IAAI,CAAC,IAAI,EAAE,MAAM,CAAC;IAClC;AAEA;;AAEG;IACK,MAAM,KAAK,CAAC,QAAkB,EAAA;QACpC,OAAO,IAAI,CAAC,WAAW,CAAgB,UAAU,EAAE,QAAQ,CAAC;IAC9D;AAEA;;AAEG;IACH,MAAM,eAAe,CAAC,MAYrB,EAAA;AACC,QAAA,MAAM,QAAQ,GAAG,IAAI,CAAC,eAAe,CAAC;AACpC,YAAA,GAAG,MAAM;YACT,IAAI,EAAE,OAAO,CAAC,QAAQ;AACvB,SAAA,CAAC;AACF,QAAA,OAAO,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC;IAC7B;AAEA;;AAEG;AACH,IAAA,MAAM,eAAe,CACnB,OAAe,EACf,MAA4B,QAAQ,EAAA;AAEpC,QAAA,OAAO,IAAI,CAAC,WAAW,CACrB,yBAAyB,EACzB,EAAE,OAAO,EAAE,GAAG,EAAE,CACjB;IACH;IAEA,MAAM,kBAAkB,CACtB,MAAc,EAAA;QAEd,MAAM,OAAO,GAAG,IAAI,CAAC,oBAAoB,CAAC,MAAM,CAAC;AACjD,QAAA,OAAO,IAAI,CAAC,WAAW,CAA8B,oBAAoB,EAAE;YACzE,OAAO;AACR,SAAA,CAAC;IACJ;IAEA,qBAAqB,CACnB,cAA+B,EAC/B,QAAgB,EAAA;AAEhB,QAAA,IAAI,YAAY,GAAG,MAAM,CAAC,cAAc,CAAC;AACzC,QAAA,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,QAAQ,EAAE,CAAC,EAAE,EAAE;AACjC,YAAA,YAAY,GAAG,YAAY,GAAG,MAAM,CAAC,EAAE,CAAC;QAC1C;AACA,QAAA,OAAO,YAAY,CAAC,QAAQ,EAAE;IAChC;AACD;AAEK,SAAU,eAAe,CAAC,MAAuB,EAAA;AACrD,IAAA,OAAO,IAAI,SAAS,CAAC,MAAM,CAAC;AAC9B;;ACpcA;AAoCYC;AAAZ,CAAA,UAAY,aAAa,EAAA;AACvB,IAAA,aAAA,CAAA,YAAA,CAAA,GAAA,aAA0B;AAC1B,IAAA,aAAA,CAAA,eAAA,CAAA,GAAA,gBAAgC;AAChC,IAAA,aAAA,CAAA,YAAA,CAAA,GAAA,aAA0B;AAC5B,CAAC,EAJWA,qBAAa,KAAbA,qBAAa,GAAA,EAAA,CAAA,CAAA;;MCjCZ,QAAQ,CAAA;AAInB,IAAA,WAAA,CAAY,MAAsB,EAAA;AAChC,QAAA,IAAI,CAAC,QAAQ,GAAG,MAAM,CAAC,QAAQ;AAE/B,QAAA,IAAI,CAAC,aAAa,GAAG,KAAK,CAAC,MAAM,CAAC;YAChC,OAAO,EAAE,IAAI,CAAC,QAAQ;AACtB,YAAA,OAAO,EAAE,MAAM,CAAC,OAAO,IAAI,KAAK;AAChC,YAAA,OAAO,EAAE;AACP,gBAAA,cAAc,EAAE,kBAAkB;AAClC,gBAAA,MAAM,EAAE,kBAAkB;AAC1B,gBAAA,IAAI,MAAM,CAAC,OAAO,IAAI,EAAE,CAAC;AAC1B,aAAA;AACF,SAAA,CAAC;IACJ;IAEQ,MAAM,WAAW,CACvB,MAAsB,EACtB,IAAY,EACZ,MAAwC,EACxC,IAAU,EAAA;QAEV,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,OAAO,CAAI;YAC/C,MAAM;AACN,YAAA,GAAG,EAAE,IAAI;YACT,MAAM;AACN,YAAA,IAAI,EAAE,IAAI;AACX,SAAA,CAAC;QACF,OAAO,IAAI,CAAC,IAAI;IAClB;IAEO,MAAM,WAAW,CAAC,EACvB,MAAM,EACN,kBAAkB,EAClB,GAAG,EACH,OAAO,GAMR,EAAA;QACC,MAAM,IAAI,GAAG,CAAA,KAAA,CAAO;AACpB,QAAA,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,WAAW,CAChC,MAAM,EACN,IAAI,EACJ,SAAS,EACT;AACE,YAAA,OAAO,EAAE,MAAM;AACf,YAAA,YAAY,EAAE,kBAAkB;YAChC,GAAG;YACH,OAAO;AACR,SAAA,CACF;QAED,OAAO,GAAG,CAAC,IAAI;IACjB;AACD;;;;;;;"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "mmn-client-js",
3
- "version": "1.0.2",
3
+ "version": "1.0.3",
4
4
  "description": "A comprehensive TypeScript client for interacting with MMN blockchain via JSON-RPC",
5
5
  "main": "dist/index.js",
6
6
  "module": "dist/index.esm.js",