@bitgo/sdk-core 27.4.0 → 27.5.0
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/CHANGELOG.md +18 -0
- package/dist/src/api/types.d.ts +1 -0
- package/dist/src/api/types.d.ts.map +1 -1
- package/dist/src/api/types.js +1 -1
- package/dist/src/bitgo/config.d.ts +6 -0
- package/dist/src/bitgo/config.d.ts.map +1 -1
- package/dist/src/bitgo/keychain/iKeychains.d.ts +20 -1
- package/dist/src/bitgo/keychain/iKeychains.d.ts.map +1 -1
- package/dist/src/bitgo/keychain/iKeychains.js +1 -1
- package/dist/src/bitgo/keychain/keychains.d.ts +2 -1
- package/dist/src/bitgo/keychain/keychains.d.ts.map +1 -1
- package/dist/src/bitgo/keychain/keychains.js +40 -2
- package/dist/src/bitgo/utils/mpcUtils.d.ts.map +1 -1
- package/dist/src/bitgo/utils/mpcUtils.js +4 -1
- package/dist/src/bitgo/utils/tss/baseTSSUtils.d.ts +14 -3
- package/dist/src/bitgo/utils/tss/baseTSSUtils.d.ts.map +1 -1
- package/dist/src/bitgo/utils/tss/baseTSSUtils.js +14 -1
- package/dist/src/bitgo/utils/tss/baseTypes.d.ts +43 -2
- package/dist/src/bitgo/utils/tss/baseTypes.d.ts.map +1 -1
- package/dist/src/bitgo/utils/tss/baseTypes.js +4 -1
- package/dist/src/bitgo/utils/tss/ecdsa/ecdsa.d.ts +3 -3
- package/dist/src/bitgo/utils/tss/ecdsa/ecdsa.d.ts.map +1 -1
- package/dist/src/bitgo/utils/tss/ecdsa/ecdsa.js +1 -1
- package/dist/src/bitgo/utils/tss/ecdsa/ecdsaMPCv2.d.ts +74 -8
- package/dist/src/bitgo/utils/tss/ecdsa/ecdsaMPCv2.d.ts.map +1 -1
- package/dist/src/bitgo/utils/tss/ecdsa/ecdsaMPCv2.js +303 -60
- package/dist/src/bitgo/utils/tss/eddsa/eddsa.d.ts +2 -2
- package/dist/src/bitgo/utils/tss/eddsa/eddsa.d.ts.map +1 -1
- package/dist/src/bitgo/utils/tss/eddsa/eddsa.js +1 -1
- package/dist/src/bitgo/wallet/iWallet.d.ts +4 -1
- package/dist/src/bitgo/wallet/iWallet.d.ts.map +1 -1
- package/dist/src/bitgo/wallet/iWallet.js +1 -1
- package/dist/src/bitgo/wallet/wallet.d.ts +6 -0
- package/dist/src/bitgo/wallet/wallet.d.ts.map +1 -1
- package/dist/src/bitgo/wallet/wallet.js +45 -2
- package/dist/src/bitgo/wallet/wallets.js +2 -2
- package/dist/src/index.d.ts +2 -0
- package/dist/src/index.d.ts.map +1 -1
- package/dist/src/index.js +4 -2
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +5 -5
|
@@ -1,34 +1,44 @@
|
|
|
1
1
|
/// <reference types="node" />
|
|
2
|
-
import { Buffer } from 'buffer';
|
|
3
2
|
import { DklsTypes } from '@bitgo/sdk-lib-mpc';
|
|
4
|
-
import {
|
|
3
|
+
import { Buffer } from 'buffer';
|
|
4
|
+
import { MPCv2PartyFromStringOrNumber } from '@bitgo/public-types';
|
|
5
|
+
import { Ecdsa } from '../../../../account-lib';
|
|
5
6
|
import { KeychainsTriplet } from '../../../baseCoin';
|
|
7
|
+
import { Keychain } from '../../../keychain';
|
|
8
|
+
import { DecryptedRetrofitPayload } from '../../../keychain/iKeychains';
|
|
9
|
+
import { CustomMPCv2SigningRound1GeneratingFunction, CustomMPCv2SigningRound2GeneratingFunction, CustomMPCv2SigningRound3GeneratingFunction, RequestType, SignatureShareRecord, TSSParams, TSSParamsForMessage, TSSParamsWithPrv, TxRequest } from '../baseTypes';
|
|
6
10
|
import { BaseEcdsaUtils } from './base';
|
|
7
|
-
import { MPCv2PartyFromStringOrNumber } from '@bitgo/public-types';
|
|
8
|
-
import { TSSParams, TxRequest } from '../baseTypes';
|
|
9
11
|
export declare class EcdsaMPCv2Utils extends BaseEcdsaUtils {
|
|
10
12
|
/** @inheritdoc */
|
|
11
13
|
createKeychains(params: {
|
|
12
14
|
passphrase: string;
|
|
13
15
|
enterprise: string;
|
|
14
16
|
originalPasscodeEncryptionCode?: string;
|
|
17
|
+
retrofit?: DecryptedRetrofitPayload;
|
|
15
18
|
}): Promise<KeychainsTriplet>;
|
|
16
19
|
createParticipantKeychain(participantIndex: MPCv2PartyFromStringOrNumber, commonKeychain: string, privateMaterial?: Buffer, reducedPrivateMaterial?: Buffer, passphrase?: string, originalPasscodeEncryptionCode?: string): Promise<Keychain>;
|
|
17
20
|
/**
|
|
18
21
|
* Converts user and backup MPCv1 SigningMaterial to RetrofitData needed by MPCv2 DKG.
|
|
19
22
|
*
|
|
20
23
|
* @param {Object} params - MPCv1 decrypted signing material for user and backup as a json.stringify string and bitgo's Big Si.
|
|
21
|
-
* @returns {
|
|
24
|
+
* @returns {{ mpcv2UserKeyShare: DklsTypes.RetrofitData; mpcv2BakcupKeyShare: DklsTypes.RetrofitData }} - the retrofit data needed to start an MPCv2 DKG session.
|
|
22
25
|
*/
|
|
23
26
|
getMpcV2RetrofitDataFromMpcV1Keys(params: {
|
|
24
27
|
mpcv1UserKeyShare: string;
|
|
25
28
|
mpcv1BackupKeyShare: string;
|
|
26
|
-
}):
|
|
29
|
+
}): {
|
|
27
30
|
mpcv2UserKeyShare: DklsTypes.RetrofitData;
|
|
28
31
|
mpcv2BakcupKeyShare: DklsTypes.RetrofitData;
|
|
29
|
-
}
|
|
32
|
+
};
|
|
33
|
+
getMpcV2RetrofitDataFromMpcV1Key({ mpcv1PartyKeyShare, mpcv1PartyIndex, xiList, mpc, }: {
|
|
34
|
+
mpcv1PartyKeyShare: string;
|
|
35
|
+
mpcv1PartyIndex: number;
|
|
36
|
+
xiList: number[][];
|
|
37
|
+
mpc: Ecdsa;
|
|
38
|
+
}): DklsTypes.RetrofitData;
|
|
30
39
|
private addUserKeychain;
|
|
31
40
|
private addBackupKeychain;
|
|
41
|
+
private getUserAndBackupSession;
|
|
32
42
|
private addBitgoKeychain;
|
|
33
43
|
private sendKeyGenerationRequest;
|
|
34
44
|
private sendKeyGenerationRound1;
|
|
@@ -41,9 +51,65 @@ export declare class EcdsaMPCv2Utils extends BaseEcdsaUtils {
|
|
|
41
51
|
* @param {string} params.reqId - request id
|
|
42
52
|
* @returns {Promise<TxRequest>} fully signed TxRequest object
|
|
43
53
|
*/
|
|
44
|
-
signTxRequest(params:
|
|
54
|
+
signTxRequest(params: TSSParamsWithPrv): Promise<TxRequest>;
|
|
45
55
|
private signRequestBase;
|
|
46
56
|
private formatBitgoBroadcastMessage;
|
|
47
57
|
private formatP2PMessage;
|
|
58
|
+
/**
|
|
59
|
+
* Get the hash string and derivation path from the transaction request.
|
|
60
|
+
* @param {TxRequest} txRequest - the transaction request object
|
|
61
|
+
* @param {RequestType} requestType - the request type
|
|
62
|
+
* @returns {{ hashBuffer: Buffer; derivationPath: string }} - the hash string and derivation path
|
|
63
|
+
*/
|
|
64
|
+
private getHashStringAndDerivationPath;
|
|
65
|
+
/**
|
|
66
|
+
* Gets the BitGo and user GPG keys from the BitGo public GPG key and the encrypted user GPG private key.
|
|
67
|
+
* @param {string} bitgoPublicGpgKey - the BitGo public GPG key
|
|
68
|
+
* @param {string} encryptedUserGpgPrvKey - the encrypted user GPG private key
|
|
69
|
+
* @param {string} walletPassphrase - the wallet passphrase
|
|
70
|
+
* @returns {Promise<{ bitgoGpgKey: pgp.Key; userGpgKey: pgp.SerializedKeyPair<string> }>} - the BitGo and user GPG keys
|
|
71
|
+
*/
|
|
72
|
+
private getBitgoAndUserGpgKeys;
|
|
73
|
+
/**
|
|
74
|
+
* Validates the adata and cyphertext.
|
|
75
|
+
* @param adata string
|
|
76
|
+
* @param cyphertext string
|
|
77
|
+
* @returns void
|
|
78
|
+
* @throws {Error} if the adata or cyphertext is invalid
|
|
79
|
+
*/
|
|
80
|
+
private validateAdata;
|
|
81
|
+
/** @inheritdoc */
|
|
82
|
+
signEcdsaMPCv2TssUsingExternalSigner(params: TSSParams | TSSParamsForMessage, externalSignerMPCv2SigningRound1Generator: CustomMPCv2SigningRound1GeneratingFunction, externalSignerMPCv2SigningRound2Generator: CustomMPCv2SigningRound2GeneratingFunction, externalSignerMPCv2SigningRound3Generator: CustomMPCv2SigningRound3GeneratingFunction, requestType?: RequestType): Promise<TxRequest>;
|
|
83
|
+
createOfflineRound1Share(params: {
|
|
84
|
+
txRequest: TxRequest;
|
|
85
|
+
prv: string;
|
|
86
|
+
walletPassphrase: string;
|
|
87
|
+
}): Promise<{
|
|
88
|
+
signatureShareRound1: SignatureShareRecord;
|
|
89
|
+
userGpgPubKey: string;
|
|
90
|
+
encryptedRound1Session: string;
|
|
91
|
+
encryptedUserGpgPrvKey: string;
|
|
92
|
+
}>;
|
|
93
|
+
createOfflineRound2Share(params: {
|
|
94
|
+
txRequest: TxRequest;
|
|
95
|
+
prv: string;
|
|
96
|
+
walletPassphrase: string;
|
|
97
|
+
bitgoPublicGpgKey: string;
|
|
98
|
+
encryptedUserGpgPrvKey: string;
|
|
99
|
+
encryptedRound1Session: string;
|
|
100
|
+
}): Promise<{
|
|
101
|
+
signatureShareRound2: SignatureShareRecord;
|
|
102
|
+
encryptedRound2Session: string;
|
|
103
|
+
}>;
|
|
104
|
+
createOfflineRound3Share(params: {
|
|
105
|
+
txRequest: TxRequest;
|
|
106
|
+
prv: string;
|
|
107
|
+
walletPassphrase: string;
|
|
108
|
+
bitgoPublicGpgKey: string;
|
|
109
|
+
encryptedUserGpgPrvKey: string;
|
|
110
|
+
encryptedRound2Session: string;
|
|
111
|
+
}): Promise<{
|
|
112
|
+
signatureShareRound3: SignatureShareRecord;
|
|
113
|
+
}>;
|
|
48
114
|
}
|
|
49
115
|
//# sourceMappingURL=ecdsaMPCv2.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ecdsaMPCv2.d.ts","sourceRoot":"","sources":["../../../../../../src/bitgo/utils/tss/ecdsa/ecdsaMPCv2.ts"],"names":[],"mappings":";
|
|
1
|
+
{"version":3,"file":"ecdsaMPCv2.d.ts","sourceRoot":"","sources":["../../../../../../src/bitgo/utils/tss/ecdsa/ecdsaMPCv2.ts"],"names":[],"mappings":"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"}
|