@bitgo/sdk-core 1.1.0-rc.9 → 1.1.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 +234 -0
- package/dist/src/account-lib/baseCoin/baseTransactionBuilderFactory.d.ts +1 -1
- package/dist/src/account-lib/baseCoin/baseTransactionBuilderFactory.js +1 -1
- package/dist/src/account-lib/baseCoin/ed25519KeyPair.d.ts +2 -2
- package/dist/src/account-lib/baseCoin/ed25519KeyPair.d.ts.map +1 -1
- package/dist/src/account-lib/baseCoin/ed25519KeyPair.js +1 -1
- package/dist/src/account-lib/baseCoin/enum.d.ts +10 -3
- package/dist/src/account-lib/baseCoin/enum.d.ts.map +1 -1
- package/dist/src/account-lib/baseCoin/enum.js +17 -6
- package/dist/src/account-lib/baseCoin/errors.d.ts +1 -1
- package/dist/src/account-lib/baseCoin/errors.js +2 -2
- package/dist/src/account-lib/baseCoin/index.d.ts +1 -1
- package/dist/src/account-lib/baseCoin/index.d.ts.map +1 -1
- package/dist/src/account-lib/baseCoin/index.js +3 -2
- package/dist/src/account-lib/index.d.ts +3 -0
- package/dist/src/account-lib/index.d.ts.map +1 -1
- package/dist/src/account-lib/index.js +19 -1
- package/dist/src/account-lib/mpc/curves/secp256k1.js +7 -7
- package/dist/src/account-lib/mpc/tss/ecdsa/ecdsa.d.ts +47 -1
- package/dist/src/account-lib/mpc/tss/ecdsa/ecdsa.d.ts.map +1 -1
- package/dist/src/account-lib/mpc/tss/ecdsa/ecdsa.js +226 -15
- package/dist/src/account-lib/mpc/tss/ecdsa/types.d.ts +110 -0
- package/dist/src/account-lib/mpc/tss/ecdsa/types.d.ts.map +1 -1
- package/dist/src/account-lib/mpc/tss/ecdsa/types.js +1 -1
- package/dist/src/account-lib/mpc/tss/eddsa/eddsa.d.ts +1 -1
- package/dist/src/account-lib/mpc/tss/eddsa/eddsa.d.ts.map +1 -1
- package/dist/src/account-lib/mpc/tss/eddsa/eddsa.js +6 -3
- package/dist/src/account-lib/mpc/util.d.ts +7 -0
- package/dist/src/account-lib/mpc/util.d.ts.map +1 -1
- package/dist/src/account-lib/mpc/util.js +12 -2
- package/dist/src/account-lib/staking/index.d.ts +2 -0
- package/dist/src/account-lib/staking/index.d.ts.map +1 -0
- package/dist/src/account-lib/staking/index.js +14 -0
- package/dist/src/account-lib/staking/utils.d.ts +19 -0
- package/dist/src/account-lib/staking/utils.d.ts.map +1 -0
- package/dist/src/account-lib/staking/utils.js +98 -0
- package/dist/src/account-lib/util/crypto.d.ts +7 -0
- package/dist/src/account-lib/util/crypto.d.ts.map +1 -1
- package/dist/src/account-lib/util/crypto.js +20 -2
- package/dist/src/bitgo/baseCoin/baseCoin.d.ts +6 -1
- package/dist/src/bitgo/baseCoin/baseCoin.d.ts.map +1 -1
- package/dist/src/bitgo/baseCoin/baseCoin.js +9 -1
- package/dist/src/bitgo/baseCoin/iBaseCoin.d.ts +62 -0
- package/dist/src/bitgo/baseCoin/iBaseCoin.d.ts.map +1 -1
- package/dist/src/bitgo/baseCoin/iBaseCoin.js +1 -1
- package/dist/src/bitgo/coinFactory.d.ts +4 -0
- package/dist/src/bitgo/coinFactory.d.ts.map +1 -1
- package/dist/src/bitgo/coinFactory.js +1 -1
- package/dist/src/bitgo/config.d.ts +85 -0
- package/dist/src/bitgo/config.d.ts.map +1 -1
- package/dist/src/bitgo/config.js +49 -2
- package/dist/src/bitgo/index.d.ts +1 -0
- package/dist/src/bitgo/index.d.ts.map +1 -1
- package/dist/src/bitgo/index.js +2 -1
- package/dist/src/bitgo/pendingApproval/iPendingApproval.d.ts +2 -1
- package/dist/src/bitgo/pendingApproval/iPendingApproval.d.ts.map +1 -1
- package/dist/src/bitgo/pendingApproval/iPendingApproval.js +2 -1
- package/dist/src/bitgo/staking/iStakingWallet.d.ts +69 -0
- package/dist/src/bitgo/staking/iStakingWallet.d.ts.map +1 -0
- package/dist/src/bitgo/staking/iStakingWallet.js +3 -0
- package/dist/src/bitgo/staking/index.d.ts +3 -0
- package/dist/src/bitgo/staking/index.d.ts.map +1 -0
- package/dist/src/bitgo/staking/index.js +15 -0
- package/dist/src/bitgo/staking/stakingWallet.d.ts +67 -0
- package/dist/src/bitgo/staking/stakingWallet.d.ts.map +1 -0
- package/dist/src/bitgo/staking/stakingWallet.js +153 -0
- package/dist/src/bitgo/tss/common.d.ts +23 -0
- package/dist/src/bitgo/tss/common.d.ts.map +1 -0
- package/dist/src/bitgo/tss/common.js +42 -0
- package/dist/src/bitgo/tss/ecdsa/ecdsa.d.ts +26 -0
- package/dist/src/bitgo/tss/ecdsa/ecdsa.d.ts.map +1 -0
- package/dist/src/bitgo/tss/ecdsa/ecdsa.js +91 -0
- package/dist/src/bitgo/tss/ecdsa/index.d.ts +4 -0
- package/dist/src/bitgo/tss/ecdsa/index.d.ts.map +1 -0
- package/dist/src/bitgo/tss/ecdsa/index.js +26 -0
- package/dist/src/bitgo/tss/ecdsa/types.d.ts +28 -0
- package/dist/src/bitgo/tss/ecdsa/types.d.ts.map +1 -0
- package/dist/src/bitgo/tss/ecdsa/types.js +3 -0
- package/dist/src/bitgo/tss/eddsa/eddsa.d.ts +3 -20
- package/dist/src/bitgo/tss/eddsa/eddsa.d.ts.map +1 -1
- package/dist/src/bitgo/tss/eddsa/eddsa.js +9 -44
- package/dist/src/bitgo/tss/index.d.ts +4 -1
- package/dist/src/bitgo/tss/index.d.ts.map +1 -1
- package/dist/src/bitgo/tss/index.js +7 -2
- package/dist/src/bitgo/utils/tss/baseTSSUtils.d.ts +63 -0
- package/dist/src/bitgo/utils/tss/baseTSSUtils.d.ts.map +1 -0
- package/dist/src/bitgo/utils/tss/baseTSSUtils.js +109 -0
- package/dist/src/bitgo/utils/tss/baseTypes.d.ts +95 -0
- package/dist/src/bitgo/utils/tss/baseTypes.d.ts.map +1 -0
- package/dist/src/bitgo/utils/tss/baseTypes.js +10 -0
- package/dist/src/bitgo/utils/tss/ecdsa/ecdsa.d.ts +22 -0
- package/dist/src/bitgo/utils/tss/ecdsa/ecdsa.d.ts.map +1 -0
- package/dist/src/bitgo/utils/tss/ecdsa/ecdsa.js +163 -0
- package/dist/src/bitgo/utils/tss/ecdsa/index.d.ts +3 -0
- package/dist/src/bitgo/utils/tss/ecdsa/index.d.ts.map +1 -0
- package/dist/src/{v2 → bitgo/utils/tss/ecdsa}/index.js +2 -2
- package/dist/src/bitgo/utils/tss/ecdsa/types.d.ts +5 -0
- package/dist/src/bitgo/utils/tss/ecdsa/types.d.ts.map +1 -0
- package/dist/src/bitgo/utils/tss/ecdsa/types.js +3 -0
- package/dist/src/bitgo/utils/tss/eddsa/eddsa.d.ts +12 -44
- package/dist/src/bitgo/utils/tss/eddsa/eddsa.d.ts.map +1 -1
- package/dist/src/bitgo/utils/tss/eddsa/eddsa.js +20 -71
- package/dist/src/bitgo/utils/tss/eddsa/index.d.ts +6 -3
- package/dist/src/bitgo/utils/tss/eddsa/index.d.ts.map +1 -1
- package/dist/src/bitgo/utils/tss/eddsa/index.js +7 -6
- package/dist/src/bitgo/utils/tss/eddsa/types.d.ts +11 -71
- package/dist/src/bitgo/utils/tss/eddsa/types.d.ts.map +1 -1
- package/dist/src/bitgo/utils/tss/eddsa/types.js +4 -7
- package/dist/src/bitgo/utils/tss/index.d.ts +12 -3
- package/dist/src/bitgo/utils/tss/index.d.ts.map +1 -1
- package/dist/src/bitgo/utils/tss/index.js +10 -5
- package/dist/src/bitgo/wallet/iWallet.d.ts +9 -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 +7 -1
- package/dist/src/bitgo/wallet/wallet.d.ts.map +1 -1
- package/dist/src/bitgo/wallet/wallet.js +33 -16
- package/dist/src/coins/fiateur.d.ts +31 -0
- package/dist/src/coins/fiateur.d.ts.map +1 -0
- package/dist/src/coins/fiateur.js +57 -0
- package/dist/src/coins/fiatgbp.d.ts +31 -0
- package/dist/src/coins/fiatgbp.d.ts.map +1 -0
- package/dist/src/coins/fiatgbp.js +57 -0
- package/dist/src/coins/fiatusd.d.ts +31 -0
- package/dist/src/coins/fiatusd.d.ts.map +1 -0
- package/dist/src/coins/fiatusd.js +57 -0
- package/dist/src/coins/index.d.ts +11 -0
- package/dist/src/coins/index.d.ts.map +1 -0
- package/dist/src/coins/index.js +23 -0
- package/dist/src/coins/ofc.d.ts +36 -0
- package/dist/src/coins/ofc.d.ts.map +1 -0
- package/dist/src/coins/ofc.js +102 -0
- package/dist/src/coins/ofcToken.d.ts +47 -0
- package/dist/src/coins/ofcToken.d.ts.map +1 -0
- package/dist/src/coins/ofcToken.js +84 -0
- package/dist/src/coins/susd.d.ts +31 -0
- package/dist/src/coins/susd.d.ts.map +1 -0
- package/dist/src/coins/susd.js +57 -0
- package/dist/src/coins/tfiateur.d.ts +11 -0
- package/dist/src/coins/tfiateur.d.ts.map +1 -0
- package/dist/src/coins/tfiateur.js +17 -0
- package/dist/src/coins/tfiatgbp.d.ts +11 -0
- package/dist/src/coins/tfiatgbp.d.ts.map +1 -0
- package/dist/src/coins/tfiatgbp.js +17 -0
- package/dist/src/coins/tfiatusd.d.ts +11 -0
- package/dist/src/coins/tfiatusd.d.ts.map +1 -0
- package/dist/src/coins/tfiatusd.js +17 -0
- package/dist/src/coins/tsusd.d.ts +11 -0
- package/dist/src/coins/tsusd.d.ts.map +1 -0
- package/dist/src/coins/tsusd.js +17 -0
- 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 +982 -2016
- package/package.json +8 -7
- package/dist/src/account-lib/mpc/tss.d.ts +0 -84
- package/dist/src/account-lib/mpc/tss.d.ts.map +0 -1
- package/dist/src/account-lib/mpc/tss.js +0 -3
- package/dist/src/bigojsError.d.ts +0 -4
- package/dist/src/bigojsError.d.ts.map +0 -1
- package/dist/src/bigojsError.js +0 -11
- package/dist/src/bitgo/utils/iTssUtils.d.ts +0 -65
- package/dist/src/bitgo/utils/iTssUtils.d.ts.map +0 -1
- package/dist/src/bitgo/utils/iTssUtils.js +0 -10
- package/dist/src/v2/environments.d.ts +0 -49
- package/dist/src/v2/environments.d.ts.map +0 -1
- package/dist/src/v2/environments.js +0 -142
- package/dist/src/v2/index.d.ts +0 -3
- package/dist/src/v2/index.d.ts.map +0 -1
- package/dist/src/v2/types.d.ts +0 -2
- package/dist/src/v2/types.d.ts.map +0 -1
- package/dist/src/v2/types.js +0 -3
|
@@ -0,0 +1,95 @@
|
|
|
1
|
+
import { SerializedKeyPair } from 'openpgp';
|
|
2
|
+
import { IRequestTracer } from '../../../api';
|
|
3
|
+
import { KeychainsTriplet } from '../../baseCoin';
|
|
4
|
+
import { Keychain } from '../../keychain';
|
|
5
|
+
import { Memo, WalletType } from '../../wallet/iWallet';
|
|
6
|
+
import { EDDSA } from '../../../account-lib/mpc/tss';
|
|
7
|
+
export declare type TxRequestVersion = 'full' | 'lite';
|
|
8
|
+
export interface PrebuildTransactionWithIntentOptions {
|
|
9
|
+
reqId: IRequestTracer;
|
|
10
|
+
intentType: string;
|
|
11
|
+
sequenceId?: string;
|
|
12
|
+
recipients: {
|
|
13
|
+
address: string;
|
|
14
|
+
amount: string | number;
|
|
15
|
+
tokenName?: string;
|
|
16
|
+
}[];
|
|
17
|
+
comment?: string;
|
|
18
|
+
memo?: Memo;
|
|
19
|
+
tokenName?: string;
|
|
20
|
+
nonce?: string;
|
|
21
|
+
}
|
|
22
|
+
export declare type TxRequestState = 'pendingApproval' | 'canceled' | 'rejected' | 'initialized' | 'pendingDelivery' | 'delivered' | 'pendingUserSignature' | 'signed';
|
|
23
|
+
export declare type TransactionState = 'initialized' | 'pendingSignature' | 'signed' | 'held' | 'delivered' | 'invalidSignature' | 'rejected';
|
|
24
|
+
export declare type SignableTransaction = {
|
|
25
|
+
serializedTxHex: string;
|
|
26
|
+
signableHex: string;
|
|
27
|
+
};
|
|
28
|
+
export declare type UnsignedTransactionTss = SignableTransaction & {
|
|
29
|
+
derivationPath: string;
|
|
30
|
+
feeInfo?: {
|
|
31
|
+
fee: number;
|
|
32
|
+
feeString: string;
|
|
33
|
+
};
|
|
34
|
+
coinSpecific?: Record<string, unknown>;
|
|
35
|
+
parsedTx?: unknown;
|
|
36
|
+
};
|
|
37
|
+
export declare type TxRequest = {
|
|
38
|
+
txRequestId: string;
|
|
39
|
+
walletId: string;
|
|
40
|
+
walletType: WalletType;
|
|
41
|
+
version: number;
|
|
42
|
+
enterpriseId?: string;
|
|
43
|
+
state: TxRequestState;
|
|
44
|
+
date: string;
|
|
45
|
+
userId: string;
|
|
46
|
+
intent: unknown;
|
|
47
|
+
pendingApprovalId?: string;
|
|
48
|
+
policiesChecked: boolean;
|
|
49
|
+
signatureShares?: SignatureShareRecord[];
|
|
50
|
+
pendingTxHashes?: string[];
|
|
51
|
+
txHashes?: string[];
|
|
52
|
+
unsignedTxs: UnsignedTransactionTss[];
|
|
53
|
+
transactions: {
|
|
54
|
+
state: TransactionState;
|
|
55
|
+
unsignedTx: UnsignedTransactionTss;
|
|
56
|
+
signatureShares: SignatureShareRecord[];
|
|
57
|
+
}[];
|
|
58
|
+
apiVersion?: TxRequestVersion;
|
|
59
|
+
latest: boolean;
|
|
60
|
+
};
|
|
61
|
+
export declare enum SignatureShareType {
|
|
62
|
+
USER = "user",
|
|
63
|
+
BACKUP = "backup",
|
|
64
|
+
BITGO = "bitgo"
|
|
65
|
+
}
|
|
66
|
+
export interface SignatureShareRecord {
|
|
67
|
+
from: SignatureShareType;
|
|
68
|
+
to: SignatureShareType;
|
|
69
|
+
share: string;
|
|
70
|
+
}
|
|
71
|
+
/**
|
|
72
|
+
* Common Interface for implementing signature scheme specific
|
|
73
|
+
* util functions
|
|
74
|
+
*/
|
|
75
|
+
export interface ITssUtils<KeyShare = EDDSA.KeyShare> {
|
|
76
|
+
createUserKeychain(userGpgKey: SerializedKeyPair<string>, userKeyShare: KeyShare, backupKeyShare: KeyShare, bitgoKeychain: Keychain, passphrase: string, originalPasscodeEncryptionCode: string, recipientIndex?: number): Promise<Keychain>;
|
|
77
|
+
createBackupKeychain(userGpgKey: SerializedKeyPair<string>, userKeyShare: KeyShare, backupKeyShare: KeyShare, bitgoKeychain: Keychain, passphrase: string): Promise<Keychain>;
|
|
78
|
+
createBitgoKeychain(userGpgKey: SerializedKeyPair<string>, userKeyShare: KeyShare, backupKeyShare: KeyShare, enterprise: string): Promise<Keychain>;
|
|
79
|
+
createKeychains(params: {
|
|
80
|
+
passphrase: string;
|
|
81
|
+
enterprise?: string;
|
|
82
|
+
originalPasscodeEncryptionCode?: string;
|
|
83
|
+
}): Promise<KeychainsTriplet>;
|
|
84
|
+
signTxRequest(params: {
|
|
85
|
+
txRequest: string | TxRequest;
|
|
86
|
+
prv: string;
|
|
87
|
+
reqId: IRequestTracer;
|
|
88
|
+
}): Promise<TxRequest>;
|
|
89
|
+
prebuildTxWithIntent(params: PrebuildTransactionWithIntentOptions, apiVersion?: TxRequestVersion, preview?: boolean): Promise<TxRequest>;
|
|
90
|
+
deleteSignatureShares(txRequestId: string): Promise<SignatureShareRecord[]>;
|
|
91
|
+
sendTxRequest(txRequestId: string): Promise<any>;
|
|
92
|
+
recreateTxRequest(txRequestId: string, decryptedPrv: string, reqId: IRequestTracer): Promise<TxRequest>;
|
|
93
|
+
getTxRequest(txRequestId: string): Promise<TxRequest>;
|
|
94
|
+
}
|
|
95
|
+
//# sourceMappingURL=baseTypes.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"baseTypes.d.ts","sourceRoot":"","sources":["../../../../../src/bitgo/utils/tss/baseTypes.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.SignatureShareType = void 0;
|
|
4
|
+
var SignatureShareType;
|
|
5
|
+
(function (SignatureShareType) {
|
|
6
|
+
SignatureShareType["USER"] = "user";
|
|
7
|
+
SignatureShareType["BACKUP"] = "backup";
|
|
8
|
+
SignatureShareType["BITGO"] = "bitgo";
|
|
9
|
+
})(SignatureShareType = exports.SignatureShareType || (exports.SignatureShareType = {}));
|
|
10
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzZVR5cGVzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2JpdGdvL3V0aWxzL3Rzcy9iYXNlVHlwZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBMEZBLElBQVksa0JBSVg7QUFKRCxXQUFZLGtCQUFrQjtJQUM1QixtQ0FBYSxDQUFBO0lBQ2IsdUNBQWlCLENBQUE7SUFDakIscUNBQWUsQ0FBQTtBQUNqQixDQUFDLEVBSlcsa0JBQWtCLEdBQWxCLDBCQUFrQixLQUFsQiwwQkFBa0IsUUFJN0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBTZXJpYWxpemVkS2V5UGFpciB9IGZyb20gJ29wZW5wZ3AnO1xuaW1wb3J0IHsgSVJlcXVlc3RUcmFjZXIgfSBmcm9tICcuLi8uLi8uLi9hcGknO1xuaW1wb3J0IHsgS2V5Y2hhaW5zVHJpcGxldCB9IGZyb20gJy4uLy4uL2Jhc2VDb2luJztcbmltcG9ydCB7IEtleWNoYWluIH0gZnJvbSAnLi4vLi4va2V5Y2hhaW4nO1xuaW1wb3J0IHsgTWVtbywgV2FsbGV0VHlwZSB9IGZyb20gJy4uLy4uL3dhbGxldC9pV2FsbGV0JztcbmltcG9ydCB7IEVERFNBIH0gZnJvbSAnLi4vLi4vLi4vYWNjb3VudC1saWIvbXBjL3Rzcyc7XG5cbmV4cG9ydCB0eXBlIFR4UmVxdWVzdFZlcnNpb24gPSAnZnVsbCcgfCAnbGl0ZSc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgUHJlYnVpbGRUcmFuc2FjdGlvbldpdGhJbnRlbnRPcHRpb25zIHtcbiAgcmVxSWQ6IElSZXF1ZXN0VHJhY2VyO1xuICBpbnRlbnRUeXBlOiBzdHJpbmc7XG4gIHNlcXVlbmNlSWQ/OiBzdHJpbmc7XG4gIHJlY2lwaWVudHM6IHtcbiAgICBhZGRyZXNzOiBzdHJpbmc7XG4gICAgYW1vdW50OiBzdHJpbmcgfCBudW1iZXI7XG4gICAgdG9rZW5OYW1lPzogc3RyaW5nO1xuICB9W107XG4gIGNvbW1lbnQ/OiBzdHJpbmc7XG4gIG1lbW8/OiBNZW1vO1xuICB0b2tlbk5hbWU/OiBzdHJpbmc7XG4gIG5vbmNlPzogc3RyaW5nO1xufVxuXG5leHBvcnQgdHlwZSBUeFJlcXVlc3RTdGF0ZSA9XG4gIHwgJ3BlbmRpbmdBcHByb3ZhbCdcbiAgfCAnY2FuY2VsZWQnXG4gIHwgJ3JlamVjdGVkJ1xuICB8ICdpbml0aWFsaXplZCdcbiAgfCAncGVuZGluZ0RlbGl2ZXJ5J1xuICB8ICdkZWxpdmVyZWQnXG4gIHwgJ3BlbmRpbmdVc2VyU2lnbmF0dXJlJ1xuICB8ICdzaWduZWQnO1xuXG5leHBvcnQgdHlwZSBUcmFuc2FjdGlvblN0YXRlID1cbiAgfCAnaW5pdGlhbGl6ZWQnXG4gIHwgJ3BlbmRpbmdTaWduYXR1cmUnXG4gIHwgJ3NpZ25lZCdcbiAgfCAnaGVsZCdcbiAgfCAnZGVsaXZlcmVkJ1xuICB8ICdpbnZhbGlkU2lnbmF0dXJlJ1xuICB8ICdyZWplY3RlZCc7XG5cbi8vIFR5cGUgdXNlZCB0byBzaWduIGEgVFNTIHRyYW5zYWN0aW9uXG5leHBvcnQgdHlwZSBTaWduYWJsZVRyYW5zYWN0aW9uID0ge1xuICAvLyB1bnNpZ25lZCB0cmFuc2FjdGlvbiBpbiBicm9hZGNhc3QgZm9ybWF0XG4gIHNlcmlhbGl6ZWRUeEhleDogc3RyaW5nO1xuICAvLyBwb3J0aW9uIG9mIGEgdHJhbnNhY3Rpb24gdXNlZCB0byBnZW5lcmF0ZSBhIHNpZ25hdHVyZVxuICBzaWduYWJsZUhleDogc3RyaW5nO1xufTtcblxuZXhwb3J0IHR5cGUgVW5zaWduZWRUcmFuc2FjdGlvblRzcyA9IFNpZ25hYmxlVHJhbnNhY3Rpb24gJiB7XG4gIC8vIGRlcml2YXRpb24gcGF0aCBvZiB0aGUgc2lnbmVyXG4gIGRlcml2YXRpb25QYXRoOiBzdHJpbmc7XG4gIC8vIHRyYW5zYWN0aW9uIGZlZXNcbiAgZmVlSW5mbz86IHtcbiAgICBmZWU6IG51bWJlcjtcbiAgICBmZWVTdHJpbmc6IHN0cmluZztcbiAgfTtcbiAgY29pblNwZWNpZmljPzogUmVjb3JkPHN0cmluZywgdW5rbm93bj47XG4gIHBhcnNlZFR4PzogdW5rbm93bjtcbn07XG5cbmV4cG9ydCB0eXBlIFR4UmVxdWVzdCA9IHtcbiAgdHhSZXF1ZXN0SWQ6IHN0cmluZztcbiAgd2FsbGV0SWQ6IHN0cmluZztcbiAgd2FsbGV0VHlwZTogV2FsbGV0VHlwZTtcbiAgdmVyc2lvbjogbnVtYmVyO1xuICBlbnRlcnByaXNlSWQ/OiBzdHJpbmc7XG4gIHN0YXRlOiBUeFJlcXVlc3RTdGF0ZTtcbiAgZGF0ZTogc3RyaW5nO1xuICB1c2VySWQ6IHN0cmluZztcbiAgaW50ZW50OiB1bmtub3duOyAvLyBTaG91bGQgb3ZlcnJpZGUgd2l0aCBzaWcgc2NoZW1lIHNwZWNpZmljIGludGVudFxuICBwZW5kaW5nQXBwcm92YWxJZD86IHN0cmluZztcbiAgcG9saWNpZXNDaGVja2VkOiBib29sZWFuO1xuICBzaWduYXR1cmVTaGFyZXM/OiBTaWduYXR1cmVTaGFyZVJlY29yZFtdO1xuICBwZW5kaW5nVHhIYXNoZXM/OiBzdHJpbmdbXTtcbiAgdHhIYXNoZXM/OiBzdHJpbmdbXTtcbiAgLy8gT25seSBhdmFpbGFibGUgaW4gJ2xpdGUnIHZlcnNpb25cbiAgdW5zaWduZWRUeHM6IFVuc2lnbmVkVHJhbnNhY3Rpb25Uc3NbXTsgLy8gU2hvdWxkIG92ZXJyaWRlIHdpdGggYmxvY2tjaGFpbiAvIHNpZyBzY2hlbWUgc3BlY2lmaWMgdW5zaWduZWQgdHhcbiAgLy8gT25seSBhdmFpbGFibGUgaW4gJ2Z1bGwnIHZlcnNpb25cbiAgdHJhbnNhY3Rpb25zOiB7XG4gICAgc3RhdGU6IFRyYW5zYWN0aW9uU3RhdGU7XG4gICAgdW5zaWduZWRUeDogVW5zaWduZWRUcmFuc2FjdGlvblRzczsgLy8gU2hvdWxkIG92ZXJyaWRlIHdpdGggYmxvY2tjaGFpbiAvIHNpZyBzcGVjaWZpYyB1bnNpZ25lZCB0eFxuICAgIHNpZ25hdHVyZVNoYXJlczogU2lnbmF0dXJlU2hhcmVSZWNvcmRbXTtcbiAgfVtdO1xuICBhcGlWZXJzaW9uPzogVHhSZXF1ZXN0VmVyc2lvbjtcbiAgbGF0ZXN0OiBib29sZWFuO1xufTtcblxuZXhwb3J0IGVudW0gU2lnbmF0dXJlU2hhcmVUeXBlIHtcbiAgVVNFUiA9ICd1c2VyJyxcbiAgQkFDS1VQID0gJ2JhY2t1cCcsXG4gIEJJVEdPID0gJ2JpdGdvJyxcbn1cblxuZXhwb3J0IGludGVyZmFjZSBTaWduYXR1cmVTaGFyZVJlY29yZCB7XG4gIGZyb206IFNpZ25hdHVyZVNoYXJlVHlwZTtcbiAgdG86IFNpZ25hdHVyZVNoYXJlVHlwZTtcbiAgc2hhcmU6IHN0cmluZztcbn1cblxuLyoqXG4gKiBDb21tb24gSW50ZXJmYWNlIGZvciBpbXBsZW1lbnRpbmcgc2lnbmF0dXJlIHNjaGVtZSBzcGVjaWZpY1xuICogdXRpbCBmdW5jdGlvbnNcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBJVHNzVXRpbHM8S2V5U2hhcmUgPSBFRERTQS5LZXlTaGFyZT4ge1xuICBjcmVhdGVVc2VyS2V5Y2hhaW4oXG4gICAgdXNlckdwZ0tleTogU2VyaWFsaXplZEtleVBhaXI8c3RyaW5nPixcbiAgICB1c2VyS2V5U2hhcmU6IEtleVNoYXJlLFxuICAgIGJhY2t1cEtleVNoYXJlOiBLZXlTaGFyZSxcbiAgICBiaXRnb0tleWNoYWluOiBLZXljaGFpbixcbiAgICBwYXNzcGhyYXNlOiBzdHJpbmcsXG4gICAgb3JpZ2luYWxQYXNzY29kZUVuY3J5cHRpb25Db2RlOiBzdHJpbmcsXG4gICAgcmVjaXBpZW50SW5kZXg/OiBudW1iZXJcbiAgKTogUHJvbWlzZTxLZXljaGFpbj47XG4gIGNyZWF0ZUJhY2t1cEtleWNoYWluKFxuICAgIHVzZXJHcGdLZXk6IFNlcmlhbGl6ZWRLZXlQYWlyPHN0cmluZz4sXG4gICAgdXNlcktleVNoYXJlOiBLZXlTaGFyZSxcbiAgICBiYWNrdXBLZXlTaGFyZTogS2V5U2hhcmUsXG4gICAgYml0Z29LZXljaGFpbjogS2V5Y2hhaW4sXG4gICAgcGFzc3BocmFzZTogc3RyaW5nXG4gICk6IFByb21pc2U8S2V5Y2hhaW4+O1xuICBjcmVhdGVCaXRnb0tleWNoYWluKFxuICAgIHVzZXJHcGdLZXk6IFNlcmlhbGl6ZWRLZXlQYWlyPHN0cmluZz4sXG4gICAgdXNlcktleVNoYXJlOiBLZXlTaGFyZSxcbiAgICBiYWNrdXBLZXlTaGFyZTogS2V5U2hhcmUsXG4gICAgZW50ZXJwcmlzZTogc3RyaW5nXG4gICk6IFByb21pc2U8S2V5Y2hhaW4+O1xuICBjcmVhdGVLZXljaGFpbnMocGFyYW1zOiB7XG4gICAgcGFzc3BocmFzZTogc3RyaW5nO1xuICAgIGVudGVycHJpc2U/OiBzdHJpbmc7XG4gICAgb3JpZ2luYWxQYXNzY29kZUVuY3J5cHRpb25Db2RlPzogc3RyaW5nO1xuICB9KTogUHJvbWlzZTxLZXljaGFpbnNUcmlwbGV0PjtcbiAgc2lnblR4UmVxdWVzdChwYXJhbXM6IHsgdHhSZXF1ZXN0OiBzdHJpbmcgfCBUeFJlcXVlc3Q7IHBydjogc3RyaW5nOyByZXFJZDogSVJlcXVlc3RUcmFjZXIgfSk6IFByb21pc2U8VHhSZXF1ZXN0PjtcbiAgcHJlYnVpbGRUeFdpdGhJbnRlbnQoXG4gICAgcGFyYW1zOiBQcmVidWlsZFRyYW5zYWN0aW9uV2l0aEludGVudE9wdGlvbnMsXG4gICAgYXBpVmVyc2lvbj86IFR4UmVxdWVzdFZlcnNpb24sXG4gICAgcHJldmlldz86IGJvb2xlYW5cbiAgKTogUHJvbWlzZTxUeFJlcXVlc3Q+O1xuICBkZWxldGVTaWduYXR1cmVTaGFyZXModHhSZXF1ZXN0SWQ6IHN0cmluZyk6IFByb21pc2U8U2lnbmF0dXJlU2hhcmVSZWNvcmRbXT47XG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZXhwbGljaXQtYW55XG4gIHNlbmRUeFJlcXVlc3QodHhSZXF1ZXN0SWQ6IHN0cmluZyk6IFByb21pc2U8YW55PjtcbiAgcmVjcmVhdGVUeFJlcXVlc3QodHhSZXF1ZXN0SWQ6IHN0cmluZywgZGVjcnlwdGVkUHJ2OiBzdHJpbmcsIHJlcUlkOiBJUmVxdWVzdFRyYWNlcik6IFByb21pc2U8VHhSZXF1ZXN0PjtcbiAgZ2V0VHhSZXF1ZXN0KHR4UmVxdWVzdElkOiBzdHJpbmcpOiBQcm9taXNlPFR4UmVxdWVzdD47XG59XG4iXX0=
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { SerializedKeyPair } from 'openpgp';
|
|
2
|
+
import { Keychain } from '../../../keychain';
|
|
3
|
+
import * as openpgp from 'openpgp';
|
|
4
|
+
import { KeychainsTriplet } from '../../../baseCoin';
|
|
5
|
+
import baseTSSUtils from '../baseTSSUtils';
|
|
6
|
+
import { KeyShare } from './types';
|
|
7
|
+
/** @inheritdoc */
|
|
8
|
+
export declare class EcdsaUtils extends baseTSSUtils<KeyShare> {
|
|
9
|
+
/** @inheritdoc */
|
|
10
|
+
createKeychains(params: {
|
|
11
|
+
passphrase: string;
|
|
12
|
+
enterprise?: string | undefined;
|
|
13
|
+
originalPasscodeEncryptionCode?: string | undefined;
|
|
14
|
+
}): Promise<KeychainsTriplet>;
|
|
15
|
+
createUserKeychain(userGpgKey: SerializedKeyPair<string>, userKeyShare: KeyShare, backupKeyShare: KeyShare, bitgoKeychain: Keychain, passphrase: string, originalPasscodeEncryptionCode: string): Promise<Keychain>;
|
|
16
|
+
createBackupKeychain(userGpgKey: SerializedKeyPair<string>, userKeyShare: KeyShare, backupKeyShare: KeyShare, bitgoKeychain: Keychain, passphrase: string): Promise<Keychain>;
|
|
17
|
+
/** @inheritdoc */
|
|
18
|
+
createBitgoKeychain(userGpgKey: SerializedKeyPair<string>, userKeyShare: KeyShare, backupKeyShare: KeyShare, enterprise?: string): Promise<Keychain>;
|
|
19
|
+
/** @inheritdoc */
|
|
20
|
+
createParticipantKeychain(userGpgKey: openpgp.SerializedKeyPair<string>, recipientIndex: number, userKeyShare: KeyShare, backupKeyShare: KeyShare, bitgoKeychain: Keychain, passphrase: string, originalPasscodeEncryptionCode?: string): Promise<Keychain>;
|
|
21
|
+
}
|
|
22
|
+
//# sourceMappingURL=ecdsa.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ecdsa.d.ts","sourceRoot":"","sources":["../../../../../../src/bitgo/utils/tss/ecdsa/ecdsa.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,iBAAiB,EAAE,MAAM,SAAS,CAAC;AAC5C,OAAO,EAAsB,QAAQ,EAAW,MAAM,mBAAmB,CAAC;AAE1E,OAAO,KAAK,OAAO,MAAM,SAAS,CAAC;AACnC,OAAO,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AAErD,OAAO,YAAY,MAAM,iBAAiB,CAAC;AAC3C,OAAO,EAAqB,QAAQ,EAAE,MAAM,SAAS,CAAC;AAItD,kBAAkB;AAClB,qBAAa,UAAW,SAAQ,YAAY,CAAC,QAAQ,CAAC;IACpD,kBAAkB;IACZ,eAAe,CAAC,MAAM,EAAE;QAC5B,UAAU,EAAE,MAAM,CAAC;QACnB,UAAU,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;QAChC,8BAA8B,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;KACrD,GAAG,OAAO,CAAC,gBAAgB,CAAC;IAkD7B,kBAAkB,CAChB,UAAU,EAAE,iBAAiB,CAAC,MAAM,CAAC,EACrC,YAAY,EAAE,QAAQ,EACtB,cAAc,EAAE,QAAQ,EACxB,aAAa,EAAE,QAAQ,EACvB,UAAU,EAAE,MAAM,EAClB,8BAA8B,EAAE,MAAM,GACrC,OAAO,CAAC,QAAQ,CAAC;IAYpB,oBAAoB,CAClB,UAAU,EAAE,iBAAiB,CAAC,MAAM,CAAC,EACrC,YAAY,EAAE,QAAQ,EACtB,cAAc,EAAE,QAAQ,EACxB,aAAa,EAAE,QAAQ,EACvB,UAAU,EAAE,MAAM,GACjB,OAAO,CAAC,QAAQ,CAAC;IAIpB,kBAAkB;IACZ,mBAAmB,CACvB,UAAU,EAAE,iBAAiB,CAAC,MAAM,CAAC,EACrC,YAAY,EAAE,QAAQ,EACtB,cAAc,EAAE,QAAQ,EACxB,UAAU,CAAC,EAAE,MAAM,GAClB,OAAO,CAAC,QAAQ,CAAC;IA0CpB,kBAAkB;IACZ,yBAAyB,CAC7B,UAAU,EAAE,OAAO,CAAC,iBAAiB,CAAC,MAAM,CAAC,EAC7C,cAAc,EAAE,MAAM,EACtB,YAAY,EAAE,QAAQ,EACtB,cAAc,EAAE,QAAQ,EACxB,aAAa,EAAE,QAAQ,EACvB,UAAU,EAAE,MAAM,EAClB,8BAA8B,CAAC,EAAE,MAAM,GACtC,OAAO,CAAC,QAAQ,CAAC;CA6ErB"}
|
|
@@ -0,0 +1,163 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
|
|
5
|
+
}) : (function(o, m, k, k2) {
|
|
6
|
+
if (k2 === undefined) k2 = k;
|
|
7
|
+
o[k2] = m[k];
|
|
8
|
+
}));
|
|
9
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
10
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
11
|
+
}) : function(o, v) {
|
|
12
|
+
o["default"] = v;
|
|
13
|
+
});
|
|
14
|
+
var __importStar = (this && this.__importStar) || function (mod) {
|
|
15
|
+
if (mod && mod.__esModule) return mod;
|
|
16
|
+
var result = {};
|
|
17
|
+
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
18
|
+
__setModuleDefault(result, mod);
|
|
19
|
+
return result;
|
|
20
|
+
};
|
|
21
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
22
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
23
|
+
};
|
|
24
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
25
|
+
exports.EcdsaUtils = void 0;
|
|
26
|
+
const tss_1 = require("../../../../account-lib/mpc/tss");
|
|
27
|
+
const ecdsa_1 = __importDefault(require("../../../tss/ecdsa"));
|
|
28
|
+
const openpgp = __importStar(require("openpgp"));
|
|
29
|
+
const crypto = __importStar(require("crypto"));
|
|
30
|
+
const baseTSSUtils_1 = __importDefault(require("../baseTSSUtils"));
|
|
31
|
+
const encryptNShare = ecdsa_1.default.encryptNShare;
|
|
32
|
+
/** @inheritdoc */
|
|
33
|
+
class EcdsaUtils extends baseTSSUtils_1.default {
|
|
34
|
+
/** @inheritdoc */
|
|
35
|
+
async createKeychains(params) {
|
|
36
|
+
const MPC = new tss_1.Ecdsa();
|
|
37
|
+
const m = 2;
|
|
38
|
+
const n = 3;
|
|
39
|
+
const userKeyShare = await MPC.keyShare(1, m, n);
|
|
40
|
+
const backupKeyShare = await MPC.keyShare(2, m, n);
|
|
41
|
+
const randomHexString = crypto.randomBytes(12).toString('hex');
|
|
42
|
+
openpgp.config.rejectCurves = new Set();
|
|
43
|
+
const userGpgKey = await openpgp.generateKey({
|
|
44
|
+
userIDs: [
|
|
45
|
+
{
|
|
46
|
+
name: randomHexString,
|
|
47
|
+
email: `user-${randomHexString}@${randomHexString}.com`,
|
|
48
|
+
},
|
|
49
|
+
],
|
|
50
|
+
curve: 'secp256k1',
|
|
51
|
+
});
|
|
52
|
+
const bitgoKeychain = await this.createBitgoKeychain(userGpgKey, userKeyShare, backupKeyShare, params.enterprise);
|
|
53
|
+
const userKeychainPromise = this.createParticipantKeychain(userGpgKey, 1, userKeyShare, backupKeyShare, bitgoKeychain, params.passphrase, params.originalPasscodeEncryptionCode);
|
|
54
|
+
const backupKeychainPromise = this.createParticipantKeychain(userGpgKey, 2, userKeyShare, backupKeyShare, bitgoKeychain, params.passphrase);
|
|
55
|
+
const [userKeychain, backupKeychain] = await Promise.all([userKeychainPromise, backupKeychainPromise]);
|
|
56
|
+
return {
|
|
57
|
+
userKeychain,
|
|
58
|
+
backupKeychain,
|
|
59
|
+
bitgoKeychain,
|
|
60
|
+
};
|
|
61
|
+
}
|
|
62
|
+
createUserKeychain(userGpgKey, userKeyShare, backupKeyShare, bitgoKeychain, passphrase, originalPasscodeEncryptionCode) {
|
|
63
|
+
return this.createParticipantKeychain(userGpgKey, 1, userKeyShare, backupKeyShare, bitgoKeychain, passphrase, originalPasscodeEncryptionCode);
|
|
64
|
+
}
|
|
65
|
+
createBackupKeychain(userGpgKey, userKeyShare, backupKeyShare, bitgoKeychain, passphrase) {
|
|
66
|
+
return this.createParticipantKeychain(userGpgKey, 2, userKeyShare, backupKeyShare, bitgoKeychain, passphrase);
|
|
67
|
+
}
|
|
68
|
+
/** @inheritdoc */
|
|
69
|
+
async createBitgoKeychain(userGpgKey, userKeyShare, backupKeyShare, enterprise) {
|
|
70
|
+
const recipientIndex = 3;
|
|
71
|
+
const userToBitgoShare = await encryptNShare(userKeyShare, recipientIndex, userGpgKey.publicKey, userGpgKey.privateKey);
|
|
72
|
+
const backupToBitgoShare = await encryptNShare(backupKeyShare, recipientIndex, userGpgKey.publicKey, userGpgKey.privateKey);
|
|
73
|
+
const createBitGoMPCParams = {
|
|
74
|
+
keyType: 'tss',
|
|
75
|
+
source: 'bitgo',
|
|
76
|
+
keyShares: [
|
|
77
|
+
{
|
|
78
|
+
from: 'user',
|
|
79
|
+
to: 'bitgo',
|
|
80
|
+
publicShare: userToBitgoShare.publicShare,
|
|
81
|
+
privateShare: userToBitgoShare.encryptedPrivateShare,
|
|
82
|
+
},
|
|
83
|
+
{
|
|
84
|
+
from: 'backup',
|
|
85
|
+
to: 'bitgo',
|
|
86
|
+
publicShare: backupToBitgoShare.publicShare,
|
|
87
|
+
privateShare: backupToBitgoShare.encryptedPrivateShare,
|
|
88
|
+
},
|
|
89
|
+
],
|
|
90
|
+
userGPGPublicKey: userGpgKey.publicKey,
|
|
91
|
+
backupGPGPublicKey: userGpgKey.publicKey,
|
|
92
|
+
enterprise: enterprise,
|
|
93
|
+
};
|
|
94
|
+
const keychains = await this.baseCoin.keychains().add(createBitGoMPCParams);
|
|
95
|
+
return keychains;
|
|
96
|
+
}
|
|
97
|
+
/** @inheritdoc */
|
|
98
|
+
async createParticipantKeychain(userGpgKey, recipientIndex, userKeyShare, backupKeyShare, bitgoKeychain, passphrase, originalPasscodeEncryptionCode) {
|
|
99
|
+
const bitgoKeyShares = bitgoKeychain.keyShares;
|
|
100
|
+
if (!bitgoKeyShares) {
|
|
101
|
+
throw new Error('Missing BitGo key shares');
|
|
102
|
+
}
|
|
103
|
+
if (!bitgoKeychain.commonKeychain) {
|
|
104
|
+
throw new Error(`Missing common key chain: ${bitgoKeychain.commonKeychain}`);
|
|
105
|
+
}
|
|
106
|
+
let user;
|
|
107
|
+
let keyShare;
|
|
108
|
+
let otherShare;
|
|
109
|
+
if (recipientIndex === 1) {
|
|
110
|
+
keyShare = userKeyShare;
|
|
111
|
+
otherShare = backupKeyShare;
|
|
112
|
+
user = 'user';
|
|
113
|
+
}
|
|
114
|
+
else if (recipientIndex === 2) {
|
|
115
|
+
keyShare = backupKeyShare;
|
|
116
|
+
otherShare = userKeyShare;
|
|
117
|
+
user = 'backup';
|
|
118
|
+
}
|
|
119
|
+
else {
|
|
120
|
+
throw new Error('Invalid user index');
|
|
121
|
+
}
|
|
122
|
+
const bitGoToUserShare = bitgoKeyShares.find((keyShare) => keyShare.from === 'bitgo' && keyShare.to === user);
|
|
123
|
+
if (!bitGoToUserShare) {
|
|
124
|
+
throw new Error('Missing BitGo to User key share');
|
|
125
|
+
}
|
|
126
|
+
const backupToUserShare = await encryptNShare(otherShare, recipientIndex, userGpgKey.publicKey, userGpgKey.privateKey);
|
|
127
|
+
const encryptedNShares = [
|
|
128
|
+
{
|
|
129
|
+
nShare: backupToUserShare,
|
|
130
|
+
recipientPrivateArmor: userGpgKey.privateKey,
|
|
131
|
+
senderPublicArmor: userGpgKey.publicKey,
|
|
132
|
+
},
|
|
133
|
+
{
|
|
134
|
+
nShare: {
|
|
135
|
+
i: recipientIndex,
|
|
136
|
+
j: 3,
|
|
137
|
+
publicShare: bitGoToUserShare.publicShare,
|
|
138
|
+
encryptedPrivateShare: bitGoToUserShare.privateShare,
|
|
139
|
+
},
|
|
140
|
+
recipientPrivateArmor: userGpgKey.privateKey,
|
|
141
|
+
senderPublicArmor: userGpgKey.publicKey,
|
|
142
|
+
},
|
|
143
|
+
];
|
|
144
|
+
const userCombinedKey = await ecdsa_1.default.createCombinedKey(keyShare, encryptedNShares, bitgoKeychain.commonKeychain);
|
|
145
|
+
const prv = JSON.stringify(userCombinedKey.signingMaterial);
|
|
146
|
+
const userKeychainParams = {
|
|
147
|
+
source: user,
|
|
148
|
+
keyType: 'tss',
|
|
149
|
+
commonKeychain: bitgoKeychain.commonKeychain,
|
|
150
|
+
prv: prv,
|
|
151
|
+
encryptedPrv: this.bitgo.encrypt({
|
|
152
|
+
input: prv,
|
|
153
|
+
password: passphrase,
|
|
154
|
+
}),
|
|
155
|
+
originalPasscodeEncryptionCode,
|
|
156
|
+
};
|
|
157
|
+
const keychains = this.baseCoin.keychains();
|
|
158
|
+
const result = recipientIndex === 1 ? await keychains.add(userKeychainParams) : await keychains.createBackup(userKeychainParams);
|
|
159
|
+
return result;
|
|
160
|
+
}
|
|
161
|
+
}
|
|
162
|
+
exports.EcdsaUtils = EcdsaUtils;
|
|
163
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWNkc2EuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvYml0Z28vdXRpbHMvdHNzL2VjZHNhL2VjZHNhLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQSx5REFBd0Q7QUFHeEQsK0RBQThDO0FBQzlDLGlEQUFtQztBQUVuQywrQ0FBaUM7QUFDakMsbUVBQTJDO0FBRzNDLE1BQU0sYUFBYSxHQUFHLGVBQVksQ0FBQyxhQUFhLENBQUM7QUFFakQsa0JBQWtCO0FBQ2xCLE1BQWEsVUFBVyxTQUFRLHNCQUFzQjtJQUNwRCxrQkFBa0I7SUFDbEIsS0FBSyxDQUFDLGVBQWUsQ0FBQyxNQUlyQjtRQUNDLE1BQU0sR0FBRyxHQUFHLElBQUksV0FBSyxFQUFFLENBQUM7UUFDeEIsTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBQ1osTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBRVosTUFBTSxZQUFZLEdBQUcsTUFBTSxHQUFHLENBQUMsUUFBUSxDQUFDLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUM7UUFDakQsTUFBTSxjQUFjLEdBQUcsTUFBTSxHQUFHLENBQUMsUUFBUSxDQUFDLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUM7UUFFbkQsTUFBTSxlQUFlLEdBQUcsTUFBTSxDQUFDLFdBQVcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLENBQUM7UUFFL0QsT0FBTyxDQUFDLE1BQU0sQ0FBQyxZQUFZLEdBQUcsSUFBSSxHQUFHLEVBQUUsQ0FBQztRQUV4QyxNQUFNLFVBQVUsR0FBRyxNQUFNLE9BQU8sQ0FBQyxXQUFXLENBQUM7WUFDM0MsT0FBTyxFQUFFO2dCQUNQO29CQUNFLElBQUksRUFBRSxlQUFlO29CQUNyQixLQUFLLEVBQUUsUUFBUSxlQUFlLElBQUksZUFBZSxNQUFNO2lCQUN4RDthQUNGO1lBQ0Qs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LENBQUMsUUFBUSxDQUFDLFNBQVMsRUFBRSxDQUFDO1FBQzVDLE1BQU0sTUFBTSxHQUNWLGNBQWMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLE1BQU0sU0FBUyxDQUFDLEdBQUcsQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDLENBQUMsQ0FBQyxNQUFNLFNBQVMsQ0FBQyxZQUFZLENBQUMsa0JBQWtCLENBQUMsQ0FBQztRQUNwSCxPQUFPLE1BQU0sQ0FBQztJQUNoQixDQUFDO0NBQ0Y7QUEzTkQsZ0NBMk5DIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRWNkc2EgfSBmcm9tICcuLi8uLi8uLi8uLi9hY2NvdW50LWxpYi9tcGMvdHNzJztcbmltcG9ydCB7IFNlcmlhbGl6ZWRLZXlQYWlyIH0gZnJvbSAnb3BlbnBncCc7XG5pbXBvcnQgeyBBZGRLZXljaGFpbk9wdGlvbnMsIEtleWNoYWluLCBLZXlUeXBlIH0gZnJvbSAnLi4vLi4vLi4va2V5Y2hhaW4nO1xuaW1wb3J0IEVDRFNBTWV0aG9kcyBmcm9tICcuLi8uLi8uLi90c3MvZWNkc2EnO1xuaW1wb3J0ICogYXMgb3BlbnBncCBmcm9tICdvcGVucGdwJztcbmltcG9ydCB7IEtleWNoYWluc1RyaXBsZXQgfSBmcm9tICcuLi8uLi8uLi9iYXNlQ29pbic7XG5pbXBvcnQgKiBhcyBjcnlwdG8gZnJvbSAnY3J5cHRvJztcbmltcG9ydCBiYXNlVFNTVXRpbHMgZnJvbSAnLi4vYmFzZVRTU1V0aWxzJztcbmltcG9ydCB7IERlY3J5cHRhYmxlTlNoYXJlLCBLZXlTaGFyZSB9IGZyb20gJy4vdHlwZXMnO1xuXG5jb25zdCBlbmNyeXB0TlNoYXJlID0gRUNEU0FNZXRob2RzLmVuY3J5cHROU2hhcmU7XG5cbi8qKiBAaW5oZXJpdGRvYyAqL1xuZXhwb3J0IGNsYXNzIEVjZHNhVXRpbHMgZXh0ZW5kcyBiYXNlVFNTVXRpbHM8S2V5U2hhcmU+IHtcbiAgLyoqIEBpbmhlcml0ZG9jICovXG4gIGFzeW5jIGNyZWF0ZUtleWNoYWlucyhwYXJhbXM6IHtcbiAgICBwYXNzcGhyYXNlOiBzdHJpbmc7XG4gICAgZW50ZXJwcmlzZT86IHN0cmluZyB8IHVuZGVmaW5lZDtcbiAgICBvcmlnaW5hbFBhc3Njb2RlRW5jcnlwdGlvbkNvZGU/OiBzdHJpbmcgfCB1bmRlZmluZWQ7XG4gIH0pOiBQcm9taXNlPEtleWNoYWluc1RyaXBsZXQ+IHtcbiAgICBjb25zdCBNUEMgPSBuZXcgRWNkc2EoKTtcbiAgICBjb25zdCBtID0gMjtcbiAgICBjb25zdCBuID0gMztcblxuICAgIGNvbnN0IHVzZXJLZXlTaGFyZSA9IGF3YWl0IE1QQy5rZXlTaGFyZSgxLCBtLCBuKTtcbiAgICBjb25zdCBiYWNrdXBLZXlTaGFyZSA9IGF3YWl0IE1QQy5rZXlTaGFyZSgyLCBtLCBuKTtcblxuICAgIGNvbnN0IHJhbmRvbUhleFN0cmluZyA9IGNyeXB0by5yYW5kb21CeXRlcygxMikudG9TdHJpbmcoJ2hleCcpO1xuXG4gICAgb3BlbnBncC5jb25maWcucmVqZWN0Q3VydmVzID0gbmV3IFNldCgpO1xuXG4gICAgY29uc3QgdXNlckdwZ0tleSA9IGF3YWl0IG9wZW5wZ3AuZ2VuZXJhdGVLZXkoe1xuICAgICAgdXNlcklEczogW1xuICAgICAgICB7XG4gICAgICAgICAgbmFtZTogcmFuZG9tSGV4U3RyaW5nLFxuICAgICAgICAgIGVtYWlsOiBgdXNlci0ke3JhbmRvbUhleFN0cmluZ31AJHtyYW5kb21IZXhTdHJpbmd9LmNvbWAsXG4gICAgICAgIH0sXG4gICAgICBdLFxuICAgICAgY3VydmU6ICdzZWNwMjU2azEnLFxuICAgIH0pO1xuXG4gICAgY29uc3QgYml0Z29LZXljaGFpbiA9IGF3YWl0IHRoaXMuY3JlYXRlQml0Z29LZXljaGFpbih1c2VyR3BnS2V5LCB1c2VyS2V5U2hhcmUsIGJhY2t1cEtleVNoYXJlLCBwYXJhbXMuZW50ZXJwcmlzZSk7XG4gICAgY29uc3QgdXNlcktleWNoYWluUHJvbWlzZSA9IHRoaXMuY3JlYXRlUGFydGljaXBhbnRLZXljaGFpbihcbiAgICAgIHVzZXJHcGdLZXksXG4gICAgICAxLFxuICAgICAgdXNlcktleVNoYXJlLFxuICAgICAgYmFja3VwS2V5U2hhcmUsXG4gICAgICBiaXRnb0tleWNoYWluLFxuICAgICAgcGFyYW1zLnBhc3NwaHJhc2UsXG4gICAgICBwYXJhbXMub3JpZ2luYWxQYXNzY29kZUVuY3J5cHRpb25Db2RlXG4gICAgKTtcbiAgICBjb25zdCBiYWNrdXBLZXljaGFpblByb21pc2UgPSB0aGlzLmNyZWF0ZVBhcnRpY2lwYW50S2V5Y2hhaW4oXG4gICAgICB1c2VyR3BnS2V5LFxuICAgICAgMixcbiAgICAgIHVzZXJLZXlTaGFyZSxcbiAgICAgIGJhY2t1cEtleVNoYXJlLFxuICAgICAgYml0Z29LZXljaGFpbixcbiAgICAgIHBhcmFtcy5wYXNzcGhyYXNlXG4gICAgKTtcblxuICAgIGNvbnN0IFt1c2VyS2V5Y2hhaW4sIGJhY2t1cEtleWNoYWluXSA9IGF3YWl0IFByb21pc2UuYWxsKFt1c2VyS2V5Y2hhaW5Qcm9taXNlLCBiYWNrdXBLZXljaGFpblByb21pc2VdKTtcblxuICAgIHJldHVybiB7XG4gICAgICB1c2VyS2V5Y2hhaW4sXG4gICAgICBiYWNrdXBLZXljaGFpbixcbiAgICAgIGJpdGdvS2V5Y2hhaW4sXG4gICAgfTtcbiAgfVxuXG4gIGNyZWF0ZVVzZXJLZXljaGFpbihcbiAgICB1c2VyR3BnS2V5OiBTZXJpYWxpemVkS2V5UGFpcjxzdHJpbmc+LFxuICAgIHVzZXJLZXlTaGFyZTogS2V5U2hhcmUsXG4gICAgYmFja3VwS2V5U2hhcmU6IEtleVNoYXJlLFxuICAgIGJpdGdvS2V5Y2hhaW46IEtleWNoYWluLFxuICAgIHBhc3NwaHJhc2U6IHN0cmluZyxcbiAgICBvcmlnaW5hbFBhc3Njb2RlRW5jcnlwdGlvbkNvZGU6IHN0cmluZ1xuICApOiBQcm9taXNlPEtleWNoYWluPiB7XG4gICAgcmV0dXJuIHRoaXMuY3JlYXRlUGFydGljaXBhbnRLZXljaGFpbihcbiAgICAgIHVzZXJHcGdLZXksXG4gICAgICAxLFxuICAgICAgdXNlcktleVNoYXJlLFxuICAgICAgYmFja3VwS2V5U2hhcmUsXG4gICAgICBiaXRnb0tleWNoYWluLFxuICAgICAgcGFzc3BocmFzZSxcbiAgICAgIG9yaWdpbmFsUGFzc2NvZGVFbmNyeXB0aW9uQ29kZVxuICAgICk7XG4gIH1cblxuICBjcmVhdGVCYWNrdXBLZXljaGFpbihcbiAgICB1c2VyR3BnS2V5OiBTZXJpYWxpemVkS2V5UGFpcjxzdHJpbmc+LFxuICAgIHVzZXJLZXlTaGFyZTogS2V5U2hhcmUsXG4gICAgYmFja3VwS2V5U2hhcmU6IEtleVNoYXJlLFxuICAgIGJpdGdvS2V5Y2hhaW46IEtleWNoYWluLFxuICAgIHBhc3NwaHJhc2U6IHN0cmluZ1xuICApOiBQcm9taXNlPEtleWNoYWluPiB7XG4gICAgcmV0dXJuIHRoaXMuY3JlYXRlUGFydGljaXBhbnRLZXljaGFpbih1c2VyR3BnS2V5LCAyLCB1c2VyS2V5U2hhcmUsIGJhY2t1cEtleVNoYXJlLCBiaXRnb0tleWNoYWluLCBwYXNzcGhyYXNlKTtcbiAgfVxuXG4gIC8qKiBAaW5oZXJpdGRvYyAqL1xuICBhc3luYyBjcmVhdGVCaXRnb0tleWNoYWluKFxuICAgIHVzZXJHcGdLZXk6IFNlcmlhbGl6ZWRLZXlQYWlyPHN0cmluZz4sXG4gICAgdXNlcktleVNoYXJlOiBLZXlTaGFyZSxcbiAgICBiYWNrdXBLZXlTaGFyZTogS2V5U2hhcmUsXG4gICAgZW50ZXJwcmlzZT86IHN0cmluZ1xuICApOiBQcm9taXNlPEtleWNoYWluPiB7XG4gICAgY29uc3QgcmVjaXBpZW50SW5kZXggPSAzO1xuICAgIGNvbnN0IHVzZXJUb0JpdGdvU2hhcmUgPSBhd2FpdCBlbmNyeXB0TlNoYXJlKFxuICAgICAgdXNlcktleVNoYXJlLFxuICAgICAgcmVjaXBpZW50SW5kZXgsXG4gICAgICB1c2VyR3BnS2V5LnB1YmxpY0tleSxcbiAgICAgIHVzZXJHcGdLZXkucHJpdmF0ZUtleVxuICAgICk7XG5cbiAgICBjb25zdCBiYWNrdXBUb0JpdGdvU2hhcmUgPSBhd2FpdCBlbmNyeXB0TlNoYXJlKFxuICAgICAgYmFja3VwS2V5U2hhcmUsXG4gICAgICByZWNpcGllbnRJbmRleCxcbiAgICAgIHVzZXJHcGdLZXkucHVibGljS2V5LFxuICAgICAgdXNlckdwZ0tleS5wcml2YXRlS2V5XG4gICAgKTtcblxuICAgIGNvbnN0IGNyZWF0ZUJpdEdvTVBDUGFyYW1zOiBBZGRLZXljaGFpbk9wdGlvbnMgPSB7XG4gICAgICBrZXlUeXBlOiAndHNzJyBhcyBLZXlUeXBlLFxuICAgICAgc291cmNlOiAnYml0Z28nLFxuICAgICAga2V5U2hhcmVzOiBbXG4gICAgICAgIHtcbiAgICAgICAgICBmcm9tOiAndXNlcicsXG4gICAgICAgICAgdG86ICdiaXRnbycsXG4gICAgICAgICAgcHVibGljU2hhcmU6IHVzZXJUb0JpdGdvU2hhcmUucHVibGljU2hhcmUsXG4gICAgICAgICAgcHJpdmF0ZVNoYXJlOiB1c2VyVG9CaXRnb1NoYXJlLmVuY3J5cHRlZFByaXZhdGVTaGFyZSxcbiAgICAgICAgfSxcbiAgICAgICAge1xuICAgICAgICAgIGZyb206ICdiYWNrdXAnLFxuICAgICAgICAgIHRvOiAnYml0Z28nLFxuICAgICAgICAgIHB1YmxpY1NoYXJlOiBiYWNrdXBUb0JpdGdvU2hhcmUucHVibGljU2hhcmUsXG4gICAgICAgICAgcHJpdmF0ZVNoYXJlOiBiYWNrdXBUb0JpdGdvU2hhcmUuZW5jcnlwdGVkUHJpdmF0ZVNoYXJlLFxuICAgICAgICB9LFxuICAgICAgXSxcbiAgICAgIHVzZXJHUEdQdWJsaWNLZXk6IHVzZXJHcGdLZXkucHVibGljS2V5LFxuICAgICAgYmFja3VwR1BHUHVibGljS2V5OiB1c2VyR3BnS2V5LnB1YmxpY0tleSxcbiAgICAgIGVudGVycHJpc2U6IGVudGVycHJpc2UsXG4gICAgfTtcblxuICAgIGNvbnN0IGtleWNoYWlucyA9IGF3YWl0IHRoaXMuYmFzZUNvaW4ua2V5Y2hhaW5zKCkuYWRkKGNyZWF0ZUJpdEdvTVBDUGFyYW1zKTtcbiAgICByZXR1cm4ga2V5Y2hhaW5zO1xuICB9XG5cbiAgLyoqIEBpbmhlcml0ZG9jICovXG4gIGFzeW5jIGNyZWF0ZVBhcnRpY2lwYW50S2V5Y2hhaW4oXG4gICAgdXNlckdwZ0tleTogb3BlbnBncC5TZXJpYWxpemVkS2V5UGFpcjxzdHJpbmc+LFxuICAgIHJlY2lwaWVudEluZGV4OiBudW1iZXIsXG4gICAgdXNlcktleVNoYXJlOiBLZXlTaGFyZSxcbiAgICBiYWNrdXBLZXlTaGFyZTogS2V5U2hhcmUsXG4gICAgYml0Z29LZXljaGFpbjogS2V5Y2hhaW4sXG4gICAgcGFzc3BocmFzZTogc3RyaW5nLFxuICAgIG9yaWdpbmFsUGFzc2NvZGVFbmNyeXB0aW9uQ29kZT86IHN0cmluZ1xuICApOiBQcm9taXNlPEtleWNoYWluPiB7XG4gICAgY29uc3QgYml0Z29LZXlTaGFyZXMgPSBiaXRnb0tleWNoYWluLmtleVNoYXJlcztcbiAgICBpZiAoIWJpdGdvS2V5U2hhcmVzKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ01pc3NpbmcgQml0R28ga2V5IHNoYXJlcycpO1xuICAgIH1cbiAgICBpZiAoIWJpdGdvS2V5Y2hhaW4uY29tbW9uS2V5Y2hhaW4pIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihgTWlzc2luZyBjb21tb24ga2V5IGNoYWluOiAke2JpdGdvS2V5Y2hhaW4uY29tbW9uS2V5Y2hhaW59YCk7XG4gICAgfVxuXG4gICAgbGV0IHVzZXI6IHN0cmluZztcbiAgICBsZXQga2V5U2hhcmU6IEtleVNoYXJlO1xuICAgIGxldCBvdGhlclNoYXJlOiBLZXlTaGFyZTtcbiAgICBpZiAocmVjaXBpZW50SW5kZXggPT09IDEpIHtcbiAgICAgIGtleVNoYXJlID0gdXNlcktleVNoYXJlO1xuICAgICAgb3RoZXJTaGFyZSA9IGJhY2t1cEtleVNoYXJlO1xuICAgICAgdXNlciA9ICd1c2VyJztcbiAgICB9IGVsc2UgaWYgKHJlY2lwaWVudEluZGV4ID09PSAyKSB7XG4gICAgICBrZXlTaGFyZSA9IGJhY2t1cEtleVNoYXJlO1xuICAgICAgb3RoZXJTaGFyZSA9IHVzZXJLZXlTaGFyZTtcbiAgICAgIHVzZXIgPSAnYmFja3VwJztcbiAgICB9IGVsc2Uge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdJbnZhbGlkIHVzZXIgaW5kZXgnKTtcbiAgICB9XG5cbiAgICBjb25zdCBiaXRHb1RvVXNlclNoYXJlID0gYml0Z29LZXlTaGFyZXMuZmluZCgoa2V5U2hhcmUpID0+IGtleVNoYXJlLmZyb20gPT09ICdiaXRnbycgJiYga2V5U2hhcmUudG8gPT09IHVzZXIpO1xuICAgIGlmICghYml0R29Ub1VzZXJTaGFyZSkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdNaXNzaW5nIEJpdEdvIHRvIFVzZXIga2V5IHNoYXJlJyk7XG4gICAgfVxuXG4gICAgY29uc3QgYmFja3VwVG9Vc2VyU2hhcmUgPSBhd2FpdCBlbmNyeXB0TlNoYXJlKFxuICAgICAgb3RoZXJTaGFyZSxcbiAgICAgIHJlY2lwaWVudEluZGV4LFxuICAgICAgdXNlckdwZ0tleS5wdWJsaWNLZXksXG4gICAgICB1c2VyR3BnS2V5LnByaXZhdGVLZXlcbiAgICApO1xuICAgIGNvbnN0IGVuY3J5cHRlZE5TaGFyZXM6IERlY3J5cHRhYmxlTlNoYXJlW10gPSBbXG4gICAgICB7XG4gICAgICAgIG5TaGFyZTogYmFja3VwVG9Vc2VyU2hhcmUsXG4gICAgICAgIHJlY2lwaWVudFByaXZhdGVBcm1vcjogdXNlckdwZ0tleS5wcml2YXRlS2V5LFxuICAgICAgICBzZW5kZXJQdWJsaWNBcm1vcjogdXNlckdwZ0tleS5wdWJsaWNLZXksXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBuU2hhcmU6IHtcbiAgICAgICAgICBpOiByZWNpcGllbnRJbmRleCxcbiAgICAgICAgICBqOiAzLFxuICAgICAgICAgIHB1YmxpY1NoYXJlOiBiaXRHb1RvVXNlclNoYXJlLnB1YmxpY1NoYXJlLFxuICAgICAgICAgIGVuY3J5cHRlZFByaXZhdGVTaGFyZTogYml0R29Ub1VzZXJTaGFyZS5wcml2YXRlU2hhcmUsXG4gICAgICAgIH0sXG4gICAgICAgIHJlY2lwaWVudFByaXZhdGVBcm1vcjogdXNlckdwZ0tleS5wcml2YXRlS2V5LFxuICAgICAgICBzZW5kZXJQdWJsaWNBcm1vcjogdXNlckdwZ0tleS5wdWJsaWNLZXksXG4gICAgICB9LFxuICAgIF07XG5cbiAgICBjb25zdCB1c2VyQ29tYmluZWRLZXkgPSBhd2FpdCBFQ0RTQU1ldGhvZHMuY3JlYXRlQ29tYmluZWRLZXkoXG4gICAgICBrZXlTaGFyZSxcbiAgICAgIGVuY3J5cHRlZE5TaGFyZXMsXG4gICAgICBiaXRnb0tleWNoYWluLmNvbW1vbktleWNoYWluXG4gICAgKTtcblxuICAgIGNvbnN0IHBydiA9IEpTT04uc3RyaW5naWZ5KHVzZXJDb21iaW5lZEtleS5zaWduaW5nTWF0ZXJpYWwpO1xuICAgIGNvbnN0IHVzZXJLZXljaGFpblBhcmFtcyA9IHtcbiAgICAgIHNvdXJjZTogdXNlcixcbiAgICAgIGtleVR5cGU6ICd0c3MnIGFzIEtleVR5cGUsXG4gICAgICBjb21tb25LZXljaGFpbjogYml0Z29LZXljaGFpbi5jb21tb25LZXljaGFpbixcbiAgICAgIHBydjogcHJ2LFxuICAgICAgZW5jcnlwdGVkUHJ2OiB0aGlzLmJpdGdvLmVuY3J5cHQoe1xuICAgICAgICBpbnB1dDogcHJ2LFxuICAgICAgICBwYXNzd29yZDogcGFzc3BocmFzZSxcbiAgICAgIH0pLFxuICAgICAgb3JpZ2luYWxQYXNzY29kZUVuY3J5cHRpb25Db2RlLFxuICAgIH07XG5cbiAgICBjb25zdCBrZXljaGFpbnMgPSB0aGlzLmJhc2VDb2luLmtleWNoYWlucygpO1xuICAgIGNvbnN0IHJlc3VsdCA9XG4gICAgICByZWNpcGllbnRJbmRleCA9PT0gMSA/IGF3YWl0IGtleWNoYWlucy5hZGQodXNlcktleWNoYWluUGFyYW1zKSA6IGF3YWl0IGtleWNoYWlucy5jcmVhdGVCYWNrdXAodXNlcktleWNoYWluUGFyYW1zKTtcbiAgICByZXR1cm4gcmVzdWx0O1xuICB9XG59XG4iXX0=
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../src/bitgo/utils/tss/ecdsa/index.ts"],"names":[],"mappings":"AAAA,cAAc,SAAS,CAAC;AACxB,cAAc,SAAS,CAAC"}
|
|
@@ -10,6 +10,6 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
|
10
10
|
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
11
11
|
};
|
|
12
12
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
13
|
-
__exportStar(require("./
|
|
13
|
+
__exportStar(require("./ecdsa"), exports);
|
|
14
14
|
__exportStar(require("./types"), exports);
|
|
15
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
15
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvYml0Z28vdXRpbHMvdHNzL2VjZHNhL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7OztBQUFBLDBDQUF3QjtBQUN4QiwwQ0FBd0IiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2VjZHNhJztcbmV4cG9ydCAqIGZyb20gJy4vdHlwZXMnO1xuIl19
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import { ECDSA } from '../../../../account-lib/mpc/tss';
|
|
2
|
+
import { ECDSAMethodTypes } from '../../../tss/ecdsa';
|
|
3
|
+
export declare type KeyShare = ECDSA.KeyShare;
|
|
4
|
+
export declare type DecryptableNShare = ECDSAMethodTypes.DecryptableNShare;
|
|
5
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../../../src/bitgo/utils/tss/ecdsa/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,iCAAiC,CAAC;AACxD,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAEtD,oBAAY,QAAQ,GAAG,KAAK,CAAC,QAAQ,CAAC;AACtC,oBAAY,iBAAiB,GAAG,gBAAgB,CAAC,iBAAiB,CAAC"}
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvYml0Z28vdXRpbHMvdHNzL2VjZHNhL3R5cGVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBFQ0RTQSB9IGZyb20gJy4uLy4uLy4uLy4uL2FjY291bnQtbGliL21wYy90c3MnO1xuaW1wb3J0IHsgRUNEU0FNZXRob2RUeXBlcyB9IGZyb20gJy4uLy4uLy4uL3Rzcy9lY2RzYSc7XG5cbmV4cG9ydCB0eXBlIEtleVNoYXJlID0gRUNEU0EuS2V5U2hhcmU7XG5leHBvcnQgdHlwZSBEZWNyeXB0YWJsZU5TaGFyZSA9IEVDRFNBTWV0aG9kVHlwZXMuRGVjcnlwdGFibGVOU2hhcmU7XG4iXX0=
|
|
@@ -1,19 +1,14 @@
|
|
|
1
1
|
import * as openpgp from 'openpgp';
|
|
2
|
-
import { KeyShare } from '../../../../account-lib/mpc/tss';
|
|
3
2
|
import { IRequestTracer } from '../../../../api';
|
|
4
|
-
import { IBaseCoin, KeychainsTriplet } from '../../../baseCoin';
|
|
5
|
-
import { BitGoBase } from '../../../bitgoBase';
|
|
6
3
|
import { Keychain } from '../../../keychain';
|
|
7
|
-
import {
|
|
8
|
-
import {
|
|
9
|
-
import
|
|
4
|
+
import { PrebuildTransactionWithIntentOptions, TxRequest } from '../baseTypes';
|
|
5
|
+
import { KeyShare } from './types';
|
|
6
|
+
import baseTSSUtils from '../baseTSSUtils';
|
|
7
|
+
import { KeychainsTriplet } from '../../../baseCoin';
|
|
10
8
|
/**
|
|
11
9
|
* Utility functions for TSS work flows.
|
|
12
10
|
*/
|
|
13
|
-
export declare class
|
|
14
|
-
private _wallet?;
|
|
15
|
-
constructor(bitgo: BitGoBase, baseCoin: IBaseCoin, wallet?: IWallet);
|
|
16
|
-
private get wallet();
|
|
11
|
+
export declare class EddsaUtils extends baseTSSUtils<KeyShare> {
|
|
17
12
|
/**
|
|
18
13
|
* Creates a Keychain containing the User's TSS signing materials.
|
|
19
14
|
*
|
|
@@ -70,42 +65,11 @@ export declare class TssUtils extends MpcUtils implements ITssUtils {
|
|
|
70
65
|
* Builds a tx request from params and verify it
|
|
71
66
|
*
|
|
72
67
|
* @param {PrebuildTransactionWithIntentOptions} params - parameters to build the tx
|
|
73
|
-
* @param apiVersion
|
|
68
|
+
* @param apiVersion lite or full
|
|
69
|
+
* @param preview boolean indicating if this is to preview a tx request, which will not initiate policy checks or pending approvals
|
|
74
70
|
* @returns {Promise<TxRequest>} - a built tx request
|
|
75
71
|
*/
|
|
76
|
-
prebuildTxWithIntent(params: PrebuildTransactionWithIntentOptions, apiVersion?: string): Promise<TxRequest>;
|
|
77
|
-
/**
|
|
78
|
-
* Call delete signature shares for a txRequest, the endpoint delete the signatures and return them
|
|
79
|
-
*
|
|
80
|
-
* @param {string} txRequestId tx id reference to delete signature shares
|
|
81
|
-
* @returns {SignatureShareRecord[]}
|
|
82
|
-
*/
|
|
83
|
-
deleteSignatureShares(txRequestId: string): Promise<SignatureShareRecord[]>;
|
|
84
|
-
/**
|
|
85
|
-
* Initialize the send procedure once Bitgo has the User To Bitgo GShare
|
|
86
|
-
*
|
|
87
|
-
* @param {String} txRequestId - the txRequest Id
|
|
88
|
-
* @returns {Promise<any>}
|
|
89
|
-
*/
|
|
90
|
-
sendTxRequest(txRequestId: string): Promise<any>;
|
|
91
|
-
/**
|
|
92
|
-
* Delete signature shares, get the tx request without them from the db and sign it to finally send it.
|
|
93
|
-
*
|
|
94
|
-
* Note : This can be performed in order to reach latest network conditions required on pending approval flow.
|
|
95
|
-
*
|
|
96
|
-
* @param {String} txRequestId - the txRequest Id to make the requests.
|
|
97
|
-
* @param {String} decryptedPrv - decrypted prv to sign the tx request.
|
|
98
|
-
* @param {RequestTracer} reqId id tracer.
|
|
99
|
-
* @returns {Promise<any>}
|
|
100
|
-
*/
|
|
101
|
-
recreateTxRequest(txRequestId: string, decryptedPrv: string, reqId: IRequestTracer): Promise<TxRequest>;
|
|
102
|
-
/**
|
|
103
|
-
* Gets the latest Tx Request by id
|
|
104
|
-
*
|
|
105
|
-
* @param {String} txRequestId - the txRequest Id
|
|
106
|
-
* @returns {Promise<TxRequest>}
|
|
107
|
-
*/
|
|
108
|
-
getTxRequest(txRequestId: string): Promise<TxRequest>;
|
|
72
|
+
prebuildTxWithIntent(params: PrebuildTransactionWithIntentOptions, apiVersion?: string, preview?: boolean): Promise<TxRequest>;
|
|
109
73
|
/**
|
|
110
74
|
* Get the commonPub portion of the commonKeychain.
|
|
111
75
|
*
|
|
@@ -114,4 +78,8 @@ export declare class TssUtils extends MpcUtils implements ITssUtils {
|
|
|
114
78
|
*/
|
|
115
79
|
static getPublicKeyFromCommonKeychain(commonKeychain: string): string;
|
|
116
80
|
}
|
|
81
|
+
/**
|
|
82
|
+
* @deprecated - use EddsaUtils
|
|
83
|
+
*/
|
|
84
|
+
export declare const TssUtils: typeof EddsaUtils;
|
|
117
85
|
//# sourceMappingURL=eddsa.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"eddsa.d.ts","sourceRoot":"","sources":["../../../../../../src/bitgo/utils/tss/eddsa/eddsa.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"eddsa.d.ts","sourceRoot":"","sources":["../../../../../../src/bitgo/utils/tss/eddsa/eddsa.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,OAAO,MAAM,SAAS,CAAC;AAGnC,OAAO,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AACjD,OAAO,EAAsB,QAAQ,EAAW,MAAM,mBAAmB,CAAC;AAW1E,OAAO,EAAE,oCAAoC,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAC/E,OAAO,EAAE,QAAQ,EAAU,MAAM,SAAS,CAAC;AAC3C,OAAO,YAAY,MAAM,iBAAiB,CAAC;AAC3C,OAAO,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AACrD;;GAEG;AAEH,qBAAa,UAAW,SAAQ,YAAY,CAAC,QAAQ,CAAC;IACpD;;;;;;;;;OASG;IACG,kBAAkB,CACtB,UAAU,EAAE,OAAO,CAAC,iBAAiB,CAAC,MAAM,CAAC,EAC7C,YAAY,EAAE,QAAQ,EACtB,cAAc,EAAE,QAAQ,EACxB,aAAa,EAAE,QAAQ,EACvB,UAAU,EAAE,MAAM,EAClB,8BAA8B,CAAC,EAAE,MAAM,GACtC,OAAO,CAAC,QAAQ,CAAC;IA8CpB;;;;;;;;OAQG;IACG,oBAAoB,CACxB,UAAU,EAAE,OAAO,CAAC,iBAAiB,CAAC,MAAM,CAAC,EAC7C,YAAY,EAAE,QAAQ,EACtB,cAAc,EAAE,QAAQ,EACxB,aAAa,EAAE,QAAQ,EACvB,UAAU,EAAE,MAAM,GACjB,OAAO,CAAC,QAAQ,CAAC;IA6CpB;;;;;;OAMG;IACG,mBAAmB,CACvB,UAAU,EAAE,OAAO,CAAC,iBAAiB,CAAC,MAAM,CAAC,EAC7C,YAAY,EAAE,QAAQ,EACtB,cAAc,EAAE,QAAQ,EACxB,UAAU,CAAC,EAAE,MAAM,GAClB,OAAO,CAAC,QAAQ,CAAC;IAqCpB;;;;OAIG;IACG,eAAe,CAAC,MAAM,EAAE;QAC5B,UAAU,EAAE,MAAM,CAAC;QACnB,UAAU,CAAC,EAAE,MAAM,CAAC;QACpB,8BAA8B,CAAC,EAAE,MAAM,CAAC;KACzC,GAAG,OAAO,CAAC,gBAAgB,CAAC;IAkD7B;;;;;;;OAOG;IACG,aAAa,CAAC,MAAM,EAAE;QAC1B,SAAS,EAAE,MAAM,GAAG,SAAS,CAAC;QAC9B,GAAG,EAAE,MAAM,CAAC;QACZ,KAAK,EAAE,cAAc,CAAC;KACvB,GAAG,OAAO,CAAC,SAAS,CAAC;IA0DtB;;;;;;;OAOG;IACG,oBAAoB,CACxB,MAAM,EAAE,oCAAoC,EAC5C,UAAU,SAAS,EACnB,OAAO,CAAC,EAAE,OAAO,GAChB,OAAO,CAAC,SAAS,CAAC;IA6BrB;;;;;OAKG;IACH,MAAM,CAAC,8BAA8B,CAAC,cAAc,EAAE,MAAM,GAAG,MAAM;CAOtE;AACD;;GAEG;AACH,eAAO,MAAM,QAAQ,mBAAa,CAAC"}
|