@bitgo/account-lib 2.19.0-rc.16 → 2.19.0-rc.20
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/dist/browser/bitgo-account-lib.js +1 -1
- package/dist/package.json +7 -7
- package/dist/src/coin/near/constants.d.ts +2 -0
- package/dist/src/coin/near/constants.d.ts.map +1 -1
- package/dist/src/coin/near/constants.js +3 -1
- package/dist/src/coin/near/stakingActivateBuilder.d.ts +1 -1
- package/dist/src/coin/near/stakingActivateBuilder.d.ts.map +1 -1
- package/dist/src/coin/near/stakingActivateBuilder.js +2 -2
- package/dist/src/coin/near/stakingDeactivateBuilder.d.ts +32 -0
- package/dist/src/coin/near/stakingDeactivateBuilder.d.ts.map +1 -0
- package/dist/src/coin/near/stakingDeactivateBuilder.js +158 -0
- package/dist/src/coin/near/stakingWithdrawBuilder.d.ts +32 -0
- package/dist/src/coin/near/stakingWithdrawBuilder.d.ts.map +1 -0
- package/dist/src/coin/near/stakingWithdrawBuilder.js +158 -0
- package/dist/src/coin/near/transaction.d.ts +7 -0
- package/dist/src/coin/near/transaction.d.ts.map +1 -1
- package/dist/src/coin/near/transaction.js +50 -8
- package/dist/src/coin/near/transactionBuilderFactory.d.ts +4 -0
- package/dist/src/coin/near/transactionBuilderFactory.d.ts.map +1 -1
- package/dist/src/coin/near/transactionBuilderFactory.js +13 -1
- package/dist/src/mpc/curves.d.ts +28 -13
- package/dist/src/mpc/curves.d.ts.map +1 -1
- package/dist/src/mpc/curves.js +56 -59
- package/dist/src/mpc/hdTree.d.ts +24 -0
- package/dist/src/mpc/hdTree.d.ts.map +1 -0
- package/dist/src/mpc/hdTree.js +143 -0
- package/dist/src/mpc/shamir.d.ts +25 -6
- package/dist/src/mpc/shamir.d.ts.map +1 -1
- package/dist/src/mpc/shamir.js +41 -45
- package/dist/src/mpc/tss.d.ts +57 -28
- package/dist/src/mpc/tss.d.ts.map +1 -1
- package/dist/src/mpc/tss.js +260 -175
- package/dist/src/mpc/util.d.ts +7 -0
- package/dist/src/mpc/util.d.ts.map +1 -0
- package/dist/src/mpc/util.js +38 -0
- package/package.json +7 -7
- package/LICENSE +0 -191
|
@@ -0,0 +1,143 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
3
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
4
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
5
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
6
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
7
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
8
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
|
+
});
|
|
10
|
+
};
|
|
11
|
+
var __generator = (this && this.__generator) || function (thisArg, body) {
|
|
12
|
+
var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
|
|
13
|
+
return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
|
|
14
|
+
function verb(n) { return function (v) { return step([n, v]); }; }
|
|
15
|
+
function step(op) {
|
|
16
|
+
if (f) throw new TypeError("Generator is already executing.");
|
|
17
|
+
while (_) try {
|
|
18
|
+
if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
|
|
19
|
+
if (y = 0, t) op = [op[0] & 2, t.value];
|
|
20
|
+
switch (op[0]) {
|
|
21
|
+
case 0: case 1: t = op; break;
|
|
22
|
+
case 4: _.label++; return { value: op[1], done: false };
|
|
23
|
+
case 5: _.label++; y = op[1]; op = [0]; continue;
|
|
24
|
+
case 7: op = _.ops.pop(); _.trys.pop(); continue;
|
|
25
|
+
default:
|
|
26
|
+
if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
|
|
27
|
+
if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
|
|
28
|
+
if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
|
|
29
|
+
if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
|
|
30
|
+
if (t[2]) _.ops.pop();
|
|
31
|
+
_.trys.pop(); continue;
|
|
32
|
+
}
|
|
33
|
+
op = body.call(thisArg, _);
|
|
34
|
+
} catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
|
|
35
|
+
if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
|
|
36
|
+
}
|
|
37
|
+
};
|
|
38
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
39
|
+
exports.Ed25519BIP32 = void 0;
|
|
40
|
+
/**
|
|
41
|
+
* An interface for calculating a subkey in an HD key scheme.
|
|
42
|
+
*/
|
|
43
|
+
var crypto_1 = require("crypto");
|
|
44
|
+
var curves_1 = require("./curves");
|
|
45
|
+
var util_1 = require("./util");
|
|
46
|
+
// 2^256
|
|
47
|
+
var base = BigInt('0x010000000000000000000000000000000000000000000000000000000000000000');
|
|
48
|
+
function deriveEd25519Helper(index, chaincode, pk, sk) {
|
|
49
|
+
if (index === void 0) { index = 0; }
|
|
50
|
+
var zmac = crypto_1.createHmac('sha512', util_1.bigIntToBufferBE(chaincode, 32).toString('latin1'));
|
|
51
|
+
var imac = crypto_1.createHmac('sha512', util_1.bigIntToBufferBE(chaincode, 32).toString('latin1'));
|
|
52
|
+
var seri = Buffer.alloc(4);
|
|
53
|
+
seri.writeUInt32LE(index, 0);
|
|
54
|
+
if (((index >>> 0) & 0x80000000) === 0) {
|
|
55
|
+
// Normal derivation:
|
|
56
|
+
// Z = HMAC-SHA512(Key = cpar, Data = 0x02 || serP(point(kpar)) || ser32(i)).
|
|
57
|
+
// I = HMAC-SHA512(Key = cpar, Data = 0x03 || serP(point(kpar)) || ser32(i)).
|
|
58
|
+
zmac.update('\x02');
|
|
59
|
+
zmac.update(util_1.bigIntToBufferLE(pk, 32));
|
|
60
|
+
zmac.update(seri);
|
|
61
|
+
imac.update('\x03');
|
|
62
|
+
imac.update(util_1.bigIntToBufferLE(pk, 32));
|
|
63
|
+
imac.update(seri);
|
|
64
|
+
}
|
|
65
|
+
else {
|
|
66
|
+
if (sk === undefined) {
|
|
67
|
+
throw new Error("Can't performed hardened derivation without private key");
|
|
68
|
+
}
|
|
69
|
+
// Hardened derivation:
|
|
70
|
+
// Z = HMAC-SHA512(Key = cpar, Data = 0x00 || ser256(left(kpar)) || ser32(i)).
|
|
71
|
+
// I = HMAC-SHA512(Key = cpar, Data = 0x01 || ser256(left(kpar)) || ser32(i)).
|
|
72
|
+
zmac.update('\x00');
|
|
73
|
+
zmac.update(util_1.bigIntToBufferLE(sk, 32));
|
|
74
|
+
zmac.update(seri);
|
|
75
|
+
imac.update('\x01');
|
|
76
|
+
imac.update(util_1.bigIntToBufferLE(sk, 32));
|
|
77
|
+
imac.update(seri);
|
|
78
|
+
}
|
|
79
|
+
return [zmac.digest(), imac.digest()];
|
|
80
|
+
}
|
|
81
|
+
var Ed25519BIP32 = /** @class */ (function () {
|
|
82
|
+
function Ed25519BIP32() {
|
|
83
|
+
}
|
|
84
|
+
Ed25519BIP32.initialize = function () {
|
|
85
|
+
return __awaiter(this, void 0, void 0, function () {
|
|
86
|
+
return __generator(this, function (_a) {
|
|
87
|
+
switch (_a.label) {
|
|
88
|
+
case 0:
|
|
89
|
+
if (!!Ed25519BIP32.initialized) return [3 /*break*/, 2];
|
|
90
|
+
return [4 /*yield*/, curves_1.Ed25519Curve.initialize()];
|
|
91
|
+
case 1:
|
|
92
|
+
_a.sent();
|
|
93
|
+
Ed25519BIP32.initialized = true;
|
|
94
|
+
_a.label = 2;
|
|
95
|
+
case 2: return [2 /*return*/];
|
|
96
|
+
}
|
|
97
|
+
});
|
|
98
|
+
});
|
|
99
|
+
};
|
|
100
|
+
Ed25519BIP32.prototype.publicDerive = function (keychain, path) {
|
|
101
|
+
var indices = path
|
|
102
|
+
.replace(/^m\//, '')
|
|
103
|
+
.split('/')
|
|
104
|
+
.map(function (index) { return parseInt(index, 10); });
|
|
105
|
+
function deriveIndex(acc, index) {
|
|
106
|
+
var pk = acc[0], chaincode = acc[1];
|
|
107
|
+
var _a = deriveEd25519Helper(index, chaincode, pk), zout = _a[0], iout = _a[1];
|
|
108
|
+
var zl = zout.slice(0, 32);
|
|
109
|
+
// left = kl + 8 * trunc28(zl)
|
|
110
|
+
var t = BigInt(8) * util_1.bigIntFromBufferLE(zl.slice(0, 28));
|
|
111
|
+
var left = Ed25519BIP32.curve.pointAdd(pk, Ed25519BIP32.curve.basePointMult(t));
|
|
112
|
+
return [left, util_1.bigIntFromBufferBE(iout.slice(32))];
|
|
113
|
+
}
|
|
114
|
+
var subkey = indices.reduce(deriveIndex, deriveIndex([keychain.pk, keychain.chaincode], indices.shift()));
|
|
115
|
+
return { pk: subkey[0], chaincode: subkey[1] };
|
|
116
|
+
};
|
|
117
|
+
Ed25519BIP32.prototype.privateDerive = function (keychain, path) {
|
|
118
|
+
var indices = path
|
|
119
|
+
.replace(/^m\//, '')
|
|
120
|
+
.split('/')
|
|
121
|
+
.map(function (index) { return parseInt(index, 10); });
|
|
122
|
+
function deriveIndex(acc, index) {
|
|
123
|
+
var pk = acc[0], sk = acc[1], prefix = acc[2], chaincode = acc[3];
|
|
124
|
+
var _a = deriveEd25519Helper(index, chaincode, pk, sk), zout = _a[0], iout = _a[1];
|
|
125
|
+
var zl = zout.slice(0, 32);
|
|
126
|
+
var zr = zout.slice(32);
|
|
127
|
+
// left = kl + 8 * trunc28(zl)
|
|
128
|
+
var t = BigInt(8) * util_1.bigIntFromBufferLE(zl.slice(0, 28));
|
|
129
|
+
var left_pk = Ed25519BIP32.curve.pointAdd(pk, Ed25519BIP32.curve.basePointMult(t));
|
|
130
|
+
var left_sk = Ed25519BIP32.curve.scalarAdd(sk, t);
|
|
131
|
+
// right = zr + kr
|
|
132
|
+
var right = (prefix + util_1.bigIntFromBufferBE(zr)) % base;
|
|
133
|
+
return [left_pk, left_sk, right, util_1.bigIntFromBufferBE(iout.slice(32))];
|
|
134
|
+
}
|
|
135
|
+
var _a = indices.reduce(deriveIndex, deriveIndex([keychain.pk, keychain.sk, keychain.prefix, keychain.chaincode], indices.shift())), pk = _a[0], sk = _a[1], prefix = _a[2], chaincode = _a[3];
|
|
136
|
+
return { pk: pk, sk: sk, prefix: prefix, chaincode: chaincode };
|
|
137
|
+
};
|
|
138
|
+
Ed25519BIP32.curve = new curves_1.Ed25519Curve();
|
|
139
|
+
Ed25519BIP32.initialized = false;
|
|
140
|
+
return Ed25519BIP32;
|
|
141
|
+
}());
|
|
142
|
+
exports.Ed25519BIP32 = Ed25519BIP32;
|
|
143
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGRUcmVlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL21wYy9oZFRyZWUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUE7O0dBRUc7QUFDSCxpQ0FBb0M7QUFDcEMsbUNBQXdDO0FBQ3hDLCtCQUFvRztBQUVwRyxRQUFRO0FBQ1IsSUFBTSxJQUFJLEdBQUcsTUFBTSxDQUFDLHNFQUFzRSxDQUFDLENBQUM7QUFzQjVGLFNBQVMsbUJBQW1CLENBQUMsS0FBNkIsRUFBRSxTQUFpQixFQUFFLEVBQVUsRUFBRSxFQUFXO0lBQXpFLHNCQUFBLEVBQUEsU0FBNkI7SUFDeEQsSUFBTSxJQUFJLEdBQUcsbUJBQVUsQ0FBQyxRQUFRLEVBQUUsdUJBQWdCLENBQUMsU0FBUyxFQUFFLEVBQUUsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDO0lBQ3RGLElBQU0sSUFBSSxHQUFHLG1CQUFVLENBQUMsUUFBUSxFQUFFLHVCQUFnQixDQUFDLFNBQVMsRUFBRSxFQUFFLENBQUMsQ0FBQyxRQUFRLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQztJQUN0RixJQUFNLElBQUksR0FBRyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQzdCLElBQUksQ0FBQyxhQUFhLENBQUMsS0FBSyxFQUFFLENBQUMsQ0FBQyxDQUFDO0lBQzdCLElBQUksQ0FBQyxDQUFDLEtBQUssS0FBSyxDQUFDLENBQUMsR0FBRyxVQUFVLENBQUMsS0FBSyxDQUFDLEVBQUU7UUFDdEMscUJBQXFCO1FBQ3JCLDZFQUE2RTtRQUM3RSw2RUFBNkU7UUFDN0UsSUFBSSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUNwQixJQUFJLENBQUMsTUFBTSxDQUFDLHVCQUFnQixDQUFDLEVBQUUsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDO1FBQ3RDLElBQUksQ0FB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QUFZLENBQUMsS0FBSyxDQUFDLGFBQWEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO1lBQ3JGLElBQU0sT0FBTyxHQUFHLFlBQVksQ0FBQyxLQUFLLENBQUMsU0FBUyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQztZQUNwRCxrQkFBa0I7WUFDbEIsSUFBTSxLQUFLLEdBQUcsQ0FBQyxNQUFNLEdBQUcseUJBQWtCLENBQUMsRUFBRSxDQUFDLENBQUMsR0FBRyxJQUFJLENBQUM7WUFDdkQsT0FBTyxDQUFDLE9BQU8sRUFBRSxPQUFPLEVBQUUsS0FBSyxFQUFFLHlCQUFrQixDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQ3ZFLENBQUM7UUFDSyxJQUFBLEtBQThCLE9BQU8sQ0FBQyxNQUFNLENBQ2hELFdBQVcsRUFDWCxXQUFXLENBQUMsQ0FBQyxRQUFRLENBQUMsRUFBRSxFQUFFLFFBQVEsQ0FBQyxFQUFFLEVBQUUsUUFBUSxDQUFDLE1BQU0sRUFBRSxRQUFRLENBQUMsU0FBUyxDQUFDLEVBQUUsT0FBTyxDQUFDLEtBQUssRUFBRSxDQUFDLENBQzlGLEVBSE0sRUFBRSxRQUFBLEVBQUUsRUFBRSxRQUFBLEVBQUUsTUFBTSxRQUFBLEVBQUUsU0FBUyxRQUcvQixDQUFDO1FBQ0YsT0FBTyxFQUFFLEVBQUUsSUFBQSxFQUFFLEVBQUUsSUFBQSxFQUFFLE1BQU0sUUFBQSxFQUFFLFNBQVMsV0FBQSxFQUFFLENBQUM7SUFDdkMsQ0FBQztJQW5ETSxrQkFBSyxHQUFpQixJQUFJLHFCQUFZLEVBQUUsQ0FBQztJQUN6Qyx3QkFBVyxHQUFHLEtBQUssQ0FBQztJQW1EN0IsbUJBQUM7Q0FBQSxBQXJERCxJQXFEQztBQXJEWSxvQ0FBWSIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQW4gaW50ZXJmYWNlIGZvciBjYWxjdWxhdGluZyBhIHN1YmtleSBpbiBhbiBIRCBrZXkgc2NoZW1lLlxuICovXG5pbXBvcnQgeyBjcmVhdGVIbWFjIH0gZnJvbSAnY3J5cHRvJztcbmltcG9ydCB7IEVkMjU1MTlDdXJ2ZSB9IGZyb20gJy4vY3VydmVzJztcbmltcG9ydCB7IGJpZ0ludEZyb21CdWZmZXJCRSwgYmlnSW50VG9CdWZmZXJCRSwgYmlnSW50RnJvbUJ1ZmZlckxFLCBiaWdJbnRUb0J1ZmZlckxFIH0gZnJvbSAnLi91dGlsJztcblxuLy8gMl4yNTZcbmNvbnN0IGJhc2UgPSBCaWdJbnQoJzB4MDEwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwJyk7XG5cbmludGVyZmFjZSBQcml2YXRlS2V5Y2hhaW4ge1xuICBwazogYmlnaW50O1xuICBzazogYmlnaW50O1xuICBwcmVmaXg6IGJpZ2ludDtcbiAgY2hhaW5jb2RlOiBiaWdpbnQ7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgUHVibGljS2V5Y2hhaW4ge1xuICBwazogYmlnaW50O1xuICBjaGFpbmNvZGU6IGJpZ2ludDtcbn1cblxuaW50ZXJmYWNlIEhEVHJlZSB7XG4gIHB1YmxpY0Rlcml2ZShrZXljaGFpbjogUHVibGljS2V5Y2hhaW4sIHBhdGg6IHN0cmluZyk6IFB1YmxpY0tleWNoYWluO1xuXG4gIHByaXZhdGVEZXJpdmUoa2V5Y2hhaW46IFByaXZhdGVLZXljaGFpbiwgcGF0aDogc3RyaW5nKTogUHJpdmF0ZUtleWNoYWluO1xufVxuXG5leHBvcnQgZGVmYXVsdCBIRFRyZWU7XG5cbmZ1bmN0aW9uIGRlcml2ZUVkMjU1MTlIZWxwZXIoaW5kZXg6IG51bWJlciB8IHVuZGVmaW5lZCA9IDAsIGNoYWluY29kZTogYmlnaW50LCBwazogYmlnaW50LCBzaz86IGJpZ2ludCk6IEJ1ZmZlcltdIHtcbiAgY29uc3Qgem1hYyA9IGNyZWF0ZUhtYWMoJ3NoYTUxMicsIGJpZ0ludFRvQnVmZmVyQkUoY2hhaW5jb2RlLCAzMikudG9TdHJpbmcoJ2xhdGluMScpKTtcbiAgY29uc3QgaW1hYyA9IGNyZWF0ZUhtYWMoJ3NoYTUxMicsIGJpZ0ludFRvQnVmZmVyQkUoY2hhaW5jb2RlLCAzMikudG9TdHJpbmcoJ2xhdGluMScpKTtcbiAgY29uc3Qgc2VyaSA9IEJ1ZmZlci5hbGxvYyg0KTtcbiAgc2VyaS53cml0ZVVJbnQzMkxFKGluZGV4LCAwKTtcbiAgaWYgKCgoaW5kZXggPj4+IDApICYgMHg4MDAwMDAwMCkgPT09IDApIHtcbiAgICAvLyBOb3JtYWwgZGVyaXZhdGlvbjpcbiAgICAvLyBaID0gSE1BQy1TSEE1MTIoS2V5ID0gY3BhciwgRGF0YSA9IDB4MDIgfHwgc2VyUChwb2ludChrcGFyKSkgfHwgc2VyMzIoaSkpLlxuICAgIC8vIEkgPSBITUFDLVNIQTUxMihLZXkgPSBjcGFyLCBEYXRhID0gMHgwMyB8fCBzZXJQKHBvaW50KGtwYXIpKSB8fCBzZXIzMihpKSkuXG4gICAgem1hYy51cGRhdGUoJ1xceDAyJyk7XG4gICAgem1hYy51cGRhdGUoYmlnSW50VG9CdWZmZXJMRShwaywgMzIpKTtcbiAgICB6bWFjLnVwZGF0ZShzZXJpKTtcbiAgICBpbWFjLnVwZGF0ZSgnXFx4MDMnKTtcbiAgICBpbWFjLnVwZGF0ZShiaWdJbnRUb0J1ZmZlckxFKHBrLCAzMikpO1xuICAgIGltYWMudXBkYXRlKHNlcmkpO1xuICB9IGVsc2Uge1xuICAgIGlmIChzayA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoXCJDYW4ndCBwZXJmb3JtZWQgaGFyZGVuZWQgZGVyaXZhdGlvbiB3aXRob3V0IHByaXZhdGUga2V5XCIpO1xuICAgIH1cbiAgICAvLyBIYXJkZW5lZCBkZXJpdmF0aW9uOlxuICAgIC8vIFogPSBITUFDLVNIQTUxMihLZXkgPSBjcGFyLCBEYXRhID0gMHgwMCB8fCBzZXIyNTYobGVmdChrcGFyKSkgfHwgc2VyMzIoaSkpLlxuICAgIC8vIEkgPSBITUFDLVNIQTUxMihLZXkgPSBjcGFyLCBEYXRhID0gMHgwMSB8fCBzZXIyNTYobGVmdChrcGFyKSkgfHwgc2VyMzIoaSkpLlxuICAgIHptYWMudXBkYXRlKCdcXHgwMCcpO1xuICAgIHptYWMudXBkYXRlKGJpZ0ludFRvQnVmZmVyTEUoc2ssIDMyKSk7XG4gICAgem1hYy51cGRhdGUoc2VyaSk7XG4gICAgaW1hYy51cGRhdGUoJ1xceDAxJyk7XG4gICAgaW1hYy51cGRhdGUoYmlnSW50VG9CdWZmZXJMRShzaywgMzIpKTtcbiAgICBpbWFjLnVwZGF0ZShzZXJpKTtcbiAgfVxuICByZXR1cm4gW3ptYWMuZGlnZXN0KCksIGltYWMuZGlnZXN0KCldO1xufVxuXG5leHBvcnQgY2xhc3MgRWQyNTUxOUJJUDMyIHtcbiAgc3RhdGljIGN1cnZlOiBFZDI1NTE5Q3VydmUgPSBuZXcgRWQyNTUxOUN1cnZlKCk7XG4gIHN0YXRpYyBpbml0aWFsaXplZCA9IGZhbHNlO1xuXG4gIHN0YXRpYyBhc3luYyBpbml0aWFsaXplKCk6IFByb21pc2U8dm9pZD4ge1xuICAgIGlmICghRWQyNTUxOUJJUDMyLmluaXRpYWxpemVkKSB7XG4gICAgICBhd2FpdCBFZDI1NTE5Q3VydmUuaW5pdGlhbGl6ZSgpO1xuICAgICAgRWQyNTUxOUJJUDMyLmluaXRpYWxpemVkID0gdHJ1ZTtcbiAgICB9XG4gIH1cblxuICBwdWJsaWNEZXJpdmUoa2V5Y2hhaW46IFB1YmxpY0tleWNoYWluLCBwYXRoOiBzdHJpbmcpOiBQdWJsaWNLZXljaGFpbiB7XG4gICAgY29uc3QgaW5kaWNlcyA9IHBhdGhcbiAgICAgIC5yZXBsYWNlKC9ebVxcLy8sICcnKVxuICAgICAgLnNwbGl0KCcvJylcbiAgICAgIC5tYXAoKGluZGV4KSA9PiBwYXJzZUludChpbmRleCwgMTApKTtcbiAgICBmdW5jdGlvbiBkZXJpdmVJbmRleChhY2M6IGJpZ2ludFtdLCBpbmRleDogbnVtYmVyIHwgdW5kZWZpbmVkKTogYmlnaW50W10ge1xuICAgICAgY29uc3QgW3BrLCBjaGFpbmNvZGVdID0gYWNjO1xuICAgICAgY29uc3QgW3pvdXQsIGlvdXRdID0gZGVyaXZlRWQyNTUxOUhlbHBlcihpbmRleCwgY2hhaW5jb2RlLCBwayk7XG4gICAgICBjb25zdCB6bCA9IHpvdXQuc2xpY2UoMCwgMzIpO1xuICAgICAgLy8gbGVmdCA9IGtsICsgOCAqIHRydW5jMjgoemwpXG4gICAgICBjb25zdCB0ID0gQmlnSW50KDgpICogYmlnSW50RnJvbUJ1ZmZlckxFKHpsLnNsaWNlKDAsIDI4KSk7XG4gICAgICBjb25zdCBsZWZ0ID0gRWQyNTUxOUJJUDMyLmN1cnZlLnBvaW50QWRkKHBrLCBFZDI1NTE5QklQMzIuY3VydmUuYmFzZVBvaW50TXVsdCh0KSk7XG4gICAgICByZXR1cm4gW2xlZnQsIGJpZ0ludEZyb21CdWZmZXJCRShpb3V0LnNsaWNlKDMyKSldO1xuICAgIH1cbiAgICBjb25zdCBzdWJrZXkgPSBpbmRpY2VzLnJlZHVjZShkZXJpdmVJbmRleCwgZGVyaXZlSW5kZXgoW2tleWNoYWluLnBrLCBrZXljaGFpbi5jaGFpbmNvZGVdLCBpbmRpY2VzLnNoaWZ0KCkpKTtcbiAgICByZXR1cm4geyBwazogc3Via2V5WzBdLCBjaGFpbmNvZGU6IHN1YmtleVsxXSB9O1xuICB9XG5cbiAgcHJpdmF0ZURlcml2ZShrZXljaGFpbjogUHJpdmF0ZUtleWNoYWluLCBwYXRoOiBzdHJpbmcpOiBQcml2YXRlS2V5Y2hhaW4ge1xuICAgIGNvbnN0IGluZGljZXMgPSBwYXRoXG4gICAgICAucmVwbGFjZSgvXm1cXC8vLCAnJylcbiAgICAgIC5zcGxpdCgnLycpXG4gICAgICAubWFwKChpbmRleCkgPT4gcGFyc2VJbnQoaW5kZXgsIDEwKSk7XG4gICAgZnVuY3Rpb24gZGVyaXZlSW5kZXgoYWNjOiBiaWdpbnRbXSwgaW5kZXg6IG51bWJlciB8IHVuZGVmaW5lZCk6IGJpZ2ludFtdIHtcbiAgICAgIGNvbnN0IFtwaywgc2ssIHByZWZpeCwgY2hhaW5jb2RlXSA9IGFjYztcbiAgICAgIGNvbnN0IFt6b3V0LCBpb3V0XSA9IGRlcml2ZUVkMjU1MTlIZWxwZXIoaW5kZXgsIGNoYWluY29kZSwgcGssIHNrKTtcbiAgICAgIGNvbnN0IHpsID0gem91dC5zbGljZSgwLCAzMik7XG4gICAgICBjb25zdCB6ciA9IHpvdXQuc2xpY2UoMzIpO1xuICAgICAgLy8gbGVmdCA9IGtsICsgOCAqIHRydW5jMjgoemwpXG4gICAgICBjb25zdCB0ID0gQmlnSW50KDgpICogYmlnSW50RnJvbUJ1ZmZlckxFKHpsLnNsaWNlKDAsIDI4KSk7XG4gICAgICBjb25zdCBsZWZ0X3BrID0gRWQyNTUxOUJJUDMyLmN1cnZlLnBvaW50QWRkKHBrLCBFZDI1NTE5QklQMzIuY3VydmUuYmFzZVBvaW50TXVsdCh0KSk7XG4gICAgICBjb25zdCBsZWZ0X3NrID0gRWQyNTUxOUJJUDMyLmN1cnZlLnNjYWxhckFkZChzaywgdCk7XG4gICAgICAvLyByaWdodCA9IHpyICsga3JcbiAgICAgIGNvbnN0IHJpZ2h0ID0gKHByZWZpeCArIGJpZ0ludEZyb21CdWZmZXJCRSh6cikpICUgYmFzZTtcbiAgICAgIHJldHVybiBbbGVmdF9waywgbGVmdF9zaywgcmlnaHQsIGJpZ0ludEZyb21CdWZmZXJCRShpb3V0LnNsaWNlKDMyKSldO1xuICAgIH1cbiAgICBjb25zdCBbcGssIHNrLCBwcmVmaXgsIGNoYWluY29kZV0gPSBpbmRpY2VzLnJlZHVjZShcbiAgICAgIGRlcml2ZUluZGV4LFxuICAgICAgZGVyaXZlSW5kZXgoW2tleWNoYWluLnBrLCBrZXljaGFpbi5zaywga2V5Y2hhaW4ucHJlZml4LCBrZXljaGFpbi5jaGFpbmNvZGVdLCBpbmRpY2VzLnNoaWZ0KCkpLFxuICAgICk7XG4gICAgcmV0dXJuIHsgcGssIHNrLCBwcmVmaXgsIGNoYWluY29kZSB9O1xuICB9XG59XG4iXX0=
|
package/dist/src/mpc/shamir.d.ts
CHANGED
|
@@ -1,7 +1,26 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
1
|
+
import Curve from './curves';
|
|
2
|
+
export default class Shamir {
|
|
3
|
+
curve: Curve;
|
|
4
|
+
constructor(curve: Curve);
|
|
5
|
+
/**
|
|
6
|
+
* Perform Shamir sharing on the secret `secret` to the degree `threshold - 1` split `numShares`
|
|
7
|
+
* ways. The split secret requires `threshold` shares to be reconstructed.
|
|
8
|
+
*
|
|
9
|
+
* @param secret secret to split
|
|
10
|
+
* @param threshold share threshold required to reconstruct secret
|
|
11
|
+
* @param numShares total number of shares to split to split secret into
|
|
12
|
+
* @param indices
|
|
13
|
+
* @returns Dictionary of shares. Each key is an int in the range 1<=x<=numShares
|
|
14
|
+
* representing that share's free term.
|
|
15
|
+
*/
|
|
16
|
+
split(secret: bigint, threshold: number, numShares: number, indices?: Array<number>): Record<number, bigint>;
|
|
17
|
+
/**
|
|
18
|
+
* Reconstitute a secret from a dictionary of shares. The number of shares must
|
|
19
|
+
* be equal to `t` to reconstitute the original secret.
|
|
20
|
+
*
|
|
21
|
+
* @param shares dictionary of shares. each key is the free term of the share
|
|
22
|
+
* @returns secret
|
|
23
|
+
*/
|
|
24
|
+
combine(shares: Record<number, bigint>): bigint;
|
|
25
|
+
}
|
|
7
26
|
//# sourceMappingURL=shamir.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"shamir.d.ts","sourceRoot":"","sources":["../../../src/mpc/shamir.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"shamir.d.ts","sourceRoot":"","sources":["../../../src/mpc/shamir.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,MAAM,UAAU,CAAC;AAG7B,MAAM,CAAC,OAAO,OAAO,MAAM;IACzB,KAAK,EAAE,KAAK,CAAC;gBAED,KAAK,EAAE,KAAK;IAIxB;;;;;;;;;;OAUG;IACH,KAAK,CAAC,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,KAAK,CAAC,MAAM,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC;IAiC5G;;;;;;OAMG;IACH,OAAO,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,MAAM;CA2BhD"}
|
package/dist/src/mpc/shamir.js
CHANGED
|
@@ -1,7 +1,12 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
var assert = require('assert');
|
|
4
|
-
var
|
|
4
|
+
var crypto = require('crypto');
|
|
5
|
+
var util_1 = require("./util");
|
|
6
|
+
var Shamir = /** @class */ (function () {
|
|
7
|
+
function Shamir(curve) {
|
|
8
|
+
this.curve = curve;
|
|
9
|
+
}
|
|
5
10
|
/**
|
|
6
11
|
* Perform Shamir sharing on the secret `secret` to the degree `threshold - 1` split `numShares`
|
|
7
12
|
* ways. The split secret requires `threshold` shares to be reconstructed.
|
|
@@ -13,32 +18,33 @@ var Shamir = function (curve) {
|
|
|
13
18
|
* @returns Dictionary of shares. Each key is an int in the range 1<=x<=numShares
|
|
14
19
|
* representing that share's free term.
|
|
15
20
|
*/
|
|
16
|
-
|
|
17
|
-
|
|
21
|
+
Shamir.prototype.split = function (secret, threshold, numShares, indices) {
|
|
22
|
+
var bigIndices;
|
|
23
|
+
if (indices) {
|
|
24
|
+
bigIndices = indices.map(function (i) { return BigInt(i); });
|
|
25
|
+
}
|
|
26
|
+
else {
|
|
18
27
|
// make range(1, n + 1)
|
|
19
|
-
|
|
28
|
+
bigIndices = Array(numShares)
|
|
29
|
+
.fill(null)
|
|
30
|
+
.map(function (_, i) { return BigInt(i + 1); });
|
|
20
31
|
}
|
|
21
32
|
assert(threshold > 1);
|
|
22
33
|
assert(threshold <= numShares);
|
|
23
34
|
var coefs = [];
|
|
24
35
|
for (var ind = 0; ind < threshold - 1; ind++) {
|
|
25
|
-
var
|
|
26
|
-
coefs.push(
|
|
36
|
+
var coeff = util_1.clamp(util_1.bigIntFromBufferLE(crypto.createHmac('sha256', ind.toString(10)).update(util_1.bigIntToBufferLE(secret, 32)).digest()));
|
|
37
|
+
coefs.push(coeff);
|
|
27
38
|
}
|
|
28
39
|
coefs.push(secret);
|
|
29
40
|
var shares = {};
|
|
30
|
-
for (var ind = 0; ind <
|
|
31
|
-
var x =
|
|
32
|
-
var x_buffer = Buffer.alloc(32);
|
|
33
|
-
// TODO BG-40908 : converting internal representation to buffers
|
|
34
|
-
x_buffer.writeUInt32LE(x, 0);
|
|
41
|
+
for (var ind = 0; ind < bigIndices.length; ind++) {
|
|
42
|
+
var x = bigIndices[ind];
|
|
35
43
|
var partial = coefs[0];
|
|
36
44
|
for (var other = 1; other < coefs.length; other++) {
|
|
37
|
-
|
|
38
|
-
var newAdd = curve.scalarAdd(coefs[other], scalarMult);
|
|
39
|
-
partial = newAdd;
|
|
45
|
+
partial = this.curve.scalarAdd(coefs[other], this.curve.scalarMult(partial, x));
|
|
40
46
|
}
|
|
41
|
-
shares[x] =
|
|
47
|
+
shares[parseInt(x.toString(), 10)] = partial;
|
|
42
48
|
}
|
|
43
49
|
return shares;
|
|
44
50
|
};
|
|
@@ -49,43 +55,33 @@ var Shamir = function (curve) {
|
|
|
49
55
|
* @param shares dictionary of shares. each key is the free term of the share
|
|
50
56
|
* @returns secret
|
|
51
57
|
*/
|
|
52
|
-
|
|
53
|
-
var s =
|
|
54
|
-
for (var
|
|
55
|
-
var yi = shares[
|
|
56
|
-
var
|
|
57
|
-
var
|
|
58
|
-
var
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
denum_buffer.writeUInt32LE(1, 0);
|
|
62
|
-
for (var xj in shares) {
|
|
63
|
-
var xj_buffer = Buffer.alloc(32);
|
|
64
|
-
xj_buffer.writeUInt32LE(parseInt(xj, 10), 0);
|
|
58
|
+
Shamir.prototype.combine = function (shares) {
|
|
59
|
+
var s = BigInt(0);
|
|
60
|
+
for (var i in shares) {
|
|
61
|
+
var yi = shares[i];
|
|
62
|
+
var xi = BigInt(i);
|
|
63
|
+
var num = BigInt(1);
|
|
64
|
+
var denum = BigInt(1);
|
|
65
|
+
for (var j in shares) {
|
|
66
|
+
var xj = BigInt(j);
|
|
65
67
|
if (xi !== xj) {
|
|
66
|
-
|
|
68
|
+
num = this.curve.scalarMult(num, xj);
|
|
67
69
|
}
|
|
68
70
|
}
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
var xj_buffer = Buffer.alloc(32);
|
|
72
|
-
xj_buffer.writeUInt32LE(parseInt(xj, 10), 0);
|
|
71
|
+
for (var j in shares) {
|
|
72
|
+
var xj = BigInt(j);
|
|
73
73
|
if (xi !== xj) {
|
|
74
|
-
|
|
74
|
+
denum = this.curve.scalarMult(denum, this.curve.scalarSub(xj, xi));
|
|
75
75
|
}
|
|
76
76
|
}
|
|
77
|
-
|
|
78
|
-
var
|
|
79
|
-
var
|
|
80
|
-
|
|
81
|
-
s = curve.scalarAdd(multiplied, s);
|
|
77
|
+
var inverted = this.curve.scalarInvert(denum);
|
|
78
|
+
var innerMultiplied = this.curve.scalarMult(num, inverted);
|
|
79
|
+
var multiplied = this.curve.scalarMult(innerMultiplied, yi);
|
|
80
|
+
s = this.curve.scalarAdd(multiplied, s);
|
|
82
81
|
}
|
|
83
82
|
return s;
|
|
84
83
|
};
|
|
85
|
-
return
|
|
86
|
-
|
|
87
|
-
combine: combine,
|
|
88
|
-
};
|
|
89
|
-
};
|
|
84
|
+
return Shamir;
|
|
85
|
+
}());
|
|
90
86
|
exports.default = Shamir;
|
|
91
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
87
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2hhbWlyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL21wYy9zaGFtaXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFBQSxJQUFNLE1BQU0sR0FBRyxPQUFPLENBQUMsUUFBUSxDQUFDLENBQUM7QUFDakMsSUFBTSxNQUFNLEdBQUcsT0FBTyxDQUFDLFFBQVEsQ0FBQyxDQUFDO0FBRWpDLCtCQUFxRTtBQUVyRTtJQUdFLGdCQUFZLEtBQVk7UUFDdEIsSUFBSSxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUM7SUFDckIsQ0FBQztJQUVEOzs7Ozs7Ozs7O09BVUc7SUFDSCxzQkFBSyxHQUFMLFVBQU0sTUFBYyxFQUFFLFNBQWlCLEVBQUUsU0FBaUIsRUFBRSxPQUF1QjtRQUNqRixJQUFJLFVBQXlCLENBQUM7UUFDOUIsSUFBSSxPQUFPLEVBQUU7WUFDWCxVQUFVLEdBQUcsT0FBTyxDQUFDLEdBQUcsQ0FBQyxVQUFDLENBQUMsSUFBSyxPQUFBLE1BQU0sQ0FBQyxDQUFDLENBQUMsRUFBVCxDQUFTLENBQUMsQ0FBQztTQUM1QzthQUFNO1lBQ0wsdUJBQXVCO1lBQ3ZCLFVBQVUsR0FBRyxLQUFLLENBQUMsU0FBUyxDQUFDO2lCQUMxQixJQUFJLENBQUMsSUFBSSxDQUFDO2lCQUNWLEdBQUcsQ0FBQyxVQUFDLENBQUMsRUFBRSxDQUFDLElBQUssT0FBQSxNQUFNLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxFQUFiLENBQWEsQ0FBQyxDQUFDO1NBQ2pDO1FBQ0QsTUFBTSxDQUFDLFNBQVMsR0FBRyxDQUFDLENBQUMsQ0FBQztRQUN0QixNQUFNLENBQUMsU0FBUyxJQUFJLFNBQVMsQ0FBQyxDQUFDO1FBQy9CLElBQU0sS0FBSyxHQUFhLEVBQUUsQ0FBQztRQUMzQixLQUFLLElBQUksR0FBRyxHQUFHLENBQUMsRUFBRSxHQUFHLEdBQUcsU0FBUyxHQUFHLENBQUMsRUFBRSxHQUFHLEVBQUUsRUFBRTtZQUM1QyxJQUFNLEtBQUssR0FBRyxZQUFLLENBQ2pCLHlCQUFrQixDQUFDLE1BQU0sQ0FBQyxVQUFVLENBQUMsUUFBUSxFQUFFLEdBQUcsQ0FBQyxRQUFRLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsdUJBQWdCLENBQUMsTUFBTSxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsTUFBTSxFQUFFLENBQUMsQ0FDaEgsQ0FBQztZQUNGLEtBQUssQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7U0FDbkI7UUFDRCxLQUFLLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBRW5CLElBQU0sTUFBTSxHQUEyQixFQUFFLENBQUM7UUFDMUMsS0FBSyxJQUFJLEdBQUcsR0FBRyxDQUFDLEVBQUUsR0FBRyxHQUFHLFVBQVUsQ0FBQyxNQUFNLEVBQUUsR0FBRyxFQUFFLEVBQUU7WUFDaEQsSUFBTSxDQUFDLEdBQUcsVUFBVSxDQUFDLEdBQUcsQ0FBQyxDQUFDO1lBQzFCLElBQUksT0FBTyxHQUFHLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQztZQUN2QixLQUFLLElBQUksS0FBSyxHQUFHLENBQUMsRUFBRSxLQUFLLEdBQUcsS0FBSyxDQUFDLE1BQU0sRUFBRSxLQUFLLEVBQUUsRUFBRTtnQkFDakQsT0FBTyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsRUFBRSxJQUFJLENBQUMsS0FBSyxDQUFDLFVBQVUsQ0FBQyxPQUFPLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQzthQUNqRjtZQUNELE1BQU0sQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLFFBQVEsRUFBRSxFQUFFLEVBQUUsQ0FBQyxDQUFDLEdBQUcsT0FBTyxDQUFDO1NBQzlDO1FBQ0QsT0FBTyxNQUFNLENBQUM7SUFDaEIsQ0FBQztJQUVEOzs7Ozs7T0FNRztJQUNILHdCQUFPLEdBQVAsVUFBUSxNQUE4QjtRQUNwQyxJQUFJLENBQUMsR0FBRyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDbEIsS0FBSyxJQUFNLENBQUMsSUFBSSxNQUFNLEVBQUU7WUFDdEIsSUFBTSxFQUFFLEdBQUcsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDO1lBQ3JCLElBQU0sRUFBRSxHQUFHLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQztZQUNyQixJQUFJLEdBQUcsR0FBRyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUM7WUFDcEIsSUFBSSxLQUFLLEdBQUcsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDO1lBRXRCLEtBQUssSUFBTSxDQUFDLElBQUksTUFBTSxFQUFFO2dCQUN0QixJQUFNLEVBQUUsR0FBRyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUM7Z0JBQ3JCLElBQUksRUFBRSxLQUFLLEVBQUUsRUFBRTtvQkFDYixHQUFHLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxVQUFVLENBQUMsR0FBRyxFQUFFLEVBQUUsQ0FBQyxDQUFDO2lCQUN0QzthQUNGO1lBQ0QsS0FBSyxJQUFNLENBQUMsSUFBSSxNQUFNLEVBQUU7Z0JBQ3RCLElBQU0sRUFBRSxHQUFHLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQztnQkFDckIsSUFBSSxFQUFFLEtBQUssRUFBRSxFQUFFO29CQUNiLEtBQUssR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLFVBQVUsQ0FBQyxLQUFLLEVBQUUsSUFBSSxDQUFDLEtBQUssQ0FBQyxTQUFTLENBQUMsRUFBRSxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUM7aUJBQ3BFO2FBQ0Y7WUFDRCxJQUFNLFFBQVEsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLFlBQVksQ0FBQyxLQUFLLENBQUMsQ0FBQztZQUNoRCxJQUFNLGVBQWUsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLFVBQVUsQ0FBQyxHQUFHLEVBQUUsUUFBUSxDQUFDLENBQUM7WUFDN0QsSUFBTSxVQUFVLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxVQUFVLENBQUMsZUFBZSxFQUFFLEVBQUUsQ0FBQyxDQUFDO1lBQzlELENBQUMsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLFNBQVMsQ0FBQyxVQUFVLEVBQUUsQ0FBQyxDQUFDLENBQUM7U0FDekM7UUFDRCxPQUFPLENBQUMsQ0FBQztJQUNYLENBQUM7SUFDSCxhQUFDO0FBQUQsQ0FBQyxBQXJGRCxJQXFGQyIsInNvdXJjZXNDb250ZW50IjpbImNvbnN0IGFzc2VydCA9IHJlcXVpcmUoJ2Fzc2VydCcpO1xuY29uc3QgY3J5cHRvID0gcmVxdWlyZSgnY3J5cHRvJyk7XG5pbXBvcnQgQ3VydmUgZnJvbSAnLi9jdXJ2ZXMnO1xuaW1wb3J0IHsgYmlnSW50RnJvbUJ1ZmZlckxFLCBiaWdJbnRUb0J1ZmZlckxFLCBjbGFtcCB9IGZyb20gJy4vdXRpbCc7XG5cbmV4cG9ydCBkZWZhdWx0IGNsYXNzIFNoYW1pciB7XG4gIGN1cnZlOiBDdXJ2ZTtcblxuICBjb25zdHJ1Y3RvcihjdXJ2ZTogQ3VydmUpIHtcbiAgICB0aGlzLmN1cnZlID0gY3VydmU7XG4gIH1cblxuICAvKipcbiAgICogUGVyZm9ybSBTaGFtaXIgc2hhcmluZyBvbiB0aGUgc2VjcmV0IGBzZWNyZXRgIHRvIHRoZSBkZWdyZWUgYHRocmVzaG9sZCAtIDFgIHNwbGl0IGBudW1TaGFyZXNgXG4gICAqIHdheXMuIFRoZSBzcGxpdCBzZWNyZXQgcmVxdWlyZXMgYHRocmVzaG9sZGAgc2hhcmVzIHRvIGJlIHJlY29uc3RydWN0ZWQuXG4gICAqXG4gICAqIEBwYXJhbSBzZWNyZXQgc2VjcmV0IHRvIHNwbGl0XG4gICAqIEBwYXJhbSB0aHJlc2hvbGQgc2hhcmUgdGhyZXNob2xkIHJlcXVpcmVkIHRvIHJlY29uc3RydWN0IHNlY3JldFxuICAgKiBAcGFyYW0gbnVtU2hhcmVzIHRvdGFsIG51bWJlciBvZiBzaGFyZXMgdG8gc3BsaXQgdG8gc3BsaXQgc2VjcmV0IGludG9cbiAgICogQHBhcmFtIGluZGljZXNcbiAgICogQHJldHVybnMgRGljdGlvbmFyeSBvZiBzaGFyZXMuIEVhY2gga2V5IGlzIGFuIGludCBpbiB0aGUgcmFuZ2UgMTw9eDw9bnVtU2hhcmVzXG4gICAqIHJlcHJlc2VudGluZyB0aGF0IHNoYXJlJ3MgZnJlZSB0ZXJtLlxuICAgKi9cbiAgc3BsaXQoc2VjcmV0OiBiaWdpbnQsIHRocmVzaG9sZDogbnVtYmVyLCBudW1TaGFyZXM6IG51bWJlciwgaW5kaWNlcz86IEFycmF5PG51bWJlcj4pOiBSZWNvcmQ8bnVtYmVyLCBiaWdpbnQ+IHtcbiAgICBsZXQgYmlnSW5kaWNlczogQXJyYXk8YmlnaW50PjtcbiAgICBpZiAoaW5kaWNlcykge1xuICAgICAgYmlnSW5kaWNlcyA9IGluZGljZXMubWFwKChpKSA9PiBCaWdJbnQoaSkpO1xuICAgIH0gZWxzZSB7XG4gICAgICAvLyBtYWtlIHJhbmdlKDEsIG4gKyAxKVxuICAgICAgYmlnSW5kaWNlcyA9IEFycmF5KG51bVNoYXJlcylcbiAgICAgICAgLmZpbGwobnVsbClcbiAgICAgICAgLm1hcCgoXywgaSkgPT4gQmlnSW50KGkgKyAxKSk7XG4gICAgfVxuICAgIGFzc2VydCh0aHJlc2hvbGQgPiAxKTtcbiAgICBhc3NlcnQodGhyZXNob2xkIDw9IG51bVNoYXJlcyk7XG4gICAgY29uc3QgY29lZnM6IGJpZ2ludFtdID0gW107XG4gICAgZm9yIChsZXQgaW5kID0gMDsgaW5kIDwgdGhyZXNob2xkIC0gMTsgaW5kKyspIHtcbiAgICAgIGNvbnN0IGNvZWZmID0gY2xhbXAoXG4gICAgICAgIGJpZ0ludEZyb21CdWZmZXJMRShjcnlwdG8uY3JlYXRlSG1hYygnc2hhMjU2JywgaW5kLnRvU3RyaW5nKDEwKSkudXBkYXRlKGJpZ0ludFRvQnVmZmVyTEUoc2VjcmV0LCAzMikpLmRpZ2VzdCgpKSxcbiAgICAgICk7XG4gICAgICBjb2Vmcy5wdXNoKGNvZWZmKTtcbiAgICB9XG4gICAgY29lZnMucHVzaChzZWNyZXQpO1xuXG4gICAgY29uc3Qgc2hhcmVzOiBSZWNvcmQ8bnVtYmVyLCBiaWdpbnQ+ID0ge307XG4gICAgZm9yIChsZXQgaW5kID0gMDsgaW5kIDwgYmlnSW5kaWNlcy5sZW5ndGg7IGluZCsrKSB7XG4gICAgICBjb25zdCB4ID0gYmlnSW5kaWNlc1tpbmRdO1xuICAgICAgbGV0IHBhcnRpYWwgPSBjb2Vmc1swXTtcbiAgICAgIGZvciAobGV0IG90aGVyID0gMTsgb3RoZXIgPCBjb2Vmcy5sZW5ndGg7IG90aGVyKyspIHtcbiAgICAgICAgcGFydGlhbCA9IHRoaXMuY3VydmUuc2NhbGFyQWRkKGNvZWZzW290aGVyXSwgdGhpcy5jdXJ2ZS5zY2FsYXJNdWx0KHBhcnRpYWwsIHgpKTtcbiAgICAgIH1cbiAgICAgIHNoYXJlc1twYXJzZUludCh4LnRvU3RyaW5nKCksIDEwKV0gPSBwYXJ0aWFsO1xuICAgIH1cbiAgICByZXR1cm4gc2hhcmVzO1xuICB9XG5cbiAgLyoqXG4gICAqIFJlY29uc3RpdHV0ZSBhIHNlY3JldCBmcm9tIGEgZGljdGlvbmFyeSBvZiBzaGFyZXMuIFRoZSBudW1iZXIgb2Ygc2hhcmVzIG11c3RcbiAgICogYmUgZXF1YWwgdG8gYHRgIHRvIHJlY29uc3RpdHV0ZSB0aGUgb3JpZ2luYWwgc2VjcmV0LlxuICAgKlxuICAgKiBAcGFyYW0gc2hhcmVzIGRpY3Rpb25hcnkgb2Ygc2hhcmVzLiBlYWNoIGtleSBpcyB0aGUgZnJlZSB0ZXJtIG9mIHRoZSBzaGFyZVxuICAgKiBAcmV0dXJucyBzZWNyZXRcbiAgICovXG4gIGNvbWJpbmUoc2hhcmVzOiBSZWNvcmQ8bnVtYmVyLCBiaWdpbnQ+KTogYmlnaW50IHtcbiAgICBsZXQgcyA9IEJpZ0ludCgwKTtcbiAgICBmb3IgKGNvbnN0IGkgaW4gc2hhcmVzKSB7XG4gICAgICBjb25zdCB5aSA9IHNoYXJlc1tpXTtcbiAgICAgIGNvbnN0IHhpID0gQmlnSW50KGkpO1xuICAgICAgbGV0IG51bSA9IEJpZ0ludCgxKTtcbiAgICAgIGxldCBkZW51bSA9IEJpZ0ludCgxKTtcblxuICAgICAgZm9yIChjb25zdCBqIGluIHNoYXJlcykge1xuICAgICAgICBjb25zdCB4aiA9IEJpZ0ludChqKTtcbiAgICAgICAgaWYgKHhpICE9PSB4aikge1xuICAgICAgICAgIG51bSA9IHRoaXMuY3VydmUuc2NhbGFyTXVsdChudW0sIHhqKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgZm9yIChjb25zdCBqIGluIHNoYXJlcykge1xuICAgICAgICBjb25zdCB4aiA9IEJpZ0ludChqKTtcbiAgICAgICAgaWYgKHhpICE9PSB4aikge1xuICAgICAgICAgIGRlbnVtID0gdGhpcy5jdXJ2ZS5zY2FsYXJNdWx0KGRlbnVtLCB0aGlzLmN1cnZlLnNjYWxhclN1Yih4aiwgeGkpKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgY29uc3QgaW52ZXJ0ZWQgPSB0aGlzLmN1cnZlLnNjYWxhckludmVydChkZW51bSk7XG4gICAgICBjb25zdCBpbm5lck11bHRpcGxpZWQgPSB0aGlzLmN1cnZlLnNjYWxhck11bHQobnVtLCBpbnZlcnRlZCk7XG4gICAgICBjb25zdCBtdWx0aXBsaWVkID0gdGhpcy5jdXJ2ZS5zY2FsYXJNdWx0KGlubmVyTXVsdGlwbGllZCwgeWkpO1xuICAgICAgcyA9IHRoaXMuY3VydmUuc2NhbGFyQWRkKG11bHRpcGxpZWQsIHMpO1xuICAgIH1cbiAgICByZXR1cm4gcztcbiAgfVxufVxuIl19
|
package/dist/src/mpc/tss.d.ts
CHANGED
|
@@ -1,53 +1,67 @@
|
|
|
1
1
|
/// <reference types="node" />
|
|
2
|
-
|
|
3
|
-
|
|
2
|
+
import { Ed25519Curve } from './curves';
|
|
3
|
+
import Shamir from './shamir';
|
|
4
|
+
import HDTree from './hdTree';
|
|
5
|
+
export interface UShare {
|
|
6
|
+
i: number;
|
|
7
|
+
t: number;
|
|
8
|
+
n: number;
|
|
4
9
|
y: string;
|
|
5
|
-
|
|
6
|
-
|
|
10
|
+
seed: string;
|
|
11
|
+
chaincode: string;
|
|
7
12
|
}
|
|
8
|
-
interface YShare {
|
|
9
|
-
i:
|
|
10
|
-
j:
|
|
13
|
+
export interface YShare {
|
|
14
|
+
i: number;
|
|
15
|
+
j: number;
|
|
11
16
|
y: string;
|
|
12
17
|
u: string;
|
|
18
|
+
chaincode: string;
|
|
13
19
|
}
|
|
14
20
|
export interface KeyShare {
|
|
15
21
|
uShare: UShare;
|
|
16
|
-
yShares: Record<
|
|
22
|
+
yShares: Record<number, YShare>;
|
|
17
23
|
}
|
|
18
24
|
export interface PShare {
|
|
19
|
-
i:
|
|
20
|
-
|
|
25
|
+
i: number;
|
|
26
|
+
t: number;
|
|
27
|
+
n: number;
|
|
21
28
|
y: string;
|
|
29
|
+
u: string;
|
|
22
30
|
prefix: string;
|
|
31
|
+
chaincode: string;
|
|
23
32
|
}
|
|
24
33
|
export interface JShare {
|
|
25
|
-
i:
|
|
26
|
-
j:
|
|
34
|
+
i: number;
|
|
35
|
+
j: number;
|
|
27
36
|
}
|
|
28
37
|
interface KeyCombine {
|
|
29
38
|
pShare: PShare;
|
|
30
|
-
jShares: Record<
|
|
39
|
+
jShares: Record<number, JShare>;
|
|
40
|
+
}
|
|
41
|
+
interface SubkeyShare {
|
|
42
|
+
pShare: PShare;
|
|
43
|
+
yShares: Record<number, YShare>;
|
|
31
44
|
}
|
|
32
45
|
export interface XShare {
|
|
33
|
-
i:
|
|
46
|
+
i: number;
|
|
34
47
|
y: string;
|
|
35
|
-
|
|
48
|
+
u: string;
|
|
36
49
|
r: string;
|
|
37
50
|
R: string;
|
|
38
51
|
}
|
|
39
52
|
export interface RShare {
|
|
40
|
-
i:
|
|
41
|
-
j:
|
|
53
|
+
i: number;
|
|
54
|
+
j: number;
|
|
55
|
+
u: string;
|
|
42
56
|
r: string;
|
|
43
57
|
R: string;
|
|
44
58
|
}
|
|
45
59
|
export interface SignShare {
|
|
46
60
|
xShare: XShare;
|
|
47
|
-
rShares: Record<
|
|
61
|
+
rShares: Record<number, RShare>;
|
|
48
62
|
}
|
|
49
63
|
export interface GShare {
|
|
50
|
-
i:
|
|
64
|
+
i: number;
|
|
51
65
|
y: string;
|
|
52
66
|
gamma: string;
|
|
53
67
|
R: string;
|
|
@@ -57,13 +71,28 @@ interface Signature {
|
|
|
57
71
|
R: string;
|
|
58
72
|
sigma: string;
|
|
59
73
|
}
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
74
|
+
export default class Eddsa {
|
|
75
|
+
static curve: Ed25519Curve;
|
|
76
|
+
static shamir: Shamir;
|
|
77
|
+
static initialized: boolean;
|
|
78
|
+
static initialize(): Promise<void>;
|
|
79
|
+
hdTree?: HDTree;
|
|
80
|
+
constructor(hdTree?: HDTree);
|
|
81
|
+
keyShare(index: number, threshold: number, numShares: number): KeyShare;
|
|
82
|
+
keyCombine(uShare: UShare, yShares: YShare[]): KeyCombine;
|
|
83
|
+
/**
|
|
84
|
+
* Derives a child public key from common keychain
|
|
85
|
+
*
|
|
86
|
+
* @param commonKeychain - common keychain as a hex string
|
|
87
|
+
* @param path - bip32 path
|
|
88
|
+
* @return {string} public key as a hex string
|
|
89
|
+
*/
|
|
90
|
+
deriveUnhardened(commonKeychain: string, path: string): string;
|
|
91
|
+
keyDerive(uShare: UShare, yShares: YShare[], path: string): SubkeyShare;
|
|
92
|
+
signShare(message: Buffer, pShare: PShare, jShares: JShare[]): SignShare;
|
|
93
|
+
sign(message: Buffer, playerShare: XShare, rShares: RShare[], yShares?: YShare[]): GShare;
|
|
94
|
+
signCombine(shares: GShare[]): Signature;
|
|
95
|
+
verify(message: Buffer, signature: Signature): Buffer;
|
|
96
|
+
}
|
|
97
|
+
export {};
|
|
69
98
|
//# sourceMappingURL=tss.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tss.d.ts","sourceRoot":"","sources":["../../../src/mpc/tss.ts"],"names":[],"mappings":";
|
|
1
|
+
{"version":3,"file":"tss.d.ts","sourceRoot":"","sources":["../../../src/mpc/tss.ts"],"names":[],"mappings":";AAiCA,OAAO,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AACxC,OAAO,MAAM,MAAM,UAAU,CAAC;AAC9B,OAAO,MAAM,MAAM,UAAU,CAAC;AAM9B,MAAM,WAAW,MAAM;IACrB,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;IACV,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,MAAM;IACrB,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;IACV,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,QAAQ;IACvB,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CACjC;AAED,MAAM,WAAW,MAAM;IACrB,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;IACV,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,MAAM;IACrB,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;CACX;AAED,UAAU,UAAU;IAClB,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CACjC;AAED,UAAU,WAAW;IACnB,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CACjC;AAED,MAAM,WAAW,MAAM;IACrB,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;CACX;AAED,MAAM,WAAW,MAAM;IACrB,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;CACX;AAED,MAAM,WAAW,SAAS;IACxB,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CACjC;AAED,MAAM,WAAW,MAAM;IACrB,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;IACV,KAAK,EAAE,MAAM,CAAC;IACd,CAAC,EAAE,MAAM,CAAC;CACX;AAED,UAAU,SAAS;IACjB,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;IACV,KAAK,EAAE,MAAM,CAAC;CACf;AAED,MAAM,CAAC,OAAO,OAAO,KAAK;IACxB,MAAM,CAAC,KAAK,EAAE,YAAY,CAAsB;IAChD,MAAM,CAAC,MAAM,EAAE,MAAM,CAA2B;IAChD,MAAM,CAAC,WAAW,UAAS;WAEd,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;IAOxC,MAAM,CAAC,EAAE,MAAM,CAAC;gBAEJ,MAAM,CAAC,EAAE,MAAM;IAI3B,QAAQ,CAAC,KAAK,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,QAAQ;IAuCvE,UAAU,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,UAAU;IAgCzD;;;;;;OAMG;IACH,gBAAgB,CAAC,cAAc,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM;IAkB9D,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,EAAE,IAAI,EAAE,MAAM,GAAG,WAAW;IA0DvE,SAAS,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,SAAS;IAyCxE,IAAI,CAAC,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,EAAE,OAAO,GAAE,MAAM,EAAO,GAAG,MAAM;IA0B7F,WAAW,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,SAAS;IAkBxC,MAAM,CAAC,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,SAAS,GAAG,MAAM;CAStD"}
|