@bitgo/sdk-core 5.2.0 → 6.0.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 +39 -0
- package/dist/src/account-lib/mpc/curves/baseCurve.d.ts +1 -1
- package/dist/src/account-lib/mpc/curves/baseCurve.d.ts.map +1 -1
- package/dist/src/account-lib/mpc/curves/baseCurve.js +1 -1
- package/dist/src/account-lib/mpc/curves/ed25519.d.ts +1 -0
- package/dist/src/account-lib/mpc/curves/ed25519.d.ts.map +1 -1
- package/dist/src/account-lib/mpc/curves/ed25519.js +4 -1
- package/dist/src/account-lib/mpc/index.d.ts +1 -1
- package/dist/src/account-lib/mpc/index.d.ts.map +1 -1
- package/dist/src/account-lib/mpc/index.js +3 -2
- package/dist/src/account-lib/mpc/tss/ecdsa/ecdsa.d.ts +13 -3
- package/dist/src/account-lib/mpc/tss/ecdsa/ecdsa.d.ts.map +1 -1
- package/dist/src/account-lib/mpc/tss/ecdsa/ecdsa.js +277 -44
- package/dist/src/account-lib/mpc/tss/ecdsa/index.d.ts +1 -0
- package/dist/src/account-lib/mpc/tss/ecdsa/index.d.ts.map +1 -1
- package/dist/src/account-lib/mpc/tss/ecdsa/index.js +3 -2
- package/dist/src/account-lib/mpc/tss/ecdsa/rangeproof.d.ts +63 -0
- package/dist/src/account-lib/mpc/tss/ecdsa/rangeproof.d.ts.map +1 -0
- package/dist/src/account-lib/mpc/tss/ecdsa/rangeproof.js +279 -0
- package/dist/src/account-lib/mpc/tss/ecdsa/types.d.ts +79 -4
- 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/index.d.ts +2 -2
- package/dist/src/account-lib/mpc/tss/index.d.ts.map +1 -1
- package/dist/src/account-lib/mpc/tss/index.js +3 -2
- package/dist/src/bitgo/keychain/iKeychains.d.ts +1 -0
- package/dist/src/bitgo/keychain/iKeychains.d.ts.map +1 -1
- package/dist/src/bitgo/keychain/iKeychains.js +1 -1
- package/dist/src/bitgo/keychain/keychains.d.ts.map +1 -1
- package/dist/src/bitgo/keychain/keychains.js +5 -2
- package/dist/src/bitgo/tss/common.d.ts +12 -1
- package/dist/src/bitgo/tss/common.d.ts.map +1 -1
- package/dist/src/bitgo/tss/common.js +30 -2
- package/dist/src/bitgo/tss/ecdsa/ecdsa.d.ts +5 -5
- package/dist/src/bitgo/tss/ecdsa/ecdsa.d.ts.map +1 -1
- package/dist/src/bitgo/tss/ecdsa/ecdsa.js +152 -20
- package/dist/src/bitgo/tss/ecdsa/types.d.ts +2 -0
- package/dist/src/bitgo/tss/ecdsa/types.d.ts.map +1 -1
- package/dist/src/bitgo/tss/ecdsa/types.js +1 -1
- package/dist/src/bitgo/utils/opengpgUtils.d.ts +8 -2
- package/dist/src/bitgo/utils/opengpgUtils.d.ts.map +1 -1
- package/dist/src/bitgo/utils/opengpgUtils.js +31 -8
- package/dist/src/bitgo/utils/tss/baseTSSUtils.d.ts +2 -2
- package/dist/src/bitgo/utils/tss/baseTSSUtils.d.ts.map +1 -1
- package/dist/src/bitgo/utils/tss/baseTSSUtils.js +4 -3
- package/dist/src/bitgo/utils/tss/baseTypes.d.ts +7 -1
- package/dist/src/bitgo/utils/tss/baseTypes.d.ts.map +1 -1
- package/dist/src/bitgo/utils/tss/baseTypes.js +1 -1
- package/dist/src/bitgo/utils/tss/ecdsa/ecdsa.d.ts +18 -12
- package/dist/src/bitgo/utils/tss/ecdsa/ecdsa.d.ts.map +1 -1
- package/dist/src/bitgo/utils/tss/ecdsa/ecdsa.js +92 -61
- package/dist/src/bitgo/utils/tss/ecdsa/types.d.ts +3 -3
- package/dist/src/bitgo/utils/tss/ecdsa/types.d.ts.map +1 -1
- package/dist/src/bitgo/utils/tss/ecdsa/types.js +1 -1
- package/dist/src/bitgo/wallet/iWallet.d.ts +1 -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.map +1 -1
- package/dist/src/bitgo/wallet/wallet.js +5 -2
- package/dist/src/bitgo/wallet/wallets.d.ts.map +1 -1
- package/dist/src/bitgo/wallet/wallets.js +7 -1
- package/dist/tsconfig.tsbuildinfo +83 -58
- package/package.json +5 -4
|
@@ -4,7 +4,7 @@ import { ApiKeyShare, Keychain } from '../../../keychain';
|
|
|
4
4
|
import { IBaseCoin, KeychainsTriplet } from '../../../baseCoin';
|
|
5
5
|
import baseTSSUtils from '../baseTSSUtils';
|
|
6
6
|
import { CreateEcdsaBitGoKeychainParams, CreateEcdsaKeychainParams, KeyShare } from './types';
|
|
7
|
-
import { BackupKeyShare, BitgoHeldBackupKeyShare, TSSParams, TSSParamsForMessage, TxRequest } from '../baseTypes';
|
|
7
|
+
import { BackupGpgKey, BackupKeyShare, BitgoHeldBackupKeyShare, TSSParams, TSSParamsForMessage, TxRequest } from '../baseTypes';
|
|
8
8
|
import { EncryptedNShare } from '../../../tss/ecdsa/types';
|
|
9
9
|
import { BitGoBase } from '../../../bitgoBase';
|
|
10
10
|
import { BackupProvider, IWallet } from '../../../wallet';
|
|
@@ -21,7 +21,7 @@ export declare class EcdsaUtils extends baseTSSUtils<KeyShare> {
|
|
|
21
21
|
* @returns {string} encoded public key
|
|
22
22
|
*/
|
|
23
23
|
static getPublicKeyFromCommonKeychain(commonKeychain: string): string;
|
|
24
|
-
finalizeBitgoHeldBackupKeyShare(keyId: string, commonKeychain: string, userKeyShare: KeyShare, bitgoKeychain: Keychain,
|
|
24
|
+
finalizeBitgoHeldBackupKeyShare(keyId: string, commonKeychain: string, userKeyShare: KeyShare, bitgoKeychain: Keychain, userGpgKey: SerializedKeyPair<string>, thirdPartyBackupPublicGpgKey: Key): Promise<BitgoHeldBackupKeyShare>;
|
|
25
25
|
/** @inheritdoc */
|
|
26
26
|
createKeychains(params: {
|
|
27
27
|
passphrase: string;
|
|
@@ -33,8 +33,14 @@ export declare class EcdsaUtils extends baseTSSUtils<KeyShare> {
|
|
|
33
33
|
* If a third party backup is requested, it will create backup shares from
|
|
34
34
|
* a third party (BitGo as of now), otherwise the key shares will be client generated
|
|
35
35
|
*/
|
|
36
|
-
createBackupKeyShares(isThirdPartyBackup: boolean | undefined, userGpgPubKey: SerializedKeyPair<string
|
|
37
|
-
|
|
36
|
+
createBackupKeyShares(isThirdPartyBackup: boolean | undefined, userGpgPubKey: SerializedKeyPair<string>, enterprise: string | undefined): Promise<BackupKeyShare>;
|
|
37
|
+
/**
|
|
38
|
+
* Gets backup pub gpg key string
|
|
39
|
+
* if a third party provided then get from trust
|
|
40
|
+
* @param isThirdPartyBackup
|
|
41
|
+
*/
|
|
42
|
+
getBackupGpgPubKey(isThirdPartyBackup?: boolean): Promise<BackupGpgKey>;
|
|
43
|
+
createUserKeychain({ userGpgKey, backupGpgKey, bitgoPublicGpgKey, userKeyShare, backupKeyShare, bitgoKeychain, passphrase, originalPasscodeEncryptionCode, isThirdPartyBackup, }: CreateEcdsaKeychainParams): Promise<Keychain>;
|
|
38
44
|
createBackupKeychain({ userGpgKey, userKeyShare, backupGpgKey, backupKeyShare, bitgoKeychain, bitgoPublicGpgKey, passphrase, backupProvider, }: CreateEcdsaKeychainParams): Promise<Keychain>;
|
|
39
45
|
/** @inheritdoc */
|
|
40
46
|
createBitgoKeychain({ userGpgKey, backupGpgKey, userKeyShare, backupKeyShare, enterprise, bitgoPublicGpgKey, isThirdPartyBackup, }: CreateEcdsaBitGoKeychainParams): Promise<Keychain>;
|
|
@@ -44,17 +50,17 @@ export declare class EcdsaUtils extends baseTSSUtils<KeyShare> {
|
|
|
44
50
|
* @param backupShare can either have key shares from the user or third party
|
|
45
51
|
* @param recipientIndex index of the party receiving the backup shares
|
|
46
52
|
* @param recipientGpgPublicArmor gpg armor of the party receiving the backup shares
|
|
47
|
-
* @param
|
|
48
|
-
* @param isThirdPartyBackup
|
|
53
|
+
* @param backupGpgKey backup gpg key
|
|
54
|
+
* @param isThirdPartyBackup whether the backup is generated by third party
|
|
49
55
|
*/
|
|
50
|
-
getBackupEncryptedNShare(backupShare: BackupKeyShare, recipientIndex: number, recipientGpgPublicArmor: string,
|
|
56
|
+
getBackupEncryptedNShare(backupShare: BackupKeyShare, recipientIndex: number, recipientGpgPublicArmor: string, backupGpgKey: SerializedKeyPair<string>, isThirdPartyBackup?: boolean): Promise<EncryptedNShare>;
|
|
51
57
|
/**
|
|
52
58
|
* This uses the backup key from a third party (bitgo in this case)
|
|
53
59
|
* to create the user keychain via WP.
|
|
54
60
|
*/
|
|
55
|
-
createUserKeychainFromThirdPartyBackup(userGpgKey: openpgp.SerializedKeyPair<string>, bitgoPublicGpgKey: Key, userKeyShare: KeyShare,
|
|
61
|
+
createUserKeychainFromThirdPartyBackup(userGpgKey: openpgp.SerializedKeyPair<string>, bitgoPublicGpgKey: Key, thirdPartyBackupPublicGpgKey: Key, userKeyShare: KeyShare, thirdPartybackupKeyShares: ApiKeyShare[], bitgoKeychain: Keychain, passphrase: string, originalPasscodeEncryptionCode?: string): Promise<Keychain>;
|
|
56
62
|
/** @inheritdoc */
|
|
57
|
-
createParticipantKeychain(userGpgKey: openpgp.SerializedKeyPair<string>,
|
|
63
|
+
createParticipantKeychain(userGpgKey: openpgp.SerializedKeyPair<string>, userLocalBackupGpgKey: openpgp.SerializedKeyPair<string>, bitgoPublicGpgKey: Key, recipientIndex: number, userKeyShare: KeyShare, backupKeyShare: KeyShare, bitgoKeychain: Keychain, passphrase: string, originalPasscodeEncryptionCode?: string): Promise<Keychain>;
|
|
58
64
|
/**
|
|
59
65
|
* Gets signing key, txRequestResolved and txRequestId
|
|
60
66
|
* @param {string | TxRequest} params.txRequest - transaction request object or id
|
|
@@ -82,11 +88,11 @@ export declare class EcdsaUtils extends baseTSSUtils<KeyShare> {
|
|
|
82
88
|
/**
|
|
83
89
|
* Verifies the u-value proofs and GPG keys used in generating a TSS ECDSA wallet.
|
|
84
90
|
* @param userGpgPub The user's public GPG key for encryption between user/server
|
|
85
|
-
* @param backupGpgPub The
|
|
91
|
+
* @param backupGpgPub The backup's public GPG key for encryption between backup/server
|
|
86
92
|
* @param bitgoKeychain previously created BitGo keychain; must be compatible with user and backup key shares
|
|
87
|
-
* @param
|
|
93
|
+
* @param decryptedShare The decrypted bitgo-to-user/backup private share retrieved from the keychain
|
|
88
94
|
* @param verifierIndex The index of the party to verify: 1 = user, 2 = backup
|
|
89
95
|
*/
|
|
90
|
-
verifyWalletSignatures(userGpgPub: string, backupGpgPub: string, bitgoKeychain: Keychain,
|
|
96
|
+
verifyWalletSignatures(userGpgPub: string, backupGpgPub: string, bitgoKeychain: Keychain, decryptedShare: string, verifierIndex: 1 | 2): Promise<void>;
|
|
91
97
|
}
|
|
92
98
|
//# sourceMappingURL=ecdsa.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ecdsa.d.ts","sourceRoot":"","sources":["../../../../../../src/bitgo/utils/tss/ecdsa/ecdsa.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"ecdsa.d.ts","sourceRoot":"","sources":["../../../../../../src/bitgo/utils/tss/ecdsa/ecdsa.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,OAAO,MAAM,SAAS,CAAC;AACnC,OAAO,EAAE,GAAG,EAAE,iBAAiB,EAAE,MAAM,SAAS,CAAC;AACjD,OAAO,EAAsB,WAAW,EAAuB,QAAQ,EAAW,MAAM,mBAAmB,CAAC;AAE5G,OAAO,EAAE,SAAS,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AAChE,OAAO,YAAY,MAAM,iBAAiB,CAAC;AAC3C,OAAO,EAAE,8BAA8B,EAAE,yBAAyB,EAAqB,QAAQ,EAAE,MAAM,SAAS,CAAC;AACjH,OAAO,EACL,YAAY,EACZ,cAAc,EACd,uBAAuB,EAEvB,SAAS,EACT,mBAAmB,EACnB,SAAS,EACV,MAAM,cAAc,CAAC;AAEtB,OAAO,EAAkB,eAAe,EAAiB,MAAM,0BAA0B,CAAC;AAE1F,OAAO,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAC/C,OAAO,EAAE,cAAc,EAAE,OAAO,EAAE,MAAM,iBAAiB,CAAC;AAQ1D,kBAAkB;AAClB,qBAAa,UAAW,SAAQ,YAAY,CAAC,QAAQ,CAAC;IAEpD,OAAO,CAAC,iBAAiB,CAAsC;gBAEnD,KAAK,EAAE,SAAS,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,CAAC,EAAE,OAAO;YAKrD,iBAAiB;IAIzB,oBAAoB,IAAI,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC;IAYlD;;;;;OAKG;IACH,MAAM,CAAC,8BAA8B,CAAC,cAAc,EAAE,MAAM,GAAG,MAAM;IAQ/D,+BAA+B,CACnC,KAAK,EAAE,MAAM,EACb,cAAc,EAAE,MAAM,EACtB,YAAY,EAAE,QAAQ,EACtB,aAAa,EAAE,QAAQ,EACvB,UAAU,EAAE,iBAAiB,CAAC,MAAM,CAAC,EACrC,4BAA4B,EAAE,GAAG,GAChC,OAAO,CAAC,uBAAuB,CAAC;IA0CnC,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;QACpD,cAAc,CAAC,EAAE,cAAc,CAAC;KACjC,GAAG,OAAO,CAAC,gBAAgB,CAAC;IAwD7B;;;OAGG;IACG,qBAAqB,CACzB,kBAAkB,qBAAQ,EAC1B,aAAa,EAAE,iBAAiB,CAAC,MAAM,CAAC,EACxC,UAAU,EAAE,MAAM,GAAG,SAAS,GAC7B,OAAO,CAAC,cAAc,CAAC;IAkB1B;;;;OAIG;IACG,kBAAkB,CAAC,kBAAkB,UAAQ,GAAG,OAAO,CAAC,YAAY,CAAC;IAI3E,kBAAkB,CAAC,EACjB,UAAU,EACV,YAAY,EACZ,iBAAiB,EACjB,YAAY,EACZ,cAAc,EACd,aAAa,EACb,UAAU,EACV,8BAA8B,EAC9B,kBAA0B,GAC3B,EAAE,yBAAyB,GAAG,OAAO,CAAC,QAAQ,CAAC;IA8B1C,oBAAoB,CAAC,EACzB,UAAU,EACV,YAAY,EACZ,YAAY,EACZ,cAAc,EACd,aAAa,EACb,iBAAiB,EACjB,UAAU,EACV,cAAc,GACf,EAAE,yBAAyB,GAAG,OAAO,CAAC,QAAQ,CAAC;IAsChD,kBAAkB;IACZ,mBAAmB,CAAC,EACxB,UAAU,EACV,YAAY,EACZ,YAAY,EACZ,cAAc,EACd,UAAU,EACV,iBAAiB,EACjB,kBAA0B,GAC3B,EAAE,8BAA8B,GAAG,OAAO,CAAC,QAAQ,CAAC;IA8CrD;;;;;;;;OAQG;IACG,wBAAwB,CAC5B,WAAW,EAAE,cAAc,EAC3B,cAAc,EAAE,MAAM,EACtB,uBAAuB,EAAE,MAAM,EAC/B,YAAY,EAAE,iBAAiB,CAAC,MAAM,CAAC,EACvC,kBAAkB,UAAQ,GACzB,OAAO,CAAC,eAAe,CAAC;IA0B3B;;;OAGG;IACG,sCAAsC,CAC1C,UAAU,EAAE,OAAO,CAAC,iBAAiB,CAAC,MAAM,CAAC,EAC7C,iBAAiB,EAAE,GAAG,EACtB,4BAA4B,EAAE,GAAG,EACjC,YAAY,EAAE,QAAQ,EACtB,yBAAyB,EAAE,WAAW,EAAE,EACxC,aAAa,EAAE,QAAQ,EACvB,UAAU,EAAE,MAAM,EAClB,8BAA8B,CAAC,EAAE,MAAM,GACtC,OAAO,CAAC,QAAQ,CAAC;IAgEpB,kBAAkB;IACZ,yBAAyB,CAC7B,UAAU,EAAE,OAAO,CAAC,iBAAiB,CAAC,MAAM,CAAC,EAC7C,qBAAqB,EAAE,OAAO,CAAC,iBAAiB,CAAC,MAAM,CAAC,EACxD,iBAAiB,EAAE,GAAG,EACtB,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;IAsGpB;;;;;;OAMG;YACW,eAAe;IAmI7B;;;;;;OAMG;IACG,aAAa,CAAC,MAAM,EAAE,SAAS,GAAG,OAAO,CAAC,SAAS,CAAC;IAI1D;;;;;;OAMG;IACG,uBAAuB,CAAC,MAAM,EAAE,mBAAmB,GAAG,OAAO,CAAC,SAAS,CAAC;IAO9E;;;;;;;OAOG;IACG,sBAAsB,CAC1B,UAAU,EAAE,MAAM,EAClB,YAAY,EAAE,MAAM,EACpB,aAAa,EAAE,QAAQ,EACvB,cAAc,EAAE,MAAM,EACtB,aAAa,EAAE,CAAC,GAAG,CAAC,GACnB,OAAO,CAAC,IAAI,CAAC;CAyCjB"}
|