@bitgo/sdk-core 38.7.0 → 38.8.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/dist/src/bitgo/utils/tss/eddsa/eddsaMPCv2.d.ts +44 -13
- package/dist/src/bitgo/utils/tss/eddsa/eddsaMPCv2.d.ts.map +1 -1
- package/dist/src/bitgo/utils/tss/eddsa/eddsaMPCv2.js +92 -11
- package/dist/src/index.d.ts +2 -0
- package/dist/src/index.d.ts.map +1 -1
- package/dist/src/index.js +9 -2
- package/dist/test/unit/bitgo/utils/tss/eddsa/eddsaMPCv2.js +214 -1
- package/dist/test/unit/bitgo/wallet/BuildParams.js +6 -1
- package/dist/test/unit/bitgo/wallet/SendTransactionRequest.js +50 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +5 -5
|
@@ -106,20 +106,15 @@ export declare class EddsaMPCv2Utils extends BaseEddsaUtils {
|
|
|
106
106
|
}>;
|
|
107
107
|
/** @inheritdoc */
|
|
108
108
|
signEddsaMPCv2TssUsingExternalSigner(params: TSSParams | TSSParamsForMessage, externalSignerEddsaMPCv2SigningRound1Generator: CustomEddsaMPCv2SigningRound1GeneratingFunction, externalSignerEddsaMPCv2SigningRound2Generator: CustomEddsaMPCv2SigningRound2GeneratingFunction, externalSignerEddsaMPCv2SigningRound3Generator: CustomEddsaMPCv2SigningRound3GeneratingFunction, requestType?: RequestType): Promise<TxRequest>;
|
|
109
|
+
getMpcV2RetrofitDataFromMpcV1Keys(params: {
|
|
110
|
+
mpcv1UserKeyShare: string;
|
|
111
|
+
mpcv1BackupKeyShare: string;
|
|
112
|
+
}): Promise<{
|
|
113
|
+
userRetrofitData: MPSTypes.EddsaRetrofitData;
|
|
114
|
+
backupRetrofitData: MPSTypes.EddsaRetrofitData;
|
|
115
|
+
}>;
|
|
116
|
+
private static getMpcV2RetrofitDataFromMpcV1Key;
|
|
109
117
|
}
|
|
110
|
-
/**
|
|
111
|
-
* Detect whether an encrypted keycard contains MPCv1 signing material.
|
|
112
|
-
*
|
|
113
|
-
* Decrypts the keycard and checks for the JSON shape produced by the MPCv1 TSS
|
|
114
|
-
* key-generation flow (uShare.seed + bitgoYShare.u + backupYShare.u / userYShare.u).
|
|
115
|
-
* Returns false for MPCv2 CBOR keycards, wrong passwords, or any decryption error.
|
|
116
|
-
*
|
|
117
|
-
* @param encryptedKeyShare encrypted user or backup keycard
|
|
118
|
-
* @param walletPassphrase passphrase used to encrypt the keycard
|
|
119
|
-
* @param bitgo optional BitGoBase instance; when provided, decrypts via
|
|
120
|
-
* bitgo.decrypt (supports both v1 SJCL and v2 Argon2id envelopes);
|
|
121
|
-
* when absent, falls back to sjcl.decrypt (v1 only)
|
|
122
|
-
*/
|
|
123
118
|
export declare function isEddsaMpcV1SigningMaterial(encryptedKeyShare: string, walletPassphrase: string, bitgo?: BitGoBase): Promise<boolean>;
|
|
124
119
|
/**
|
|
125
120
|
* Get EdDSA MPCv2 recovery key shares from encrypted reduced user and backup keys.
|
|
@@ -148,9 +143,45 @@ export declare function getEddsaMpcV2RecoveryKeySharesFromReducedKey(encryptedUs
|
|
|
148
143
|
* @returns 64-byte Ed25519 signature Buffer
|
|
149
144
|
*/
|
|
150
145
|
export declare function signRecoveryEddsaMPCv2(message: Buffer, derivationPath: string, userKeyShare: Buffer, backupKeyShare: Buffer, commonKeyChain: string): Promise<Buffer>;
|
|
146
|
+
/**
|
|
147
|
+
* Discriminated union representing EdDSA signing material detected from a keycard.
|
|
148
|
+
* v1: MPCv1 JSON keycard — userPrv is the decrypted plaintext.
|
|
149
|
+
* v2: MPCv2 CBOR keycard — encryptedUserKey is returned as-is for MPS DSG.
|
|
150
|
+
*/
|
|
151
|
+
export type EddsaSigningMaterial = {
|
|
152
|
+
version: 'v1';
|
|
153
|
+
userPrv: string;
|
|
154
|
+
} | {
|
|
155
|
+
version: 'v2';
|
|
156
|
+
encryptedUserKey: string;
|
|
157
|
+
};
|
|
158
|
+
/**
|
|
159
|
+
* Detects MPCv1 vs MPCv2 keycard format and returns typed signing material.
|
|
160
|
+
* For v1: decrypts once and returns the plaintext as userPrv.
|
|
161
|
+
* For v2: returns the encrypted key as-is for use with signEddsaMpcV2RecoveryTx.
|
|
162
|
+
* When bitgo is omitted, falls back to sjcl (v1 only).
|
|
163
|
+
*/
|
|
164
|
+
export declare function getEddsaSigningMaterial(userKey: string, walletPassphrase: string, bitgo?: BitGoBase): Promise<EddsaSigningMaterial>;
|
|
165
|
+
/**
|
|
166
|
+
* Full MPCv2 recovery signing flow: decrypt key shares → validate commonKeyChain → MPS DSG.
|
|
167
|
+
* Returns raw 64-byte Ed25519 signature Buffer.
|
|
168
|
+
* Caller is responsible for any coin-specific envelope
|
|
169
|
+
* (e.g. 0x00 Substrate prefix, SUI flag+pubkey wrapper, or raw for NEAR/ADA/TON).
|
|
170
|
+
*/
|
|
171
|
+
export declare function signEddsaMpcV2RecoveryTx(params: {
|
|
172
|
+
message: Buffer;
|
|
173
|
+
userKey: string;
|
|
174
|
+
backupKey: string;
|
|
175
|
+
walletPassphrase: string;
|
|
176
|
+
bitgoKey: string;
|
|
177
|
+
derivationPath: string;
|
|
178
|
+
bitgo?: BitGoBase;
|
|
179
|
+
}): Promise<Buffer>;
|
|
151
180
|
export declare const EddsaMPCv2RecoveryFunctions: {
|
|
152
181
|
isEddsaMpcV1SigningMaterial: typeof isEddsaMpcV1SigningMaterial;
|
|
153
182
|
getEddsaMpcV2RecoveryKeySharesFromReducedKey: typeof getEddsaMpcV2RecoveryKeySharesFromReducedKey;
|
|
154
183
|
signRecoveryEddsaMPCv2: typeof signRecoveryEddsaMPCv2;
|
|
184
|
+
getEddsaSigningMaterial: typeof getEddsaSigningMaterial;
|
|
185
|
+
signEddsaMpcV2RecoveryTx: typeof signEddsaMpcV2RecoveryTx;
|
|
155
186
|
};
|
|
156
187
|
//# sourceMappingURL=eddsaMPCv2.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"eddsaMPCv2.d.ts","sourceRoot":"","sources":["../../../../../../src/bitgo/utils/tss/eddsa/eddsaMPCv2.ts"],"names":[],"mappings":"AAIA,OAAO,EACL,6BAA6B,EAC7B,8BAA8B,EAC9B,6BAA6B,EAC7B,8BAA8B,EAI9B,4BAA4B,EAC7B,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,yBAAyB,EAAE,MAAM,0BAA0B,CAAC;AAErE,OAAO,EAAsC,QAAQ,EAAW,MAAM,oBAAoB,CAAC;AAC3F,OAAO,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AACrD,OAAO,EAAsB,QAAQ,EAAW,yBAAyB,EAAE,MAAM,mBAAmB,CAAC;AAarG,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AACvD,OAAO,EACL,+CAA+C,EAC/C,+CAA+C,EAC/C,+CAA+C,EAC/C,WAAW,EACX,oBAAoB,EAEpB,SAAS,EACT,mBAAmB,EACnB,0BAA0B,EAC1B,gBAAgB,EAChB,SAAS,EAEV,MAAM,cAAc,CAAC;AACtB,OAAO,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AACpD,OAAO,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAC/C,OAAO,EAAE,cAAc,EAAE,MAAM,QAAQ,CAAC;AAExC,OAAO,EAAE,sBAAsB,EAA6B,MAAM,0BAA0B,CAAC;AAC7F,OAAO,EAAE,2BAA2B,EAAE,MAAM,SAAS,CAAC;
|
|
1
|
+
{"version":3,"file":"eddsaMPCv2.d.ts","sourceRoot":"","sources":["../../../../../../src/bitgo/utils/tss/eddsa/eddsaMPCv2.ts"],"names":[],"mappings":"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"}
|