@bitgo-beta/sdk-core 8.2.1-beta.2117 → 8.2.1-beta.2118
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/src/bitgo/safe/derivableEd25519Pub.d.ts +20 -0
- package/dist/src/bitgo/safe/derivableEd25519Pub.d.ts.map +1 -1
- package/dist/src/bitgo/safe/derivableEd25519Pub.js +45 -1
- package/dist/src/bitgo/utils/tss/ecdsa/ecdsaMPCv2KeyGenSender.d.ts +3 -2
- package/dist/src/bitgo/utils/tss/ecdsa/ecdsaMPCv2KeyGenSender.d.ts.map +1 -1
- package/dist/src/bitgo/utils/tss/ecdsa/ecdsaMPCv2KeyGenSender.js +5 -3
- package/dist/src/bitgo/utils/tss/ecdsa/ecdsaVrfMPCv2.d.ts +3 -2
- package/dist/src/bitgo/utils/tss/ecdsa/ecdsaVrfMPCv2.d.ts.map +1 -1
- package/dist/src/bitgo/utils/tss/ecdsa/ecdsaVrfMPCv2.js +53 -51
- package/dist/src/bitgo/utils/tss/ecdsa/typesMPCv2.d.ts +49 -23
- package/dist/src/bitgo/utils/tss/ecdsa/typesMPCv2.d.ts.map +1 -1
- package/dist/src/bitgo/utils/tss/ecdsa/typesMPCv2.js +1 -1
- package/dist/src/bitgo/utils/tss/eddsa/eddsaMPCv2KeyGenSender.d.ts +5 -2
- package/dist/src/bitgo/utils/tss/eddsa/eddsaMPCv2KeyGenSender.d.ts.map +1 -1
- package/dist/src/bitgo/utils/tss/eddsa/eddsaMPCv2KeyGenSender.js +7 -4
- package/dist/src/bitgo/utils/tss/eddsa/eddsaVrfMPCv2.d.ts +1 -1
- package/dist/src/bitgo/utils/tss/eddsa/eddsaVrfMPCv2.d.ts.map +1 -1
- package/dist/src/bitgo/utils/tss/eddsa/eddsaVrfMPCv2.js +7 -9
- package/dist/src/bitgo/utils/tss/eddsa/typesEddsaMPCv2.d.ts.map +1 -1
- package/dist/src/bitgo/utils/tss/redpallas/redpallasMPCv2KeyGenSender.d.ts.map +1 -1
- package/dist/test/unit/bitgo/safe/derivableEd25519Pub.js +33 -1
- package/dist/test/unit/bitgo/safe/fixtures/derivableEd25519Pub.json +1 -1
- package/dist/test/unit/bitgo/safe/fixtures/safeBip44Vectors.json +319 -0
- package/dist/test/unit/bitgo/safe/recovery.js +11 -4
- package/dist/test/unit/bitgo/safe/safeBip44Vectors.d.ts +2 -0
- package/dist/test/unit/bitgo/safe/safeBip44Vectors.d.ts.map +1 -0
- package/dist/test/unit/bitgo/safe/safeBip44Vectors.js +189 -0
- package/dist/test/unit/bitgo/utils/tss/eddsa/eddsaVrfMPCv2.js +6 -4
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +10 -10
|
@@ -28,4 +28,24 @@ export declare function softDeriveChildPrvEd25519AtPath(params: {
|
|
|
28
28
|
chainCode: string;
|
|
29
29
|
path: string;
|
|
30
30
|
}): Promise<Ed25519ExtendedKeyParts<Buffer>>;
|
|
31
|
+
/**
|
|
32
|
+
* Sign `message` with a BIP32-Ed25519 extended key directly, without a seed.
|
|
33
|
+
*
|
|
34
|
+
* A soft-derived child has no 32-byte seed whose SHA-512 yields `(kL, kR)`, so the
|
|
35
|
+
* seed-based `nacl.sign.keyPair.fromSeed` cannot sign for it. This performs RFC 8032
|
|
36
|
+
* scalar signing straight from the clamped scalar `kL` and the nonce prefix `kR`.
|
|
37
|
+
*
|
|
38
|
+
* @param message bytes to sign
|
|
39
|
+
* @param kL 32-byte clamped signing scalar (little-endian)
|
|
40
|
+
* @param kR 32-byte nonce prefix (big-endian)
|
|
41
|
+
* @returns 64-byte Ed25519 signature `R ‖ S`
|
|
42
|
+
*/
|
|
43
|
+
export declare function signEd25519Extended(message: Buffer, kL: Buffer, kR: Buffer): Promise<Buffer>;
|
|
44
|
+
/** An externally-produced Ed25519 signature over a transaction's signing message. */
|
|
45
|
+
export type ExternalEd25519Signature = {
|
|
46
|
+
readonly publicKey: string;
|
|
47
|
+
readonly signature: string;
|
|
48
|
+
};
|
|
49
|
+
/** Fails fast if a `ExternalEd25519Signature` has malformed hex/lengths. */
|
|
50
|
+
export declare function assertValidExternalEd25519Signature(sig: ExternalEd25519Signature): void;
|
|
31
51
|
//# sourceMappingURL=derivableEd25519Pub.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"derivableEd25519Pub.d.ts","sourceRoot":"","sources":["../../../../src/bitgo/safe/derivableEd25519Pub.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAmBH,sGAAsG;AACtG,MAAM,MAAM,uBAAuB,CAAC,CAAC,IAAI;IACvC,QAAQ,CAAC,EAAE,EAAE,CAAC,CAAC;IACf,QAAQ,CAAC,EAAE,EAAE,CAAC,CAAC;IACf,QAAQ,CAAC,GAAG,EAAE,CAAC,CAAC;CACjB,CAAC;AAaF,oFAAoF;AACpF,wBAAsB,+BAA+B,CAAC,YAAY,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAKzG;AAED,6EAA6E;AAC7E,wBAAsB,yBAAyB,CAAC,YAAY,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAKpG;AAED;;;;GAIG;AACH,wBAAsB,+BAA+B,CAAC,MAAM,EAAE;IAC5D,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;IAClB,IAAI,EAAE,MAAM,CAAC;CACd,GAAG,OAAO,CAAC,uBAAuB,CAAC,MAAM,CAAC,CAAC,CAsB3C"}
|
|
1
|
+
{"version":3,"file":"derivableEd25519Pub.d.ts","sourceRoot":"","sources":["../../../../src/bitgo/safe/derivableEd25519Pub.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAmBH,sGAAsG;AACtG,MAAM,MAAM,uBAAuB,CAAC,CAAC,IAAI;IACvC,QAAQ,CAAC,EAAE,EAAE,CAAC,CAAC;IACf,QAAQ,CAAC,EAAE,EAAE,CAAC,CAAC;IACf,QAAQ,CAAC,GAAG,EAAE,CAAC,CAAC;CACjB,CAAC;AAaF,oFAAoF;AACpF,wBAAsB,+BAA+B,CAAC,YAAY,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAKzG;AAED,6EAA6E;AAC7E,wBAAsB,yBAAyB,CAAC,YAAY,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAKpG;AAED;;;;GAIG;AACH,wBAAsB,+BAA+B,CAAC,MAAM,EAAE;IAC5D,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;IAClB,IAAI,EAAE,MAAM,CAAC;CACd,GAAG,OAAO,CAAC,uBAAuB,CAAC,MAAM,CAAC,CAAC,CAsB3C;AAED;;;;;;;;;;;GAWG;AACH,wBAAsB,mBAAmB,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CA4BlG;AAED,qFAAqF;AACrF,MAAM,MAAM,wBAAwB,GAAG;IACrC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;CAC5B,CAAC;AAEF,4EAA4E;AAC5E,wBAAgB,mCAAmC,CAAC,GAAG,EAAE,wBAAwB,GAAG,IAAI,CAOvF"}
|
|
@@ -13,6 +13,8 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
13
13
|
exports.softDeriveChildPubEd25519AtPath = softDeriveChildPubEd25519AtPath;
|
|
14
14
|
exports.softDeriveChildPubEd25519 = softDeriveChildPubEd25519;
|
|
15
15
|
exports.softDeriveChildPrvEd25519AtPath = softDeriveChildPrvEd25519AtPath;
|
|
16
|
+
exports.signEd25519Extended = signEd25519Extended;
|
|
17
|
+
exports.assertValidExternalEd25519Signature = assertValidExternalEd25519Signature;
|
|
16
18
|
const crypto_1 = require("crypto");
|
|
17
19
|
const account_lib_1 = require("../../account-lib");
|
|
18
20
|
const sdk_lib_safes_1 = require("@bitgo-beta/sdk-lib-safes");
|
|
@@ -68,4 +70,46 @@ async function softDeriveChildPrvEd25519AtPath(params) {
|
|
|
68
70
|
pub: (0, account_lib_1.bigIntToBufferLE)(derived.pk, 32),
|
|
69
71
|
};
|
|
70
72
|
}
|
|
71
|
-
|
|
73
|
+
/**
|
|
74
|
+
* Sign `message` with a BIP32-Ed25519 extended key directly, without a seed.
|
|
75
|
+
*
|
|
76
|
+
* A soft-derived child has no 32-byte seed whose SHA-512 yields `(kL, kR)`, so the
|
|
77
|
+
* seed-based `nacl.sign.keyPair.fromSeed` cannot sign for it. This performs RFC 8032
|
|
78
|
+
* scalar signing straight from the clamped scalar `kL` and the nonce prefix `kR`.
|
|
79
|
+
*
|
|
80
|
+
* @param message bytes to sign
|
|
81
|
+
* @param kL 32-byte clamped signing scalar (little-endian)
|
|
82
|
+
* @param kR 32-byte nonce prefix (big-endian)
|
|
83
|
+
* @returns 64-byte Ed25519 signature `R ‖ S`
|
|
84
|
+
*/
|
|
85
|
+
async function signEd25519Extended(message, kL, kR) {
|
|
86
|
+
if (kL.length !== 32) {
|
|
87
|
+
throw new Error(`Invalid Ed25519 extended key kL length: expected 32 bytes, got ${kL.length}`);
|
|
88
|
+
}
|
|
89
|
+
if (kR.length !== 32) {
|
|
90
|
+
throw new Error(`Invalid Ed25519 extended key kR length: expected 32 bytes, got ${kR.length}`);
|
|
91
|
+
}
|
|
92
|
+
await getEddsa();
|
|
93
|
+
const curve = account_lib_1.Eddsa.curve;
|
|
94
|
+
const kLInt = (0, account_lib_1.bigIntFromBufferLE)(kL);
|
|
95
|
+
const r = curve.scalarReduce((0, account_lib_1.bigIntFromBufferLE)((0, crypto_1.createHash)('sha512')
|
|
96
|
+
.update(Buffer.concat([kR, message]))
|
|
97
|
+
.digest()));
|
|
98
|
+
const R = curve.basePointMult(r);
|
|
99
|
+
const A = curve.basePointMult(kLInt);
|
|
100
|
+
const h = curve.scalarReduce((0, account_lib_1.bigIntFromBufferLE)((0, crypto_1.createHash)('sha512')
|
|
101
|
+
.update(Buffer.concat([(0, account_lib_1.bigIntToBufferLE)(R, 32), (0, account_lib_1.bigIntToBufferLE)(A, 32), message]))
|
|
102
|
+
.digest()));
|
|
103
|
+
const S = curve.scalarAdd(r, curve.scalarMult(h, kLInt));
|
|
104
|
+
return Buffer.concat([(0, account_lib_1.bigIntToBufferLE)(R, 32), (0, account_lib_1.bigIntToBufferLE)(S, 32)]);
|
|
105
|
+
}
|
|
106
|
+
/** Fails fast if a `ExternalEd25519Signature` has malformed hex/lengths. */
|
|
107
|
+
function assertValidExternalEd25519Signature(sig) {
|
|
108
|
+
if (!/^[0-9a-f]{64}$/i.test(sig.publicKey)) {
|
|
109
|
+
throw new Error('Invalid external Ed25519 public key: expected 32 bytes (64 hex characters)');
|
|
110
|
+
}
|
|
111
|
+
if (!/^[0-9a-f]{128}$/i.test(sig.signature)) {
|
|
112
|
+
throw new Error('Invalid external Ed25519 signature: expected 64 bytes (128 hex characters)');
|
|
113
|
+
}
|
|
114
|
+
}
|
|
115
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVyaXZhYmxlRWQyNTUxOVB1Yi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9iaXRnby9zYWZlL2Rlcml2YWJsZUVkMjU1MTlQdWIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBOzs7Ozs7Ozs7R0FTRzs7QUFzQ0gsMEVBS0M7QUFHRCw4REFLQztBQU9ELDBFQTBCQztBQWNELGtEQTRCQztBQVNELGtGQU9DO0FBNUlELG1DQUFvQztBQUNwQyxtREFRMkI7QUFDM0IsNkRBS21DO0FBU25DLElBQUksWUFBd0MsQ0FBQztBQUM3QyxTQUFTLFFBQVE7SUFDZixJQUFJLENBQUMsWUFBWSxFQUFFLENBQUM7UUFDbEIsWUFBWSxHQUFHLENBQUMsS0FBSyxJQUFJLEVBQUUsQ0FBQyxtQkFBSyxDQUFDLFVBQVUsQ0FBQyxNQUFNLDBCQUFZLENBQUMsVUFBVSxFQUFFLENBQUMsQ0FBQyxFQUFFLENBQUM7UUFDakYsWUFBWSxDQUFDLEtBQUssQ0FBQyxHQUFHLEVBQUU7WUFDdEIsWUFBWSxHQUFHLFNBQVMsQ0FBQztRQUMzQixDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFDRCxPQUFPLFlBQVksQ0FBQztBQUN0QixDQUFDO0FBRUQsb0ZBQW9GO0FBQzdFLEtBQUssVUFBVSwrQkFBK0IsQ0FBQyxZQUFvQixFQUFFLElBQVk7SUFDdEYsSUFBQSwrQkFBZSxFQUFDLElBQUksRUFBRSxFQUFFLFFBQVEsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDO0lBQzNDLE1BQU0sRUFBRSxHQUFHLEVBQUUsU0FBUyxFQUFFLEdBQUcsSUFBQSx5Q0FBeUIsRUFBQyxZQUFZLENBQUMsQ0FBQztJQUNuRSxNQUFNLEtBQUssR0FBRyxNQUFNLFFBQVEsRUFBRSxDQUFDO0lBQy9CLE9BQU8sTUFBTSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsZ0JBQWdCLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxDQUFDLEdBQUcsRUFBRSxTQUFTLENBQUMs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QUFDLENBQUMsQ0FBQztJQUN6RCxPQUFPLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQyxJQUFBLDhCQUFnQixFQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsRUFBRSxJQUFBLDhCQUFnQixFQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUM7QUFDM0UsQ0FBQztBQVFELDRFQUE0RTtBQUM1RSxTQUFnQixtQ0FBbUMsQ0FBQyxHQUE2QjtJQUMvRSxJQUFJLENBQUMsaUJBQWlCLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxTQUFTLENBQUMsRUFBRSxDQUFDO1FBQzNDLE1BQU0sSUFBSSxLQUFLLENBQUMsNEVBQTRFLENBQUMsQ0FBQztJQUNoRyxDQUFDO0lBQ0QsSUFBSSxDQUFDLGtCQUFrQixDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsU0FBUyxDQUFDLEVBQUUsQ0FBQztRQUM1QyxNQUFNLElBQUksS0FBSyxDQUFDLDRFQUE0RSxDQUFDLENBQUM7SUFDaEcsQ0FBQztBQUNILENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEVkMjU1MTkgc2FmZS1yb290IHB1YmxpYyBkZXJpdmF0aW9uIG1hdGVyaWFsIGFuZCBTdGVsbGFyIHVzZXIta2V5IGNvZGVjcy5cbiAqXG4gKiBTYWZlIGJhY2t1cCBhbmQgQml0R28gcm9vdHMgc3RvcmUgcmF3IHB1YmxpYyBrZXkgKDMyIGJ5dGVzKSB8fCByYXcgY2hhaW4gY29kZSAoMzIgYnl0ZXMpLFxuICogZW5jb2RlZCB0b2dldGhlciBhcyBjYW5vbmljYWwgdW5wYWRkZWQgUkZDIDQ2NDggYmFzZTMyLiBDb2luLXNwZWNpZmljIHB1YmxpYy1rZXkgZW5jb2RpbmdzIGFyZVxuICogYXBwbGllZCBvbmx5IHRvIGRlcml2ZWQgd2FsbGV0IGNoaWxkcmVuLlxuICpcbiAqIFRoZSBwdXJlIGNvZGVjcyArIGNvbXBvc2l0ZS1wdWIgZW5jb2RpbmcgbW92ZWQgdG8gQGJpdGdvLWJldGEvc2RrLWxpYi1zYWZlcy4gT25seSB0aGUgV0FTTVxuICogc29mdC1kZXJpdmF0aW9uIHJlbWFpbnMgaGVyZSAoaXQgbmVlZHMgRWQyNTUxOUJJUDMyL0VkZHNhLCB3aGljaCBsaXZlIGluIHNkay1jb3JlKS5cbiAqL1xuXG5pbXBvcnQgeyBjcmVhdGVIYXNoIH0gZnJvbSAnY3J5cHRvJztcbmltcG9ydCB7XG4gIEVkMjU1MTlCSVAzMixcbiAgRWRkc2EsXG4gIGJpZ0ludEZyb21CdWZmZXJCRSxcbiAgYmlnSW50RnJvbUJ1ZmZlckxFLFxuICBiaWdJbnRUb0J1ZmZlckJFLFxuICBiaWdJbnRUb0J1ZmZlckxFLFxuICBjbGFtcCxcbn0gZnJvbSAnLi4vLi4vYWNjb3VudC1saWInO1xuaW1wb3J0IHtcbiAgYXNzZXJ0QmlwMzJQYXRoLFxuICBkZWNvZGVEZXJpdmFibGVFZDI1NTE5UHViLFxuICBkZWNvZGVFZDI1NTE5Q2hhaW5Db2RlLFxuICBkZWNvZGVFZDI1NTE5U3RyS2V5U2VjcmV0U2VlZCxcbn0gZnJvbSAnQGJpdGdvLWJldGEvc2RrLWxpYi1zYWZlcyc7XG5cbi8qKiBFZDI1NTE5IGV4dGVuZGVkLWtleSBoYWx2ZXMgKyBwdWJsaWMgcG9pbnQsIHBhcmFtZXRlcmlzZWQgYnkgZW5jb2RpbmcgKEJ1ZmZlciByYXcsIHN0cmluZyBoZXgpLiAqL1xuZXhwb3J0IHR5cGUgRWQyNTUxOUV4dGVuZGVkS2V5UGFydHM8VD4gPSB7XG4gIHJlYWRvbmx5IGtMOiBUOyAvLyBjbGFtcGVkIHNpZ25pbmcgc2NhbGFyXG4gIHJlYWRvbmx5IGtSOiBUOyAvLyBub25jZSBwcmVmaXhcbiAgcmVhZG9ubHkgcHViOiBUOyAvLyAzMi1ieXRlIHB1YmxpYyBrZXlcbn07XG5cbmxldCBlZGRzYVByb21pc2U6IFByb21pc2U8RWRkc2E+IHwgdW5kZWZpbmVkO1xuZnVuY3Rpb24gZ2V0RWRkc2EoKTogUHJvbWlzZTxFZGRzYT4ge1xuICBpZiAoIWVkZHNhUHJvbWlzZSkge1xuICAgIGVkZHNhUHJvbWlzZSA9IChhc3luYyAoKSA9PiBFZGRzYS5pbml0aWFsaXplKGF3YWl0IEVkMjU1MTlCSVAzMi5pbml0aWFsaXplKCkpKSgpO1xuICAgIGVkZHNhUHJvbWlzZS5jYXRjaCgoKSA9PiB7XG4gICAgICBlZGRzYVByb21pc2UgPSB1bmRlZmluZWQ7XG4gICAgfSk7XG4gIH1cbiAgcmV0dXJuIGVkZHNhUHJvbWlzZTtcbn1cblxuLyoqIFNvZnQtZGVyaXZlIGFuIHVuaGFyZGVuZWQgcGF0aCBhbmQgcmV0dXJuIHRoZSBkZXJpdmVkIHJhdyAzMi1ieXRlIHB1YmxpYyBrZXkuICovXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gc29mdERlcml2ZUNoaWxkUHViRWQyNTUxOUF0UGF0aChjb21wb3NpdGVQdWI6IHN0cmluZywgcGF0aDogc3RyaW5nKTogUHJvbWlzZTxCdWZmZXI+IHtcbiAgYXNzZXJ0QmlwMzJQYXRoKHBhdGgsIHsgaGFyZGVuZWQ6IGZhbHNlIH0pO1xuICBjb25zdCB7IHB1YiwgY2hhaW5Db2RlIH0gPSBkZWNvZGVEZXJpdmFibGVFZDI1NTE5UHViKGNvbXBvc2l0ZVB1Yik7XG4gIGNvbnN0IGVkZHNhID0gYXdhaXQgZ2V0RWRkc2EoKTtcbiAgcmV0dXJuIEJ1ZmZlci5mcm9tKGVkZHNhLmRlcml2ZVVuaGFyZGVuZWQoQnVmZmVyLmNvbmNhdChbcHViLCBjaGFpbkNvZGVdKS50b1N0cmluZygnaGV4JyksIHBhdGgpLnNsaWNlKDAsIDY0KSwgJ2hleCcpO1xufVxuXG4vKiogU29mdC1kZXJpdmUgYG0vPGluZGV4PmAgYW5kIHJldHVybiB0aGUgZGVyaXZlZCByYXcgMzItYnl0ZSBwdWJsaWMga2V5LiAqL1xuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIHNvZnREZXJpdmVDaGlsZFB1YkVkMjU1MTkoY29tcG9zaXRlUHViOiBzdHJpbmcsIGluZGV4OiBudW1iZXIpOiBQcm9taXNlPEJ1ZmZlcj4ge1xuICBpZiAoIU51bWJlci5pc0ludGVnZXIoaW5kZXgpIHx8IGluZGV4IDwgMCB8fCBpbmRleCA+IDB4N2ZmZmZmZmYpIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoYGVkMjU1MTkgc2FmZSBjby1zaWduZXIgZGVyaXZhdGlvbiBpbmRleCBtdXN0IGJlIG5vbi1oYXJkZW5lZCwgZ290ICR7aW5kZXh9YCk7XG4gIH1cbiAgcmV0dXJuIHNvZnREZXJpdmVDaGlsZFB1YkVkMjU1MTlBdFBhdGgoY29tcG9zaXRlUHViLCBgbS8ke2luZGV4fWApO1xufVxuXG4vKipcbiAqIFNvZnQtZGVyaXZlIGFuIGVkMjU1MTkgY28tc2lnbmVyIGNoaWxkIGF0IGFuIHVuaGFyZGVuZWQgcGF0aCwgcmV0dXJuaW5nIHRoZSBwcml2YXRlXG4gKiBleHRlbmRlZC1rZXkgbWF0ZXJpYWwg4oCUIHRoZSBjbGFtcGVkIHNjYWxhciBga0xgLCB0aGUgbm9uY2UgcHJlZml4IGBrUmAsIGFuZCB0aGUgbWF0Y2hpbmdcbiAqIHB1YmxpYyBwb2ludCDigJQgZnJvbSBhIHJvb3Qgc2VjcmV0IHNlZWQgcGx1cyB0aGUgcm9vdCBjaGFpbiBjb2RlIGNhcnJpZWQgb24gdGhlIGtleWNhcmQuXG4gKi9cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBzb2Z0RGVyaXZlQ2hpbGRQcnZFZDI1NTE5QXRQYXRoKHBhcmFtczoge1xuICBzZWVkU3RyS2V5OiBzdHJpbmc7XG4gIGNoYWluQ29kZTogc3RyaW5nO1xuICBwYXRoOiBzdHJpbmc7XG59KTogUHJvbWlzZTxFZDI1NTE5RXh0ZW5kZWRLZXlQYXJ0czxCdWZmZXI+PiB7XG4gIGNvbnN0IHsgc2VlZFN0cktleSwgY2hhaW5Db2RlLCBwYXRoIH0gPSBwYXJhbXM7XG4gIGFzc2VydEJpcDMyUGF0aChwYXRoLCB7IGhhcmRlbmVkOiBmYWxzZSB9KTtcbiAgY29uc3Qgc2VlZCA9IGRlY29kZUVkMjU1MTlTdHJLZXlTZWNyZXRTZWVkKHNlZWRTdHJLZXkpO1xuICBjb25zdCBjaGFpbkNvZGVCdWYgPSBkZWNvZGVFZDI1NTE5Q2hhaW5Db2RlKGNoYWluQ29kZSk7XG4gIGNvbnN0IGVkZHNhID0gYXdhaXQgZ2V0RWRkc2EoKTtcbiAgY29uc3QgaCA9IGNyZWF0ZUhhc2goJ3NoYTUxMicpLnVwZGF0ZShzZWVkKS5kaWdlc3QoKTtcbiAgY29uc3Qgc2sgPSBjbGFtcChiaWdJbnRGcm9tQnVmZmVyTEUoaC5zdWJhcnJheSgwLCAzMikpKTtcbiAgY29uc3QgcHJlZml4ID0gYmlnSW50RnJvbUJ1ZmZlckJFKGguc3ViYXJyYXkoMzIpKTtcbiAgY29uc3QgcGsgPSBFZGRzYS5jdXJ2ZS5iYXNlUG9pbnRNdWx0KHNrKTtcbiAgaWYgKCFlZGRzYS5oZFRyZWUpIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoJ0VkZHNhIEhEIHRyZWUgaXMgbm90IGluaXRpYWxpemVkJyk7XG4gIH1cbiAgY29uc3QgZGVyaXZlZCA9IGVkZHNhLmhkVHJlZS5wcml2YXRlRGVyaXZlKHsgcGssIHNrLCBwcmVmaXgsIGNoYWluY29kZTogYmlnSW50RnJvbUJ1ZmZlckJFKGNoYWluQ29kZUJ1ZikgfSwgcGF0aCk7XG4gIGlmIChkZXJpdmVkLnByZWZpeCA9PT0gdW5kZWZpbmVkKSB7XG4gICAgdGhyb3cgbmV3IEVycm9yKCdzb2Z0IGRlcml2YXRpb24gZGlkIG5vdCBwcm9kdWNlIGEgbm9uY2UgcHJlZml4Jyk7XG4gIH1cbiAgcmV0dXJuIHtcbiAgICBrTDogYmlnSW50VG9CdWZmZXJMRShkZXJpdmVkLnNrLCAzMiksXG4gICAga1I6IGJpZ0ludFRvQnVmZmVyQkUoZGVyaXZlZC5wcmVmaXgsIDMyKSxcbiAgICBwdWI6IGJpZ0ludFRvQnVmZmVyTEUoZGVyaXZlZC5waywgMzIpLFxuICB9O1xufVxuXG4vKipcbiAqIFNpZ24gYG1lc3NhZ2VgIHdpdGggYSBCSVAzMi1FZDI1NTE5IGV4dGVuZGVkIGtleSBkaXJlY3RseSwgd2l0aG91dCBhIHNlZWQuXG4gKlxuICogQSBzb2Z0LWRlcml2ZWQgY2hpbGQgaGFzIG5vIDMyLWJ5dGUgc2VlZCB3aG9zZSBTSEEtNTEyIHlpZWxkcyBgKGtMLCBrUilgLCBzbyB0aGVcbiAqIHNlZWQtYmFzZWQgYG5hY2wuc2lnbi5rZXlQYWlyLmZyb21TZWVkYCBjYW5ub3Qgc2lnbiBmb3IgaXQuIFRoaXMgcGVyZm9ybXMgUkZDIDgwMzJcbiAqIHNjYWxhciBzaWduaW5nIHN0cmFpZ2h0IGZyb20gdGhlIGNsYW1wZWQgc2NhbGFyIGBrTGAgYW5kIHRoZSBub25jZSBwcmVmaXggYGtSYC5cbiAqXG4gKiBAcGFyYW0gbWVzc2FnZSBieXRlcyB0byBzaWduXG4gKiBAcGFyYW0ga0wgMzItYnl0ZSBjbGFtcGVkIHNpZ25pbmcgc2NhbGFyIChsaXR0bGUtZW5kaWFuKVxuICogQHBhcmFtIGtSIDMyLWJ5dGUgbm9uY2UgcHJlZml4IChiaWctZW5kaWFuKVxuICogQHJldHVybnMgNjQtYnl0ZSBFZDI1NTE5IHNpZ25hdHVyZSBgUiDigJYgU2BcbiAqL1xuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIHNpZ25FZDI1NTE5RXh0ZW5kZWQobWVzc2FnZTogQnVmZmVyLCBrTDogQnVmZmVyLCBrUjogQnVmZmVyKTogUHJvbWlzZTxCdWZmZXI+IHtcbiAgaWYgKGtMLmxlbmd0aCAhPT0gMzIpIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoYEludmFsaWQgRWQyNTUxOSBleHRlbmRlZCBrZXkga0wgbGVuZ3RoOiBleHBlY3RlZCAzMiBieXRlcywgZ290ICR7a0wubGVuZ3RofWApO1xuICB9XG4gIGlmIChrUi5sZW5ndGggIT09IDMyKSB7XG4gICAgdGhyb3cgbmV3IEVycm9yKGBJbnZhbGlkIEVkMjU1MTkgZXh0ZW5kZWQga2V5IGtSIGxlbmd0aDogZXhwZWN0ZWQgMzIgYnl0ZXMsIGdvdCAke2tSLmxlbmd0aH1gKTtcbiAgfVxuICBhd2FpdCBnZXRFZGRzYSgpO1xuICBjb25zdCBjdXJ2ZSA9IEVkZHNhLmN1cnZlO1xuICBjb25zdCBrTEludCA9IGJpZ0ludEZyb21CdWZmZXJMRShrTCk7XG4gIGNvbnN0IHIgPSBjdXJ2ZS5zY2FsYXJSZWR1Y2UoXG4gICAgYmlnSW50RnJvbUJ1ZmZlckxFKFxuICAgICAgY3JlYXRlSGFzaCgnc2hhNTEyJylcbiAgICAgICAgLnVwZGF0ZShCdWZmZXIuY29uY2F0KFtrUiwgbWVzc2FnZV0pKVxuICAgICAgICAuZGlnZXN0KClcbiAgICApXG4gICk7XG4gIGNvbnN0IFIgPSBjdXJ2ZS5iYXNlUG9pbnRNdWx0KHIpO1xuICBjb25zdCBBID0gY3VydmUuYmFzZVBvaW50TXVsdChrTEludCk7XG4gIGNvbnN0IGggPSBjdXJ2ZS5zY2FsYXJSZWR1Y2UoXG4gICAgYmlnSW50RnJvbUJ1ZmZlckxFKFxuICAgICAgY3JlYXRlSGFzaCgnc2hhNTEyJylcbiAgICAgICAgLnVwZGF0ZShCdWZmZXIuY29uY2F0KFtiaWdJbnRUb0J1ZmZlckxFKFIsIDMyKSwgYmlnSW50VG9CdWZmZXJMRShBLCAzMiksIG1lc3NhZ2VdKSlcbiAgICAgICAgLmRpZ2VzdCgpXG4gICAgKVxuICApO1xuICBjb25zdCBTID0gY3VydmUuc2NhbGFyQWRkKHIsIGN1cnZlLnNjYWxhck11bHQoaCwga0xJbnQpKTtcbiAgcmV0dXJuIEJ1ZmZlci5jb25jYXQoW2JpZ0ludFRvQnVmZmVyTEUoUiwgMzIpLCBiaWdJbnRUb0J1ZmZlckxFKFMsIDMyKV0pO1xufVxuXG4vKiogQW4gZXh0ZXJuYWxseS1wcm9kdWNlZCBFZDI1NTE5IHNpZ25hdHVyZSBvdmVyIGEgdHJhbnNhY3Rpb24ncyBzaWduaW5nIG1lc3NhZ2UuICovXG5leHBvcnQgdHlwZSBFeHRlcm5hbEVkMjU1MTlTaWduYXR1cmUgPSB7XG4gIHJlYWRvbmx5IHB1YmxpY0tleTogc3RyaW5nOyAvLyByYXcgMzItYnl0ZSBwdWJsaWMga2V5IChoZXgpXG4gIHJlYWRvbmx5IHNpZ25hdHVyZTogc3RyaW5nOyAvLyByYXcgNjQtYnl0ZSBzaWduYXR1cmUgKGhleClcbn07XG5cbi8qKiBGYWlscyBmYXN0IGlmIGEgYEV4dGVybmFsRWQyNTUxOVNpZ25hdHVyZWAgaGFzIG1hbGZvcm1lZCBoZXgvbGVuZ3Rocy4gKi9cbmV4cG9ydCBmdW5jdGlvbiBhc3NlcnRWYWxpZEV4dGVybmFsRWQyNTUxOVNpZ25hdHVyZShzaWc6IEV4dGVybmFsRWQyNTUxOVNpZ25hdHVyZSk6IHZvaWQge1xuICBpZiAoIS9eWzAtOWEtZl17NjR9JC9pLnRlc3Qoc2lnLnB1YmxpY0tleSkpIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoJ0ludmFsaWQgZXh0ZXJuYWwgRWQyNTUxOSBwdWJsaWMga2V5OiBleHBlY3RlZCAzMiBieXRlcyAoNjQgaGV4IGNoYXJhY3RlcnMpJyk7XG4gIH1cbiAgaWYgKCEvXlswLTlhLWZdezEyOH0kL2kudGVzdChzaWcuc2lnbmF0dXJlKSkge1xuICAgIHRocm93IG5ldyBFcnJvcignSW52YWxpZCBleHRlcm5hbCBFZDI1NTE5IHNpZ25hdHVyZTogZXhwZWN0ZWQgNjQgYnl0ZXMgKDEyOCBoZXggY2hhcmFjdGVycyknKTtcbiAgfVxufVxuIl19
|
|
@@ -10,7 +10,8 @@ export type EcdsaMPCv2DeriveKeySendFn<T extends GenerateMPCv2DeriveKeyRequestRes
|
|
|
10
10
|
* Round sender for the user/BitGo safe-child hard-derivation ceremony. The
|
|
11
11
|
* derive rounds use the same endpoint as MPCv2 keygen (`/mpc/generatekey`),
|
|
12
12
|
* dispatched by the `MPCv2Derive-R*` round values. The R1 payload carries the
|
|
13
|
-
* BitGo root `parentKeyId` and `
|
|
13
|
+
* BitGo root `parentKeyId` and the full `path`; `coin` selects the BIP44 coin type the
|
|
14
|
+
* service expects in that path.
|
|
14
15
|
*/
|
|
15
|
-
export declare function KeyGenSenderForSafeChild<T extends GenerateMPCv2DeriveKeyRequestResponse>(bitgo: BitGoBase, enterprise: string, safeId: string): EcdsaMPCv2DeriveKeySendFn<T>;
|
|
16
|
+
export declare function KeyGenSenderForSafeChild<T extends GenerateMPCv2DeriveKeyRequestResponse>(bitgo: BitGoBase, enterprise: string, safeId: string, coin: string): EcdsaMPCv2DeriveKeySendFn<T>;
|
|
16
17
|
//# sourceMappingURL=ecdsaMPCv2KeyGenSender.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ecdsaMPCv2KeyGenSender.d.ts","sourceRoot":"","sources":["../../../../../../src/bitgo/utils/tss/ecdsa/ecdsaMPCv2KeyGenSender.ts"],"names":[],"mappings":"AAAA,OAAO,EAAkB,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AACvE,OAAO,EACL,6BAA6B,EAC7B,qCAAqC,EACrC,2BAA2B,EAC3B,+BAA+B,EAChC,MAAM,cAAc,CAAC;AACtB,OAAO,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAE/C,MAAM,MAAM,sBAAsB,CAAC,CAAC,SAAS,+BAA+B,IAAI,CAC9E,KAAK,EAAE,gBAAgB,EACvB,OAAO,EAAE,2BAA2B,GAAG;IAAE,QAAQ,CAAC,EAAE,MAAM,CAAA;CAAE,KACzD,OAAO,CAAC,CAAC,CAAC,CAAC;AAEhB,wBAAgB,yBAAyB,CAAC,CAAC,SAAS,+BAA+B,EACjF,KAAK,EAAE,SAAS,EAChB,UAAU,EAAE,MAAM,EAGlB,MAAM,CAAC,EAAE,MAAM,GACd,sBAAsB,CAAC,CAAC,CAAC,CAO3B;AAED,MAAM,MAAM,yBAAyB,CAAC,CAAC,SAAS,qCAAqC,IAAI,CACvF,KAAK,EAAE,gBAAgB,EACvB,OAAO,EAAE,6BAA6B,KACnC,OAAO,CAAC,CAAC,CAAC,CAAC;AAEhB
|
|
1
|
+
{"version":3,"file":"ecdsaMPCv2KeyGenSender.d.ts","sourceRoot":"","sources":["../../../../../../src/bitgo/utils/tss/ecdsa/ecdsaMPCv2KeyGenSender.ts"],"names":[],"mappings":"AAAA,OAAO,EAAkB,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AACvE,OAAO,EACL,6BAA6B,EAC7B,qCAAqC,EACrC,2BAA2B,EAC3B,+BAA+B,EAChC,MAAM,cAAc,CAAC;AACtB,OAAO,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAE/C,MAAM,MAAM,sBAAsB,CAAC,CAAC,SAAS,+BAA+B,IAAI,CAC9E,KAAK,EAAE,gBAAgB,EACvB,OAAO,EAAE,2BAA2B,GAAG;IAAE,QAAQ,CAAC,EAAE,MAAM,CAAA;CAAE,KACzD,OAAO,CAAC,CAAC,CAAC,CAAC;AAEhB,wBAAgB,yBAAyB,CAAC,CAAC,SAAS,+BAA+B,EACjF,KAAK,EAAE,SAAS,EAChB,UAAU,EAAE,MAAM,EAGlB,MAAM,CAAC,EAAE,MAAM,GACd,sBAAsB,CAAC,CAAC,CAAC,CAO3B;AAED,MAAM,MAAM,yBAAyB,CAAC,CAAC,SAAS,qCAAqC,IAAI,CACvF,KAAK,EAAE,gBAAgB,EACvB,OAAO,EAAE,6BAA6B,KACnC,OAAO,CAAC,CAAC,CAAC,CAAC;AAEhB;;;;;;GAMG;AACH,wBAAgB,wBAAwB,CAAC,CAAC,SAAS,qCAAqC,EACtF,KAAK,EAAE,SAAS,EAChB,UAAU,EAAE,MAAM,EAClB,MAAM,EAAE,MAAM,EACd,IAAI,EAAE,MAAM,GACX,yBAAyB,CAAC,CAAC,CAAC,CAc9B"}
|
|
@@ -18,15 +18,17 @@ safeId) {
|
|
|
18
18
|
* Round sender for the user/BitGo safe-child hard-derivation ceremony. The
|
|
19
19
|
* derive rounds use the same endpoint as MPCv2 keygen (`/mpc/generatekey`),
|
|
20
20
|
* dispatched by the `MPCv2Derive-R*` round values. The R1 payload carries the
|
|
21
|
-
* BitGo root `parentKeyId` and `
|
|
21
|
+
* BitGo root `parentKeyId` and the full `path`; `coin` selects the BIP44 coin type the
|
|
22
|
+
* service expects in that path.
|
|
22
23
|
*/
|
|
23
|
-
function KeyGenSenderForSafeChild(bitgo, enterprise, safeId) {
|
|
24
|
+
function KeyGenSenderForSafeChild(bitgo, enterprise, safeId, coin) {
|
|
24
25
|
return (round, payload) => {
|
|
25
26
|
return bitgo
|
|
26
27
|
.post(bitgo.url('/mpc/generatekey', 2))
|
|
27
28
|
.send({
|
|
28
29
|
enterprise,
|
|
29
30
|
safeId,
|
|
31
|
+
coin,
|
|
30
32
|
type: public_types_1.KeyGenTypeEnum.MPCv2,
|
|
31
33
|
round,
|
|
32
34
|
payload,
|
|
@@ -34,4 +36,4 @@ function KeyGenSenderForSafeChild(bitgo, enterprise, safeId) {
|
|
|
34
36
|
.result();
|
|
35
37
|
};
|
|
36
38
|
}
|
|
37
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
39
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWNkc2FNUEN2MktleUdlblNlbmRlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3NyYy9iaXRnby91dGlscy90c3MvZWNkc2EvZWNkc2FNUEN2MktleUdlblNlbmRlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQWNBLDhEQWFDO0FBY0QsNERBbUJDO0FBNURELHNEQUF1RTtBQWN2RSxTQUFnQix5QkFBeUIsQ0FDdkMsS0FBZ0IsRUFDaEIsVUFBa0I7QUFDbEIsa0ZBQWtGO0FBQ2xGLG1GQUFtRjtBQUNuRixNQUFlO0lBRWYsT0FBTyxDQUFDLEtBQUssRUFBRSxPQUFPLEVBQUUsRUFBRTtRQUN4QixPQUFPLEtBQUs7YUFDVCxJQUFJLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxrQkFBa0IsRUFBRSxDQUFDLENBQUMsQ0FBQzthQUN0QyxJQUFJLENBQUMsRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRSw2QkFBYyxDQUFDLEtBQUssRUFBRSxLQUFLLEVBQUUsT0FBTyxFQUFFLENBQUM7YUFDeEUsTUFBTSxFQUFFLENBQUM7SUFDZCxDQUFDLENBQUM7QUFDSixDQUFDO0FBT0Q7Ozs7OztHQU1HO0FBQ0gsU0FBZ0Isd0JBQXdCLENBQ3RDLEtBQWdCLEVBQ2hCLFVBQWtCLEVBQ2xCLE1BQWMsRUFDZCxJQUFZO0lBRVosT0FBTyxDQUFDLEtBQUssRUFBRSxPQUFPLEVBQUUsRUFBRTtRQUN4QixPQUFPLEtBQUs7YUFDVCxJQUFJLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxrQkFBa0IsRUFBRSxDQUFDLENBQUMsQ0FBQzthQUN0QyxJQUFJLENBQUM7WUFDSixVQUFVO1lBQ1YsTUFBTTtZQUNOLElBQUk7WUFDSixJQUFJLEVBQUUsNkJBQWMsQ0FBQyxLQUFLO1lBQzFCLEtBQUs7WUFDTCxPQUFPO1NBQ1IsQ0FBQzthQUNELE1BQU0sRUFBRSxDQUFDO0lBQ2QsQ0FBQyxDQUFDO0FBQ0osQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEtleUdlblR5cGVFbnVtLCBNUEN2MktleUdlblN0YXRlIH0gZnJvbSAnQGJpdGdvL3B1YmxpYy10eXBlcyc7XG5pbXBvcnQge1xuICBHZW5lcmF0ZU1QQ3YyRGVyaXZlS2V5UmVxdWVzdCxcbiAgR2VuZXJhdGVNUEN2MkRlcml2ZUtleVJlcXVlc3RSZXNwb25zZSxcbiAgR2VuZXJhdGVNUEN2MktleVJlcXVlc3RCb2R5LFxuICBHZW5lcmF0ZU1QQ3YyS2V5UmVxdWVzdFJlc3BvbnNlLFxufSBmcm9tICcuL3R5cGVzTVBDdjInO1xuaW1wb3J0IHsgQml0R29CYXNlIH0gZnJvbSAnLi4vLi4vLi4vYml0Z29CYXNlJztcblxuZXhwb3J0IHR5cGUgRWNkc2FNUEN2MktleUdlblNlbmRGbjxUIGV4dGVuZHMgR2VuZXJhdGVNUEN2MktleVJlcXVlc3RSZXNwb25zZT4gPSAoXG4gIHJvdW5kOiBNUEN2MktleUdlblN0YXRlLFxuICBwYXlsb2FkOiBHZW5lcmF0ZU1QQ3YyS2V5UmVxdWVzdEJvZHkgJiB7IHdhbGxldElkPzogc3RyaW5nIH1cbikgPT4gUHJvbWlzZTxUPjtcblxuZXhwb3J0IGZ1bmN0aW9uIEtleUdlblNlbmRlckZvckVudGVycHJpc2U8VCBleHRlbmRzIEdlbmVyYXRlTVBDdjJLZXlSZXF1ZXN0UmVzcG9uc2U+KFxuICBiaXRnbzogQml0R29CYXNlLFxuICBlbnRlcnByaXNlOiBzdHJpbmcsXG4gIC8vIEBleHBlcmltZW50YWw6IHdoZW4gc2V0LCB0YWdzIHRoZSByZXN1bHRpbmcgcm9vdCBrZXlzIHdpdGggdGhpcyBzYWZlLiBPbmx5IHJlYWRcbiAgLy8gb24gcm91bmQgTVBDdjItUjE7IHBhc3NpbmcgaXQgb24gYSBzZW5kZXIgdXNlZCBzb2xlbHkgZm9yIHJvdW5kIDEgaXMgc3VmZmljaWVudC5cbiAgc2FmZUlkPzogc3RyaW5nXG4pOiBFY2RzYU1QQ3YyS2V5R2VuU2VuZEZuPFQ+IHtcbiAgcmV0dXJuIChyb3VuZCwgcGF5bG9hZCkgPT4ge1xuICAgIHJldHVybiBiaXRnb1xuICAgICAgLnBvc3QoYml0Z28udXJsKCcvbXBjL2dlbmVyYXRla2V5JywgMikpXG4gICAgICAuc2VuZCh7IGVudGVycHJpc2UsIHNhZmVJZCwgdHlwZTogS2V5R2VuVHlwZUVudW0uTVBDdjIsIHJvdW5kLCBwYXlsb2FkIH0pXG4gICAgICAucmVzdWx0KCk7XG4gIH07XG59XG5cbmV4cG9ydCB0eXBlIEVjZHNhTVBDdjJEZXJpdmVLZXlTZW5kRm48VCBleHRlbmRzIEdlbmVyYXRlTVBDdjJEZXJpdmVLZXlSZXF1ZXN0UmVzcG9uc2U+ID0gKFxuICByb3VuZDogTVBDdjJLZXlHZW5TdGF0ZSxcbiAgcGF5bG9hZDogR2VuZXJhdGVNUEN2MkRlcml2ZUtleVJlcXVlc3RcbikgPT4gUHJvbWlzZTxUPjtcblxuLyoqXG4gKiBSb3VuZCBzZW5kZXIgZm9yIHRoZSB1c2VyL0JpdEdvIHNhZmUtY2hpbGQgaGFyZC1kZXJpdmF0aW9uIGNlcmVtb255LiBUaGVcbiAqIGRlcml2ZSByb3VuZHMgdXNlIHRoZSBzYW1lIGVuZHBvaW50IGFzIE1QQ3YyIGtleWdlbiAoYC9tcGMvZ2VuZXJhdGVrZXlgKSxcbiAqIGRpc3BhdGNoZWQgYnkgdGhlIGBNUEN2MkRlcml2ZS1SKmAgcm91bmQgdmFsdWVzLiBUaGUgUjEgcGF5bG9hZCBjYXJyaWVzIHRoZVxuICogQml0R28gcm9vdCBgcGFyZW50S2V5SWRgIGFuZCB0aGUgZnVsbCBgcGF0aGA7IGBjb2luYCBzZWxlY3RzIHRoZSBCSVA0NCBjb2luIHR5cGUgdGhlXG4gKiBzZXJ2aWNlIGV4cGVjdHMgaW4gdGhhdCBwYXRoLlxuICovXG5leHBvcnQgZnVuY3Rpb24gS2V5R2VuU2VuZGVyRm9yU2FmZUNoaWxkPFQgZXh0ZW5kcyBHZW5lcmF0ZU1QQ3YyRGVyaXZlS2V5UmVxdWVzdFJlc3BvbnNlPihcbiAgYml0Z286IEJpdEdvQmFzZSxcbiAgZW50ZXJwcmlzZTogc3RyaW5nLFxuICBzYWZlSWQ6IHN0cmluZyxcbiAgY29pbjogc3RyaW5nXG4pOiBFY2RzYU1QQ3YyRGVyaXZlS2V5U2VuZEZuPFQ+IHtcbiAgcmV0dXJuIChyb3VuZCwgcGF5bG9hZCkgPT4ge1xuICAgIHJldHVybiBiaXRnb1xuICAgICAgLnBvc3QoYml0Z28udXJsKCcvbXBjL2dlbmVyYXRla2V5JywgMikpXG4gICAgICAuc2VuZCh7XG4gICAgICAgIGVudGVycHJpc2UsXG4gICAgICAgIHNhZmVJZCxcbiAgICAgICAgY29pbixcbiAgICAgICAgdHlwZTogS2V5R2VuVHlwZUVudW0uTVBDdjIsXG4gICAgICAgIHJvdW5kLFxuICAgICAgICBwYXlsb2FkLFxuICAgICAgfSlcbiAgICAgIC5yZXN1bHQoKTtcbiAgfTtcbn1cbiJdfQ==
|
|
@@ -29,9 +29,10 @@ export declare class EcdsaVrfMPCv2Utils extends EcdsaMPCv2Utils {
|
|
|
29
29
|
safeId: string;
|
|
30
30
|
}): Promise<KeychainsTriplet>;
|
|
31
31
|
/**
|
|
32
|
-
* Sends round 1 for the user/BitGo hard-derive ceremony.
|
|
32
|
+
* Sends round 1 for the user/BitGo hard-derive ceremony. `path` is the full Safe child path
|
|
33
|
+
* `m/44'/<coinType>'/<slot>'/<account>'`; the service compares it with the path it expects.
|
|
33
34
|
*/
|
|
34
|
-
sendDerivationRound1BySender(senderFn: EcdsaMPCv2DeriveKeySendFn<MPCv2DeriveRound1Response>, userGpgPublicKey: string, payload: DklsTypes.AuthEncMessages, parentKeyId: string,
|
|
35
|
+
sendDerivationRound1BySender(senderFn: EcdsaMPCv2DeriveKeySendFn<MPCv2DeriveRound1Response>, userGpgPublicKey: string, payload: DklsTypes.AuthEncMessages, parentKeyId: string, path: string): Promise<MPCv2DeriveRound1Response>;
|
|
35
36
|
/**
|
|
36
37
|
* Sends round 2 for the user/BitGo hard-derive ceremony.
|
|
37
38
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ecdsaVrfMPCv2.d.ts","sourceRoot":"","sources":["../../../../../../src/bitgo/utils/tss/ecdsa/ecdsaVrfMPCv2.ts"],"names":[],"mappings":"AAAA,OAAO,EAA+B,SAAS,EAAyB,MAAM,yBAAyB,CAAC;AAGxG,OAAO,EAEL,yBAAyB,EAEzB,yBAAyB,EACzB,yBAAyB,EAI1B,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,iCAAiC,EAAsB,MAAM,2BAA2B,CAAC;AAClG,OAAO,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AACrD,OAAO,EAAE,wBAAwB,EAAE,MAAM,8BAA8B,CAAC;AACxE,OAAO,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AAEpD,OAAO,EAAE,yBAAyB,EAAE,MAAM,mBAAmB,CAAC;AAG9D,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAC/C,OAAO,EACL,yBAAyB,EAG1B,MAAM,0BAA0B,CAAC;
|
|
1
|
+
{"version":3,"file":"ecdsaVrfMPCv2.d.ts","sourceRoot":"","sources":["../../../../../../src/bitgo/utils/tss/ecdsa/ecdsaVrfMPCv2.ts"],"names":[],"mappings":"AAAA,OAAO,EAA+B,SAAS,EAAyB,MAAM,yBAAyB,CAAC;AAGxG,OAAO,EAEL,yBAAyB,EAEzB,yBAAyB,EACzB,yBAAyB,EAI1B,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,iCAAiC,EAAsB,MAAM,2BAA2B,CAAC;AAClG,OAAO,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AACrD,OAAO,EAAE,wBAAwB,EAAE,MAAM,8BAA8B,CAAC;AACxE,OAAO,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AAEpD,OAAO,EAAE,yBAAyB,EAAE,MAAM,mBAAmB,CAAC;AAG9D,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAC/C,OAAO,EACL,yBAAyB,EAG1B,MAAM,0BAA0B,CAAC;AAiClC;;;;;;;;;GASG;AACH,qBAAa,kBAAmB,SAAQ,eAAe;IACrD,kBAAkB;IACZ,eAAe,CAAC,MAAM,EAAE;QAC5B,UAAU,EAAE,MAAM,CAAC;QACnB,UAAU,EAAE,MAAM,CAAC;QACnB,8BAA8B,CAAC,EAAE,MAAM,CAAC;QACxC,QAAQ,CAAC,EAAE,wBAAwB,CAAC;QACpC,YAAY,CAAC,EAAE,yBAAyB,CAAC;QACzC,iBAAiB,CAAC,EAAE,iBAAiB,CAAC;QAEtC,MAAM,EAAE,MAAM,CAAC;KAChB,GAAG,OAAO,CAAC,gBAAgB,CAAC;IAwc7B;;;OAGG;IACG,4BAA4B,CAChC,QAAQ,EAAE,yBAAyB,CAAC,yBAAyB,CAAC,EAC9D,gBAAgB,EAAE,MAAM,EACxB,OAAO,EAAE,SAAS,CAAC,eAAe,EAClC,WAAW,EAAE,MAAM,EACnB,IAAI,EAAE,MAAM,GACX,OAAO,CAAC,yBAAyB,CAAC;IAgBrC;;OAEG;IACG,4BAA4B,CAChC,QAAQ,EAAE,yBAAyB,CAAC,yBAAyB,CAAC,EAC9D,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,SAAS,CAAC,eAAe,GACjC,OAAO,CAAC,yBAAyB,CAAC;IAYrC;;OAEG;IACG,4BAA4B,CAChC,QAAQ,EAAE,yBAAyB,CAAC,yBAAyB,CAAC,EAC9D,SAAS,EAAE,MAAM,GAChB,OAAO,CAAC,yBAAyB,CAAC;IAKrC;;OAEG;IACG,wBAAwB,CAAC,MAAM,EAAE;QACrC,UAAU,EAAE,MAAM,CAAC;QACnB,UAAU,EAAE,MAAM,CAAC;QACnB,MAAM,EAAE,MAAM,CAAC;QACf,uCAAuC;QACvC,WAAW,EAAE,MAAM,CAAC;QACpB,+FAA+F;QAC/F,IAAI,EAAE,iCAAiC,CAAC;QACxC,aAAa,EAAE,MAAM,CAAC;QACtB,eAAe,EAAE,MAAM,CAAC;QACxB,gBAAgB,EAAE,MAAM,CAAC;QACzB,mBAAmB,EAAE,MAAM,CAAC;QAC5B,8BAA8B,CAAC,EAAE,MAAM,CAAC;QACxC,YAAY,CAAC,EAAE,yBAAyB,CAAC;QACzC,iBAAiB,CAAC,EAAE,iBAAiB,CAAC;KACvC,GAAG,OAAO,CAAC,gBAAgB,CAAC;IAiK7B,OAAO,CAAC,wBAAwB;CAgBjC"}
|