@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.
Files changed (172) hide show
  1. package/CHANGELOG.md +234 -0
  2. package/dist/src/account-lib/baseCoin/baseTransactionBuilderFactory.d.ts +1 -1
  3. package/dist/src/account-lib/baseCoin/baseTransactionBuilderFactory.js +1 -1
  4. package/dist/src/account-lib/baseCoin/ed25519KeyPair.d.ts +2 -2
  5. package/dist/src/account-lib/baseCoin/ed25519KeyPair.d.ts.map +1 -1
  6. package/dist/src/account-lib/baseCoin/ed25519KeyPair.js +1 -1
  7. package/dist/src/account-lib/baseCoin/enum.d.ts +10 -3
  8. package/dist/src/account-lib/baseCoin/enum.d.ts.map +1 -1
  9. package/dist/src/account-lib/baseCoin/enum.js +17 -6
  10. package/dist/src/account-lib/baseCoin/errors.d.ts +1 -1
  11. package/dist/src/account-lib/baseCoin/errors.js +2 -2
  12. package/dist/src/account-lib/baseCoin/index.d.ts +1 -1
  13. package/dist/src/account-lib/baseCoin/index.d.ts.map +1 -1
  14. package/dist/src/account-lib/baseCoin/index.js +3 -2
  15. package/dist/src/account-lib/index.d.ts +3 -0
  16. package/dist/src/account-lib/index.d.ts.map +1 -1
  17. package/dist/src/account-lib/index.js +19 -1
  18. package/dist/src/account-lib/mpc/curves/secp256k1.js +7 -7
  19. package/dist/src/account-lib/mpc/tss/ecdsa/ecdsa.d.ts +47 -1
  20. package/dist/src/account-lib/mpc/tss/ecdsa/ecdsa.d.ts.map +1 -1
  21. package/dist/src/account-lib/mpc/tss/ecdsa/ecdsa.js +226 -15
  22. package/dist/src/account-lib/mpc/tss/ecdsa/types.d.ts +110 -0
  23. package/dist/src/account-lib/mpc/tss/ecdsa/types.d.ts.map +1 -1
  24. package/dist/src/account-lib/mpc/tss/ecdsa/types.js +1 -1
  25. package/dist/src/account-lib/mpc/tss/eddsa/eddsa.d.ts +1 -1
  26. package/dist/src/account-lib/mpc/tss/eddsa/eddsa.d.ts.map +1 -1
  27. package/dist/src/account-lib/mpc/tss/eddsa/eddsa.js +6 -3
  28. package/dist/src/account-lib/mpc/util.d.ts +7 -0
  29. package/dist/src/account-lib/mpc/util.d.ts.map +1 -1
  30. package/dist/src/account-lib/mpc/util.js +12 -2
  31. package/dist/src/account-lib/staking/index.d.ts +2 -0
  32. package/dist/src/account-lib/staking/index.d.ts.map +1 -0
  33. package/dist/src/account-lib/staking/index.js +14 -0
  34. package/dist/src/account-lib/staking/utils.d.ts +19 -0
  35. package/dist/src/account-lib/staking/utils.d.ts.map +1 -0
  36. package/dist/src/account-lib/staking/utils.js +98 -0
  37. package/dist/src/account-lib/util/crypto.d.ts +7 -0
  38. package/dist/src/account-lib/util/crypto.d.ts.map +1 -1
  39. package/dist/src/account-lib/util/crypto.js +20 -2
  40. package/dist/src/bitgo/baseCoin/baseCoin.d.ts +6 -1
  41. package/dist/src/bitgo/baseCoin/baseCoin.d.ts.map +1 -1
  42. package/dist/src/bitgo/baseCoin/baseCoin.js +9 -1
  43. package/dist/src/bitgo/baseCoin/iBaseCoin.d.ts +62 -0
  44. package/dist/src/bitgo/baseCoin/iBaseCoin.d.ts.map +1 -1
  45. package/dist/src/bitgo/baseCoin/iBaseCoin.js +1 -1
  46. package/dist/src/bitgo/coinFactory.d.ts +4 -0
  47. package/dist/src/bitgo/coinFactory.d.ts.map +1 -1
  48. package/dist/src/bitgo/coinFactory.js +1 -1
  49. package/dist/src/bitgo/config.d.ts +85 -0
  50. package/dist/src/bitgo/config.d.ts.map +1 -1
  51. package/dist/src/bitgo/config.js +49 -2
  52. package/dist/src/bitgo/index.d.ts +1 -0
  53. package/dist/src/bitgo/index.d.ts.map +1 -1
  54. package/dist/src/bitgo/index.js +2 -1
  55. package/dist/src/bitgo/pendingApproval/iPendingApproval.d.ts +2 -1
  56. package/dist/src/bitgo/pendingApproval/iPendingApproval.d.ts.map +1 -1
  57. package/dist/src/bitgo/pendingApproval/iPendingApproval.js +2 -1
  58. package/dist/src/bitgo/staking/iStakingWallet.d.ts +69 -0
  59. package/dist/src/bitgo/staking/iStakingWallet.d.ts.map +1 -0
  60. package/dist/src/bitgo/staking/iStakingWallet.js +3 -0
  61. package/dist/src/bitgo/staking/index.d.ts +3 -0
  62. package/dist/src/bitgo/staking/index.d.ts.map +1 -0
  63. package/dist/src/bitgo/staking/index.js +15 -0
  64. package/dist/src/bitgo/staking/stakingWallet.d.ts +67 -0
  65. package/dist/src/bitgo/staking/stakingWallet.d.ts.map +1 -0
  66. package/dist/src/bitgo/staking/stakingWallet.js +153 -0
  67. package/dist/src/bitgo/tss/common.d.ts +23 -0
  68. package/dist/src/bitgo/tss/common.d.ts.map +1 -0
  69. package/dist/src/bitgo/tss/common.js +42 -0
  70. package/dist/src/bitgo/tss/ecdsa/ecdsa.d.ts +26 -0
  71. package/dist/src/bitgo/tss/ecdsa/ecdsa.d.ts.map +1 -0
  72. package/dist/src/bitgo/tss/ecdsa/ecdsa.js +91 -0
  73. package/dist/src/bitgo/tss/ecdsa/index.d.ts +4 -0
  74. package/dist/src/bitgo/tss/ecdsa/index.d.ts.map +1 -0
  75. package/dist/src/bitgo/tss/ecdsa/index.js +26 -0
  76. package/dist/src/bitgo/tss/ecdsa/types.d.ts +28 -0
  77. package/dist/src/bitgo/tss/ecdsa/types.d.ts.map +1 -0
  78. package/dist/src/bitgo/tss/ecdsa/types.js +3 -0
  79. package/dist/src/bitgo/tss/eddsa/eddsa.d.ts +3 -20
  80. package/dist/src/bitgo/tss/eddsa/eddsa.d.ts.map +1 -1
  81. package/dist/src/bitgo/tss/eddsa/eddsa.js +9 -44
  82. package/dist/src/bitgo/tss/index.d.ts +4 -1
  83. package/dist/src/bitgo/tss/index.d.ts.map +1 -1
  84. package/dist/src/bitgo/tss/index.js +7 -2
  85. package/dist/src/bitgo/utils/tss/baseTSSUtils.d.ts +63 -0
  86. package/dist/src/bitgo/utils/tss/baseTSSUtils.d.ts.map +1 -0
  87. package/dist/src/bitgo/utils/tss/baseTSSUtils.js +109 -0
  88. package/dist/src/bitgo/utils/tss/baseTypes.d.ts +95 -0
  89. package/dist/src/bitgo/utils/tss/baseTypes.d.ts.map +1 -0
  90. package/dist/src/bitgo/utils/tss/baseTypes.js +10 -0
  91. package/dist/src/bitgo/utils/tss/ecdsa/ecdsa.d.ts +22 -0
  92. package/dist/src/bitgo/utils/tss/ecdsa/ecdsa.d.ts.map +1 -0
  93. package/dist/src/bitgo/utils/tss/ecdsa/ecdsa.js +163 -0
  94. package/dist/src/bitgo/utils/tss/ecdsa/index.d.ts +3 -0
  95. package/dist/src/bitgo/utils/tss/ecdsa/index.d.ts.map +1 -0
  96. package/dist/src/{v2 → bitgo/utils/tss/ecdsa}/index.js +2 -2
  97. package/dist/src/bitgo/utils/tss/ecdsa/types.d.ts +5 -0
  98. package/dist/src/bitgo/utils/tss/ecdsa/types.d.ts.map +1 -0
  99. package/dist/src/bitgo/utils/tss/ecdsa/types.js +3 -0
  100. package/dist/src/bitgo/utils/tss/eddsa/eddsa.d.ts +12 -44
  101. package/dist/src/bitgo/utils/tss/eddsa/eddsa.d.ts.map +1 -1
  102. package/dist/src/bitgo/utils/tss/eddsa/eddsa.js +20 -71
  103. package/dist/src/bitgo/utils/tss/eddsa/index.d.ts +6 -3
  104. package/dist/src/bitgo/utils/tss/eddsa/index.d.ts.map +1 -1
  105. package/dist/src/bitgo/utils/tss/eddsa/index.js +7 -6
  106. package/dist/src/bitgo/utils/tss/eddsa/types.d.ts +11 -71
  107. package/dist/src/bitgo/utils/tss/eddsa/types.d.ts.map +1 -1
  108. package/dist/src/bitgo/utils/tss/eddsa/types.js +4 -7
  109. package/dist/src/bitgo/utils/tss/index.d.ts +12 -3
  110. package/dist/src/bitgo/utils/tss/index.d.ts.map +1 -1
  111. package/dist/src/bitgo/utils/tss/index.js +10 -5
  112. package/dist/src/bitgo/wallet/iWallet.d.ts +9 -1
  113. package/dist/src/bitgo/wallet/iWallet.d.ts.map +1 -1
  114. package/dist/src/bitgo/wallet/iWallet.js +1 -1
  115. package/dist/src/bitgo/wallet/wallet.d.ts +7 -1
  116. package/dist/src/bitgo/wallet/wallet.d.ts.map +1 -1
  117. package/dist/src/bitgo/wallet/wallet.js +33 -16
  118. package/dist/src/coins/fiateur.d.ts +31 -0
  119. package/dist/src/coins/fiateur.d.ts.map +1 -0
  120. package/dist/src/coins/fiateur.js +57 -0
  121. package/dist/src/coins/fiatgbp.d.ts +31 -0
  122. package/dist/src/coins/fiatgbp.d.ts.map +1 -0
  123. package/dist/src/coins/fiatgbp.js +57 -0
  124. package/dist/src/coins/fiatusd.d.ts +31 -0
  125. package/dist/src/coins/fiatusd.d.ts.map +1 -0
  126. package/dist/src/coins/fiatusd.js +57 -0
  127. package/dist/src/coins/index.d.ts +11 -0
  128. package/dist/src/coins/index.d.ts.map +1 -0
  129. package/dist/src/coins/index.js +23 -0
  130. package/dist/src/coins/ofc.d.ts +36 -0
  131. package/dist/src/coins/ofc.d.ts.map +1 -0
  132. package/dist/src/coins/ofc.js +102 -0
  133. package/dist/src/coins/ofcToken.d.ts +47 -0
  134. package/dist/src/coins/ofcToken.d.ts.map +1 -0
  135. package/dist/src/coins/ofcToken.js +84 -0
  136. package/dist/src/coins/susd.d.ts +31 -0
  137. package/dist/src/coins/susd.d.ts.map +1 -0
  138. package/dist/src/coins/susd.js +57 -0
  139. package/dist/src/coins/tfiateur.d.ts +11 -0
  140. package/dist/src/coins/tfiateur.d.ts.map +1 -0
  141. package/dist/src/coins/tfiateur.js +17 -0
  142. package/dist/src/coins/tfiatgbp.d.ts +11 -0
  143. package/dist/src/coins/tfiatgbp.d.ts.map +1 -0
  144. package/dist/src/coins/tfiatgbp.js +17 -0
  145. package/dist/src/coins/tfiatusd.d.ts +11 -0
  146. package/dist/src/coins/tfiatusd.d.ts.map +1 -0
  147. package/dist/src/coins/tfiatusd.js +17 -0
  148. package/dist/src/coins/tsusd.d.ts +11 -0
  149. package/dist/src/coins/tsusd.d.ts.map +1 -0
  150. package/dist/src/coins/tsusd.js +17 -0
  151. package/dist/src/index.d.ts +2 -0
  152. package/dist/src/index.d.ts.map +1 -1
  153. package/dist/src/index.js +4 -2
  154. package/dist/tsconfig.tsbuildinfo +982 -2016
  155. package/package.json +8 -7
  156. package/dist/src/account-lib/mpc/tss.d.ts +0 -84
  157. package/dist/src/account-lib/mpc/tss.d.ts.map +0 -1
  158. package/dist/src/account-lib/mpc/tss.js +0 -3
  159. package/dist/src/bigojsError.d.ts +0 -4
  160. package/dist/src/bigojsError.d.ts.map +0 -1
  161. package/dist/src/bigojsError.js +0 -11
  162. package/dist/src/bitgo/utils/iTssUtils.d.ts +0 -65
  163. package/dist/src/bitgo/utils/iTssUtils.d.ts.map +0 -1
  164. package/dist/src/bitgo/utils/iTssUtils.js +0 -10
  165. package/dist/src/v2/environments.d.ts +0 -49
  166. package/dist/src/v2/environments.d.ts.map +0 -1
  167. package/dist/src/v2/environments.js +0 -142
  168. package/dist/src/v2/index.d.ts +0 -3
  169. package/dist/src/v2/index.d.ts.map +0 -1
  170. package/dist/src/v2/types.d.ts +0 -2
  171. package/dist/src/v2/types.d.ts.map +0 -1
  172. 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,3 @@
1
+ export * from './ecdsa';
2
+ export * from './types';
3
+ //# sourceMappingURL=index.d.ts.map
@@ -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("./environments"), exports);
13
+ __exportStar(require("./ecdsa"), exports);
14
14
  __exportStar(require("./types"), exports);
15
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvdjIvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7O0FBQUEsaURBQStCO0FBQy9CLDBDQUF3QiIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vZW52aXJvbm1lbnRzJztcbmV4cG9ydCAqIGZyb20gJy4vdHlwZXMnO1xuIl19
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 { IWallet } from '../../../wallet';
8
- import { ITssUtils, PrebuildTransactionWithIntentOptions, SignatureShareRecord, TxRequest } from './types';
9
- import { MpcUtils } from '../../mpcUtils';
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 TssUtils extends MpcUtils implements ITssUtils {
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":"AAMA,OAAO,KAAK,OAAO,MAAM,SAAS,CAAC;AAEnC,OAAc,EAAE,QAAQ,EAAU,MAAM,iCAAiC,CAAC;AAC1E,OAAO,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AACjD,OAAO,EAAE,SAAS,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AAChE,OAAO,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAC/C,OAAO,EAAsB,QAAQ,EAAW,MAAM,mBAAmB,CAAC;AAC1E,OAAO,EAAE,OAAO,EAAE,MAAM,iBAAiB,CAAC;AAC1C,OAAO,EAAE,SAAS,EAAE,oCAAoC,EAAE,oBAAoB,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AAC3G,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAY1C;;GAEG;AAEH,qBAAa,QAAS,SAAQ,QAAS,YAAW,SAAS;IACzD,OAAO,CAAC,OAAO,CAAC,CAAU;gBAEd,KAAK,EAAE,SAAS,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,CAAC,EAAE,OAAO;IAKnE,OAAO,KAAK,MAAM,GAKjB;IAED;;;;;;;;;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;IAqDtB;;;;;;OAMG;IACG,oBAAoB,CAAC,MAAM,EAAE,oCAAoC,EAAE,UAAU,SAAS,GAAG,OAAO,CAAC,SAAS,CAAC;IA4BjH;;;;;OAKG;IACG,qBAAqB,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,oBAAoB,EAAE,CAAC;IAOjF;;;;;OAKG;IACG,aAAa,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC;IAOtD;;;;;;;;;OASG;IACG,iBAAiB,CAAC,WAAW,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE,KAAK,EAAE,cAAc,GAAG,OAAO,CAAC,SAAS,CAAC;IAO7G;;;;;OAKG;IACG,YAAY,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,CAAC;IAI3D;;;;;OAKG;IACH,MAAM,CAAC,8BAA8B,CAAC,cAAc,EAAE,MAAM,GAAG,MAAM;CAOtE"}
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"}