@bitgo-beta/sdk-core 8.2.1-beta.11 → 8.2.1-beta.110
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 +302 -0
- package/dist/src/account-lib/baseCoin/enum.d.ts +4 -1
- package/dist/src/account-lib/baseCoin/enum.d.ts.map +1 -1
- package/dist/src/account-lib/baseCoin/enum.js +7 -1
- package/dist/src/account-lib/mpc/curves/ed25519.d.ts +4 -18
- package/dist/src/account-lib/mpc/curves/ed25519.d.ts.map +1 -1
- package/dist/src/account-lib/mpc/curves/ed25519.js +6 -60
- package/dist/src/account-lib/mpc/index.d.ts +4 -4
- package/dist/src/account-lib/mpc/index.d.ts.map +1 -1
- package/dist/src/account-lib/mpc/index.js +6 -6
- package/dist/src/account-lib/mpc/shamir.d.ts +5 -37
- package/dist/src/account-lib/mpc/shamir.d.ts.map +1 -1
- package/dist/src/account-lib/mpc/shamir.js +6 -130
- package/dist/src/account-lib/mpc/tss/ecdsa/ecdsa.d.ts +34 -12
- package/dist/src/account-lib/mpc/tss/ecdsa/ecdsa.d.ts.map +1 -1
- package/dist/src/account-lib/mpc/tss/ecdsa/ecdsa.js +555 -146
- package/dist/src/account-lib/mpc/tss/ecdsa/rangeproof.d.ts +2 -2
- package/dist/src/account-lib/mpc/tss/ecdsa/rangeproof.d.ts.map +1 -1
- package/dist/src/account-lib/mpc/tss/ecdsa/rangeproof.js +3 -3
- package/dist/src/account-lib/mpc/tss/ecdsa/types.d.ts +70 -55
- 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 +1 -1
- package/dist/src/account-lib/mpc/tss/eddsa/types.d.ts +0 -3
- package/dist/src/account-lib/mpc/tss/eddsa/types.d.ts.map +1 -1
- package/dist/src/account-lib/mpc/tss/eddsa/types.js +1 -1
- package/dist/src/bitgo/baseCoin/baseCoin.d.ts +16 -0
- package/dist/src/bitgo/baseCoin/baseCoin.d.ts.map +1 -1
- package/dist/src/bitgo/baseCoin/baseCoin.js +15 -1
- package/dist/src/bitgo/baseCoin/iBaseCoin.d.ts +20 -4
- package/dist/src/bitgo/baseCoin/iBaseCoin.d.ts.map +1 -1
- package/dist/src/bitgo/baseCoin/iBaseCoin.js +1 -1
- package/dist/src/bitgo/bitgoBase.d.ts +2 -1
- package/dist/src/bitgo/bitgoBase.d.ts.map +1 -1
- package/dist/src/bitgo/bitgoBase.js +1 -1
- package/dist/src/bitgo/enterprise/enterprise.d.ts +13 -1
- package/dist/src/bitgo/enterprise/enterprise.d.ts.map +1 -1
- package/dist/src/bitgo/enterprise/enterprise.js +29 -1
- package/dist/src/bitgo/enterprise/enterprises.d.ts +6 -0
- package/dist/src/bitgo/enterprise/enterprises.d.ts.map +1 -1
- package/dist/src/bitgo/enterprise/enterprises.js +26 -1
- package/dist/src/bitgo/enterprise/iEnterprise.d.ts +4 -1
- package/dist/src/bitgo/enterprise/iEnterprise.d.ts.map +1 -1
- package/dist/src/bitgo/enterprise/iEnterprise.js +1 -1
- package/dist/src/bitgo/enterprise/iEnterprises.d.ts +2 -0
- package/dist/src/bitgo/enterprise/iEnterprises.d.ts.map +1 -1
- package/dist/src/bitgo/enterprise/iEnterprises.js +1 -1
- package/dist/src/bitgo/environments.d.ts +7 -0
- package/dist/src/bitgo/environments.d.ts.map +1 -1
- package/dist/src/bitgo/environments.js +17 -3
- package/dist/src/bitgo/keychain/iKeychains.d.ts +6 -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 +30 -24
- package/dist/src/bitgo/keychain/ovcJsonCodec.d.ts +124 -89
- package/dist/src/bitgo/keychain/ovcJsonCodec.d.ts.map +1 -1
- package/dist/src/bitgo/keychain/ovcJsonCodec.js +31 -24
- package/dist/src/bitgo/pendingApproval/iPendingApproval.d.ts +2 -0
- package/dist/src/bitgo/pendingApproval/iPendingApproval.d.ts.map +1 -1
- package/dist/src/bitgo/pendingApproval/iPendingApproval.js +1 -1
- package/dist/src/bitgo/pendingApproval/pendingApproval.d.ts.map +1 -1
- package/dist/src/bitgo/pendingApproval/pendingApproval.js +13 -1
- package/dist/src/bitgo/recovery/initiate.d.ts +7 -1
- package/dist/src/bitgo/recovery/initiate.d.ts.map +1 -1
- package/dist/src/bitgo/recovery/initiate.js +1 -1
- package/dist/src/bitgo/staking/iStakingWallet.d.ts +11 -1
- package/dist/src/bitgo/staking/iStakingWallet.d.ts.map +1 -1
- package/dist/src/bitgo/staking/iStakingWallet.js +1 -1
- package/dist/src/bitgo/staking/stakingWallet.d.ts +7 -1
- package/dist/src/bitgo/staking/stakingWallet.d.ts.map +1 -1
- package/dist/src/bitgo/staking/stakingWallet.js +9 -1
- package/dist/src/bitgo/tss/common.d.ts +15 -4
- package/dist/src/bitgo/tss/common.d.ts.map +1 -1
- package/dist/src/bitgo/tss/common.js +26 -11
- package/dist/src/bitgo/tss/ecdsa/ecdsa.d.ts +11 -8
- package/dist/src/bitgo/tss/ecdsa/ecdsa.d.ts.map +1 -1
- package/dist/src/bitgo/tss/ecdsa/ecdsa.js +36 -33
- package/dist/src/bitgo/tss/ecdsa/types.d.ts +2 -2
- 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/tss/eddsa/eddsa.d.ts +6 -5
- package/dist/src/bitgo/tss/eddsa/eddsa.d.ts.map +1 -1
- package/dist/src/bitgo/tss/eddsa/eddsa.js +20 -9
- package/dist/src/bitgo/tss/types.d.ts +19 -0
- package/dist/src/bitgo/tss/types.d.ts.map +1 -1
- package/dist/src/bitgo/tss/types.js +1 -1
- package/dist/src/bitgo/utils/codecProps.d.ts +7 -0
- package/dist/src/bitgo/utils/codecProps.d.ts.map +1 -0
- package/dist/src/bitgo/utils/codecProps.js +41 -0
- package/dist/src/bitgo/utils/opengpgUtils.d.ts.map +1 -1
- package/dist/src/bitgo/utils/opengpgUtils.js +7 -10
- package/dist/src/bitgo/utils/postWithCodec.d.ts +18 -0
- package/dist/src/bitgo/utils/postWithCodec.d.ts.map +1 -0
- package/dist/src/bitgo/utils/postWithCodec.js +59 -0
- package/dist/src/bitgo/utils/tss/baseTSSUtils.d.ts +54 -12
- package/dist/src/bitgo/utils/tss/baseTSSUtils.d.ts.map +1 -1
- package/dist/src/bitgo/utils/tss/baseTSSUtils.js +66 -9
- package/dist/src/bitgo/utils/tss/baseTypes.d.ts +99 -8
- package/dist/src/bitgo/utils/tss/baseTypes.d.ts.map +1 -1
- package/dist/src/bitgo/utils/tss/baseTypes.js +26 -2
- package/dist/src/bitgo/utils/tss/ecdsa/ecdsa.d.ts +47 -7
- package/dist/src/bitgo/utils/tss/ecdsa/ecdsa.d.ts.map +1 -1
- package/dist/src/bitgo/utils/tss/ecdsa/ecdsa.js +242 -128
- package/dist/src/bitgo/utils/tss/ecdsa/types.d.ts +9 -0
- 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/utils/tss/eddsa/eddsa.d.ts +18 -5
- package/dist/src/bitgo/utils/tss/eddsa/eddsa.d.ts.map +1 -1
- package/dist/src/bitgo/utils/tss/eddsa/eddsa.js +79 -25
- package/dist/src/bitgo/wallet/BuildParams.d.ts +110 -0
- package/dist/src/bitgo/wallet/BuildParams.d.ts.map +1 -0
- package/dist/src/bitgo/wallet/BuildParams.js +119 -0
- package/dist/src/bitgo/wallet/SendTransactionRequest.d.ts +92 -0
- package/dist/src/bitgo/wallet/SendTransactionRequest.d.ts.map +1 -0
- package/dist/src/bitgo/wallet/SendTransactionRequest.js +41 -0
- package/dist/src/bitgo/wallet/iWallet.d.ts +13 -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 +11 -2
- package/dist/src/bitgo/wallet/wallet.d.ts.map +1 -1
- package/dist/src/bitgo/wallet/wallet.js +136 -80
- package/dist/src/index.d.ts +5 -1
- package/dist/src/index.d.ts.map +1 -1
- package/dist/src/index.js +4 -2
- package/dist/src/openssl/index.d.ts +4 -1
- package/dist/src/openssl/index.d.ts.map +1 -1
- package/dist/src/openssl/index.js +7 -12
- package/dist/test/node.utils.d.ts +2 -0
- package/dist/test/node.utils.d.ts.map +1 -0
- package/dist/test/node.utils.js +5 -0
- package/dist/test/unit/bitgo/utils/postWithCodec.d.ts +2 -0
- package/dist/test/unit/bitgo/utils/postWithCodec.d.ts.map +1 -0
- package/dist/test/unit/bitgo/utils/postWithCodec.js +79 -0
- package/dist/test/unit/bitgo/wallet/SendTransactionRequest.d.ts +2 -0
- package/dist/test/unit/bitgo/wallet/SendTransactionRequest.d.ts.map +1 -0
- package/dist/test/unit/bitgo/wallet/SendTransactionRequest.js +49 -0
- package/dist/test/unit/openssl.d.ts +2 -0
- package/dist/test/unit/openssl.d.ts.map +1 -0
- package/dist/test/unit/openssl.js +39 -0
- package/dist/test/unit/units.d.ts +2 -0
- package/dist/test/unit/units.d.ts.map +1 -0
- package/dist/test/unit/units.js +98 -0
- package/dist/tsconfig.tsbuildinfo +1 -8272
- package/package.json +11 -10
- package/dist/src/account-lib/mpc/hdTree.d.ts +0 -31
- package/dist/src/account-lib/mpc/hdTree.d.ts.map +0 -1
- package/dist/src/account-lib/mpc/hdTree.js +0 -141
- package/dist/src/account-lib/mpc/types.d.ts +0 -5
- package/dist/src/account-lib/mpc/types.d.ts.map +0 -1
- package/dist/src/account-lib/mpc/types.js +0 -3
- package/dist/src/openssl/openssl.d.ts +0 -12
- package/dist/src/openssl/openssl.d.ts.map +0 -1
- package/dist/src/openssl/openssl.js +0 -48
- package/dist/src/openssl/opensslbytes.d.ts +0 -4
- package/dist/src/openssl/opensslbytes.d.ts.map +0 -1
- package/dist/src/openssl/opensslbytes.js +0 -20
|
@@ -1,132 +1,8 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
const
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
/**
|
|
10
|
-
* Perform Shamir sharing on the secret `secret` to the degree `threshold - 1` split `numShares`
|
|
11
|
-
* ways. The split secret requires `threshold` shares to be reconstructed.
|
|
12
|
-
*
|
|
13
|
-
* @param secret secret to split
|
|
14
|
-
* @param threshold share threshold required to reconstruct secret
|
|
15
|
-
* @param numShares total number of shares to split to split secret into
|
|
16
|
-
* @param indices optional indices which can be used while generating the shares
|
|
17
|
-
* @param salt optional salt which could be used while generating the shares
|
|
18
|
-
* @returns Dictionary containing `shares`, a dictionary where each key is an int
|
|
19
|
-
* in the range 1<=x<=numShares representing that share's free term, and `v`, an
|
|
20
|
-
* array of proofs to be shared with all participants.
|
|
21
|
-
*/
|
|
22
|
-
split(secret, threshold, numShares, indices, salt = BigInt(0)) {
|
|
23
|
-
let bigIndices;
|
|
24
|
-
if (indices) {
|
|
25
|
-
bigIndices = indices.map((i) => {
|
|
26
|
-
if (i < 1) {
|
|
27
|
-
throw new Error('Invalid value supplied for indices');
|
|
28
|
-
}
|
|
29
|
-
return BigInt(i);
|
|
30
|
-
});
|
|
31
|
-
}
|
|
32
|
-
else {
|
|
33
|
-
// make range(1, n + 1)
|
|
34
|
-
bigIndices = Array(numShares)
|
|
35
|
-
.fill(null)
|
|
36
|
-
.map((_, i) => BigInt(i + 1));
|
|
37
|
-
}
|
|
38
|
-
if (threshold < 2) {
|
|
39
|
-
throw new Error('Threshold cannot be less than two');
|
|
40
|
-
}
|
|
41
|
-
if (threshold > numShares) {
|
|
42
|
-
throw new Error('Threshold cannot be greater than the total number of shares');
|
|
43
|
-
}
|
|
44
|
-
const coefs = [];
|
|
45
|
-
const v = [];
|
|
46
|
-
for (let ind = 0; ind < threshold - 1; ind++) {
|
|
47
|
-
const coeff = util_1.clamp(util_1.bigIntFromBufferLE(crypto.createHmac('sha256', ind.toString(10)).update(util_1.bigIntToBufferLE(secret, 32)).digest()));
|
|
48
|
-
coefs.push(coeff);
|
|
49
|
-
v.unshift(this.curve.basePointMult(coeff));
|
|
50
|
-
}
|
|
51
|
-
coefs.push(secret);
|
|
52
|
-
const shares = {};
|
|
53
|
-
for (let ind = 0; ind < bigIndices.length; ind++) {
|
|
54
|
-
const x = bigIndices[ind];
|
|
55
|
-
let partial = coefs[0];
|
|
56
|
-
for (let other = 1; other < coefs.length; other++) {
|
|
57
|
-
partial = this.curve.scalarAdd(coefs[other], this.curve.scalarMult(partial, x));
|
|
58
|
-
}
|
|
59
|
-
shares[parseInt(x.toString(), 10)] = partial;
|
|
60
|
-
}
|
|
61
|
-
return { shares, v };
|
|
62
|
-
}
|
|
63
|
-
/**
|
|
64
|
-
* Verify a VSS share.
|
|
65
|
-
*
|
|
66
|
-
* @param u Secret share received from other party.
|
|
67
|
-
* @param v Verification values received from other party.
|
|
68
|
-
* @param index Verifier's index.
|
|
69
|
-
* @returns True on success; otherwise throws Error.
|
|
70
|
-
*/
|
|
71
|
-
verify(u, v, index) {
|
|
72
|
-
if (v.length < 2) {
|
|
73
|
-
throw new Error('Threshold cannot be less than two');
|
|
74
|
-
}
|
|
75
|
-
if (index < 1) {
|
|
76
|
-
throw new Error('Invalid value supplied for index');
|
|
77
|
-
}
|
|
78
|
-
const i = BigInt(index);
|
|
79
|
-
let x = v[0];
|
|
80
|
-
let t = BigInt(1);
|
|
81
|
-
for (const vsj of v.slice(1)) {
|
|
82
|
-
t = this.curve.scalarMult(t, i);
|
|
83
|
-
const vjt = this.curve.pointMultiply(vsj, t);
|
|
84
|
-
x = this.curve.pointAdd(x, vjt);
|
|
85
|
-
}
|
|
86
|
-
const sigmaG = this.curve.basePointMult(u);
|
|
87
|
-
if (x !== sigmaG) {
|
|
88
|
-
throw new Error('Could not verify share');
|
|
89
|
-
}
|
|
90
|
-
return true;
|
|
91
|
-
}
|
|
92
|
-
/**
|
|
93
|
-
* Reconstitute a secret from a dictionary of shares. The number of shares must
|
|
94
|
-
* be equal to `t` to reconstitute the original secret.
|
|
95
|
-
*
|
|
96
|
-
* @param shares dictionary of shares. each key is the free term of the share
|
|
97
|
-
* @returns secret
|
|
98
|
-
*/
|
|
99
|
-
combine(shares) {
|
|
100
|
-
try {
|
|
101
|
-
let s = BigInt(0);
|
|
102
|
-
for (const i in shares) {
|
|
103
|
-
const yi = shares[i];
|
|
104
|
-
const xi = BigInt(i);
|
|
105
|
-
let num = BigInt(1);
|
|
106
|
-
let denum = BigInt(1);
|
|
107
|
-
for (const j in shares) {
|
|
108
|
-
const xj = BigInt(j);
|
|
109
|
-
if (xi !== xj) {
|
|
110
|
-
num = this.curve.scalarMult(num, xj);
|
|
111
|
-
}
|
|
112
|
-
}
|
|
113
|
-
for (const j in shares) {
|
|
114
|
-
const xj = BigInt(j);
|
|
115
|
-
if (xi !== xj) {
|
|
116
|
-
denum = this.curve.scalarMult(denum, this.curve.scalarSub(xj, xi));
|
|
117
|
-
}
|
|
118
|
-
}
|
|
119
|
-
const inverted = this.curve.scalarInvert(denum);
|
|
120
|
-
const innerMultiplied = this.curve.scalarMult(num, inverted);
|
|
121
|
-
const multiplied = this.curve.scalarMult(innerMultiplied, yi);
|
|
122
|
-
s = this.curve.scalarAdd(multiplied, s);
|
|
123
|
-
}
|
|
124
|
-
return s;
|
|
125
|
-
}
|
|
126
|
-
catch (error) {
|
|
127
|
-
throw new Error('Failed to combine Shamir shares , ' + error);
|
|
128
|
-
}
|
|
129
|
-
}
|
|
130
|
-
}
|
|
131
|
-
exports.default = Shamir;
|
|
132
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2hhbWlyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2FjY291bnQtbGliL21wYy9zaGFtaXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFBQSxNQUFNLE1BQU0sR0FBRyxPQUFPLENBQUMsUUFBUSxDQUFDLENBQUM7QUFFakMsaUNBQXFFO0FBR3JFLE1BQXFCLE1BQU07SUFHekIsWUFBWSxLQUFZO1FBQ3RCLElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO0lBQ3JCLENBQUM7SUFFRDs7Ozs7Ozs7Ozs7O09BWUc7SUFDSCxLQUFLLENBQUMsTUFBYyxFQUFFLFNBQWlCLEVBQUUsU0FBaUIsRUFBRSxPQUF1QixFQUFFLElBQUksR0FBRyxNQUFNLENBQUMsQ0FBQyxDQUFDO1FBQ25HLElBQUksVUFBeUIsQ0FBQztRQUM5QixJQUFJLE9BQU8sRUFBRTtZQUNYLFVBQVUsR0FBRyxPQUFPLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUU7Z0JBQzdCLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRTtvQkFDVCxNQUFNLElBQUksS0FBSyxDQUFDLG9DQUFvQyxDQUFDLENBQUM7aUJBQ3ZEO2dCQUNELE9BQU8sTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDO1lBQ25CLENBQUMsQ0FBQyxDQUFDO1NBQ0o7YUFBTTtZQUNMLHVCQUF1QjtZQUN2QixVQUFVLEdBQUcsS0FBSyxDQUFDLFNBQVMsQ0FBQztpQkFDMUIsSUFBSSxDQUFDLElBQUksQ0FBQztpQkFDVixHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxNQUFNLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUM7U0FDakM7UUFDRCxJQUFJLFNBQVMsR0FBRyxDQUFDLEVBQUU7WUFDakIsTUFBTSxJQUFJLEtBQUssQ0FBQyxtQ0FBbUMsQ0FBQyxDQUFDO1NBQ3REO1FBRUQsSUFBSSxTQUFTLEdBQUcsU0FBUyxF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QU0sUUFBUSxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsWUFBWSxDQUFDLEtBQUssQ0FBQyxDQUFDO2dCQUNoRCxNQUFNLGVBQWUsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLFVBQVUsQ0FBQyxHQUFHLEVBQUUsUUFBUSxDQUFDLENBQUM7Z0JBQzdELE1BQU0sVUFBVSxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsVUFBVSxDQUFDLGVBQWUsRUFBRSxFQUFFLENBQUMsQ0FBQztnQkFDOUQsQ0FBQyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsU0FBUyxDQUFDLFVBQVUsRUFBRSxDQUFDLENBQUMsQ0FBQzthQUN6QztZQUNELE9BQU8sQ0FBQyxDQUFDO1NBQ1Y7UUFBQyxPQUFPLEtBQUssRUFBRTtZQUNkLE1BQU0sSUFBSSxLQUFLLENBQUMsb0NBQW9DLEdBQUcsS0FBSyxDQUFDLENBQUM7U0FDL0Q7SUFDSCxDQUFDO0NBQ0Y7QUF0SUQseUJBc0lDIiwic291cmNlc0NvbnRlbnQiOlsiY29uc3QgY3J5cHRvID0gcmVxdWlyZSgnY3J5cHRvJyk7XG5pbXBvcnQgQ3VydmUgZnJvbSAnLi9jdXJ2ZXMnO1xuaW1wb3J0IHsgYmlnSW50RnJvbUJ1ZmZlckxFLCBiaWdJbnRUb0J1ZmZlckxFLCBjbGFtcCB9IGZyb20gJy4vdXRpbCc7XG5pbXBvcnQgeyBTcGxpdFNlY3JldCB9IGZyb20gJy4vdHlwZXMnO1xuXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBTaGFtaXIge1xuICBjdXJ2ZTogQ3VydmU7XG5cbiAgY29uc3RydWN0b3IoY3VydmU6IEN1cnZlKSB7XG4gICAgdGhpcy5jdXJ2ZSA9IGN1cnZlO1xuICB9XG5cbiAgLyoqXG4gICAqIFBlcmZvcm0gU2hhbWlyIHNoYXJpbmcgb24gdGhlIHNlY3JldCBgc2VjcmV0YCB0byB0aGUgZGVncmVlIGB0aHJlc2hvbGQgLSAxYCBzcGxpdCBgbnVtU2hhcmVzYFxuICAgKiB3YXlzLiBUaGUgc3BsaXQgc2VjcmV0IHJlcXVpcmVzIGB0aHJlc2hvbGRgIHNoYXJlcyB0byBiZSByZWNvbnN0cnVjdGVkLlxuICAgKlxuICAgKiBAcGFyYW0gc2VjcmV0IHNlY3JldCB0byBzcGxpdFxuICAgKiBAcGFyYW0gdGhyZXNob2xkIHNoYXJlIHRocmVzaG9sZCByZXF1aXJlZCB0byByZWNvbnN0cnVjdCBzZWNyZXRcbiAgICogQHBhcmFtIG51bVNoYXJlcyB0b3RhbCBudW1iZXIgb2Ygc2hhcmVzIHRvIHNwbGl0IHRvIHNwbGl0IHNlY3JldCBpbnRvXG4gICAqIEBwYXJhbSBpbmRpY2VzIG9wdGlvbmFsIGluZGljZXMgd2hpY2ggY2FuIGJlIHVzZWQgd2hpbGUgZ2VuZXJhdGluZyB0aGUgc2hhcmVzXG4gICAqIEBwYXJhbSBzYWx0IG9wdGlvbmFsIHNhbHQgd2hpY2ggY291bGQgYmUgdXNlZCB3aGlsZSBnZW5lcmF0aW5nIHRoZSBzaGFyZXNcbiAgICogQHJldHVybnMgRGljdGlvbmFyeSBjb250YWluaW5nIGBzaGFyZXNgLCBhIGRpY3Rpb25hcnkgd2hlcmUgZWFjaCBrZXkgaXMgYW4gaW50XG4gICAqIGluIHRoZSByYW5nZSAxPD14PD1udW1TaGFyZXMgcmVwcmVzZW50aW5nIHRoYXQgc2hhcmUncyBmcmVlIHRlcm0sIGFuZCBgdmAsIGFuXG4gICAqIGFycmF5IG9mIHByb29mcyB0byBiZSBzaGFyZWQgd2l0aCBhbGwgcGFydGljaXBhbnRzLlxuICAgKi9cbiAgc3BsaXQoc2VjcmV0OiBiaWdpbnQsIHRocmVzaG9sZDogbnVtYmVyLCBudW1TaGFyZXM6IG51bWJlciwgaW5kaWNlcz86IEFycmF5PG51bWJlcj4sIHNhbHQgPSBCaWdJbnQoMCkpOiBTcGxpdFNlY3JldCB7XG4gICAgbGV0IGJpZ0luZGljZXM6IEFycmF5PGJpZ2ludD47XG4gICAgaWYgKGluZGljZXMpIHtcbiAgICAgIGJpZ0luZGljZXMgPSBpbmRpY2VzLm1hcCgoaSkgPT4ge1xuICAgICAgICBpZiAoaSA8IDEpIHtcbiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ0ludmFsaWQgdmFsdWUgc3VwcGxpZWQgZm9yIGluZGljZXMnKTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gQmlnSW50KGkpO1xuICAgICAgfSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIC8vIG1ha2UgcmFuZ2UoMSwgbiArIDEpXG4gICAgICBiaWdJbmRpY2VzID0gQXJyYXkobnVtU2hhcmVzKVxuICAgICAgICAuZmlsbChudWxsKVxuICAgICAgICAubWFwKChfLCBpKSA9PiBCaWdJbnQoaSArIDEpKTtcbiAgICB9XG4gICAgaWYgKHRocmVzaG9sZCA8IDIpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignVGhyZXNob2xkIGNhbm5vdCBiZSBsZXNzIHRoYW4gdHdvJyk7XG4gICAgfVxuXG4gICAgaWYgKHRocmVzaG9sZCA+IG51bVNoYXJlcykge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdUaHJlc2hvbGQgY2Fubm90IGJlIGdyZWF0ZXIgdGhhbiB0aGUgdG90YWwgbnVtYmVyIG9mIHNoYXJlcycpO1xuICAgIH1cblxuICAgIGNvbnN0IGNvZWZzOiBiaWdpbnRbXSA9IFtdO1xuICAgIGNvbnN0IHY6IEFycmF5PGJpZ2ludD4gPSBbXTtcbiAgICBmb3IgKGxldCBpbmQgPSAwOyBpbmQgPCB0aHJlc2hvbGQgLSAxOyBpbmQrKykge1xuICAgICAgY29uc3QgY29lZmYgPSBjbGFtcChcbiAgICAgICAgYmlnSW50RnJvbUJ1ZmZlckxFKGNyeXB0by5jcmVhdGVIbWFjKCdzaGEyNTYnLCBpbmQudG9TdHJpbmcoMTApKS51cGRhdGUoYmlnSW50VG9CdWZmZXJMRShzZWNyZXQsIDMyKSkuZGlnZXN0KCkpXG4gICAgICApO1xuICAgICAgY29lZnMucHVzaChjb2VmZik7XG4gICAgICB2LnVuc2hpZnQodGhpcy5jdXJ2ZS5iYXNlUG9pbnRNdWx0KGNvZWZmKSk7XG4gICAgfVxuICAgIGNvZWZzLnB1c2goc2VjcmV0KTtcblxuICAgIGNvbnN0IHNoYXJlczogUmVjb3JkPG51bWJlciwgYmlnaW50PiA9IHt9O1xuICAgIGZvciAobGV0IGluZCA9IDA7IGluZCA8IGJpZ0luZGljZXMubGVuZ3RoOyBpbmQrKykge1xuICAgICAgY29uc3QgeCA9IGJpZ0luZGljZXNbaW5kXTtcbiAgICAgIGxldCBwYXJ0aWFsID0gY29lZnNbMF07XG4gICAgICBmb3IgKGxldCBvdGhlciA9IDE7IG90aGVyIDwgY29lZnMubGVuZ3RoOyBvdGhlcisrKSB7XG4gICAgICAgIHBhcnRpYWwgPSB0aGlzLmN1cnZlLnNjYWxhckFkZChjb2Vmc1tvdGhlcl0sIHRoaXMuY3VydmUuc2NhbGFyTXVsdChwYXJ0aWFsLCB4KSk7XG4gICAgICB9XG4gICAgICBzaGFyZXNbcGFyc2VJbnQoeC50b1N0cmluZygpLCAxMCldID0gcGFydGlhbDtcbiAgICB9XG4gICAgcmV0dXJuIHsgc2hhcmVzLCB2IH07XG4gIH1cblxuICAvKipcbiAgICogVmVyaWZ5IGEgVlNTIHNoYXJlLlxuICAgKlxuICAgKiBAcGFyYW0gdSBTZWNyZXQgc2hhcmUgcmVjZWl2ZWQgZnJvbSBvdGhlciBwYXJ0eS5cbiAgICogQHBhcmFtIHYgVmVyaWZpY2F0aW9uIHZhbHVlcyByZWNlaXZlZCBmcm9tIG90aGVyIHBhcnR5LlxuICAgKiBAcGFyYW0gaW5kZXggVmVyaWZpZXIncyBpbmRleC5cbiAgICogQHJldHVybnMgVHJ1ZSBvbiBzdWNjZXNzOyBvdGhlcndpc2UgdGhyb3dzIEVycm9yLlxuICAgKi9cbiAgdmVyaWZ5KHU6IGJpZ2ludCwgdjogQXJyYXk8YmlnaW50PiwgaW5kZXg6IG51bWJlcik6IGJvb2xlYW4ge1xuICAgIGlmICh2Lmxlbmd0aCA8IDIpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignVGhyZXNob2xkIGNhbm5vdCBiZSBsZXNzIHRoYW4gdHdvJyk7XG4gICAgfVxuICAgIGlmIChpbmRleCA8IDEpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignSW52YWxpZCB2YWx1ZSBzdXBwbGllZCBmb3IgaW5kZXgnKTtcbiAgICB9XG4gICAgY29uc3QgaSA9IEJpZ0ludChpbmRleCk7XG4gICAgbGV0IHggPSB2WzBdO1xuICAgIGxldCB0ID0gQmlnSW50KDEpO1xuICAgIGZvciAoY29uc3QgdnNqIG9mIHYuc2xpY2UoMSkpIHtcbiAgICAgIHQgPSB0aGlzLmN1cnZlLnNjYWxhck11bHQodCwgaSk7XG4gICAgICBjb25zdCB2anQgPSB0aGlzLmN1cnZlLnBvaW50TXVsdGlwbHkodnNqLCB0KTtcbiAgICAgIHggPSB0aGlzLmN1cnZlLnBvaW50QWRkKHgsIHZqdCk7XG4gICAgfVxuICAgIGNvbnN0IHNpZ21hRyA9IHRoaXMuY3VydmUuYmFzZVBvaW50TXVsdCh1KTtcbiAgICBpZiAoeCAhPT0gc2lnbWFHKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ0NvdWxkIG5vdCB2ZXJpZnkgc2hhcmUnKTtcbiAgICB9XG4gICAgcmV0dXJuIHRydWU7XG4gIH1cblxuICAvKipcbiAgICogUmVjb25zdGl0dXRlIGEgc2VjcmV0IGZyb20gYSBkaWN0aW9uYXJ5IG9mIHNoYXJlcy4gVGhlIG51bWJlciBvZiBzaGFyZXMgbXVzdFxuICAgKiBiZSBlcXVhbCB0byBgdGAgdG8gcmVjb25zdGl0dXRlIHRoZSBvcmlnaW5hbCBzZWNyZXQuXG4gICAqXG4gICAqIEBwYXJhbSBzaGFyZXMgZGljdGlvbmFyeSBvZiBzaGFyZXMuIGVhY2gga2V5IGlzIHRoZSBmcmVlIHRlcm0gb2YgdGhlIHNoYXJlXG4gICAqIEByZXR1cm5zIHNlY3JldFxuICAgKi9cbiAgY29tYmluZShzaGFyZXM6IFJlY29yZDxudW1iZXIsIGJpZ2ludD4pOiBiaWdpbnQge1xuICAgIHRyeSB7XG4gICAgICBsZXQgcyA9IEJpZ0ludCgwKTtcbiAgICAgIGZvciAoY29uc3QgaSBpbiBzaGFyZXMpIHtcbiAgICAgICAgY29uc3QgeWkgPSBzaGFyZXNbaV07XG4gICAgICAgIGNvbnN0IHhpID0gQmlnSW50KGkpO1xuICAgICAgICBsZXQgbnVtID0gQmlnSW50KDEpO1xuICAgICAgICBsZXQgZGVudW0gPSBCaWdJbnQoMSk7XG5cbiAgICAgICAgZm9yIChjb25zdCBqIGluIHNoYXJlcykge1xuICAgICAgICAgIGNvbnN0IHhqID0gQmlnSW50KGopO1xuICAgICAgICAgIGlmICh4aSAhPT0geGopIHtcbiAgICAgICAgICAgIG51bSA9IHRoaXMuY3VydmUuc2NhbGFyTXVsdChudW0sIHhqKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgZm9yIChjb25zdCBqIGluIHNoYXJlcykge1xuICAgICAgICAgIGNvbnN0IHhqID0gQmlnSW50KGopO1xuICAgICAgICAgIGlmICh4aSAhPT0geGopIHtcbiAgICAgICAgICAgIGRlbnVtID0gdGhpcy5jdXJ2ZS5zY2FsYXJNdWx0KGRlbnVtLCB0aGlzLmN1cnZlLnNjYWxhclN1Yih4aiwgeGkpKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgY29uc3QgaW52ZXJ0ZWQgPSB0aGlzLmN1cnZlLnNjYWxhckludmVydChkZW51bSk7XG4gICAgICAgIGNvbnN0IGlubmVyTXVsdGlwbGllZCA9IHRoaXMuY3VydmUuc2NhbGFyTXVsdChudW0sIGludmVydGVkKTtcbiAgICAgICAgY29uc3QgbXVsdGlwbGllZCA9IHRoaXMuY3VydmUuc2NhbGFyTXVsdChpbm5lck11bHRpcGxpZWQsIHlpKTtcbiAgICAgICAgcyA9IHRoaXMuY3VydmUuc2NhbGFyQWRkKG11bHRpcGxpZWQsIHMpO1xuICAgICAgfVxuICAgICAgcmV0dXJuIHM7XG4gICAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignRmFpbGVkIHRvIGNvbWJpbmUgU2hhbWlyIHNoYXJlcyAsICcgKyBlcnJvcik7XG4gICAgfVxuICB9XG59XG4iXX0=
|
|
3
|
+
const sdk_lib_mpc_1 = require("@bitgo-beta/sdk-lib-mpc");
|
|
4
|
+
/**
|
|
5
|
+
* @deprecated use Shamir from sdk-lib-mpc instead
|
|
6
|
+
*/
|
|
7
|
+
exports.default = sdk_lib_mpc_1.Shamir;
|
|
8
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2hhbWlyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2FjY291bnQtbGliL21wYy9zaGFtaXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFBQSx5REFBaUQ7QUFDakQ7O0dBRUc7QUFDSCxrQkFBZSxvQkFBTSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgU2hhbWlyIH0gZnJvbSAnQGJpdGdvLWJldGEvc2RrLWxpYi1tcGMnO1xuLyoqXG4gKiBAZGVwcmVjYXRlZCB1c2UgU2hhbWlyIGZyb20gc2RrLWxpYi1tcGMgaW5zdGVhZFxuICovXG5leHBvcnQgZGVmYXVsdCBTaGFtaXI7XG4iXX0=
|
|
@@ -1,10 +1,9 @@
|
|
|
1
1
|
/// <reference types="node" />
|
|
2
|
-
import HDTree from '../../hdTree';
|
|
3
2
|
import { Hash } from 'crypto';
|
|
4
3
|
import { Secp256k1Curve } from '../../curves';
|
|
5
4
|
import Shamir from '../../shamir';
|
|
6
|
-
import { EcdsaTypes } from '@bitgo-beta/sdk-lib-mpc';
|
|
7
|
-
import { DShare, KeyCombined,
|
|
5
|
+
import { EcdsaTypes, HDTree } from '@bitgo-beta/sdk-lib-mpc';
|
|
6
|
+
import { DShare, KeyCombined, KeyShare, NShare, OShare, PShare, Signature, SignCombine, SignCombineRT, SignConvert, SignConvertRT, SignConvertStep1, SignConvertStep1Response, SignConvertStep2, SignConvertStep2Response, SignConvertStep3, SignConvertStep3Response, SignShareRT, SShare, SubkeyShare, XShareWithChallenges, YShareWithChallenges } from './types';
|
|
8
7
|
/**
|
|
9
8
|
* ECDSA TSS implementation supporting 2:n Threshold
|
|
10
9
|
*/
|
|
@@ -51,14 +50,12 @@ export default class Ecdsa {
|
|
|
51
50
|
/**
|
|
52
51
|
* Appends a given range proof challenge to the shares previously created
|
|
53
52
|
* by #keyCombine. Generates a new challenge if not provided.
|
|
54
|
-
* @param {XShare}
|
|
55
|
-
* @param
|
|
56
|
-
*
|
|
57
|
-
* @
|
|
58
|
-
* @returns {KeyCombined} The new XShare and YShares with the amended
|
|
59
|
-
* challenge values
|
|
53
|
+
* @param {XShare | YShare} share Private xShare or yShare of the signing operation
|
|
54
|
+
* @param rangeProofChallenge - challenge generated via generateNtilde
|
|
55
|
+
* @param paillierProofChallenge
|
|
56
|
+
* @returns {KeyCombined} The share with amended challenge values
|
|
60
57
|
*/
|
|
61
|
-
appendChallenge(
|
|
58
|
+
appendChallenge<T>(share: T, rangeProofChallenge: EcdsaTypes.SerializedNtilde, paillierProofChallenge: EcdsaTypes.SerializedPaillierChallenge): T & EcdsaTypes.SerializedEcdsaChallenges;
|
|
62
59
|
/**
|
|
63
60
|
* Create signing shares.
|
|
64
61
|
* @param {xShare} xShare Private xShare of current participant signer
|
|
@@ -66,11 +63,36 @@ export default class Ecdsa {
|
|
|
66
63
|
* @returns {SignShareRT} Returns the participant private w-share
|
|
67
64
|
* and k-share to be distributed to other participant signer
|
|
68
65
|
*/
|
|
69
|
-
signShare(xShare:
|
|
66
|
+
signShare(xShare: XShareWithChallenges, yShare: YShareWithChallenges): Promise<SignShareRT>;
|
|
67
|
+
/**
|
|
68
|
+
* Perform multiplicitive-to-additive (MtA) share conversion with another signer.
|
|
69
|
+
* Connection 1.2 in https://lucid.app/lucidchart/7061785b-bc5c-4002-b546-3f4a3612fc62/edit?page=IAVmvYO4FvKc#
|
|
70
|
+
* If signer A completed signShare initially (input to this fn), then this step is completed by signer B.
|
|
71
|
+
* @param {SignConvert} shares
|
|
72
|
+
* @returns {SignConvertRT}
|
|
73
|
+
*/
|
|
74
|
+
signConvertStep1(shares: SignConvertStep1): Promise<SignConvertStep1Response>;
|
|
70
75
|
/**
|
|
71
76
|
* Perform multiplicitive-to-additive (MtA) share conversion with another
|
|
72
77
|
* signer.
|
|
73
|
-
*
|
|
78
|
+
* Connection 2.1 in https://lucid.app/lucidchart/7061785b-bc5c-4002-b546-3f4a3612fc62/edit?page=IAVmvYO4FvKc#
|
|
79
|
+
* If signer B completed signConvertStep1, then this step is completed by signer A.
|
|
80
|
+
* @param {SignConvert} shares
|
|
81
|
+
* @returns {SignConvertRT}
|
|
82
|
+
*/
|
|
83
|
+
signConvertStep2(shares: SignConvertStep2): Promise<SignConvertStep2Response>;
|
|
84
|
+
/**
|
|
85
|
+
* Perform multiplicitive-to-additive (MtA) share conversion with another signer.
|
|
86
|
+
* Connection 2.2 in https://lucid.app/lucidchart/7061785b-bc5c-4002-b546-3f4a3612fc62/edit?page=IAVmvYO4FvKc#
|
|
87
|
+
* If signer A completed signConvertStep2, then this step is completed by signer B.
|
|
88
|
+
* @param {SignConvert} shares
|
|
89
|
+
* @returns {SignConvertRT}
|
|
90
|
+
*/
|
|
91
|
+
signConvertStep3(shares: SignConvertStep3): Promise<SignConvertStep3Response>;
|
|
92
|
+
/**
|
|
93
|
+
* Perform multiplicitive-to-additive (MtA) share conversion with another signer.
|
|
94
|
+
* @deprecated - use one of [signConvertStep1, signConvertStep2, signConvertStep3] instead
|
|
95
|
+
* @param {SignConvert} shares
|
|
74
96
|
* @returns {SignConvertRT}
|
|
75
97
|
*/
|
|
76
98
|
signConvert(shares: SignConvert): Promise<SignConvertRT>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ecdsa.d.ts","sourceRoot":"","sources":["../../../../../../src/account-lib/mpc/tss/ecdsa/ecdsa.ts"],"names":[],"mappings":";AAGA,OAAO,
|
|
1
|
+
{"version":3,"file":"ecdsa.d.ts","sourceRoot":"","sources":["../../../../../../src/account-lib/mpc/tss/ecdsa/ecdsa.ts"],"names":[],"mappings":"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"}
|