@bitgo-beta/sdk-lib-mpc 8.2.0-beta.2033 → 8.2.0-beta.2034

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.
@@ -0,0 +1,97 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || (function () {
19
+ var ownKeys = function(o) {
20
+ ownKeys = Object.getOwnPropertyNames || function (o) {
21
+ var ar = [];
22
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
+ return ar;
24
+ };
25
+ return ownKeys(o);
26
+ };
27
+ return function (mod) {
28
+ if (mod && mod.__esModule) return mod;
29
+ var result = {};
30
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
+ __setModuleDefault(result, mod);
32
+ return result;
33
+ };
34
+ })();
35
+ Object.defineProperty(exports, "__esModule", { value: true });
36
+ exports.VrfDkgState = void 0;
37
+ exports.decodePartyId = decodePartyId;
38
+ exports.decodeVrfRound1MsgMap = decodeVrfRound1MsgMap;
39
+ exports.decodeVrfDkgSessionData = decodeVrfDkgSessionData;
40
+ const buffer_1 = require("buffer");
41
+ const Either_1 = require("fp-ts/Either");
42
+ const t = __importStar(require("io-ts"));
43
+ /**
44
+ * States of the VRF DKG state machine. Kept separate from `eddsa-mps`'s signing
45
+ * `DkgState` because the round counts differ. MPS wasm state bytes have no round
46
+ * tag, so the round is tracked here and carried in `VrfDkgSessionData`.
47
+ */
48
+ var VrfDkgState;
49
+ (function (VrfDkgState) {
50
+ VrfDkgState[VrfDkgState["Uninitialized"] = 0] = "Uninitialized";
51
+ /** Commitment created and broadcast; waiting for the other parties' VrfKeygenMsg1. */
52
+ VrfDkgState[VrfDkgState["Round1"] = 1] = "Round1";
53
+ /** Openings created; waiting for the VrfKeygenMsg2 entries addressed to this party. */
54
+ VrfDkgState[VrfDkgState["Round2"] = 2] = "Round2";
55
+ VrfDkgState[VrfDkgState["Complete"] = 3] = "Complete";
56
+ VrfDkgState[VrfDkgState["InvalidState"] = 4] = "InvalidState";
57
+ })(VrfDkgState || (exports.VrfDkgState = VrfDkgState = {}));
58
+ const Uint8ArrayCodec = new t.Type('Uint8Array', (u) => u instanceof Uint8Array, (u, c) => (u instanceof Uint8Array ? t.success(u) : t.failure(u, c)), t.identity);
59
+ const BufferCodec = new t.Type('Buffer', (u) => buffer_1.Buffer.isBuffer(u), (u, c) => (buffer_1.Buffer.isBuffer(u) ? t.success(u) : t.failure(u, c)), t.identity);
60
+ const VrfDkgRound1MsgMap = t.record(t.string, Uint8ArrayCodec);
61
+ const RestorableVrfDkgState = t.union([
62
+ t.literal(VrfDkgState.Round1),
63
+ t.literal(VrfDkgState.Round2),
64
+ t.literal(VrfDkgState.Complete),
65
+ ]);
66
+ const VrfDkgSessionDataCodec = t.intersection([
67
+ t.type({ vrfState: RestorableVrfDkgState }),
68
+ t.partial({
69
+ vrfStateBytes: Uint8ArrayCodec,
70
+ keyShareBuff: BufferCodec,
71
+ }),
72
+ ]);
73
+ /** Decode a wasm round-1 map key as a party index. */
74
+ function decodePartyId(recipient) {
75
+ const to = Number.parseInt(recipient, 10);
76
+ if (!Number.isInteger(to) || to < 0 || String(to) !== recipient) {
77
+ throw new Error(`VRF DKG round-1 recipient is not a party id: ${recipient}`);
78
+ }
79
+ return to;
80
+ }
81
+ /** Decode the wasm round-1 recipient → bytes map. */
82
+ function decodeVrfRound1MsgMap(msg) {
83
+ const decoded = VrfDkgRound1MsgMap.decode(msg);
84
+ if ((0, Either_1.isLeft)(decoded)) {
85
+ throw new Error('VRF DKG round-1 message is not a party-id map of byte arrays');
86
+ }
87
+ return decoded.right;
88
+ }
89
+ /** Decode persisted VRF DKG session data. */
90
+ function decodeVrfDkgSessionData(sessionData) {
91
+ const decoded = VrfDkgSessionDataCodec.decode(sessionData);
92
+ if ((0, Either_1.isLeft)(decoded)) {
93
+ throw new Error('Invalid VRF DKG session data');
94
+ }
95
+ return decoded.right;
96
+ }
97
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvdHNzL2VkZHNhLW1wcy12cmYvdHlwZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBNERBLHNDQU1DO0FBR0Qsc0RBTUM7QUFHRCwwREFNQztBQXBGRCxtQ0FBZ0M7QUFDaEMseUNBQXNDO0FBQ3RDLHlDQUEyQjtBQUUzQjs7OztHQUlHO0FBQ0gsSUFBWSxXQVFYO0FBUkQsV0FBWSxXQUFXO0lBQ3JCLCtEQUFpQixDQUFBO0lBQ2pCLHNGQUFzRjtJQUN0RixpREFBTSxDQUFBO0lBQ04sdUZBQXVGO0lBQ3ZGLGlEQUFNLENBQUE7SUFDTixxREFBUSxDQUFBO0lBQ1IsNkRBQVksQ0FBQTtBQUNkLENBQUMsRUFSVyxXQUFXLDJCQUFYLFdBQVcsUUFRdEI7QUFZRCxNQUFNLGVBQWUsR0FBRyxJQUFJLENBQUMsQ0FBQyxJQUFJLENBQ2hDLFlBQVksRUFDWixDQUFDLENBQUMsRUFBbUIsRUFBRSxDQUFDLENBQUMsWUFBWSxVQUFVLEVBQy9DLENBQUMsQ0FBQyxFQUFFLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLFlBQVksVUFBVSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxFQUNwRSxDQUFDLENBQUMsUUFBUSxDQUNYLENBQUM7QUFFRixNQUFNLFdBQVcsR0FBRyxJQUFJLENBQUMsQ0FBQyxJQUFJLENBQzVCLFFBQVEsRUFDUixDQUFDLENBQUMsRUFBZSxFQUFFLENBQUMsZUFBTSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsRUFDdEMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLGVBQU0sQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLEVBQy9ELENBQUMsQ0FBQyxRQUFRLENBQ1gsQ0FBQztBQUVGLE1BQU0sa0JBQWtCLEdBQUcsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsTUFBTSxFQUFFLGVBQWUsQ0FBQyxDQUFDO0FBRS9ELE1BQU0scUJBQXFCLEdBQUcsQ0FBQyxDQUFDLEtBQUssQ0FBQztJQUNwQyxDQUFDLENBQUMsT0FBTyxDQUFDLFdBQVcsQ0FBQyxNQUFNLENBQUM7SUFDN0IsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxXQUFXLENBQUMsTUFBTSxDQUFDO0lBQzdCLENBQUMsQ0FBQyxPQUFPLENBQUMsV0FBVyxDQUFDLFFBQVEsQ0FBQztDQUNoQyxDQUFDLENBQUM7QUFFSCxNQUFNLHNCQUFzQixHQUFHLENBQUMsQ0FBQyxZQUFZLENBQUM7SUFDNUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxFQUFFLFFBQVEsRUFBRSxxQkFBcUIsRUFBRSxDQUFDO0lBQzNDLENBQUMsQ0FBQyxPQUFPLENBQUM7UUFDUixhQUFhLEVBQUUsZUFBZTtRQUM5QixZQUFZLEVBQUUsV0FBVztLQUMxQixDQUFDO0NBQ0gsQ0FBQyxDQUFDO0FBRUgsc0RBQXNEO0FBQ3RELFNBQWdCLGFBQWEsQ0FBQyxTQUFpQjtJQUM3QyxNQUFNLEVBQUUsR0FBRyxNQUFNLENBQUMsUUFBUSxDQUFDLFNBQVMsRUFBRSxFQUFFLENBQUMsQ0FBQztJQUMxQyxJQUFJLENBQUMsTUFBTSxDQUFDLFNBQVMsQ0FBQyxFQUFFLENBQUMsSUFBSSxFQUFFLEdBQUcsQ0FBQyxJQUFJLE1BQU0sQ0FBQyxFQUFFLENBQUMsS0FBSyxTQUFTLEVBQUUsQ0FBQztRQUNoRSxNQUFNLElBQUksS0FBSyxDQUFDLGdEQUFnRCxTQUFTLEVBQUUsQ0FBQyxDQUFDO0lBQy9FLENBQUM7SUFDRCxPQUFPLEVBQUUsQ0FBQztBQUNaLENBQUM7QUFFRCxxREFBcUQ7QUFDckQsU0FBZ0IscUJBQXFCLENBQUMsR0FBWTtJQUNoRCxNQUFNLE9BQU8sR0FBRyxrQkFBa0IsQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUM7SUFDL0MsSUFBSSxJQUFBLGVBQU0sRUFBQyxPQUFPLENBQUMsRUFBRSxDQUFDO1FBQ3BCLE1BQU0sSUFBSSxLQUFLLENBQUMsOERBQThELENBQUMsQ0FBQztJQUNsRixDQUFDO0lBQ0QsT0FBTyxPQUFPLENBQUMsS0FBSyxDQUFDO0FBQ3ZCLENBQUM7QUFFRCw2Q0FBNkM7QUFDN0MsU0FBZ0IsdUJBQXVCLENBQUMsV0FBb0I7SUFDMUQsTUFBTSxPQUFPLEdBQUcsc0JBQXNCLENBQUMsTUFBTSxDQUFDLFdBQVcsQ0FBQyxDQUFDO0lBQzNELElBQUksSUFBQSxlQUFNLEVBQUMsT0FBTyxDQUFDLEVBQUUsQ0FBQztRQUNwQixNQUFNLElBQUksS0FBSyxDQUFDLDhCQUE4QixDQUFDLENBQUM7SUFDbEQsQ0FBQztJQUNELE9BQU8sT0FBTyxDQUFDLEtBQUssQ0FBQztBQUN2QixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQnVmZmVyIH0gZnJvbSAnYnVmZmVyJztcbmltcG9ydCB7IGlzTGVmdCB9IGZyb20gJ2ZwLXRzL0VpdGhlcic7XG5pbXBvcnQgKiBhcyB0IGZyb20gJ2lvLXRzJztcblxuLyoqXG4gKiBTdGF0ZXMgb2YgdGhlIFZSRiBES0cgc3RhdGUgbWFjaGluZS4gS2VwdCBzZXBhcmF0ZSBmcm9tIGBlZGRzYS1tcHNgJ3Mgc2lnbmluZ1xuICogYERrZ1N0YXRlYCBiZWNhdXNlIHRoZSByb3VuZCBjb3VudHMgZGlmZmVyLiBNUFMgd2FzbSBzdGF0ZSBieXRlcyBoYXZlIG5vIHJvdW5kXG4gKiB0YWcsIHNvIHRoZSByb3VuZCBpcyB0cmFja2VkIGhlcmUgYW5kIGNhcnJpZWQgaW4gYFZyZkRrZ1Nlc3Npb25EYXRhYC5cbiAqL1xuZXhwb3J0IGVudW0gVnJmRGtnU3RhdGUge1xuICBVbmluaXRpYWxpemVkID0gMCxcbiAgLyoqIENvbW1pdG1lbnQgY3JlYXRlZCBhbmQgYnJvYWRjYXN0OyB3YWl0aW5nIGZvciB0aGUgb3RoZXIgcGFydGllcycgVnJmS2V5Z2VuTXNnMS4gKi9cbiAgUm91bmQxLFxuICAvKiogT3BlbmluZ3MgY3JlYXRlZDsgd2FpdGluZyBmb3IgdGhlIFZyZktleWdlbk1zZzIgZW50cmllcyBhZGRyZXNzZWQgdG8gdGhpcyBwYXJ0eS4gKi9cbiAgUm91bmQyLFxuICBDb21wbGV0ZSxcbiAgSW52YWxpZFN0YXRlLFxufVxuXG5leHBvcnQgaW50ZXJmYWNlIFZyZkRrZ1Nlc3Npb25EYXRhIHtcbiAgLyoqXG4gICAqIFNlcmlhbGl6ZWQgd2FzbSByb3VuZCBzdGF0ZS4gU2VjcmV0IGtleSBtYXRlcmlhbCDigJQgaXQgY2FycmllcyB0aGlzIHBhcnR5J3NcbiAgICogc2VjcmV0IFZSRiBzaGFyZS4gTmV2ZXIgbG9nIGl0IG9yIHBlcnNpc3QgaXQgaW4gdGhlIGNsZWFyLlxuICAgKi9cbiAgdnJmU3RhdGVCeXRlcz86IFVpbnQ4QXJyYXk7XG4gIHZyZlN0YXRlOiBWcmZEa2dTdGF0ZTtcbiAga2V5U2hhcmVCdWZmPzogQnVmZmVyO1xufVxuXG5jb25zdCBVaW50OEFycmF5Q29kZWMgPSBuZXcgdC5UeXBlPFVpbnQ4QXJyYXksIFVpbnQ4QXJyYXksIHVua25vd24+KFxuICAnVWludDhBcnJheScsXG4gICh1KTogdSBpcyBVaW50OEFycmF5ID0+IHUgaW5zdGFuY2VvZiBVaW50OEFycmF5LFxuICAodSwgYykgPT4gKHUgaW5zdGFuY2VvZiBVaW50OEFycmF5ID8gdC5zdWNjZXNzKHUpIDogdC5mYWlsdXJlKHUsIGMpKSxcbiAgdC5pZGVudGl0eVxuKTtcblxuY29uc3QgQnVmZmVyQ29kZWMgPSBuZXcgdC5UeXBlPEJ1ZmZlciwgQnVmZmVyLCB1bmtub3duPihcbiAgJ0J1ZmZlcicsXG4gICh1KTogdSBpcyBCdWZmZXIgPT4gQnVmZmVyLmlzQnVmZmVyKHUpLFxuICAodSwgYykgPT4gKEJ1ZmZlci5pc0J1ZmZlcih1KSA/IHQuc3VjY2Vzcyh1KSA6IHQuZmFpbHVyZSh1LCBjKSksXG4gIHQuaWRlbnRpdHlcbik7XG5cbmNvbnN0IFZyZkRrZ1JvdW5kMU1zZ01hcCA9IHQucmVjb3JkKHQuc3RyaW5nLCBVaW50OEFycmF5Q29kZWMpO1xuXG5jb25zdCBSZXN0b3JhYmxlVnJmRGtnU3RhdGUgPSB0LnVuaW9uKFtcbiAgdC5saXRlcmFsKFZyZkRrZ1N0YXRlLlJvdW5kMSksXG4gIHQubGl0ZXJhbChWcmZEa2dTdGF0ZS5Sb3VuZDIpLFxuICB0LmxpdGVyYWwoVnJmRGtnU3RhdGUuQ29tcGxldGUpLFxuXSk7XG5cbmNvbnN0IFZyZkRrZ1Nlc3Npb25EYXRhQ29kZWMgPSB0LmludGVyc2VjdGlvbihbXG4gIHQudHlwZSh7IHZyZlN0YXRlOiBSZXN0b3JhYmxlVnJmRGtnU3RhdGUgfSksXG4gIHQucGFydGlhbCh7XG4gICAgdnJmU3RhdGVCeXRlczogVWludDhBcnJheUNvZGVjLFxuICAgIGtleVNoYXJlQnVmZjogQnVmZmVyQ29kZWMsXG4gIH0pLFxuXSk7XG5cbi8qKiBEZWNvZGUgYSB3YXNtIHJvdW5kLTEgbWFwIGtleSBhcyBhIHBhcnR5IGluZGV4LiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGRlY29kZVBhcnR5SWQocmVjaXBpZW50OiBzdHJpbmcpOiBudW1iZXIge1xuICBjb25zdCB0byA9IE51bWJlci5wYXJzZUludChyZWNpcGllbnQsIDEwKTtcbiAgaWYgKCFOdW1iZXIuaXNJbnRlZ2VyKHRvKSB8fCB0byA8IDAgfHwgU3RyaW5nKHRvKSAhPT0gcmVjaXBpZW50KSB7XG4gICAgdGhyb3cgbmV3IEVycm9yKGBWUkYgREtHIHJvdW5kLTEgcmVjaXBpZW50IGlzIG5vdCBhIHBhcnR5IGlkOiAke3JlY2lwaWVudH1gKTtcbiAgfVxuICByZXR1cm4gdG87XG59XG5cbi8qKiBEZWNvZGUgdGhlIHdhc20gcm91bmQtMSByZWNpcGllbnQg4oaSIGJ5dGVzIG1hcC4gKi9cbmV4cG9ydCBmdW5jdGlvbiBkZWNvZGVWcmZSb3VuZDFNc2dNYXAobXNnOiB1bmtub3duKTogUmVjb3JkPHN0cmluZywgVWludDhBcnJheT4ge1xuICBjb25zdCBkZWNvZGVkID0gVnJmRGtnUm91bmQxTXNnTWFwLmRlY29kZShtc2cpO1xuICBpZiAoaXNMZWZ0KGRlY29kZWQpKSB7XG4gICAgdGhyb3cgbmV3IEVycm9yKCdWUkYgREtHIHJvdW5kLTEgbWVzc2FnZSBpcyBub3QgYSBwYXJ0eS1pZCBtYXAgb2YgYnl0ZSBhcnJheXMnKTtcbiAgfVxuICByZXR1cm4gZGVjb2RlZC5yaWdodDtcbn1cblxuLyoqIERlY29kZSBwZXJzaXN0ZWQgVlJGIERLRyBzZXNzaW9uIGRhdGEuICovXG5leHBvcnQgZnVuY3Rpb24gZGVjb2RlVnJmRGtnU2Vzc2lvbkRhdGEoc2Vzc2lvbkRhdGE6IHVua25vd24pOiBWcmZEa2dTZXNzaW9uRGF0YSB7XG4gIGNvbnN0IGRlY29kZWQgPSBWcmZEa2dTZXNzaW9uRGF0YUNvZGVjLmRlY29kZShzZXNzaW9uRGF0YSk7XG4gIGlmIChpc0xlZnQoZGVjb2RlZCkpIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoJ0ludmFsaWQgVlJGIERLRyBzZXNzaW9uIGRhdGEnKTtcbiAgfVxuICByZXR1cm4gZGVjb2RlZC5yaWdodDtcbn1cbiJdfQ==
@@ -0,0 +1,9 @@
1
+ import { Buffer } from 'buffer';
2
+ import { VrfDkg } from './dkg';
3
+ /**
4
+ * Runs a local 2-of-3 VRF DKG across user (0), backup (1) and bitgo (2) parties and
5
+ * returns the three completed VrfDkg sessions, mirroring `generateVrfDKGKeyShares` from
6
+ * `dkls-vrf/util.ts`.
7
+ */
8
+ export declare function generateVrfDKGKeyShares(seedUser?: Buffer, seedBackup?: Buffer, seedBitgo?: Buffer): Promise<[VrfDkg, VrfDkg, VrfDkg]>;
9
+ //# sourceMappingURL=util.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"util.d.ts","sourceRoot":"","sources":["../../../../src/tss/eddsa-mps-vrf/util.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAChC,OAAO,EAAE,MAAM,EAAE,MAAM,OAAO,CAAC;AAE/B;;;;GAIG;AACH,wBAAsB,uBAAuB,CAC3C,QAAQ,CAAC,EAAE,MAAM,EACjB,UAAU,CAAC,EAAE,MAAM,EACnB,SAAS,CAAC,EAAE,MAAM,GACjB,OAAO,CAAC,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC,CAiCnC"}
@@ -0,0 +1,36 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.generateVrfDKGKeyShares = generateVrfDKGKeyShares;
4
+ const dkg_1 = require("./dkg");
5
+ /**
6
+ * Runs a local 2-of-3 VRF DKG across user (0), backup (1) and bitgo (2) parties and
7
+ * returns the three completed VrfDkg sessions, mirroring `generateVrfDKGKeyShares` from
8
+ * `dkls-vrf/util.ts`.
9
+ */
10
+ async function generateVrfDKGKeyShares(seedUser, seedBackup, seedBitgo) {
11
+ const user = new dkg_1.VrfDkg(3, 2, 0, seedUser);
12
+ const backup = new dkg_1.VrfDkg(3, 2, 1, seedBackup);
13
+ const bitgo = new dkg_1.VrfDkg(3, 2, 2, seedBitgo);
14
+ // #region round 1
15
+ const userRound1Messages = await user.initDkg();
16
+ const backupRound1Messages = await backup.initDkg();
17
+ const bitgoRound1Messages = await bitgo.initDkg();
18
+ const round1Messages = [userRound1Messages, backupRound1Messages, bitgoRound1Messages];
19
+ // #endregion
20
+ // #region round 2
21
+ const round2Outputs = await Promise.all([user, backup, bitgo].map((party, i) => party.handleIncomingMessages({
22
+ p2pMessages: [],
23
+ broadcastMessages: round1Messages.flatMap((m) => m.broadcastMessages).filter((m) => m.from !== i),
24
+ })));
25
+ // #endregion
26
+ // #region finalize
27
+ for (const [i, party] of [user, backup, bitgo].entries()) {
28
+ await party.handleIncomingMessages({
29
+ p2pMessages: round2Outputs.flatMap((m) => m.p2pMessages).filter((m) => m.to === i),
30
+ broadcastMessages: [],
31
+ });
32
+ }
33
+ // #endregion
34
+ return [user, backup, bitgo];
35
+ }
36
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy90c3MvZWRkc2EtbXBzLXZyZi91dGlsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBUUEsMERBcUNDO0FBNUNELCtCQUErQjtBQUUvQjs7OztHQUlHO0FBQ0ksS0FBSyxVQUFVLHVCQUF1QixDQUMzQyxRQUFpQixFQUNqQixVQUFtQixFQUNuQixTQUFrQjtJQUVsQixNQUFNLElBQUksR0FBRyxJQUFJLFlBQU0sQ0FBQyxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxRQUFRLENBQUMsQ0FBQztJQUMzQyxNQUFNLE1BQU0sR0FBRyxJQUFJLFlBQU0sQ0FBQyxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxVQUFVLENBQUMsQ0FBQztJQUMvQyxNQUFNLEtBQUssR0FBRyxJQUFJLFlBQU0sQ0FBQyxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxTQUFTLENBQUMsQ0FBQztJQUU3QyxrQkFBa0I7SUFDbEIsTUFBTSxrQkFBa0IsR0FBRyxNQUFNLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQztJQUNoRCxNQUFNLG9CQUFvQixHQUFHLE1BQU0sTUFBTSxDQUFDLE9BQU8sRUFBRSxDQUFDO0lBQ3BELE1BQU0sbUJBQW1CLEdBQUcsTUFBTSxLQUFLLENBQUMsT0FBTyxFQUFFLENBQUM7SUFDbEQsTUFBTSxjQUFjLEdBQUcsQ0FBQyxrQkFBa0IsRUFBRSxvQkFBb0IsRUFBRSxtQkFBbUIsQ0FBQyxDQUFDO0lBQ3ZGLGFBQWE7SUFFYixrQkFBa0I7SUFDbEIsTUFBTSxhQUFhLEdBQUcsTUFBTSxPQUFPLENBQUMsR0FBRyxDQUNyQyxDQUFDLElBQUksRUFBRSxNQUFNLEVBQUUsS0FBSyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsS0FBSyxFQUFFLENBQUMsRUFBRSxFQUFFLENBQ3JDLEtBQUssQ0FBQyxzQkFBc0IsQ0FBQztRQUMzQixXQUFXLEVBQUUsRUFBRTtRQUNmLGlCQUFpQixFQUFFLGNBQWMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLElBQUksS0FBSyxDQUFDLENBQUM7S0FDbEcsQ0FBQyxDQUNILENBQ0YsQ0FBQztJQUNGLGFBQWE7SUFFYixtQkFBbUI7SUFDbkIsS0FBSyxNQUFNLENBQUMsQ0FBQyxFQUFFLEtBQUssQ0FBQyxJQUFJLENBQUMsSUFBSSxFQUFFLE1BQU0sRUFBRSxLQUFLLENBQUMsQ0FBQyxPQUFPLEVBQUUsRUFBRSxDQUFDO1FBQ3pELE1BQU0sS0FBSyxDQUFDLHNCQUFzQixDQUFDO1lBQ2pDLFdBQVcsRUFBRSxhQUFhLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsV0FBVyxDQUFDLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsRUFBRSxLQUFLLENBQUMsQ0FBQztZQUNsRixpQkFBaUIsRUFBRSxFQUFFO1NBQ3RCLENBQUMsQ0FBQztJQUNMLENBQUM7SUFDRCxhQUFhO0lBRWIsT0FBTyxDQUFDLElBQUksRUFBRSxNQUFNLEVBQUUsS0FBSyxDQUFDLENBQUM7QUFDL0IsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEJ1ZmZlciB9IGZyb20gJ2J1ZmZlcic7XG5pbXBvcnQgeyBWcmZEa2cgfSBmcm9tICcuL2RrZyc7XG5cbi8qKlxuICogUnVucyBhIGxvY2FsIDItb2YtMyBWUkYgREtHIGFjcm9zcyB1c2VyICgwKSwgYmFja3VwICgxKSBhbmQgYml0Z28gKDIpIHBhcnRpZXMgYW5kXG4gKiByZXR1cm5zIHRoZSB0aHJlZSBjb21wbGV0ZWQgVnJmRGtnIHNlc3Npb25zLCBtaXJyb3JpbmcgYGdlbmVyYXRlVnJmREtHS2V5U2hhcmVzYCBmcm9tXG4gKiBgZGtscy12cmYvdXRpbC50c2AuXG4gKi9cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBnZW5lcmF0ZVZyZkRLR0tleVNoYXJlcyhcbiAgc2VlZFVzZXI/OiBCdWZmZXIsXG4gIHNlZWRCYWNrdXA/OiBCdWZmZXIsXG4gIHNlZWRCaXRnbz86IEJ1ZmZlclxuKTogUHJvbWlzZTxbVnJmRGtnLCBWcmZEa2csIFZyZkRrZ10+IHtcbiAgY29uc3QgdXNlciA9IG5ldyBWcmZEa2coMywgMiwgMCwgc2VlZFVzZXIpO1xuICBjb25zdCBiYWNrdXAgPSBuZXcgVnJmRGtnKDMsIDIsIDEsIHNlZWRCYWNrdXApO1xuICBjb25zdCBiaXRnbyA9IG5ldyBWcmZEa2coMywgMiwgMiwgc2VlZEJpdGdvKTtcblxuICAvLyAjcmVnaW9uIHJvdW5kIDFcbiAgY29uc3QgdXNlclJvdW5kMU1lc3NhZ2VzID0gYXdhaXQgdXNlci5pbml0RGtnKCk7XG4gIGNvbnN0IGJhY2t1cFJvdW5kMU1lc3NhZ2VzID0gYXdhaXQgYmFja3VwLmluaXREa2coKTtcbiAgY29uc3QgYml0Z29Sb3VuZDFNZXNzYWdlcyA9IGF3YWl0IGJpdGdvLmluaXREa2coKTtcbiAgY29uc3Qgcm91bmQxTWVzc2FnZXMgPSBbdXNlclJvdW5kMU1lc3NhZ2VzLCBiYWNrdXBSb3VuZDFNZXNzYWdlcywgYml0Z29Sb3VuZDFNZXNzYWdlc107XG4gIC8vICNlbmRyZWdpb25cblxuICAvLyAjcmVnaW9uIHJvdW5kIDJcbiAgY29uc3Qgcm91bmQyT3V0cHV0cyA9IGF3YWl0IFByb21pc2UuYWxsKFxuICAgIFt1c2VyLCBiYWNrdXAsIGJpdGdvXS5tYXAoKHBhcnR5LCBpKSA9PlxuICAgICAgcGFydHkuaGFuZGxlSW5jb21pbmdNZXNzYWdlcyh7XG4gICAgICAgIHAycE1lc3NhZ2VzOiBbXSxcbiAgICAgICAgYnJvYWRjYXN0TWVzc2FnZXM6IHJvdW5kMU1lc3NhZ2VzLmZsYXRNYXAoKG0pID0+IG0uYnJvYWRjYXN0TWVzc2FnZXMpLmZpbHRlcigobSkgPT4gbS5mcm9tICE9PSBpKSxcbiAgICAgIH0pXG4gICAgKVxuICApO1xuICAvLyAjZW5kcmVnaW9uXG5cbiAgLy8gI3JlZ2lvbiBmaW5hbGl6ZVxuICBmb3IgKGNvbnN0IFtpLCBwYXJ0eV0gb2YgW3VzZXIsIGJhY2t1cCwgYml0Z29dLmVudHJpZXMoKSkge1xuICAgIGF3YWl0IHBhcnR5LmhhbmRsZUluY29taW5nTWVzc2FnZXMoe1xuICAgICAgcDJwTWVzc2FnZXM6IHJvdW5kMk91dHB1dHMuZmxhdE1hcCgobSkgPT4gbS5wMnBNZXNzYWdlcykuZmlsdGVyKChtKSA9PiBtLnRvID09PSBpKSxcbiAgICAgIGJyb2FkY2FzdE1lc3NhZ2VzOiBbXSxcbiAgICB9KTtcbiAgfVxuICAvLyAjZW5kcmVnaW9uXG5cbiAgcmV0dXJuIFt1c2VyLCBiYWNrdXAsIGJpdGdvXTtcbn1cbiJdfQ==
@@ -2,5 +2,6 @@ export * from './ecdsa';
2
2
  export * from './ecdsa-dkls';
3
3
  export * from './dkls-vrf';
4
4
  export * from './eddsa-mps';
5
+ export * from './eddsa-mps-vrf';
5
6
  export * from './redpallas-mps';
6
7
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/tss/index.ts"],"names":[],"mappings":"AAAA,cAAc,SAAS,CAAC;AACxB,cAAc,cAAc,CAAC;AAC7B,cAAc,YAAY,CAAC;AAC3B,cAAc,aAAa,CAAC;AAC5B,cAAc,iBAAiB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/tss/index.ts"],"names":[],"mappings":"AAAA,cAAc,SAAS,CAAC;AACxB,cAAc,cAAc,CAAC;AAC7B,cAAc,YAAY,CAAC;AAC3B,cAAc,aAAa,CAAC;AAC5B,cAAc,iBAAiB,CAAC;AAChC,cAAc,iBAAiB,CAAC"}
@@ -18,5 +18,6 @@ __exportStar(require("./ecdsa"), exports);
18
18
  __exportStar(require("./ecdsa-dkls"), exports);
19
19
  __exportStar(require("./dkls-vrf"), exports);
20
20
  __exportStar(require("./eddsa-mps"), exports);
21
+ __exportStar(require("./eddsa-mps-vrf"), exports);
21
22
  __exportStar(require("./redpallas-mps"), exports);
22
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvdHNzL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQSwwQ0FBd0I7QUFDeEIsK0NBQTZCO0FBQzdCLDZDQUEyQjtBQUMzQiw4Q0FBNEI7QUFDNUIsa0RBQWdDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9lY2RzYSc7XG5leHBvcnQgKiBmcm9tICcuL2VjZHNhLWRrbHMnO1xuZXhwb3J0ICogZnJvbSAnLi9ka2xzLXZyZic7XG5leHBvcnQgKiBmcm9tICcuL2VkZHNhLW1wcyc7XG5leHBvcnQgKiBmcm9tICcuL3JlZHBhbGxhcy1tcHMnO1xuIl19
23
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvdHNzL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQSwwQ0FBd0I7QUFDeEIsK0NBQTZCO0FBQzdCLDZDQUEyQjtBQUMzQiw4Q0FBNEI7QUFDNUIsa0RBQWdDO0FBQ2hDLGtEQUFnQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vZWNkc2EnO1xuZXhwb3J0ICogZnJvbSAnLi9lY2RzYS1ka2xzJztcbmV4cG9ydCAqIGZyb20gJy4vZGtscy12cmYnO1xuZXhwb3J0ICogZnJvbSAnLi9lZGRzYS1tcHMnO1xuZXhwb3J0ICogZnJvbSAnLi9lZGRzYS1tcHMtdnJmJztcbmV4cG9ydCAqIGZyb20gJy4vcmVkcGFsbGFzLW1wcyc7XG4iXX0=