@dynamic-labs-wallet/browser 0.0.101 → 0.0.103
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/index.cjs.js +129 -46
- package/index.esm.js +126 -47
- package/package.json +2 -2
- package/src/backup/encryption.d.ts +42 -2
- package/src/backup/encryption.d.ts.map +1 -1
- package/src/client.d.ts.map +1 -1
- package/src/errorConstants.d.ts +1 -0
- package/src/errorConstants.d.ts.map +1 -1
- package/src/index.d.ts +2 -0
- package/src/index.d.ts.map +1 -1
- package/src/services/logger.d.ts +1 -1
- package/src/services/logger.d.ts.map +1 -1
- package/src/utils.d.ts +2 -8
- package/src/utils.d.ts.map +1 -1
package/index.cjs.js
CHANGED
|
@@ -223,29 +223,44 @@ const createBackupData = ({ encryptedKeyShares, accountAddress, thresholdSignatu
|
|
|
223
223
|
return {
|
|
224
224
|
keyShares: encryptedKeyShares,
|
|
225
225
|
metadata: {
|
|
226
|
-
version: '1.0',
|
|
227
226
|
createdAt: new Date().toISOString(),
|
|
228
227
|
accountAddress,
|
|
229
228
|
thresholdSignatureScheme,
|
|
230
229
|
hasPassword,
|
|
231
|
-
encryption:
|
|
232
|
-
|
|
233
|
-
keyDerivation: PBKDF2_ALGORITHM,
|
|
234
|
-
iterations: PBKDF2_ITERATIONS,
|
|
235
|
-
hashAlgorithm: PBKDF2_HASH_ALGORITHM,
|
|
236
|
-
algorithmLength: AES_GCM_LENGTH
|
|
237
|
-
},
|
|
230
|
+
encryption: getEncryptionMetadataForVersion(ENCRYPTION_VERSION_CURRENT),
|
|
231
|
+
encryptionVersion: ENCRYPTION_VERSION_CURRENT,
|
|
238
232
|
shareCount: encryptedKeyShares.length
|
|
239
233
|
}
|
|
240
234
|
};
|
|
241
235
|
};
|
|
242
236
|
|
|
237
|
+
const ENCRYPTION_VERSION_LEGACY = 'v1';
|
|
238
|
+
const ENCRYPTION_VERSION_CURRENT = 'v2';
|
|
243
239
|
const PBKDF2_ALGORITHM = 'PBKDF2';
|
|
244
|
-
const PBKDF2_ITERATIONS = 100000;
|
|
245
240
|
const PBKDF2_HASH_ALGORITHM = 'SHA-256';
|
|
246
241
|
const AES_GCM_ALGORITHM = 'AES-GCM';
|
|
247
242
|
const AES_GCM_LENGTH = 256;
|
|
248
|
-
const
|
|
243
|
+
const ENCRYPTION_VERSIONS = {
|
|
244
|
+
[ENCRYPTION_VERSION_LEGACY]: {
|
|
245
|
+
version: ENCRYPTION_VERSION_LEGACY,
|
|
246
|
+
algorithm: AES_GCM_ALGORITHM,
|
|
247
|
+
keyDerivation: PBKDF2_ALGORITHM,
|
|
248
|
+
iterations: 100000,
|
|
249
|
+
hashAlgorithm: PBKDF2_HASH_ALGORITHM,
|
|
250
|
+
algorithmLength: AES_GCM_LENGTH
|
|
251
|
+
},
|
|
252
|
+
[ENCRYPTION_VERSION_CURRENT]: {
|
|
253
|
+
version: ENCRYPTION_VERSION_CURRENT,
|
|
254
|
+
algorithm: AES_GCM_ALGORITHM,
|
|
255
|
+
keyDerivation: PBKDF2_ALGORITHM,
|
|
256
|
+
iterations: 1000000,
|
|
257
|
+
hashAlgorithm: PBKDF2_HASH_ALGORITHM,
|
|
258
|
+
algorithmLength: AES_GCM_LENGTH
|
|
259
|
+
}
|
|
260
|
+
};
|
|
261
|
+
ENCRYPTION_VERSIONS[ENCRYPTION_VERSION_CURRENT].iterations;
|
|
262
|
+
ENCRYPTION_VERSIONS[ENCRYPTION_VERSION_LEGACY].iterations;
|
|
263
|
+
const getKey = async ({ password, salt, encryptionConfig })=>{
|
|
249
264
|
const passwordBytes = stringToBytes(password);
|
|
250
265
|
const initialKey = await crypto.subtle.importKey('raw', passwordBytes, {
|
|
251
266
|
name: 'PBKDF2'
|
|
@@ -253,26 +268,34 @@ const getKey = async ({ password, salt })=>{
|
|
|
253
268
|
'deriveKey'
|
|
254
269
|
]);
|
|
255
270
|
return crypto.subtle.deriveKey({
|
|
256
|
-
name:
|
|
257
|
-
salt,
|
|
258
|
-
iterations:
|
|
259
|
-
hash:
|
|
271
|
+
name: encryptionConfig.keyDerivation,
|
|
272
|
+
salt: salt,
|
|
273
|
+
iterations: encryptionConfig.iterations,
|
|
274
|
+
hash: encryptionConfig.hashAlgorithm
|
|
260
275
|
}, initialKey, {
|
|
261
|
-
name:
|
|
262
|
-
length:
|
|
276
|
+
name: encryptionConfig.algorithm,
|
|
277
|
+
length: encryptionConfig.algorithmLength
|
|
263
278
|
}, false, [
|
|
264
279
|
'encrypt',
|
|
265
280
|
'decrypt'
|
|
266
281
|
]);
|
|
267
282
|
};
|
|
268
|
-
|
|
283
|
+
/**
|
|
284
|
+
* Encrypts data using the specified encryption version.
|
|
285
|
+
* Always uses the latest encryption configuration for new encryptions by default.
|
|
286
|
+
*/ const encryptData = async ({ data, password, version = ENCRYPTION_VERSION_CURRENT })=>{
|
|
287
|
+
const encryptionConfig = ENCRYPTION_VERSIONS[version];
|
|
288
|
+
if (!encryptionConfig) {
|
|
289
|
+
throw new Error(`Unsupported encryption version: ${version}`);
|
|
290
|
+
}
|
|
269
291
|
try {
|
|
270
292
|
// Generate a random salt and IV
|
|
271
293
|
const salt = crypto.getRandomValues(new Uint8Array(16));
|
|
272
294
|
const iv = crypto.getRandomValues(new Uint8Array(12)); // AES-GCM requires 12 bytes
|
|
273
295
|
const key = await getKey({
|
|
274
296
|
password,
|
|
275
|
-
salt
|
|
297
|
+
salt,
|
|
298
|
+
encryptionConfig
|
|
276
299
|
});
|
|
277
300
|
// Convert the input string to bytes
|
|
278
301
|
const dataBytes = new TextEncoder().encode(data);
|
|
@@ -285,25 +308,39 @@ const encryptData = async ({ data, password })=>{
|
|
|
285
308
|
return {
|
|
286
309
|
salt: bytesToBase64(salt),
|
|
287
310
|
iv: bytesToBase64(iv),
|
|
288
|
-
cipher: bytesToBase64(new Uint8Array(encryptedData))
|
|
311
|
+
cipher: bytesToBase64(new Uint8Array(encryptedData)),
|
|
312
|
+
version
|
|
289
313
|
};
|
|
290
314
|
} catch (error) {
|
|
291
315
|
throw new Error('Error encrypting data');
|
|
292
316
|
}
|
|
293
317
|
};
|
|
294
|
-
|
|
318
|
+
/**
|
|
319
|
+
* Decrypts data with version-based configuration.
|
|
320
|
+
* Uses the version field from the data to determine encryption parameters.
|
|
321
|
+
* Falls back to legacy version for backward compatibility if no version is specified.
|
|
322
|
+
*/ const decryptData = async ({ data, password })=>{
|
|
323
|
+
const { salt, iv, cipher, version } = data;
|
|
324
|
+
// Ensure proper base64 padding for all values
|
|
325
|
+
const paddedSalt = ensureBase64Padding(salt);
|
|
326
|
+
const paddedIv = ensureBase64Padding(iv);
|
|
327
|
+
const paddedCipher = ensureBase64Padding(cipher);
|
|
328
|
+
const saltBytes = base64ToBytes(paddedSalt);
|
|
329
|
+
const ivBytes = base64ToBytes(paddedIv);
|
|
330
|
+
const cipherBytes = base64ToBytes(paddedCipher);
|
|
331
|
+
let encryptionConfig;
|
|
332
|
+
// Use version-based configuration if available, otherwise fallback to legacy
|
|
333
|
+
if (version && ENCRYPTION_VERSIONS[version]) {
|
|
334
|
+
encryptionConfig = ENCRYPTION_VERSIONS[version];
|
|
335
|
+
} else {
|
|
336
|
+
// Fallback to legacy version for backward compatibility
|
|
337
|
+
encryptionConfig = ENCRYPTION_VERSIONS[ENCRYPTION_VERSION_LEGACY];
|
|
338
|
+
}
|
|
295
339
|
try {
|
|
296
|
-
const { salt, iv, cipher } = data;
|
|
297
|
-
// Ensure proper base64 padding for all values
|
|
298
|
-
const paddedSalt = ensureBase64Padding(salt);
|
|
299
|
-
const paddedIv = ensureBase64Padding(iv);
|
|
300
|
-
const paddedCipher = ensureBase64Padding(cipher);
|
|
301
|
-
const saltBytes = base64ToBytes(paddedSalt);
|
|
302
|
-
const ivBytes = base64ToBytes(paddedIv);
|
|
303
|
-
const cipherBytes = base64ToBytes(paddedCipher);
|
|
304
340
|
const key = await getKey({
|
|
305
341
|
password,
|
|
306
|
-
salt: saltBytes
|
|
342
|
+
salt: saltBytes,
|
|
343
|
+
encryptionConfig
|
|
307
344
|
});
|
|
308
345
|
const decryptedData = await crypto.subtle.decrypt({
|
|
309
346
|
name: AES_GCM_ALGORITHM,
|
|
@@ -311,9 +348,25 @@ const decryptData = async ({ data, password })=>{
|
|
|
311
348
|
}, key, cipherBytes);
|
|
312
349
|
return new TextDecoder().decode(decryptedData);
|
|
313
350
|
} catch (error) {
|
|
314
|
-
throw new Error('Decryption failed');
|
|
351
|
+
throw new Error('Decryption failed: ' + error);
|
|
315
352
|
}
|
|
316
353
|
};
|
|
354
|
+
/**
|
|
355
|
+
* Gets encryption metadata for a specific version.
|
|
356
|
+
* Used when we need to include metadata in legacy systems or APIs that require it.
|
|
357
|
+
*/ const getEncryptionMetadataForVersion = (version)=>{
|
|
358
|
+
const encryptionConfig = ENCRYPTION_VERSIONS[version];
|
|
359
|
+
if (!encryptionConfig) {
|
|
360
|
+
throw new Error(`Unsupported encryption version: ${version}`);
|
|
361
|
+
}
|
|
362
|
+
return {
|
|
363
|
+
algorithm: encryptionConfig.algorithm,
|
|
364
|
+
keyDerivation: encryptionConfig.keyDerivation,
|
|
365
|
+
iterations: encryptionConfig.iterations,
|
|
366
|
+
hashAlgorithm: encryptionConfig.hashAlgorithm,
|
|
367
|
+
algorithmLength: encryptionConfig.algorithmLength
|
|
368
|
+
};
|
|
369
|
+
};
|
|
317
370
|
|
|
318
371
|
const GOOGLE_DRIVE_UPLOAD_API = 'https://www.googleapis.com';
|
|
319
372
|
const uploadFileToGoogleDriveAppStorage = async ({ accessToken, fileName, jsonData })=>{
|
|
@@ -1322,6 +1375,7 @@ class DynamicWalletClient {
|
|
|
1322
1375
|
walletId: this.walletMap[accountAddress].walletId,
|
|
1323
1376
|
encryptedKeyShares: dynamicClientKeyShares,
|
|
1324
1377
|
passwordEncrypted: Boolean(password) && password !== this.environmentId,
|
|
1378
|
+
encryptionVersion: ENCRYPTION_VERSION_CURRENT,
|
|
1325
1379
|
signedSessionId
|
|
1326
1380
|
});
|
|
1327
1381
|
await this.apiClient.markKeySharesAsBackedUp({
|
|
@@ -1853,24 +1907,47 @@ class DynamicWalletClient {
|
|
|
1853
1907
|
/**
|
|
1854
1908
|
* check if the operation requires restoring backup shares
|
|
1855
1909
|
*/ async requiresRestoreBackupSharesForOperation({ accountAddress, walletOperation = core.WalletOperation.REACH_THRESHOLD }) {
|
|
1856
|
-
|
|
1857
|
-
|
|
1858
|
-
|
|
1859
|
-
|
|
1860
|
-
|
|
1861
|
-
|
|
1862
|
-
|
|
1910
|
+
try {
|
|
1911
|
+
const clientKeySharesBackupInfo = await this.getWalletClientKeyShareBackupInfo({
|
|
1912
|
+
accountAddress
|
|
1913
|
+
});
|
|
1914
|
+
const clientKeyShares = await this.getClientKeySharesFromLocalStorage({
|
|
1915
|
+
accountAddress
|
|
1916
|
+
});
|
|
1917
|
+
if (!clientKeyShares || clientKeyShares.length === 0) {
|
|
1918
|
+
logError({
|
|
1919
|
+
message: '[DynamicWaasWalletClient] No client key shares found in requiresRestoreBackupSharesForOperation',
|
|
1920
|
+
error: new Error('No client key shares available'),
|
|
1921
|
+
context: {
|
|
1922
|
+
accountAddress,
|
|
1923
|
+
walletOperation
|
|
1924
|
+
}
|
|
1925
|
+
});
|
|
1926
|
+
throw new Error('No client key shares available');
|
|
1927
|
+
}
|
|
1928
|
+
if (walletOperation === core.WalletOperation.REACH_ALL_PARTIES || walletOperation === core.WalletOperation.REFRESH || walletOperation === core.WalletOperation.RESHARE) {
|
|
1929
|
+
return true;
|
|
1930
|
+
}
|
|
1931
|
+
const { requiredShareCount } = this.recoverStrategy({
|
|
1932
|
+
clientKeyShareBackupInfo: clientKeySharesBackupInfo,
|
|
1933
|
+
thresholdSignatureScheme: this.walletMap[accountAddress].thresholdSignatureScheme,
|
|
1934
|
+
walletOperation
|
|
1935
|
+
});
|
|
1936
|
+
if (clientKeyShares.length >= requiredShareCount) {
|
|
1937
|
+
return false;
|
|
1938
|
+
}
|
|
1863
1939
|
return true;
|
|
1940
|
+
} catch (error) {
|
|
1941
|
+
logError({
|
|
1942
|
+
message: '[DynamicWaasWalletClient] Error in requiresRestoreBackupSharesForOperation',
|
|
1943
|
+
error: error,
|
|
1944
|
+
context: {
|
|
1945
|
+
accountAddress,
|
|
1946
|
+
walletOperation
|
|
1947
|
+
}
|
|
1948
|
+
});
|
|
1949
|
+
throw error;
|
|
1864
1950
|
}
|
|
1865
|
-
const { requiredShareCount } = this.recoverStrategy({
|
|
1866
|
-
clientKeyShareBackupInfo: clientKeySharesBackupInfo,
|
|
1867
|
-
thresholdSignatureScheme: this.walletMap[accountAddress].thresholdSignatureScheme,
|
|
1868
|
-
walletOperation
|
|
1869
|
-
});
|
|
1870
|
-
if (clientKeyShares.length >= requiredShareCount) {
|
|
1871
|
-
return false;
|
|
1872
|
-
}
|
|
1873
|
-
return true;
|
|
1874
1951
|
}
|
|
1875
1952
|
async getWalletClientKeyShareBackupInfo({ accountAddress }) {
|
|
1876
1953
|
try {
|
|
@@ -2046,6 +2123,7 @@ class DynamicWalletClient {
|
|
|
2046
2123
|
const ERROR_KEYGEN_FAILED = '[DynamicWaasWalletClient]: Error with keygen';
|
|
2047
2124
|
const ERROR_CREATE_WALLET_ACCOUNT = '[DynamicWaasWalletClient]: Error creating wallet account';
|
|
2048
2125
|
const ERROR_SIGN_MESSAGE = '[DynamicWaasWalletClient]: Error signing message';
|
|
2126
|
+
const ERROR_SIGN_TYPED_DATA = '[DynamicWaasWalletClient]: Error signing typed data';
|
|
2049
2127
|
const ERROR_ACCOUNT_ADDRESS_REQUIRED = '[DynamicWaasWalletClient]: Account address is required';
|
|
2050
2128
|
const ERROR_VERIFY_MESSAGE_SIGNATURE = '[DynamicWaasWalletClient]: Error verifying message signature';
|
|
2051
2129
|
const ERROR_VERIFY_TRANSACTION_SIGNATURE = '[DynamicWaasWalletClient]: Error verifying transaction signature';
|
|
@@ -2100,6 +2178,10 @@ Object.defineProperty(exports, "MessageHash", {
|
|
|
2100
2178
|
enumerable: true,
|
|
2101
2179
|
get: function () { return web.MessageHash; }
|
|
2102
2180
|
});
|
|
2181
|
+
Object.defineProperty(exports, "Logger", {
|
|
2182
|
+
enumerable: true,
|
|
2183
|
+
get: function () { return logger$1.Logger; }
|
|
2184
|
+
});
|
|
2103
2185
|
exports.DynamicWalletClient = DynamicWalletClient;
|
|
2104
2186
|
exports.ERROR_ACCOUNT_ADDRESS_REQUIRED = ERROR_ACCOUNT_ADDRESS_REQUIRED;
|
|
2105
2187
|
exports.ERROR_CREATE_WALLET_ACCOUNT = ERROR_CREATE_WALLET_ACCOUNT;
|
|
@@ -2107,6 +2189,7 @@ exports.ERROR_EXPORT_PRIVATE_KEY = ERROR_EXPORT_PRIVATE_KEY;
|
|
|
2107
2189
|
exports.ERROR_IMPORT_PRIVATE_KEY = ERROR_IMPORT_PRIVATE_KEY;
|
|
2108
2190
|
exports.ERROR_KEYGEN_FAILED = ERROR_KEYGEN_FAILED;
|
|
2109
2191
|
exports.ERROR_SIGN_MESSAGE = ERROR_SIGN_MESSAGE;
|
|
2192
|
+
exports.ERROR_SIGN_TYPED_DATA = ERROR_SIGN_TYPED_DATA;
|
|
2110
2193
|
exports.ERROR_VERIFY_MESSAGE_SIGNATURE = ERROR_VERIFY_MESSAGE_SIGNATURE;
|
|
2111
2194
|
exports.ERROR_VERIFY_TRANSACTION_SIGNATURE = ERROR_VERIFY_TRANSACTION_SIGNATURE;
|
|
2112
2195
|
exports.base64ToBytes = base64ToBytes;
|
package/index.esm.js
CHANGED
|
@@ -3,6 +3,7 @@ export * from '@dynamic-labs-wallet/core';
|
|
|
3
3
|
import { BIP340, ExportableEd25519, Ecdsa, MessageHash, EcdsaKeygenResult, ExportableEd25519KeygenResult, BIP340KeygenResult } from './internal/web';
|
|
4
4
|
export { BIP340, BIP340InitKeygenResult, BIP340KeygenResult, Ecdsa, EcdsaInitKeygenResult, EcdsaKeygenResult, EcdsaPublicKey, EcdsaSignature, Ed25519, Ed25519InitKeygenResult, Ed25519KeygenResult, MessageHash } from './internal/web';
|
|
5
5
|
import { LogLevel, Logger } from '@dynamic-labs/logger';
|
|
6
|
+
export { Logger } from '@dynamic-labs/logger';
|
|
6
7
|
import { ProviderEnum } from '@dynamic-labs/sdk-api-core';
|
|
7
8
|
import { AxiosError } from 'axios';
|
|
8
9
|
import createHttpError from 'http-errors';
|
|
@@ -223,29 +224,44 @@ const createBackupData = ({ encryptedKeyShares, accountAddress, thresholdSignatu
|
|
|
223
224
|
return {
|
|
224
225
|
keyShares: encryptedKeyShares,
|
|
225
226
|
metadata: {
|
|
226
|
-
version: '1.0',
|
|
227
227
|
createdAt: new Date().toISOString(),
|
|
228
228
|
accountAddress,
|
|
229
229
|
thresholdSignatureScheme,
|
|
230
230
|
hasPassword,
|
|
231
|
-
encryption:
|
|
232
|
-
|
|
233
|
-
keyDerivation: PBKDF2_ALGORITHM,
|
|
234
|
-
iterations: PBKDF2_ITERATIONS,
|
|
235
|
-
hashAlgorithm: PBKDF2_HASH_ALGORITHM,
|
|
236
|
-
algorithmLength: AES_GCM_LENGTH
|
|
237
|
-
},
|
|
231
|
+
encryption: getEncryptionMetadataForVersion(ENCRYPTION_VERSION_CURRENT),
|
|
232
|
+
encryptionVersion: ENCRYPTION_VERSION_CURRENT,
|
|
238
233
|
shareCount: encryptedKeyShares.length
|
|
239
234
|
}
|
|
240
235
|
};
|
|
241
236
|
};
|
|
242
237
|
|
|
238
|
+
const ENCRYPTION_VERSION_LEGACY = 'v1';
|
|
239
|
+
const ENCRYPTION_VERSION_CURRENT = 'v2';
|
|
243
240
|
const PBKDF2_ALGORITHM = 'PBKDF2';
|
|
244
|
-
const PBKDF2_ITERATIONS = 100000;
|
|
245
241
|
const PBKDF2_HASH_ALGORITHM = 'SHA-256';
|
|
246
242
|
const AES_GCM_ALGORITHM = 'AES-GCM';
|
|
247
243
|
const AES_GCM_LENGTH = 256;
|
|
248
|
-
const
|
|
244
|
+
const ENCRYPTION_VERSIONS = {
|
|
245
|
+
[ENCRYPTION_VERSION_LEGACY]: {
|
|
246
|
+
version: ENCRYPTION_VERSION_LEGACY,
|
|
247
|
+
algorithm: AES_GCM_ALGORITHM,
|
|
248
|
+
keyDerivation: PBKDF2_ALGORITHM,
|
|
249
|
+
iterations: 100000,
|
|
250
|
+
hashAlgorithm: PBKDF2_HASH_ALGORITHM,
|
|
251
|
+
algorithmLength: AES_GCM_LENGTH
|
|
252
|
+
},
|
|
253
|
+
[ENCRYPTION_VERSION_CURRENT]: {
|
|
254
|
+
version: ENCRYPTION_VERSION_CURRENT,
|
|
255
|
+
algorithm: AES_GCM_ALGORITHM,
|
|
256
|
+
keyDerivation: PBKDF2_ALGORITHM,
|
|
257
|
+
iterations: 1000000,
|
|
258
|
+
hashAlgorithm: PBKDF2_HASH_ALGORITHM,
|
|
259
|
+
algorithmLength: AES_GCM_LENGTH
|
|
260
|
+
}
|
|
261
|
+
};
|
|
262
|
+
ENCRYPTION_VERSIONS[ENCRYPTION_VERSION_CURRENT].iterations;
|
|
263
|
+
ENCRYPTION_VERSIONS[ENCRYPTION_VERSION_LEGACY].iterations;
|
|
264
|
+
const getKey = async ({ password, salt, encryptionConfig })=>{
|
|
249
265
|
const passwordBytes = stringToBytes(password);
|
|
250
266
|
const initialKey = await crypto.subtle.importKey('raw', passwordBytes, {
|
|
251
267
|
name: 'PBKDF2'
|
|
@@ -253,26 +269,34 @@ const getKey = async ({ password, salt })=>{
|
|
|
253
269
|
'deriveKey'
|
|
254
270
|
]);
|
|
255
271
|
return crypto.subtle.deriveKey({
|
|
256
|
-
name:
|
|
257
|
-
salt,
|
|
258
|
-
iterations:
|
|
259
|
-
hash:
|
|
272
|
+
name: encryptionConfig.keyDerivation,
|
|
273
|
+
salt: salt,
|
|
274
|
+
iterations: encryptionConfig.iterations,
|
|
275
|
+
hash: encryptionConfig.hashAlgorithm
|
|
260
276
|
}, initialKey, {
|
|
261
|
-
name:
|
|
262
|
-
length:
|
|
277
|
+
name: encryptionConfig.algorithm,
|
|
278
|
+
length: encryptionConfig.algorithmLength
|
|
263
279
|
}, false, [
|
|
264
280
|
'encrypt',
|
|
265
281
|
'decrypt'
|
|
266
282
|
]);
|
|
267
283
|
};
|
|
268
|
-
|
|
284
|
+
/**
|
|
285
|
+
* Encrypts data using the specified encryption version.
|
|
286
|
+
* Always uses the latest encryption configuration for new encryptions by default.
|
|
287
|
+
*/ const encryptData = async ({ data, password, version = ENCRYPTION_VERSION_CURRENT })=>{
|
|
288
|
+
const encryptionConfig = ENCRYPTION_VERSIONS[version];
|
|
289
|
+
if (!encryptionConfig) {
|
|
290
|
+
throw new Error(`Unsupported encryption version: ${version}`);
|
|
291
|
+
}
|
|
269
292
|
try {
|
|
270
293
|
// Generate a random salt and IV
|
|
271
294
|
const salt = crypto.getRandomValues(new Uint8Array(16));
|
|
272
295
|
const iv = crypto.getRandomValues(new Uint8Array(12)); // AES-GCM requires 12 bytes
|
|
273
296
|
const key = await getKey({
|
|
274
297
|
password,
|
|
275
|
-
salt
|
|
298
|
+
salt,
|
|
299
|
+
encryptionConfig
|
|
276
300
|
});
|
|
277
301
|
// Convert the input string to bytes
|
|
278
302
|
const dataBytes = new TextEncoder().encode(data);
|
|
@@ -285,25 +309,39 @@ const encryptData = async ({ data, password })=>{
|
|
|
285
309
|
return {
|
|
286
310
|
salt: bytesToBase64(salt),
|
|
287
311
|
iv: bytesToBase64(iv),
|
|
288
|
-
cipher: bytesToBase64(new Uint8Array(encryptedData))
|
|
312
|
+
cipher: bytesToBase64(new Uint8Array(encryptedData)),
|
|
313
|
+
version
|
|
289
314
|
};
|
|
290
315
|
} catch (error) {
|
|
291
316
|
throw new Error('Error encrypting data');
|
|
292
317
|
}
|
|
293
318
|
};
|
|
294
|
-
|
|
319
|
+
/**
|
|
320
|
+
* Decrypts data with version-based configuration.
|
|
321
|
+
* Uses the version field from the data to determine encryption parameters.
|
|
322
|
+
* Falls back to legacy version for backward compatibility if no version is specified.
|
|
323
|
+
*/ const decryptData = async ({ data, password })=>{
|
|
324
|
+
const { salt, iv, cipher, version } = data;
|
|
325
|
+
// Ensure proper base64 padding for all values
|
|
326
|
+
const paddedSalt = ensureBase64Padding(salt);
|
|
327
|
+
const paddedIv = ensureBase64Padding(iv);
|
|
328
|
+
const paddedCipher = ensureBase64Padding(cipher);
|
|
329
|
+
const saltBytes = base64ToBytes(paddedSalt);
|
|
330
|
+
const ivBytes = base64ToBytes(paddedIv);
|
|
331
|
+
const cipherBytes = base64ToBytes(paddedCipher);
|
|
332
|
+
let encryptionConfig;
|
|
333
|
+
// Use version-based configuration if available, otherwise fallback to legacy
|
|
334
|
+
if (version && ENCRYPTION_VERSIONS[version]) {
|
|
335
|
+
encryptionConfig = ENCRYPTION_VERSIONS[version];
|
|
336
|
+
} else {
|
|
337
|
+
// Fallback to legacy version for backward compatibility
|
|
338
|
+
encryptionConfig = ENCRYPTION_VERSIONS[ENCRYPTION_VERSION_LEGACY];
|
|
339
|
+
}
|
|
295
340
|
try {
|
|
296
|
-
const { salt, iv, cipher } = data;
|
|
297
|
-
// Ensure proper base64 padding for all values
|
|
298
|
-
const paddedSalt = ensureBase64Padding(salt);
|
|
299
|
-
const paddedIv = ensureBase64Padding(iv);
|
|
300
|
-
const paddedCipher = ensureBase64Padding(cipher);
|
|
301
|
-
const saltBytes = base64ToBytes(paddedSalt);
|
|
302
|
-
const ivBytes = base64ToBytes(paddedIv);
|
|
303
|
-
const cipherBytes = base64ToBytes(paddedCipher);
|
|
304
341
|
const key = await getKey({
|
|
305
342
|
password,
|
|
306
|
-
salt: saltBytes
|
|
343
|
+
salt: saltBytes,
|
|
344
|
+
encryptionConfig
|
|
307
345
|
});
|
|
308
346
|
const decryptedData = await crypto.subtle.decrypt({
|
|
309
347
|
name: AES_GCM_ALGORITHM,
|
|
@@ -311,8 +349,24 @@ const decryptData = async ({ data, password })=>{
|
|
|
311
349
|
}, key, cipherBytes);
|
|
312
350
|
return new TextDecoder().decode(decryptedData);
|
|
313
351
|
} catch (error) {
|
|
314
|
-
throw new Error('Decryption failed');
|
|
352
|
+
throw new Error('Decryption failed: ' + error);
|
|
353
|
+
}
|
|
354
|
+
};
|
|
355
|
+
/**
|
|
356
|
+
* Gets encryption metadata for a specific version.
|
|
357
|
+
* Used when we need to include metadata in legacy systems or APIs that require it.
|
|
358
|
+
*/ const getEncryptionMetadataForVersion = (version)=>{
|
|
359
|
+
const encryptionConfig = ENCRYPTION_VERSIONS[version];
|
|
360
|
+
if (!encryptionConfig) {
|
|
361
|
+
throw new Error(`Unsupported encryption version: ${version}`);
|
|
315
362
|
}
|
|
363
|
+
return {
|
|
364
|
+
algorithm: encryptionConfig.algorithm,
|
|
365
|
+
keyDerivation: encryptionConfig.keyDerivation,
|
|
366
|
+
iterations: encryptionConfig.iterations,
|
|
367
|
+
hashAlgorithm: encryptionConfig.hashAlgorithm,
|
|
368
|
+
algorithmLength: encryptionConfig.algorithmLength
|
|
369
|
+
};
|
|
316
370
|
};
|
|
317
371
|
|
|
318
372
|
const GOOGLE_DRIVE_UPLOAD_API = 'https://www.googleapis.com';
|
|
@@ -1322,6 +1376,7 @@ class DynamicWalletClient {
|
|
|
1322
1376
|
walletId: this.walletMap[accountAddress].walletId,
|
|
1323
1377
|
encryptedKeyShares: dynamicClientKeyShares,
|
|
1324
1378
|
passwordEncrypted: Boolean(password) && password !== this.environmentId,
|
|
1379
|
+
encryptionVersion: ENCRYPTION_VERSION_CURRENT,
|
|
1325
1380
|
signedSessionId
|
|
1326
1381
|
});
|
|
1327
1382
|
await this.apiClient.markKeySharesAsBackedUp({
|
|
@@ -1853,24 +1908,47 @@ class DynamicWalletClient {
|
|
|
1853
1908
|
/**
|
|
1854
1909
|
* check if the operation requires restoring backup shares
|
|
1855
1910
|
*/ async requiresRestoreBackupSharesForOperation({ accountAddress, walletOperation = WalletOperation.REACH_THRESHOLD }) {
|
|
1856
|
-
|
|
1857
|
-
|
|
1858
|
-
|
|
1859
|
-
|
|
1860
|
-
|
|
1861
|
-
|
|
1862
|
-
|
|
1911
|
+
try {
|
|
1912
|
+
const clientKeySharesBackupInfo = await this.getWalletClientKeyShareBackupInfo({
|
|
1913
|
+
accountAddress
|
|
1914
|
+
});
|
|
1915
|
+
const clientKeyShares = await this.getClientKeySharesFromLocalStorage({
|
|
1916
|
+
accountAddress
|
|
1917
|
+
});
|
|
1918
|
+
if (!clientKeyShares || clientKeyShares.length === 0) {
|
|
1919
|
+
logError({
|
|
1920
|
+
message: '[DynamicWaasWalletClient] No client key shares found in requiresRestoreBackupSharesForOperation',
|
|
1921
|
+
error: new Error('No client key shares available'),
|
|
1922
|
+
context: {
|
|
1923
|
+
accountAddress,
|
|
1924
|
+
walletOperation
|
|
1925
|
+
}
|
|
1926
|
+
});
|
|
1927
|
+
throw new Error('No client key shares available');
|
|
1928
|
+
}
|
|
1929
|
+
if (walletOperation === WalletOperation.REACH_ALL_PARTIES || walletOperation === WalletOperation.REFRESH || walletOperation === WalletOperation.RESHARE) {
|
|
1930
|
+
return true;
|
|
1931
|
+
}
|
|
1932
|
+
const { requiredShareCount } = this.recoverStrategy({
|
|
1933
|
+
clientKeyShareBackupInfo: clientKeySharesBackupInfo,
|
|
1934
|
+
thresholdSignatureScheme: this.walletMap[accountAddress].thresholdSignatureScheme,
|
|
1935
|
+
walletOperation
|
|
1936
|
+
});
|
|
1937
|
+
if (clientKeyShares.length >= requiredShareCount) {
|
|
1938
|
+
return false;
|
|
1939
|
+
}
|
|
1863
1940
|
return true;
|
|
1941
|
+
} catch (error) {
|
|
1942
|
+
logError({
|
|
1943
|
+
message: '[DynamicWaasWalletClient] Error in requiresRestoreBackupSharesForOperation',
|
|
1944
|
+
error: error,
|
|
1945
|
+
context: {
|
|
1946
|
+
accountAddress,
|
|
1947
|
+
walletOperation
|
|
1948
|
+
}
|
|
1949
|
+
});
|
|
1950
|
+
throw error;
|
|
1864
1951
|
}
|
|
1865
|
-
const { requiredShareCount } = this.recoverStrategy({
|
|
1866
|
-
clientKeyShareBackupInfo: clientKeySharesBackupInfo,
|
|
1867
|
-
thresholdSignatureScheme: this.walletMap[accountAddress].thresholdSignatureScheme,
|
|
1868
|
-
walletOperation
|
|
1869
|
-
});
|
|
1870
|
-
if (clientKeyShares.length >= requiredShareCount) {
|
|
1871
|
-
return false;
|
|
1872
|
-
}
|
|
1873
|
-
return true;
|
|
1874
1952
|
}
|
|
1875
1953
|
async getWalletClientKeyShareBackupInfo({ accountAddress }) {
|
|
1876
1954
|
try {
|
|
@@ -2046,10 +2124,11 @@ class DynamicWalletClient {
|
|
|
2046
2124
|
const ERROR_KEYGEN_FAILED = '[DynamicWaasWalletClient]: Error with keygen';
|
|
2047
2125
|
const ERROR_CREATE_WALLET_ACCOUNT = '[DynamicWaasWalletClient]: Error creating wallet account';
|
|
2048
2126
|
const ERROR_SIGN_MESSAGE = '[DynamicWaasWalletClient]: Error signing message';
|
|
2127
|
+
const ERROR_SIGN_TYPED_DATA = '[DynamicWaasWalletClient]: Error signing typed data';
|
|
2049
2128
|
const ERROR_ACCOUNT_ADDRESS_REQUIRED = '[DynamicWaasWalletClient]: Account address is required';
|
|
2050
2129
|
const ERROR_VERIFY_MESSAGE_SIGNATURE = '[DynamicWaasWalletClient]: Error verifying message signature';
|
|
2051
2130
|
const ERROR_VERIFY_TRANSACTION_SIGNATURE = '[DynamicWaasWalletClient]: Error verifying transaction signature';
|
|
2052
2131
|
const ERROR_EXPORT_PRIVATE_KEY = '[DynamicWaasWalletClient]: Error exporting private key';
|
|
2053
2132
|
const ERROR_IMPORT_PRIVATE_KEY = '[DynamicWaasWalletClient]: Error importing private key';
|
|
2054
2133
|
|
|
2055
|
-
export { DynamicWalletClient, ERROR_ACCOUNT_ADDRESS_REQUIRED, ERROR_CREATE_WALLET_ACCOUNT, ERROR_EXPORT_PRIVATE_KEY, ERROR_IMPORT_PRIVATE_KEY, ERROR_KEYGEN_FAILED, ERROR_SIGN_MESSAGE, ERROR_VERIFY_MESSAGE_SIGNATURE, ERROR_VERIFY_TRANSACTION_SIGNATURE, base64ToBytes, bytesToBase64, createBackupData, ensureBase64Padding, formatEvmMessage, formatMessage, getClientKeyShareBackupInfo, getClientKeyShareExportFileName, getGoogleOAuthAccountId, getMPCSignatureScheme, getMPCSigner, isBrowser, isHexString, mergeUniqueKeyShares, retryPromise, stringToBytes, timeoutPromise };
|
|
2134
|
+
export { DynamicWalletClient, ERROR_ACCOUNT_ADDRESS_REQUIRED, ERROR_CREATE_WALLET_ACCOUNT, ERROR_EXPORT_PRIVATE_KEY, ERROR_IMPORT_PRIVATE_KEY, ERROR_KEYGEN_FAILED, ERROR_SIGN_MESSAGE, ERROR_SIGN_TYPED_DATA, ERROR_VERIFY_MESSAGE_SIGNATURE, ERROR_VERIFY_TRANSACTION_SIGNATURE, base64ToBytes, bytesToBase64, createBackupData, ensureBase64Padding, formatEvmMessage, formatMessage, getClientKeyShareBackupInfo, getClientKeyShareExportFileName, getGoogleOAuthAccountId, getMPCSignatureScheme, getMPCSigner, isBrowser, isHexString, mergeUniqueKeyShares, retryPromise, stringToBytes, timeoutPromise };
|
package/package.json
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@dynamic-labs-wallet/browser",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.103",
|
|
4
4
|
"license": "Licensed under the Dynamic Labs, Inc. Terms Of Service (https://www.dynamic.xyz/terms-conditions)",
|
|
5
5
|
"dependencies": {
|
|
6
|
-
"@dynamic-labs-wallet/core": "0.0.
|
|
6
|
+
"@dynamic-labs-wallet/core": "0.0.103",
|
|
7
7
|
"@dynamic-labs/logger": "^4.9.9",
|
|
8
8
|
"@dynamic-labs/sdk-api-core": "^0.0.663",
|
|
9
9
|
"axios": "1.9.0",
|
|
@@ -1,22 +1,62 @@
|
|
|
1
|
+
import { EncryptionMetadata } from '@dynamic-labs-wallet/core';
|
|
2
|
+
export declare const ENCRYPTION_VERSION_LEGACY = "v1";
|
|
3
|
+
export declare const ENCRYPTION_VERSION_CURRENT = "v2";
|
|
1
4
|
export declare const PBKDF2_ALGORITHM = "PBKDF2";
|
|
2
|
-
export declare const PBKDF2_ITERATIONS = 100000;
|
|
3
5
|
export declare const PBKDF2_HASH_ALGORITHM = "SHA-256";
|
|
4
6
|
export declare const AES_GCM_ALGORITHM = "AES-GCM";
|
|
5
7
|
export declare const AES_GCM_LENGTH = 256;
|
|
6
|
-
export declare const
|
|
8
|
+
export declare const ENCRYPTION_VERSIONS: {
|
|
9
|
+
readonly v1: {
|
|
10
|
+
readonly version: "v1";
|
|
11
|
+
readonly algorithm: "AES-GCM";
|
|
12
|
+
readonly keyDerivation: "PBKDF2";
|
|
13
|
+
readonly iterations: 100000;
|
|
14
|
+
readonly hashAlgorithm: "SHA-256";
|
|
15
|
+
readonly algorithmLength: 256;
|
|
16
|
+
};
|
|
17
|
+
readonly v2: {
|
|
18
|
+
readonly version: "v2";
|
|
19
|
+
readonly algorithm: "AES-GCM";
|
|
20
|
+
readonly keyDerivation: "PBKDF2";
|
|
21
|
+
readonly iterations: 1000000;
|
|
22
|
+
readonly hashAlgorithm: "SHA-256";
|
|
23
|
+
readonly algorithmLength: 256;
|
|
24
|
+
};
|
|
25
|
+
};
|
|
26
|
+
export declare const PBKDF2_ITERATIONS: 1000000;
|
|
27
|
+
export declare const PBKDF2_ITERATIONS_LEGACY: 100000;
|
|
28
|
+
export type EncryptionVersion = (typeof ENCRYPTION_VERSIONS)[keyof typeof ENCRYPTION_VERSIONS];
|
|
29
|
+
/**
|
|
30
|
+
* Encrypts data using the specified encryption version.
|
|
31
|
+
* Always uses the latest encryption configuration for new encryptions by default.
|
|
32
|
+
*/
|
|
33
|
+
export declare const encryptData: ({ data, password, version, }: {
|
|
7
34
|
data: string;
|
|
8
35
|
password: string;
|
|
36
|
+
version?: string;
|
|
9
37
|
}) => Promise<{
|
|
10
38
|
salt: string;
|
|
11
39
|
iv: string;
|
|
12
40
|
cipher: string;
|
|
41
|
+
version: string;
|
|
13
42
|
}>;
|
|
43
|
+
/**
|
|
44
|
+
* Decrypts data with version-based configuration.
|
|
45
|
+
* Uses the version field from the data to determine encryption parameters.
|
|
46
|
+
* Falls back to legacy version for backward compatibility if no version is specified.
|
|
47
|
+
*/
|
|
14
48
|
export declare const decryptData: ({ data, password, }: {
|
|
15
49
|
data: {
|
|
16
50
|
salt: string;
|
|
17
51
|
iv: string;
|
|
18
52
|
cipher: string;
|
|
53
|
+
version?: string;
|
|
19
54
|
};
|
|
20
55
|
password: string;
|
|
21
56
|
}) => Promise<string>;
|
|
57
|
+
/**
|
|
58
|
+
* Gets encryption metadata for a specific version.
|
|
59
|
+
* Used when we need to include metadata in legacy systems or APIs that require it.
|
|
60
|
+
*/
|
|
61
|
+
export declare const getEncryptionMetadataForVersion: (version: string) => EncryptionMetadata;
|
|
22
62
|
//# sourceMappingURL=encryption.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"encryption.d.ts","sourceRoot":"","sources":["../../src/backup/encryption.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"encryption.d.ts","sourceRoot":"","sources":["../../src/backup/encryption.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AAQ/D,eAAO,MAAM,yBAAyB,OAAO,CAAC;AAC9C,eAAO,MAAM,0BAA0B,OAAO,CAAC;AAE/C,eAAO,MAAM,gBAAgB,WAAW,CAAC;AACzC,eAAO,MAAM,qBAAqB,YAAY,CAAC;AAC/C,eAAO,MAAM,iBAAiB,YAAY,CAAC;AAC3C,eAAO,MAAM,cAAc,MAAM,CAAC;AAElC,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;;;;;CAiBtB,CAAC;AAEX,eAAO,MAAM,iBAAiB,SAC8B,CAAC;AAC7D,eAAO,MAAM,wBAAwB,QACsB,CAAC;AAE5D,MAAM,MAAM,iBAAiB,GAC3B,CAAC,OAAO,mBAAmB,CAAC,CAAC,MAAM,OAAO,mBAAmB,CAAC,CAAC;AAsCjE;;;GAGG;AACH,eAAO,MAAM,WAAW,iCAIrB;IACD,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;;;;;EAkCA,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,WAAW,wBAGrB;IACD,IAAI,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,EAAE,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAC;QAAC,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IACrE,QAAQ,EAAE,MAAM,CAAC;CAClB,oBA2CA,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,+BAA+B,YACjC,MAAM,KACd,kBAcF,CAAC"}
|
package/src/client.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../packages/src/client.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,cAAc,EACd,gBAAgB,EAChB,KAAK,wBAAwB,EAO7B,KAAK,gBAAgB,EACrB,KAAK,kBAAkB,EAEvB,wBAAwB,EAExB,eAAe,EAChB,MAAM,2BAA2B,CAAC;AACnC,OAAO,EAEL,kBAAkB,EAElB,iBAAiB,EACjB,KAAK,cAAc,EACnB,KAAK,cAAc,EACnB,iBAAiB,EAGlB,MAAM,eAAe,CAAC;
|
|
1
|
+
{"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../packages/src/client.ts"],"names":[],"mappings":"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"}
|
package/src/errorConstants.d.ts
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
export declare const ERROR_KEYGEN_FAILED = "[DynamicWaasWalletClient]: Error with keygen";
|
|
2
2
|
export declare const ERROR_CREATE_WALLET_ACCOUNT = "[DynamicWaasWalletClient]: Error creating wallet account";
|
|
3
3
|
export declare const ERROR_SIGN_MESSAGE = "[DynamicWaasWalletClient]: Error signing message";
|
|
4
|
+
export declare const ERROR_SIGN_TYPED_DATA = "[DynamicWaasWalletClient]: Error signing typed data";
|
|
4
5
|
export declare const ERROR_ACCOUNT_ADDRESS_REQUIRED = "[DynamicWaasWalletClient]: Account address is required";
|
|
5
6
|
export declare const ERROR_VERIFY_MESSAGE_SIGNATURE = "[DynamicWaasWalletClient]: Error verifying message signature";
|
|
6
7
|
export declare const ERROR_VERIFY_TRANSACTION_SIGNATURE = "[DynamicWaasWalletClient]: Error verifying transaction signature";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"errorConstants.d.ts","sourceRoot":"","sources":["../../packages/src/errorConstants.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,mBAAmB,iDACgB,CAAC;AAEjD,eAAO,MAAM,2BAA2B,6DACoB,CAAC;AAE7D,eAAO,MAAM,kBAAkB,qDACqB,CAAC;AAErD,eAAO,MAAM,8BAA8B,2DACe,CAAC;AAE3D,eAAO,MAAM,8BAA8B,iEACqB,CAAC;AAEjE,eAAO,MAAM,kCAAkC,qEACqB,CAAC;AAErE,eAAO,MAAM,wBAAwB,2DACqB,CAAC;AAE3D,eAAO,MAAM,wBAAwB,2DACqB,CAAC"}
|
|
1
|
+
{"version":3,"file":"errorConstants.d.ts","sourceRoot":"","sources":["../../packages/src/errorConstants.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,mBAAmB,iDACgB,CAAC;AAEjD,eAAO,MAAM,2BAA2B,6DACoB,CAAC;AAE7D,eAAO,MAAM,kBAAkB,qDACqB,CAAC;AAErD,eAAO,MAAM,qBAAqB,wDACqB,CAAC;AAExD,eAAO,MAAM,8BAA8B,2DACe,CAAC;AAE3D,eAAO,MAAM,8BAA8B,iEACqB,CAAC;AAEjE,eAAO,MAAM,kCAAkC,qEACqB,CAAC;AAErE,eAAO,MAAM,wBAAwB,2DACqB,CAAC;AAE3D,eAAO,MAAM,wBAAwB,2DACqB,CAAC"}
|
package/src/index.d.ts
CHANGED
package/src/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../packages/src/index.ts"],"names":[],"mappings":"AAAA,cAAc,2BAA2B,CAAC;AAE1C,cAAc,UAAU,CAAC;AACzB,cAAc,SAAS,CAAC;AAExB,cAAc,aAAa,CAAC;AAC5B,cAAc,SAAS,CAAC;AACxB,cAAc,kBAAkB,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../packages/src/index.ts"],"names":[],"mappings":"AAAA,cAAc,2BAA2B,CAAC;AAE1C,cAAc,UAAU,CAAC;AACzB,cAAc,SAAS,CAAC;AAExB,cAAc,aAAa,CAAC;AAC5B,cAAc,SAAS,CAAC;AACxB,cAAc,kBAAkB,CAAC;AAEjC,OAAO,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAC3C,OAAO,EAAE,MAAM,EAAE,CAAC"}
|
package/src/services/logger.d.ts
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"logger.d.ts","sourceRoot":"","sources":["../../src/services/logger.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAY,MAAM,sBAAsB,CAAC;AAIxD,eAAO,MAAM,MAAM,QAAwD,CAAC;AAE5E,QAAA,MAAM,gBAAgB,0CAInB;IACD,aAAa,EAAE,MAAM,CAAC;IACtB,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,MAAM,CAAC;CAChB,SAYA,CAAC;AAEF,QAAA,MAAM,QAAQ,iCAIX;IACD,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,KAAK,CAAC;IACb,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAClC,KAAG,IAQH,CAAC;AAEF,OAAO,EAAE,gBAAgB,EAAE,QAAQ,EAAE,CAAC"}
|
|
1
|
+
{"version":3,"file":"logger.d.ts","sourceRoot":"","sources":["../../src/services/logger.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAY,MAAM,sBAAsB,CAAC;AAIxD,eAAO,MAAM,MAAM,QAAwD,CAAC;AAE5E,QAAA,MAAM,gBAAgB,0CAInB;IACD,aAAa,EAAE,MAAM,CAAC;IACtB,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,MAAM,CAAC;CAChB,SAYA,CAAC;AAEF,QAAA,MAAM,QAAQ,iCAIX;IACD,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,KAAK,CAAC;IACb,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAClC,KAAG,IAQH,CAAC;AAEF,OAAO,EAAE,MAAM,EAAE,gBAAgB,EAAE,QAAQ,EAAE,CAAC"}
|
package/src/utils.d.ts
CHANGED
|
@@ -52,18 +52,12 @@ export declare const createBackupData: ({ encryptedKeyShares, accountAddress, th
|
|
|
52
52
|
}) => {
|
|
53
53
|
keyShares: string[];
|
|
54
54
|
metadata: {
|
|
55
|
-
version: string;
|
|
56
55
|
createdAt: string;
|
|
57
56
|
accountAddress: string;
|
|
58
57
|
thresholdSignatureScheme: ThresholdSignatureScheme;
|
|
59
58
|
hasPassword: boolean;
|
|
60
|
-
encryption:
|
|
61
|
-
|
|
62
|
-
keyDerivation: string;
|
|
63
|
-
iterations: number;
|
|
64
|
-
hashAlgorithm: string;
|
|
65
|
-
algorithmLength: number;
|
|
66
|
-
};
|
|
59
|
+
encryption: import("@dynamic-labs-wallet/core").EncryptionMetadata;
|
|
60
|
+
encryptionVersion: string;
|
|
67
61
|
shareCount: number;
|
|
68
62
|
};
|
|
69
63
|
};
|
package/src/utils.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../packages/src/utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,kBAAkB,EACvB,KAAK,wBAAwB,EAC7B,KAAK,oBAAoB,EAC1B,MAAM,2BAA2B,CAAC;AACnC,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAC;AAExE,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;
|
|
1
|
+
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../packages/src/utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,kBAAkB,EACvB,KAAK,wBAAwB,EAC7B,KAAK,oBAAoB,EAC1B,MAAM,2BAA2B,CAAC;AACnC,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAC;AAExE,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAM5C,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAGlD,eAAO,MAAM,aAAa,QAAS,UAAU,WAE5C,CAAC;AAEF,eAAO,MAAM,aAAa,QAAS,MAAM,eAExC,CAAC;AAEF,eAAO,MAAM,aAAa,WAAY,MAAM,eAE3C,CAAC;AAGF,eAAO,MAAM,mBAAmB,QAAS,MAAM,KAAG,MAEjD,CAAC;AAEF,eAAO,MAAM,SAAS,eAAsC,CAAC;AAE7D,eAAO,MAAM,WAAW,QAAS,MAAM,YAKtC,CAAC;AAEF,eAAO,MAAM,+BAA+B,kDAGzC;IACD,wBAAwB,EAAE,wBAAwB,CAAC;IACnD,cAAc,EAAE,MAAM,CAAC;CACxB,WAEA,CAAC;AAEF,eAAO,MAAM,2BAA2B,YAAa;IACnD,gBAAgB,EAAE,oBAAoB,CAAC;CACxC,KAAG,kBAgCH,CAAC;AAEF;;;;;GAKG;AACH,eAAO,MAAM,oBAAoB,sBACZ,cAAc,EAAE,gBACrB,cAAc,EAAE,KAC7B,cAAc,EAchB,CAAC;AAEF,eAAO,MAAM,cAAc,4BAGxB;IACD,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB,qBAOA,CAAC;AAEF,UAAU,WAAW;IACnB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACtC;AAED;;;;;;;GAOG;AACH,wBAAsB,YAAY,CAAC,CAAC,EAClC,SAAS,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,EAC3B,EACE,WAAe,EACf,aAAmB,EACnB,aAA2B,EAC3B,UAAe,GAChB,GAAE,WAAgB,GAClB,OAAO,CAAC,CAAC,CAAC,CA6BZ;AAED,eAAO,MAAM,gBAAgB,YAAa,MAAM,GAAG,UAAU,gBAS5D,CAAC;AAgBF,eAAO,MAAM,aAAa,cACb,MAAM,WACR,MAAM,GAAG,UAAU,KAC3B,MAAM,GAAG,UAAU,GAAG,WAWxB,CAAC;AAEF,eAAO,MAAM,uBAAuB,wBACb,qBAAqB,EAAE,KAC3C,MAAM,GAAG,SAOX,CAAC;AAEF,eAAO,MAAM,gBAAgB,mFAK1B;IACD,kBAAkB,EAAE,MAAM,EAAE,CAAC;IAC7B,cAAc,EAAE,MAAM,CAAC;IACvB,wBAAwB,EAAE,wBAAwB,CAAC;IACnD,WAAW,CAAC,EAAE,OAAO,CAAC;CACvB;;;;;;;;;;;CAaA,CAAC"}
|