@bitgo/abstract-utxo 3.1.2 → 3.3.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 +14 -0
- package/dist/src/abstractUtxoCoin.d.ts +68 -11
- package/dist/src/abstractUtxoCoin.d.ts.map +1 -1
- package/dist/src/abstractUtxoCoin.js +147 -41
- package/dist/src/sign.js +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -9140
- package/package.json +7 -7
package/CHANGELOG.md
CHANGED
|
@@ -3,6 +3,20 @@
|
|
|
3
3
|
All notable changes to this project will be documented in this file.
|
|
4
4
|
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
|
|
5
5
|
|
|
6
|
+
# [3.3.0](https://github.com/BitGo/BitGoJS/compare/@bitgo/abstract-utxo@3.2.0...@bitgo/abstract-utxo@3.3.0) (2023-07-18)
|
|
7
|
+
|
|
8
|
+
### Features
|
|
9
|
+
|
|
10
|
+
- **abstract-utxo:** always use bitcoin network for validating secondary key signatures ([d9b7022](https://github.com/BitGo/BitGoJS/commit/d9b7022832ed38d8661b842add34caa97f340d31))
|
|
11
|
+
- **abstract-utxo:** move keysSignatures test to separate file ([b9fa5c5](https://github.com/BitGo/BitGoJS/commit/b9fa5c57ae6207974612c96c4cf0941665703a4e))
|
|
12
|
+
|
|
13
|
+
# [3.2.0](https://github.com/BitGo/BitGoJS/compare/@bitgo/abstract-utxo@3.1.2...@bitgo/abstract-utxo@3.2.0) (2023-06-21)
|
|
14
|
+
|
|
15
|
+
### Features
|
|
16
|
+
|
|
17
|
+
- **abstract-utxo:** support express external signer for musig2 inputs ([4401367](https://github.com/BitGo/BitGoJS/commit/44013673d564c976ae7b55788369dc48acbec64f))
|
|
18
|
+
- **utxo-lib:** add extractTransaction to UtxoPsbt ([0c41982](https://github.com/BitGo/BitGoJS/commit/0c41982de5b9397e69b314272c4e0f38bb6f69c3))
|
|
19
|
+
|
|
6
20
|
## [3.1.2](https://github.com/BitGo/BitGoJS/compare/@bitgo/abstract-utxo@3.1.1...@bitgo/abstract-utxo@3.1.2) (2023-06-14)
|
|
7
21
|
|
|
8
22
|
**Note:** Version bump only for package @bitgo/abstract-utxo
|
|
@@ -9,6 +9,30 @@ import { CrossChainRecoverySigned, CrossChainRecoveryUnsigned, RecoveryProvider
|
|
|
9
9
|
import { AddressCoinSpecific, BaseCoin, BitGoBase, ExtraPrebuildParamsOptions, HalfSignedUtxoTransaction, IBaseCoin, IRequestTracer, ITransactionExplanation as BaseTransactionExplanation, Keychain, KeychainsTriplet, ParsedTransaction as BaseParsedTransaction, ParseTransactionOptions as BaseParseTransactionOptions, PrecreateBitGoOptions, PresignTransactionOptions, RequestTracer, SignedTransaction, SignTransactionOptions as BaseSignTransactionOptions, SupplementGenerateWalletOptions, TransactionParams as BaseTransactionParams, TransactionPrebuild as BaseTransactionPrebuild, Triple, VerificationOptions, VerifyAddressOptions as BaseVerifyAddressOptions, VerifyTransactionOptions as BaseVerifyTransactionOptions, Wallet, WalletData } from '@bitgo/sdk-core';
|
|
10
10
|
import { CustomChangeOptions } from './parseOutput';
|
|
11
11
|
import ScriptType2Of3 = utxolib.bitgo.outputScripts.ScriptType2Of3;
|
|
12
|
+
declare type UtxoCustomSigningFunction<TNumber extends number | bigint> = {
|
|
13
|
+
(params: {
|
|
14
|
+
coin: IBaseCoin;
|
|
15
|
+
txPrebuild: TransactionPrebuild<TNumber>;
|
|
16
|
+
pubs?: string[];
|
|
17
|
+
/**
|
|
18
|
+
* signingStep flag becomes applicable when both of the following conditions are met:
|
|
19
|
+
* 1) When the external express signer is activated
|
|
20
|
+
* 2) When the PSBT includes at least one taprootKeyPathSpend input.
|
|
21
|
+
*
|
|
22
|
+
* The signing process of a taprootKeyPathSpend input is a 4-step sequence:
|
|
23
|
+
* i) user nonce generation - signerNonce - this is the first call to external express signer signTransaction
|
|
24
|
+
* ii) bitgo nonce generation - cosignerNonce - this is the first and only call to local signTransaction
|
|
25
|
+
* iii) user signature - signerSignature - this is the second call to external express signer signTransaction
|
|
26
|
+
* iv) bitgo signature - not in signTransaction method’s scope
|
|
27
|
+
*
|
|
28
|
+
* In the absence of this flag, the aforementioned first three sequence is executed in a single signTransaction call.
|
|
29
|
+
*
|
|
30
|
+
* NOTE: We make a strong assumption that the external express signer and its caller uses sticky sessions,
|
|
31
|
+
* since PSBTs are cached in step 1 to be used in step 3 for MuSig2 user secure nonce access.
|
|
32
|
+
*/
|
|
33
|
+
signingStep?: 'signerNonce' | 'signerSignature' | 'cosignerNonce';
|
|
34
|
+
}): Promise<SignedTransaction>;
|
|
35
|
+
};
|
|
12
36
|
declare type Unspent<TNumber extends number | bigint = number> = bitgo.Unspent<TNumber>;
|
|
13
37
|
export interface VerifyAddressOptions extends BaseVerifyAddressOptions {
|
|
14
38
|
chain: number;
|
|
@@ -113,17 +137,20 @@ export interface AddressDetails {
|
|
|
113
137
|
coinSpecific: AddressCoinSpecific;
|
|
114
138
|
addressType?: string;
|
|
115
139
|
}
|
|
116
|
-
|
|
140
|
+
declare type UtxoBaseSignTransactionOptions<TNumber extends number | bigint = number> = BaseSignTransactionOptions & {
|
|
117
141
|
/** Transaction prebuild from bitgo server */
|
|
118
142
|
txPrebuild: {
|
|
143
|
+
/**
|
|
144
|
+
* walletId is required in following 2 scenarios.
|
|
145
|
+
* 1. External signer express mode is used.
|
|
146
|
+
* 2. bitgo MuSig2 nonce is requested
|
|
147
|
+
*/
|
|
119
148
|
walletId?: string;
|
|
120
149
|
txHex: string;
|
|
121
|
-
txInfo
|
|
150
|
+
txInfo?: TransactionInfo<TNumber>;
|
|
122
151
|
};
|
|
123
|
-
/**
|
|
124
|
-
|
|
125
|
-
/** xpubs triple for wallet (user, backup, bitgo) */
|
|
126
|
-
pubs: Triple<string>;
|
|
152
|
+
/** xpubs triple for wallet (user, backup, bitgo). Required only when txPrebuild.txHex is not a PSBT */
|
|
153
|
+
pubs?: Triple<string>;
|
|
127
154
|
/** xpub for cosigner (defaults to bitgo) */
|
|
128
155
|
cosignerPub?: string;
|
|
129
156
|
/**
|
|
@@ -131,7 +158,13 @@ export interface SignTransactionOptions<TNumber extends number | bigint = number
|
|
|
131
158
|
* When false, creates half-signed transaction with placeholder signatures.
|
|
132
159
|
*/
|
|
133
160
|
isLastSignature?: boolean;
|
|
134
|
-
}
|
|
161
|
+
};
|
|
162
|
+
export declare type SignTransactionOptions<TNumber extends number | bigint = number> = UtxoBaseSignTransactionOptions<TNumber> & ({
|
|
163
|
+
prv: string;
|
|
164
|
+
signingStep?: 'signerNonce' | 'signerSignature';
|
|
165
|
+
} | {
|
|
166
|
+
signingStep: 'cosignerNonce';
|
|
167
|
+
});
|
|
135
168
|
export interface MultiSigAddress {
|
|
136
169
|
outputScript: Buffer;
|
|
137
170
|
redeemScript?: Buffer;
|
|
@@ -151,9 +184,13 @@ export interface RecoverFromWrongChainOptions {
|
|
|
151
184
|
signed?: boolean;
|
|
152
185
|
}
|
|
153
186
|
export interface VerifyKeySignaturesOptions {
|
|
154
|
-
userKeychain
|
|
155
|
-
|
|
156
|
-
|
|
187
|
+
userKeychain: {
|
|
188
|
+
pub?: string;
|
|
189
|
+
};
|
|
190
|
+
keychainToVerify: {
|
|
191
|
+
pub?: string;
|
|
192
|
+
};
|
|
193
|
+
keySignature: string;
|
|
157
194
|
}
|
|
158
195
|
export interface VerifyUserPublicKeyOptions {
|
|
159
196
|
userKeychain?: Keychain;
|
|
@@ -176,6 +213,15 @@ export declare abstract class AbstractUtxoCoin extends BaseCoin {
|
|
|
176
213
|
readonly amountType: 'number' | 'bigint';
|
|
177
214
|
private readonly _network;
|
|
178
215
|
protected constructor(bitgo: BitGoBase, network: utxolib.Network, amountType?: 'number' | 'bigint');
|
|
216
|
+
/**
|
|
217
|
+
* Key Value: Unsigned tx id => PSBT
|
|
218
|
+
* It is used to cache PSBTs with taproot key path (MuSig2) inputs during external express signer is activated.
|
|
219
|
+
* Reason: MuSig2 signer secure nonce is cached in the UtxoPsbt object. It will be required during the signing step.
|
|
220
|
+
* For more info, check SignTransactionOptions.signingStep
|
|
221
|
+
*
|
|
222
|
+
* TODO BTC-276: This cache may need to be done with LRU like memory safe caching if memory issues comes up.
|
|
223
|
+
*/
|
|
224
|
+
private static readonly PSBT_CACHE;
|
|
179
225
|
get network(): utxolib.Network;
|
|
180
226
|
sweepWithSendMany(): boolean;
|
|
181
227
|
/** @deprecated */
|
|
@@ -249,7 +295,7 @@ export declare abstract class AbstractUtxoCoin extends BaseCoin {
|
|
|
249
295
|
* @param {VerifyKeySignaturesOptions} params
|
|
250
296
|
* @return {{backup: boolean, bitgo: boolean}}
|
|
251
297
|
*/
|
|
252
|
-
|
|
298
|
+
verifyKeySignature(params: VerifyKeySignaturesOptions): boolean;
|
|
253
299
|
/**
|
|
254
300
|
* Verify signatures against the user private key over the change wallet extended keys
|
|
255
301
|
* @param {ParsedTransaction} tx
|
|
@@ -334,6 +380,17 @@ export declare abstract class AbstractUtxoCoin extends BaseCoin {
|
|
|
334
380
|
* @returns {Promise<SignedTransaction | HalfSignedUtxoTransaction>}
|
|
335
381
|
*/
|
|
336
382
|
signTransaction<TNumber extends number | bigint = number>(params: SignTransactionOptions<TNumber>): Promise<SignedTransaction | HalfSignedUtxoTransaction>;
|
|
383
|
+
/**
|
|
384
|
+
* Sign a transaction with a custom signing function. Example use case is express external signer
|
|
385
|
+
* @param customSigningFunction custom signing function that returns a single signed transaction
|
|
386
|
+
* @param signTransactionParams parameters for custom signing function. Includes txPrebuild and pubs (for legacy tx only).
|
|
387
|
+
*
|
|
388
|
+
* @returns signed transaction as hex string
|
|
389
|
+
*/
|
|
390
|
+
signWithCustomSigningFunction<TNumber extends number | bigint>(customSigningFunction: UtxoCustomSigningFunction<TNumber>, signTransactionParams: {
|
|
391
|
+
txPrebuild: TransactionPrebuild<TNumber>;
|
|
392
|
+
pubs?: string[];
|
|
393
|
+
}): Promise<SignedTransaction>;
|
|
337
394
|
/**
|
|
338
395
|
* @param unspent
|
|
339
396
|
* @returns {boolean}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"abstractUtxoCoin.d.ts","sourceRoot":"","sources":["../../src/abstractUtxoCoin.ts"],"names":[],"mappings":";AAAA;;GAEG;AACH,OAAO,KAAK,OAAO,MAAM,iBAAiB,CAAC;AAC3C,OAAO,EAAyB,KAAK,EAAE,MAAM,iBAAiB,CAAC;AAQ/D,OAAO,EAAE,iBAAiB,EAAE,aAAa,EAAE,MAAM,8BAA8B,CAAC;AAChF,OAAO,EACL,wBAAwB,EACxB,0BAA0B,EAG1B,gBAAgB,EACjB,MAAM,YAAY,CAAC;AAEpB,OAAO,EACL,mBAAmB,EAEnB,QAAQ,EACR,SAAS,EACT,0BAA0B,EAC1B,yBAAyB,EACzB,SAAS,EAIT,cAAc,
|
|
1
|
+
{"version":3,"file":"abstractUtxoCoin.d.ts","sourceRoot":"","sources":["../../src/abstractUtxoCoin.ts"],"names":[],"mappings":"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"}
|