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 +17 -1
- package/dist/index.esm.js +157 -55
- package/dist/index.esm.js.map +1 -1
- package/dist/index.js +157 -55
- package/dist/index.js.map +1 -1
- package/package.json +1 -1
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
|
-
*
|
|
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
|
-
//
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
//
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
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
|
-
|
|
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
|
-
|
|
183
|
-
const
|
|
184
|
-
|
|
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
|
-
|
|
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
|
-
*
|
|
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
|
-
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
|
|
232
|
-
|
|
233
|
-
|
|
234
|
-
|
|
235
|
-
|
|
236
|
-
|
|
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
|
package/dist/index.esm.js.map
CHANGED
|
@@ -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
|
-
//
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
//
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
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
|
-
|
|
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
|
-
|
|
204
|
-
const
|
|
205
|
-
|
|
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
|
-
|
|
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
|
-
*
|
|
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
|
-
|
|
250
|
-
|
|
251
|
-
|
|
252
|
-
|
|
253
|
-
|
|
254
|
-
|
|
255
|
-
|
|
256
|
-
|
|
257
|
-
|
|
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":";;;;;;;;;;;;;;;;;;;;;;;;;;;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,MAAM,OAAO,GAAG;AACd,IAAA,QAAQ,EAAE,CAAC;AACX,IAAA,MAAM,EAAE,CAAC;CACV;MAEY,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;AAEQ,IAAA,oBAAoB,CAAC,GAAW,EAAA;;AAEtC,QAAA,MAAM,MAAM,GAAG,CAAC,GAAG,KAAmB,KAAgB;YACpD,MAAM,KAAK,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC;AACrD,YAAA,MAAM,GAAG,GAAG,IAAI,UAAU,CAAC,KAAK,CAAC;YACjC,IAAI,MAAM,GAAG,CAAC;AACd,YAAA,KAAK,MAAM,CAAC,IAAI,KAAK,EAAE;AACrB,gBAAA,GAAG,CAAC,GAAG,CAAC,CAAC,EAAE,MAAM,CAAC;AAClB,gBAAA,MAAM,IAAI,CAAC,CAAC,MAAM;YACpB;AACA,YAAA,OAAO,GAAG;AACZ,QAAA,CAAC;AAED,QAAA,MAAM,MAAM,GAAG,CAAC,CAAS,KAAgB;YACvC,IAAI,CAAC,GAAG,IAAI;AAAE,gBAAA,OAAO,UAAU,CAAC,EAAE,CAAC,CAAC,CAAC;;YAErC,MAAM,KAAK,GAAa,EAAE;YAC1B,IAAI,CAAC,GAAG,CAAC;AACT,YAAA,OAAO,CAAC,GAAG,CAAC,EAAE;AACZ,gBAAA,KAAK,CAAC,OAAO,CAAC,CAAC,GAAG,IAAI,CAAC;gBACvB,CAAC,KAAK,CAAC;YACT;AACA,YAAA,OAAO,UAAU,CAAC,EAAE,CAAC,IAAI,GAAG,KAAK,CAAC,MAAM,EAAE,GAAG,KAAK,CAAC;AACrD,QAAA,CAAC;AAED,QAAA,MAAM,cAAc,GAAG,UAAU,CAAC,EAAE,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;;AAGvD,QAAA,MAAM,UAAU,GAAG,UAAU,CAAC,EAAE,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC;QAC9D,MAAM,KAAK,GAAG,MAAM,CAClB,UAAU,CAAC,EAAE,CAAC,IAAI,CAAC,EACnB,MAAM,CAAC,UAAU,CAAC,MAAM,CAAC,EACzB,UAAU,CACX;;QAGD,MAAM,UAAU,GAAG,MAAM,CAAC,UAAU,CAAC,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC,EAAE,IAAI,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC;QAC1E,MAAM,eAAe,GAAG,MAAM,CAC5B,UAAU,CAAC,EAAE,CAAC,IAAI,CAAC,EACnB,MAAM,CAAC,UAAU,CAAC,MAAM,CAAC,EACzB,UAAU,CACX;;QAGD,MAAM,IAAI,GAAG,MAAM,CAAC,cAAc,EAAE,KAAK,EAAE,eAAe,CAAC;QAC3D,MAAM,KAAK,GAAG,MAAM,CAAC,UAAU,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,IAAI,CAAC;QAEpE,OAAO,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC;IAC3C;IAEO,wBAAwB,GAAA;AAC7B,QAAA,IAAI;YACF,MAAM,QAAQ,GAAGA,gBAAK,CAAC,gBAAgB,CAAC,GAAG,CAAC;YAE5C,IAAI,CAACA,gBAAK,CAAC,gBAAgB,CAAC,QAAQ,CAAC,EAAE;AACrC,gBAAA,MAAM,IAAI,KAAK,CAAC,sCAAsC,CAAC;YACzD;YAEA,MAAM,IAAI,GAAGA,gBAAK,CAAC,kBAAkB,CAAC,QAAQ,CAAC;YAC/C,MAAM,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC;AAEpC,YAAA,MAAM,EAAE,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAC;AACjD,YAAA,MAAM,cAAc,GAAG,EAAE,CAAC,SAAS;YAEnC,MAAM,aAAa,GAAG,IAAI,CAAC,oBAAoB,CAAC,UAAU,CAAC;YAE3D,OAAO;AACL,gBAAA,UAAU,EAAE,aAAa;AACzB,gBAAA,SAAS,EAAE,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC;aACvC;QACH;QAAE,OAAO,KAAK,EAAE;AACd,YAAA,OAAO,CAAC,KAAK,CAAC,0BAA0B,EAAE,KAAK,CAAC;AAChD,YAAA,MAAM,IAAI,KAAK,CAAC,2BAA2B,CAAC;QAC9C;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;;AAEG;IACK,eAAe,CAAC,EAAS,EAAE,aAAqB,EAAA;QACtD,MAAM,cAAc,GAAG,IAAI,CAAC,oBAAoB,CAAC,EAAE,CAAC;;QAGpD,MAAM,aAAa,GAAG,MAAM,CAAC,IAAI,CAAC,aAAa,EAAE,KAAK,CAAC;QACvD,MAAM,IAAI,GAAG,aAAa,CAAC,KAAK,CAAC,GAAG,CAAC;AACrC,QAAA,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC;;AAGhD,QAAA,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,EAAE,OAAO,CAAC,SAAS,CAAC;QAEvE,IAAI,EAAE,CAAC,IAAI,KAAK,OAAO,CAAC,MAAM,EAAE;YAC9B,OAAO,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QAC5C;AAEA,QAAA,MAAM,OAAO,GAAG;AACd,YAAA,MAAM,EAAE,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC;YACzD,GAAG,EAAE,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC;SAC/C;AAED,QAAA,OAAO,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC;IAC1D;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;;ACzTA;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;;;;;;;"}
|
|
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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"}
|