@bitgo-beta/utxo-core 1.8.1-beta.7 → 1.8.1-beta.71

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,16 @@
1
+ import { BIP32Interface } from '@bitgo-beta/utxo-lib';
2
+ /**
3
+ * bip32-aware wrapper around bitcoin-message package
4
+ * @see {bitcoinMessage.sign}
5
+ */
6
+ export declare function signMessage(message: string, privateKey: BIP32Interface | Buffer, network: {
7
+ messagePrefix: string;
8
+ }): Buffer;
9
+ /**
10
+ * bip32-aware wrapper around bitcoin-message package
11
+ * @see {bitcoinMessage.verify}
12
+ */
13
+ export declare function verifyMessage(message: string, publicKey: BIP32Interface | Buffer, signature: Buffer, network: {
14
+ messagePrefix: string;
15
+ }): boolean;
16
+ //# sourceMappingURL=bip32utils.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"bip32utils.d.ts","sourceRoot":"","sources":["../../src/bip32utils.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AACtD;;;GAGG;AACH,wBAAgB,WAAW,CACzB,OAAO,EAAE,MAAM,EACf,UAAU,EAAE,cAAc,GAAG,MAAM,EACnC,OAAO,EAAE;IAAE,aAAa,EAAE,MAAM,CAAA;CAAE,GACjC,MAAM,CAYR;AAED;;;GAGG;AACH,wBAAgB,aAAa,CAC3B,OAAO,EAAE,MAAM,EACf,SAAS,EAAE,cAAc,GAAG,MAAM,EAClC,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE;IAAE,aAAa,EAAE,MAAM,CAAA;CAAE,GACjC,OAAO,CAcT"}
@@ -0,0 +1,72 @@
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.signMessage = signMessage;
37
+ exports.verifyMessage = verifyMessage;
38
+ const utxolib = __importStar(require("@bitgo-beta/utxo-lib"));
39
+ const _ = __importStar(require("lodash"));
40
+ const bitcoinMessage = __importStar(require("bitcoinjs-message"));
41
+ /**
42
+ * bip32-aware wrapper around bitcoin-message package
43
+ * @see {bitcoinMessage.sign}
44
+ */
45
+ function signMessage(message, privateKey, network) {
46
+ if (!Buffer.isBuffer(privateKey)) {
47
+ privateKey = privateKey.privateKey;
48
+ if (!privateKey) {
49
+ throw new Error(`must provide privateKey`);
50
+ }
51
+ }
52
+ if (!_.isObject(network) || !_.isString(network.messagePrefix)) {
53
+ throw new Error(`invalid argument 'network'`);
54
+ }
55
+ const compressed = true;
56
+ return bitcoinMessage.sign(message, privateKey, compressed, network.messagePrefix);
57
+ }
58
+ /**
59
+ * bip32-aware wrapper around bitcoin-message package
60
+ * @see {bitcoinMessage.verify}
61
+ */
62
+ function verifyMessage(message, publicKey, signature, network) {
63
+ if (!Buffer.isBuffer(publicKey)) {
64
+ publicKey = publicKey.publicKey;
65
+ }
66
+ if (!_.isObject(network) || !_.isString(network.messagePrefix)) {
67
+ throw new Error(`invalid argument 'network'`);
68
+ }
69
+ const address = utxolib.address.toBase58Check(utxolib.crypto.hash160(publicKey), utxolib.networks.bitcoin.pubKeyHash, utxolib.networks.bitcoin);
70
+ return bitcoinMessage.verify(message, address, signature, network.messagePrefix);
71
+ }
72
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmlwMzJ1dGlscy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9iaXAzMnV0aWxzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBUUEsa0NBZ0JDO0FBTUQsc0NBbUJDO0FBakRELDhEQUFnRDtBQUNoRCwwQ0FBNEI7QUFDNUIsa0VBQW9EO0FBRXBEOzs7R0FHRztBQUNILFNBQWdCLFdBQVcsQ0FDekIsT0FBZSxFQUNmLFVBQW1DLEVBQ25DLE9BQWtDO0lBRWxDLElBQUksQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLFVBQVUsQ0FBQyxFQUFFLENBQUM7UUFDakMsVUFBVSxHQUFHLFVBQVUsQ0FBQyxVQUFvQixDQUFDO1FBQzdDLElBQUksQ0FBQyxVQUFVLEVBQUUsQ0FBQztZQUNoQixNQUFNLElBQUksS0FBSyxDQUFDLHlCQUF5QixDQUFDLENBQUM7UUFDN0MsQ0FBQztJQUNILENBQUM7SUFDRCxJQUFJLENBQUMsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLGFBQWEsQ0FBQyxFQUFFLENBQUM7UUFDL0QsTUFBTSxJQUFJLEtBQUssQ0FBQyw0QkFBNEIsQ0FBQyxDQUFDO0lBQ2hELENBQUM7SUFDRCxNQUFNLFVBQVUsR0FBRyxJQUFJLENBQUM7SUFDeEIsT0FBTyxjQUFjLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxVQUFVLEVBQUUsVUFBVSxFQUFFLE9BQU8sQ0FBQyxhQUFhLENBQUMsQ0FBQztBQUNyRixDQUFDO0FBRUQ7OztHQUdHO0FBQ0gsU0FBZ0IsYUFBYSxDQUMzQixPQUFlLEVBQ2YsU0FBa0MsRUFDbEMsU0FBaUIsRUFDakIsT0FBa0M7SUFFbEMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsU0FBUyxDQUFDLEVBQUUsQ0FBQztRQUNoQyxTQUFTLEdBQUcsU0FBUyxDQUFDLFNBQVMsQ0FBQztJQUNsQyxDQUFDO0lBQ0QsSUFBSSxDQUFDLENBQUMsQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxhQUFhLENBQUMsRUFBRSxDQUFDO1FBQy9ELE1BQU0sSUFBSSxLQUFLLENBQUMsNEJBQTRCLENBQUMsQ0FBQztJQUNoRCxDQUFDO0lBRUQsTUFBTSxPQUFPLEdBQUcsT0FBTyxDQUFDLE9BQU8sQ0FBQyxhQUFhLENBQzNDLE9BQU8sQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLFNBQVMsQ0FBQyxFQUNqQyxPQUFPLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxVQUFVLEVBQ25DLE9BQU8sQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUN6QixDQUFDO0lBQ0YsT0FBTyxjQUFjLENBQUMsTUFBTSxDQUFDLE9BQU8sRUFBRSxPQUFPLEVBQUUsU0FBUyxFQUFFLE9BQU8sQ0FBQyxhQUFhLENBQUMsQ0FBQztBQUNuRixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0ICogYXMgdXR4b2xpYiBmcm9tICdAYml0Z28tYmV0YS91dHhvLWxpYic7XG5pbXBvcnQgKiBhcyBfIGZyb20gJ2xvZGFzaCc7XG5pbXBvcnQgKiBhcyBiaXRjb2luTWVzc2FnZSBmcm9tICdiaXRjb2luanMtbWVzc2FnZSc7XG5pbXBvcnQgeyBCSVAzMkludGVyZmFjZSB9IGZyb20gJ0BiaXRnby1iZXRhL3V0eG8tbGliJztcbi8qKlxuICogYmlwMzItYXdhcmUgd3JhcHBlciBhcm91bmQgYml0Y29pbi1tZXNzYWdlIHBhY2thZ2VcbiAqIEBzZWUge2JpdGNvaW5NZXNzYWdlLnNpZ259XG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBzaWduTWVzc2FnZShcbiAgbWVzc2FnZTogc3RyaW5nLFxuICBwcml2YXRlS2V5OiBCSVAzMkludGVyZmFjZSB8IEJ1ZmZlcixcbiAgbmV0d29yazogeyBtZXNzYWdlUHJlZml4OiBzdHJpbmcgfVxuKTogQnVmZmVyIHtcbiAgaWYgKCFCdWZmZXIuaXNCdWZmZXIocHJpdmF0ZUtleSkpIHtcbiAgICBwcml2YXRlS2V5ID0gcHJpdmF0ZUtleS5wcml2YXRlS2V5IGFzIEJ1ZmZlcjtcbiAgICBpZiAoIXByaXZhdGVLZXkpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihgbXVzdCBwcm92aWRlIHByaXZhdGVLZXlgKTtcbiAgICB9XG4gIH1cbiAgaWYgKCFfLmlzT2JqZWN0KG5ldHdvcmspIHx8ICFfLmlzU3RyaW5nKG5ldHdvcmsubWVzc2FnZVByZWZpeCkpIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoYGludmFsaWQgYXJndW1lbnQgJ25ldHdvcmsnYCk7XG4gIH1cbiAgY29uc3QgY29tcHJlc3NlZCA9IHRydWU7XG4gIHJldHVybiBiaXRjb2luTWVzc2FnZS5zaWduKG1lc3NhZ2UsIHByaXZhdGVLZXksIGNvbXByZXNzZWQsIG5ldHdvcmsubWVzc2FnZVByZWZpeCk7XG59XG5cbi8qKlxuICogYmlwMzItYXdhcmUgd3JhcHBlciBhcm91bmQgYml0Y29pbi1tZXNzYWdlIHBhY2thZ2VcbiAqIEBzZWUge2JpdGNvaW5NZXNzYWdlLnZlcmlmeX1cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHZlcmlmeU1lc3NhZ2UoXG4gIG1lc3NhZ2U6IHN0cmluZyxcbiAgcHVibGljS2V5OiBCSVAzMkludGVyZmFjZSB8IEJ1ZmZlcixcbiAgc2lnbmF0dXJlOiBCdWZmZXIsXG4gIG5ldHdvcms6IHsgbWVzc2FnZVByZWZpeDogc3RyaW5nIH1cbik6IGJvb2xlYW4ge1xuICBpZiAoIUJ1ZmZlci5pc0J1ZmZlcihwdWJsaWNLZXkpKSB7XG4gICAgcHVibGljS2V5ID0gcHVibGljS2V5LnB1YmxpY0tleTtcbiAgfVxuICBpZiAoIV8uaXNPYmplY3QobmV0d29yaykgfHwgIV8uaXNTdHJpbmcobmV0d29yay5tZXNzYWdlUHJlZml4KSkge1xuICAgIHRocm93IG5ldyBFcnJvcihgaW52YWxpZCBhcmd1bWVudCAnbmV0d29yaydgKTtcbiAgfVxuXG4gIGNvbnN0IGFkZHJlc3MgPSB1dHhvbGliLmFkZHJlc3MudG9CYXNlNThDaGVjayhcbiAgICB1dHhvbGliLmNyeXB0by5oYXNoMTYwKHB1YmxpY0tleSksXG4gICAgdXR4b2xpYi5uZXR3b3Jrcy5iaXRjb2luLnB1YktleUhhc2gsXG4gICAgdXR4b2xpYi5uZXR3b3Jrcy5iaXRjb2luXG4gICk7XG4gIHJldHVybiBiaXRjb2luTWVzc2FnZS52ZXJpZnkobWVzc2FnZSwgYWRkcmVzcywgc2lnbmF0dXJlLCBuZXR3b3JrLm1lc3NhZ2VQcmVmaXgpO1xufVxuIl19
@@ -0,0 +1,16 @@
1
+ import * as utxolib from '@bitgo-beta/utxo-lib';
2
+ import { Descriptor } from '@bitgo/wasm-miniscript';
3
+ /**
4
+ * Get a standard output descriptor that corresponds to the proprietary HD wallet setup
5
+ * used in BitGo wallets.
6
+ * Only supports a subset of script types.
7
+ */
8
+ export declare function getDescriptorForScriptType(rootWalletKeys: utxolib.bitgo.RootWalletKeys, scriptType: 'p2sh' | 'p2shP2wsh' | 'p2wsh', scope: 'internal' | 'external'): Descriptor;
9
+ /**
10
+ * Get a map of named descriptors for the given root wallet keys.
11
+ * Unsupported script types will have a value of null.
12
+ * Currently supports p2sh, p2shP2wsh, and p2wsh script types.
13
+ * @param rootWalletKeys
14
+ */
15
+ export declare function getNamedDescriptorsForRootWalletKeys(rootWalletKeys: utxolib.bitgo.RootWalletKeys): Map<string, Descriptor | null>;
16
+ //# sourceMappingURL=fromFixedScriptWallet.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"fromFixedScriptWallet.d.ts","sourceRoot":"","sources":["../../../src/descriptor/fromFixedScriptWallet.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,OAAO,MAAM,sBAAsB,CAAC;AAChD,OAAO,EAAE,UAAU,EAAO,MAAM,wBAAwB,CAAC;AAYzD;;;;GAIG;AACH,wBAAgB,0BAA0B,CACxC,cAAc,EAAE,OAAO,CAAC,KAAK,CAAC,cAAc,EAC5C,UAAU,EAAE,MAAM,GAAG,WAAW,GAAG,OAAO,EAC1C,KAAK,EAAE,UAAU,GAAG,UAAU,GAC7B,UAAU,CAkBZ;AAQD;;;;;GAKG;AACH,wBAAgB,oCAAoC,CAClD,cAAc,EAAE,OAAO,CAAC,KAAK,CAAC,cAAc,GAC3C,GAAG,CAAC,MAAM,EAAE,UAAU,GAAG,IAAI,CAAC,CAUhC"}
@@ -0,0 +1,88 @@
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.getDescriptorForScriptType = getDescriptorForScriptType;
37
+ exports.getNamedDescriptorsForRootWalletKeys = getNamedDescriptorsForRootWalletKeys;
38
+ const utxolib = __importStar(require("@bitgo-beta/utxo-lib"));
39
+ const wasm_miniscript_1 = require("@bitgo/wasm-miniscript");
40
+ /** Expand a template with the given root wallet keys and chain code */
41
+ function expand(rootWalletKeys, keyIndex, chainCode) {
42
+ if (keyIndex !== 0 && keyIndex !== 1 && keyIndex !== 2) {
43
+ throw new Error('Invalid key index');
44
+ }
45
+ const xpub = rootWalletKeys.triple[keyIndex].neutered().toBase58();
46
+ const prefix = rootWalletKeys.derivationPrefixes[keyIndex];
47
+ return xpub + '/' + prefix + '/' + chainCode + '/*';
48
+ }
49
+ /**
50
+ * Get a standard output descriptor that corresponds to the proprietary HD wallet setup
51
+ * used in BitGo wallets.
52
+ * Only supports a subset of script types.
53
+ */
54
+ function getDescriptorForScriptType(rootWalletKeys, scriptType, scope) {
55
+ const chain = scope === 'external'
56
+ ? utxolib.bitgo.getExternalChainCode(scriptType)
57
+ : utxolib.bitgo.getInternalChainCode(scriptType);
58
+ const multi = {
59
+ multi: [2, ...rootWalletKeys.triple.map((_, i) => expand(rootWalletKeys, i, chain))],
60
+ };
61
+ switch (scriptType) {
62
+ case 'p2sh':
63
+ return wasm_miniscript_1.Descriptor.fromString(wasm_miniscript_1.ast.formatNode({ sh: multi }), 'derivable');
64
+ case 'p2shP2wsh':
65
+ return wasm_miniscript_1.Descriptor.fromString(wasm_miniscript_1.ast.formatNode({ sh: { wsh: multi } }), 'derivable');
66
+ case 'p2wsh':
67
+ return wasm_miniscript_1.Descriptor.fromString(wasm_miniscript_1.ast.formatNode({ wsh: multi }), 'derivable');
68
+ default:
69
+ throw new Error(`Unsupported script type ${scriptType}`);
70
+ }
71
+ }
72
+ function isSupportedScriptType(scriptType) {
73
+ return ['p2sh', 'p2shP2wsh', 'p2wsh'].includes(scriptType);
74
+ }
75
+ /**
76
+ * Get a map of named descriptors for the given root wallet keys.
77
+ * Unsupported script types will have a value of null.
78
+ * Currently supports p2sh, p2shP2wsh, and p2wsh script types.
79
+ * @param rootWalletKeys
80
+ */
81
+ function getNamedDescriptorsForRootWalletKeys(rootWalletKeys) {
82
+ const scopes = ['external', 'internal'];
83
+ return new Map(utxolib.bitgo.outputScripts.scriptTypes2Of3.flatMap((scriptType) => scopes.map((scope) => [
84
+ `${scriptType}/${scope}`,
85
+ isSupportedScriptType(scriptType) ? getDescriptorForScriptType(rootWalletKeys, scriptType, scope) : null,
86
+ ])));
87
+ }
88
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZnJvbUZpeGVkU2NyaXB0V2FsbGV0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2Rlc2NyaXB0b3IvZnJvbUZpeGVkU2NyaXB0V2FsbGV0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBa0JBLGdFQXNCQztBQWNELG9GQVlDO0FBbEVELDhEQUFnRDtBQUNoRCw0REFBeUQ7QUFFekQsdUVBQXVFO0FBQ3ZFLFNBQVMsTUFBTSxDQUFDLGNBQTRDLEVBQUUsUUFBZ0IsRUFBRSxTQUFpQjtJQUMvRixJQUFJLFFBQVEsS0FBSyxDQUFDLElBQUksUUFBUSxLQUFLLENBQUMsSUFBSSxRQUFRLEtBQUssQ0FBQyxFQUFFLENBQUM7UUFDdkQsTUFBTSxJQUFJLEtBQUssQ0FBQyxtQkFBbUIsQ0FBQyxDQUFDO0lBQ3ZDLENBQUM7SUFDRCxNQUFNLElBQUksR0FBRyxjQUFjLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxDQUFDLFFBQVEsRUFBRSxDQUFDLFFBQVEsRUFBRSxDQUFDO0lBQ25FLE1BQU0sTUFBTSxHQUFHLGNBQWMsQ0FBQyxrQkFBa0IsQ0FBQyxRQUFRLENBQUMsQ0FBQztJQUMzRCxPQUFPLElBQUksR0FBRyxHQUFHLEdBQUcsTUFBTSxHQUFHLEdBQUcsR0FBRyxTQUFTLEdBQUcsSUFBSSxDQUFDO0FBQ3RELENBQUM7QUFFRDs7OztHQUlHO0FBQ0gsU0FBZ0IsMEJBQTBCLENBQ3hDLGNBQTRDLEVBQzVDLFVBQTBDLEVBQzFDLEtBQThCO0lBRTlCLE1BQU0sS0FBSyxHQUNULEtBQUssS0FBSyxVQUFVO1FBQ2xCLENBQUMsQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLG9CQUFvQixDQUFDLFVBQVUsQ0FBQztRQUNoRCxDQUFDLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxvQkFBb0IsQ0FBQyxVQUFVLENBQUMsQ0FBQztJQUNyRCxNQUFNLEtBQUssR0FBdUI7UUFDaEMsS0FBSyxFQUFFLENBQUMsQ0FBQyxFQUFFLEdBQUcsY0FBYyxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxNQUFNLENBQUMsY0FBYyxFQUFFLENBQUMsRUFBRSxLQUFLLENBQUMsQ0FBQyxDQUFDO0tBQ3JGLENBQUM7SUFDRixRQUFRLFVBQVUsRUFBRSxDQUFDO1FBQ25CLEtBQUssTUFBTTtZQUNULE9BQU8sNEJBQVUsQ0FBQyxVQUFVLENBQUMscUJBQUcsQ0FBQyxVQUFVLENBQUMsRUFBRSxFQUFFLEVBQUUsS0FBSyxFQUFFLENBQUMsRUFBRSxXQUFXLENBQUMsQ0FBQztRQUMzRSxLQUFLLFdBQVc7WUFDZCxPQUFPLDRCQUFVLENBQUMsVUFBVSxDQUFDLHFCQUFHLENBQUMsVUFBVSxDQUFDLEVBQUUsRUFBRSxFQUFFLEVBQUUsR0FBRyxFQUFFLEtBQUssRUFBRSxFQUFFLENBQUMsRUFBRSxXQUFXLENBQUMsQ0FBQztRQUNwRixLQUFLLE9BQU87WUFDVixPQUFPLDRCQUFVLENBQUMsVUFBVSxDQUFDLHFCQUFHLENBQUMsVUFBVSxDQUFDLEVBQUUsR0FBRyxFQUFFLEtBQUssRUFBRSxDQUFDLEVBQUUsV0FBVyxDQUFDLENBQUM7UUFDNUU7WUFDRSxNQUFNLElBQUksS0FBSyxDQUFDLDJCQUEyQixVQUFVLEVBQUUsQ0FBQyxDQUFDO0lBQzdELENBQUM7QUFDSCxDQUFDO0FBRUQsU0FBUyxxQkFBcUIsQ0FDNUIsVUFBc0Q7SUFFdEQsT0FBTyxDQUFDLE1BQU0sRUFBRSxXQUFXLEVBQUUsT0FBTyxDQUFDLENBQUMsUUFBUSxDQUFDLFVBQVUsQ0FBQyxDQUFDO0FBQzdELENBQUM7QUFFRDs7Ozs7R0FLRztBQUNILFNBQWdCLG9DQUFvQyxDQUNsRCxjQUE0QztJQUU1QyxNQUFNLE1BQU0sR0FBRyxDQUFDLFVBQVUsRUFBRSxVQUFVLENBQVUsQ0FBQztJQUNqRCxPQUFPLElBQUksR0FBRyxDQUNaLE9BQU8sQ0FBQyxLQUFLLENBQUMsYUFBYSxDQUFDLGVBQWUsQ0FBQyxPQUFPLENBQUMsQ0FBQyxVQUFVLEVBQUUsRUFBRSxDQUNqRSxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQztRQUNwQixHQUFHLFVBQVUsSUFBSSxLQUFLLEVBQUU7UUFDeEIscUJBQXFCLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQyxDQUFDLDBCQUEwQixDQUFDLGNBQWMsRUFBRSxVQUFVLEVBQUUsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUk7S0FDekcsQ0FBQyxDQUNILENBQ0YsQ0FBQztBQUNKLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgKiBhcyB1dHhvbGliIGZyb20gJ0BiaXRnby1iZXRhL3V0eG8tbGliJztcbmltcG9ydCB7IERlc2NyaXB0b3IsIGFzdCB9IGZyb20gJ0BiaXRnby93YXNtLW1pbmlzY3JpcHQnO1xuXG4vKiogRXhwYW5kIGEgdGVtcGxhdGUgd2l0aCB0aGUgZ2l2ZW4gcm9vdCB3YWxsZXQga2V5cyBhbmQgY2hhaW4gY29kZSAqL1xuZnVuY3Rpb24gZXhwYW5kKHJvb3RXYWxsZXRLZXlzOiB1dHhvbGliLmJpdGdvLlJvb3RXYWxsZXRLZXlzLCBrZXlJbmRleDogbnVtYmVyLCBjaGFpbkNvZGU6IG51bWJlcik6IHN0cmluZyB7XG4gIGlmIChrZXlJbmRleCAhPT0gMCAmJiBrZXlJbmRleCAhPT0gMSAmJiBrZXlJbmRleCAhPT0gMikge1xuICAgIHRocm93IG5ldyBFcnJvcignSW52YWxpZCBrZXkgaW5kZXgnKTtcbiAgfVxuICBjb25zdCB4cHViID0gcm9vdFdhbGxldEtleXMudHJpcGxlW2tleUluZGV4XS5uZXV0ZXJlZCgpLnRvQmFzZTU4KCk7XG4gIGNvbnN0IHByZWZpeCA9IHJvb3RXYWxsZXRLZXlzLmRlcml2YXRpb25QcmVmaXhlc1trZXlJbmRleF07XG4gIHJldHVybiB4cHViICsgJy8nICsgcHJlZml4ICsgJy8nICsgY2hhaW5Db2RlICsgJy8qJztcbn1cblxuLyoqXG4gKiBHZXQgYSBzdGFuZGFyZCBvdXRwdXQgZGVzY3JpcHRvciB0aGF0IGNvcnJlc3BvbmRzIHRvIHRoZSBwcm9wcmlldGFyeSBIRCB3YWxsZXQgc2V0dXBcbiAqIHVzZWQgaW4gQml0R28gd2FsbGV0cy5cbiAqIE9ubHkgc3VwcG9ydHMgYSBzdWJzZXQgb2Ygc2NyaXB0IHR5cGVzLlxuICovXG5leHBvcnQgZnVuY3Rpb24gZ2V0RGVzY3JpcHRvckZvclNjcmlwdFR5cGUoXG4gIHJvb3RXYWxsZXRLZXlzOiB1dHhvbGliLmJpdGdvLlJvb3RXYWxsZXRLZXlzLFxuICBzY3JpcHRUeXBlOiAncDJzaCcgfCAncDJzaFAyd3NoJyB8ICdwMndzaCcsXG4gIHNjb3BlOiAnaW50ZXJuYWwnIHwgJ2V4dGVybmFsJ1xuKTogRGVzY3JpcHRvciB7XG4gIGNvbnN0IGNoYWluID1cbiAgICBzY29wZSA9PT0gJ2V4dGVybmFsJ1xuICAgICAgPyB1dHhvbGliLmJpdGdvLmdldEV4dGVybmFsQ2hhaW5Db2RlKHNjcmlwdFR5cGUpXG4gICAgICA6IHV0eG9saWIuYml0Z28uZ2V0SW50ZXJuYWxDaGFpbkNvZGUoc2NyaXB0VHlwZSk7XG4gIGNvbnN0IG11bHRpOiBhc3QuTWluaXNjcmlwdE5vZGUgPSB7XG4gICAgbXVsdGk6IFsyLCAuLi5yb290V2FsbGV0S2V5cy50cmlwbGUubWFwKChfLCBpKSA9PiBleHBhbmQocm9vdFdhbGxldEtleXMsIGksIGNoYWluKSldLFxuICB9O1xuICBzd2l0Y2ggKHNjcmlwdFR5cGUpIHtcbiAgICBjYXNlICdwMnNoJzpcbiAgICAgIHJldHVybiBEZXNjcmlwdG9yLmZyb21TdHJpbmcoYXN0LmZvcm1hdE5vZGUoeyBzaDogbXVsdGkgfSksICdkZXJpdmFibGUnKTtcbiAgICBjYXNlICdwMnNoUDJ3c2gnOlxuICAgICAgcmV0dXJuIERlc2NyaXB0b3IuZnJvbVN0cmluZyhhc3QuZm9ybWF0Tm9kZSh7IHNoOiB7IHdzaDogbXVsdGkgfSB9KSwgJ2Rlcml2YWJsZScpO1xuICAgIGNhc2UgJ3Ayd3NoJzpcbiAgICAgIHJldHVybiBEZXNjcmlwdG9yLmZyb21TdHJpbmcoYXN0LmZvcm1hdE5vZGUoeyB3c2g6IG11bHRpIH0pLCAnZGVyaXZhYmxlJyk7XG4gICAgZGVmYXVsdDpcbiAgICAgIHRocm93IG5ldyBFcnJvcihgVW5zdXBwb3J0ZWQgc2NyaXB0IHR5cGUgJHtzY3JpcHRUeXBlfWApO1xuICB9XG59XG5cbmZ1bmN0aW9uIGlzU3VwcG9ydGVkU2NyaXB0VHlwZShcbiAgc2NyaXB0VHlwZTogdXR4b2xpYi5iaXRnby5vdXRwdXRTY3JpcHRzLlNjcmlwdFR5cGUyT2YzXG4pOiBzY3JpcHRUeXBlIGlzICdwMnNoJyB8ICdwMnNoUDJ3c2gnIHwgJ3Ayd3NoJyB7XG4gIHJldHVybiBbJ3Ayc2gnLCAncDJzaFAyd3NoJywgJ3Ayd3NoJ10uaW5jbHVkZXMoc2NyaXB0VHlwZSk7XG59XG5cbi8qKlxuICogR2V0IGEgbWFwIG9mIG5hbWVkIGRlc2NyaXB0b3JzIGZvciB0aGUgZ2l2ZW4gcm9vdCB3YWxsZXQga2V5cy5cbiAqIFVuc3VwcG9ydGVkIHNjcmlwdCB0eXBlcyB3aWxsIGhhdmUgYSB2YWx1ZSBvZiBudWxsLlxuICogQ3VycmVudGx5IHN1cHBvcnRzIHAyc2gsIHAyc2hQMndzaCwgYW5kIHAyd3NoIHNjcmlwdCB0eXBlcy5cbiAqIEBwYXJhbSByb290V2FsbGV0S2V5c1xuICovXG5leHBvcnQgZnVuY3Rpb24gZ2V0TmFtZWREZXNjcmlwdG9yc0ZvclJvb3RXYWxsZXRLZXlzKFxuICByb290V2FsbGV0S2V5czogdXR4b2xpYi5iaXRnby5Sb290V2FsbGV0S2V5c1xuKTogTWFwPHN0cmluZywgRGVzY3JpcHRvciB8IG51bGw+IHtcbiAgY29uc3Qgc2NvcGVzID0gWydleHRlcm5hbCcsICdpbnRlcm5hbCddIGFzIGNvbnN0O1xuICByZXR1cm4gbmV3IE1hcChcbiAgICB1dHhvbGliLmJpdGdvLm91dHB1dFNjcmlwdHMuc2NyaXB0VHlwZXMyT2YzLmZsYXRNYXAoKHNjcmlwdFR5cGUpID0+XG4gICAgICBzY29wZXMubWFwKChzY29wZSkgPT4gW1xuICAgICAgICBgJHtzY3JpcHRUeXBlfS8ke3Njb3BlfWAsXG4gICAgICAgIGlzU3VwcG9ydGVkU2NyaXB0VHlwZShzY3JpcHRUeXBlKSA/IGdldERlc2NyaXB0b3JGb3JTY3JpcHRUeXBlKHJvb3RXYWxsZXRLZXlzLCBzY3JpcHRUeXBlLCBzY29wZSkgOiBudWxsLFxuICAgICAgXSlcbiAgICApXG4gICk7XG59XG4iXX0=
@@ -4,6 +4,7 @@ export * from './DescriptorMap';
4
4
  export * from './derive';
5
5
  export * from './Output';
6
6
  export * from './VirtualSize';
7
+ export * from './fromFixedScriptWallet';
7
8
  /** @deprecated - import from @bitgo-beta/utxo-core directly instead */
8
9
  export * from '../Output';
9
10
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/descriptor/index.ts"],"names":[],"mappings":"AAAA,cAAc,QAAQ,CAAC;AACvB,cAAc,WAAW,CAAC;AAC1B,cAAc,iBAAiB,CAAC;AAChC,cAAc,UAAU,CAAC;AACzB,cAAc,UAAU,CAAC;AACzB,cAAc,eAAe,CAAC;AAE9B,uEAAuE;AACvE,cAAc,WAAW,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/descriptor/index.ts"],"names":[],"mappings":"AAAA,cAAc,QAAQ,CAAC;AACvB,cAAc,WAAW,CAAC;AAC1B,cAAc,iBAAiB,CAAC;AAChC,cAAc,UAAU,CAAC;AACzB,cAAc,UAAU,CAAC;AACzB,cAAc,eAAe,CAAC;AAC9B,cAAc,yBAAyB,CAAC;AAExC,uEAAuE;AACvE,cAAc,WAAW,CAAC"}
@@ -20,6 +20,7 @@ __exportStar(require("./DescriptorMap"), exports);
20
20
  __exportStar(require("./derive"), exports);
21
21
  __exportStar(require("./Output"), exports);
22
22
  __exportStar(require("./VirtualSize"), exports);
23
+ __exportStar(require("./fromFixedScriptWallet"), exports);
23
24
  /** @deprecated - import from @bitgo-beta/utxo-core directly instead */
24
25
  __exportStar(require("../Output"), exports);
25
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvZGVzY3JpcHRvci9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7O0FBQUEseUNBQXVCO0FBQ3ZCLDRDQUEwQjtBQUMxQixrREFBZ0M7QUFDaEMsMkNBQXlCO0FBQ3pCLDJDQUF5QjtBQUN6QixnREFBOEI7QUFFOUIsdUVBQXVFO0FBQ3ZFLDRDQUEwQiIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vcHNidCc7XG5leHBvcnQgKiBmcm9tICcuL2FkZHJlc3MnO1xuZXhwb3J0ICogZnJvbSAnLi9EZXNjcmlwdG9yTWFwJztcbmV4cG9ydCAqIGZyb20gJy4vZGVyaXZlJztcbmV4cG9ydCAqIGZyb20gJy4vT3V0cHV0JztcbmV4cG9ydCAqIGZyb20gJy4vVmlydHVhbFNpemUnO1xuXG4vKiogQGRlcHJlY2F0ZWQgLSBpbXBvcnQgZnJvbSBAYml0Z28tYmV0YS91dHhvLWNvcmUgZGlyZWN0bHkgaW5zdGVhZCAqL1xuZXhwb3J0ICogZnJvbSAnLi4vT3V0cHV0JztcbiJdfQ==
26
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvZGVzY3JpcHRvci9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7O0FBQUEseUNBQXVCO0FBQ3ZCLDRDQUEwQjtBQUMxQixrREFBZ0M7QUFDaEMsMkNBQXlCO0FBQ3pCLDJDQUF5QjtBQUN6QixnREFBOEI7QUFDOUIsMERBQXdDO0FBRXhDLHVFQUF1RTtBQUN2RSw0Q0FBMEIiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL3BzYnQnO1xuZXhwb3J0ICogZnJvbSAnLi9hZGRyZXNzJztcbmV4cG9ydCAqIGZyb20gJy4vRGVzY3JpcHRvck1hcCc7XG5leHBvcnQgKiBmcm9tICcuL2Rlcml2ZSc7XG5leHBvcnQgKiBmcm9tICcuL091dHB1dCc7XG5leHBvcnQgKiBmcm9tICcuL1ZpcnR1YWxTaXplJztcbmV4cG9ydCAqIGZyb20gJy4vZnJvbUZpeGVkU2NyaXB0V2FsbGV0JztcblxuLyoqIEBkZXByZWNhdGVkIC0gaW1wb3J0IGZyb20gQGJpdGdvLWJldGEvdXR4by1jb3JlIGRpcmVjdGx5IGluc3RlYWQgKi9cbmV4cG9ydCAqIGZyb20gJy4uL091dHB1dCc7XG4iXX0=
@@ -1,6 +1,8 @@
1
1
  export * as bip65 from './bip65';
2
2
  export * as descriptor from './descriptor';
3
3
  export * as testutil from './testutil';
4
+ export * as paygo from './paygo';
5
+ export * as bip32utils from './bip32utils';
4
6
  export * from './dustThreshold';
5
7
  export * from './Output';
6
8
  export * from './xOnlyPubkey';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,SAAS,CAAC;AACjC,OAAO,KAAK,UAAU,MAAM,cAAc,CAAC;AAC3C,OAAO,KAAK,QAAQ,MAAM,YAAY,CAAC;AACvC,cAAc,iBAAiB,CAAC;AAChC,cAAc,UAAU,CAAC;AACzB,cAAc,eAAe,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,SAAS,CAAC;AACjC,OAAO,KAAK,UAAU,MAAM,cAAc,CAAC;AAC3C,OAAO,KAAK,QAAQ,MAAM,YAAY,CAAC;AACvC,OAAO,KAAK,KAAK,MAAM,SAAS,CAAC;AACjC,OAAO,KAAK,UAAU,MAAM,cAAc,CAAC;AAC3C,cAAc,iBAAiB,CAAC;AAChC,cAAc,UAAU,CAAC;AACzB,cAAc,eAAe,CAAC"}
package/dist/src/index.js CHANGED
@@ -36,11 +36,13 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
36
36
  for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
37
37
  };
38
38
  Object.defineProperty(exports, "__esModule", { value: true });
39
- exports.testutil = exports.descriptor = exports.bip65 = void 0;
39
+ exports.bip32utils = exports.paygo = exports.testutil = exports.descriptor = exports.bip65 = void 0;
40
40
  exports.bip65 = __importStar(require("./bip65"));
41
41
  exports.descriptor = __importStar(require("./descriptor"));
42
42
  exports.testutil = __importStar(require("./testutil"));
43
+ exports.paygo = __importStar(require("./paygo"));
44
+ exports.bip32utils = __importStar(require("./bip32utils"));
43
45
  __exportStar(require("./dustThreshold"), exports);
44
46
  __exportStar(require("./Output"), exports);
45
47
  __exportStar(require("./xOnlyPubkey"), exports);
46
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUEsaURBQWlDO0FBQ2pDLDJEQUEyQztBQUMzQyx1REFBdUM7QUFDdkMsa0RBQWdDO0FBQ2hDLDJDQUF5QjtBQUN6QixnREFBOEIiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBhcyBiaXA2NSBmcm9tICcuL2JpcDY1JztcbmV4cG9ydCAqIGFzIGRlc2NyaXB0b3IgZnJvbSAnLi9kZXNjcmlwdG9yJztcbmV4cG9ydCAqIGFzIHRlc3R1dGlsIGZyb20gJy4vdGVzdHV0aWwnO1xuZXhwb3J0ICogZnJvbSAnLi9kdXN0VGhyZXNob2xkJztcbmV4cG9ydCAqIGZyb20gJy4vT3V0cHV0JztcbmV4cG9ydCAqIGZyb20gJy4veE9ubHlQdWJrZXknO1xuIl19
48
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUEsaURBQWlDO0FBQ2pDLDJEQUEyQztBQUMzQyx1REFBdUM7QUFDdkMsaURBQWlDO0FBQ2pDLDJEQUEyQztBQUMzQyxrREFBZ0M7QUFDaEMsMkNBQXlCO0FBQ3pCLGdEQUE4QiIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGFzIGJpcDY1IGZyb20gJy4vYmlwNjUnO1xuZXhwb3J0ICogYXMgZGVzY3JpcHRvciBmcm9tICcuL2Rlc2NyaXB0b3InO1xuZXhwb3J0ICogYXMgdGVzdHV0aWwgZnJvbSAnLi90ZXN0dXRpbCc7XG5leHBvcnQgKiBhcyBwYXlnbyBmcm9tICcuL3BheWdvJztcbmV4cG9ydCAqIGFzIGJpcDMydXRpbHMgZnJvbSAnLi9iaXAzMnV0aWxzJztcbmV4cG9ydCAqIGZyb20gJy4vZHVzdFRocmVzaG9sZCc7XG5leHBvcnQgKiBmcm9tICcuL091dHB1dCc7XG5leHBvcnQgKiBmcm9tICcuL3hPbmx5UHVia2V5JztcbiJdfQ==
@@ -0,0 +1,11 @@
1
+ /**
2
+ * This function takes in the attestation proof of a PayGo address of the from
3
+ * 0x18Bitcoin Signed Message:\n<varint_length><ENTROPY><ADDRESS><UUID> and returns
4
+ * the address given its length. It is assumed that the ENTROPY is 64 bytes in the Buffer
5
+ * so if not given an address proof length we can still extract the address from the proof.
6
+ *
7
+ * @param message
8
+ * @param adressProofLength
9
+ */
10
+ export declare function extractAddressBufferFromPayGoAttestationProof(message: Buffer): Buffer;
11
+ //# sourceMappingURL=ExtractAddressPayGoAttestation.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ExtractAddressPayGoAttestation.d.ts","sourceRoot":"","sources":["../../../src/paygo/ExtractAddressPayGoAttestation.ts"],"names":[],"mappings":"AAcA;;;;;;;;GAQG;AACH,wBAAgB,6CAA6C,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAqBrF"}
@@ -0,0 +1,44 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.extractAddressBufferFromPayGoAttestationProof = extractAddressBufferFromPayGoAttestationProof;
7
+ const assert_1 = __importDefault(require("assert"));
8
+ const utxo_lib_1 = require("@bitgo-beta/utxo-lib");
9
+ // The signed address will always have the following structure:
10
+ // 0x18Bitcoin Signed Message:\n<varint_length><ENTROPY><ADDRESS><UUID>
11
+ const PrefixLength = Buffer.from([0x18]).length + Buffer.from('Bitcoin Signed Message:\n').length;
12
+ // UUID has the structure 00000000-0000-0000-0000-000000000000, and after
13
+ // we Buffer.from and get it's length its 36.
14
+ const UuidBufferLength = 36;
15
+ // The entropy will always be 64 bytes
16
+ const EntropyLen = 64;
17
+ /**
18
+ * This function takes in the attestation proof of a PayGo address of the from
19
+ * 0x18Bitcoin Signed Message:\n<varint_length><ENTROPY><ADDRESS><UUID> and returns
20
+ * the address given its length. It is assumed that the ENTROPY is 64 bytes in the Buffer
21
+ * so if not given an address proof length we can still extract the address from the proof.
22
+ *
23
+ * @param message
24
+ * @param adressProofLength
25
+ */
26
+ function extractAddressBufferFromPayGoAttestationProof(message) {
27
+ if (message.length <= PrefixLength + EntropyLen + UuidBufferLength) {
28
+ throw new Error('PayGo attestation proof is too short to contain a valid address');
29
+ }
30
+ // This generates the first part before the varint length so that we can
31
+ // determine how many bytes this is and iterate through the Buffer.
32
+ let offset = PrefixLength;
33
+ // we decode the varint of the message which is uint32
34
+ // https://en.bitcoin.it/wiki/Protocol_documentation
35
+ const varInt = utxo_lib_1.bufferutils.varuint.decode(message, offset);
36
+ (0, assert_1.default)(varInt);
37
+ offset += 1;
38
+ const addressLength = varInt - EntropyLen - UuidBufferLength;
39
+ offset += EntropyLen;
40
+ // we return what the Buffer subarray from the offset (beginning of address)
41
+ // to the end of the address index in the buffer.
42
+ return message.subarray(offset, offset + addressLength);
43
+ }
44
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiRXh0cmFjdEFkZHJlc3NQYXlHb0F0dGVzdGF0aW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL3BheWdvL0V4dHJhY3RBZGRyZXNzUGF5R29BdHRlc3RhdGlvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQXVCQSxzR0FxQkM7QUE1Q0Qsb0RBQTRCO0FBRTVCLG1EQUFtRDtBQUVuRCwrREFBK0Q7QUFDL0QsdUVBQXVFO0FBRXZFLE1BQU0sWUFBWSxHQUFHLE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLE1BQU0sR0FBRyxNQUFNLENBQUMsSUFBSSxDQUFDLDJCQUEyQixDQUFDLENBQUMsTUFBTSxDQUFDO0FBQ2xHLHlFQUF5RTtBQUN6RSw2Q0FBNkM7QUFDN0MsTUFBTSxnQkFBZ0IsR0FBRyxFQUFFLENBQUM7QUFDNUIsc0NBQXNDO0FBQ3RDLE1BQU0sVUFBVSxHQUFHLEVBQUUsQ0FBQztBQUV0Qjs7Ozs7Ozs7R0FRRztBQUNILFNBQWdCLDZDQUE2QyxDQUFDLE9BQWU7SUFDM0UsSUFBSSxPQUFPLENBQUMsTUFBTSxJQUFJLFlBQVksR0FBRyxVQUFVLEdBQUcsZ0JBQWdCLEVBQUUsQ0FBQztRQUNuRSxNQUFNLElBQUksS0FBSyxDQUFDLGlFQUFpRSxDQUFDLENBQUM7SUFDckYsQ0FBQztJQUVELHdFQUF3RTtJQUN4RSxtRUFBbUU7SUFDbkUsSUFBSSxNQUFNLEdBQUcsWUFBWSxDQUFDO0lBRTFCLHNEQUFzRDtJQUN0RCxvREFBb0Q7SUFDcEQsTUFBTSxNQUFNLEdBQUcsc0JBQVcsQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLE9BQU8sRUFBRSxNQUFNLENBQUMsQ0FBQztJQUMzRCxJQUFBLGdCQUFNLEVBQUMsTUFBTSxDQUFDLENBQUM7SUFDZixNQUFNLElBQUksQ0FBQyxDQUFDO0lBRVosTUFBTSxhQUFhLEdBQUcsTUFBTSxHQUFHLFVBQVUsR0FBRyxnQkFBZ0IsQ0FBQztJQUM3RCxNQUFNLElBQUksVUFBVSxDQUFDO0lBRXJCLDRFQUE0RTtJQUM1RSxpREFBaUQ7SUFDakQsT0FBTyxPQUFPLENBQUMsUUFBUSxDQUFDLE1BQU0sRUFBRSxNQUFNLEdBQUcsYUFBYSxDQUFDLENBQUM7QUFDMUQsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBhc3NlcnQgZnJvbSAnYXNzZXJ0JztcblxuaW1wb3J0IHsgYnVmZmVydXRpbHMgfSBmcm9tICdAYml0Z28tYmV0YS91dHhvLWxpYic7XG5cbi8vIFRoZSBzaWduZWQgYWRkcmVzcyB3aWxsIGFsd2F5cyBoYXZlIHRoZSBmb2xsb3dpbmcgc3RydWN0dXJlOlxuLy8gMHgxOEJpdGNvaW4gU2lnbmVkIE1lc3NhZ2U6XFxuPHZhcmludF9sZW5ndGg+PEVOVFJPUFk+PEFERFJFU1M+PFVVSUQ+XG5cbmNvbnN0IFByZWZpeExlbmd0aCA9IEJ1ZmZlci5mcm9tKFsweDE4XSkubGVuZ3RoICsgQnVmZmVyLmZyb20oJ0JpdGNvaW4gU2lnbmVkIE1lc3NhZ2U6XFxuJykubGVuZ3RoO1xuLy8gVVVJRCBoYXMgdGhlIHN0cnVjdHVyZSAwMDAwMDAwMC0wMDAwLTAwMDAtMDAwMC0wMDAwMDAwMDAwMDAsIGFuZCBhZnRlclxuLy8gd2UgQnVmZmVyLmZyb20gYW5kIGdldCBpdCdzIGxlbmd0aCBpdHMgMzYuXG5jb25zdCBVdWlkQnVmZmVyTGVuZ3RoID0gMzY7XG4vLyBUaGUgZW50cm9weSB3aWxsIGFsd2F5cyBiZSA2NCBieXRlc1xuY29uc3QgRW50cm9weUxlbiA9IDY0O1xuXG4vKipcbiAqIFRoaXMgZnVuY3Rpb24gdGFrZXMgaW4gdGhlIGF0dGVzdGF0aW9uIHByb29mIG9mIGEgUGF5R28gYWRkcmVzcyBvZiB0aGUgZnJvbVxuICogMHgxOEJpdGNvaW4gU2lnbmVkIE1lc3NhZ2U6XFxuPHZhcmludF9sZW5ndGg+PEVOVFJPUFk+PEFERFJFU1M+PFVVSUQ+IGFuZCByZXR1cm5zXG4gKiB0aGUgYWRkcmVzcyBnaXZlbiBpdHMgbGVuZ3RoLiBJdCBpcyBhc3N1bWVkIHRoYXQgdGhlIEVOVFJPUFkgaXMgNjQgYnl0ZXMgaW4gdGhlIEJ1ZmZlclxuICogc28gaWYgbm90IGdpdmVuIGFuIGFkZHJlc3MgcHJvb2YgbGVuZ3RoIHdlIGNhbiBzdGlsbCBleHRyYWN0IHRoZSBhZGRyZXNzIGZyb20gdGhlIHByb29mLlxuICpcbiAqIEBwYXJhbSBtZXNzYWdlXG4gKiBAcGFyYW0gYWRyZXNzUHJvb2ZMZW5ndGhcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGV4dHJhY3RBZGRyZXNzQnVmZmVyRnJvbVBheUdvQXR0ZXN0YXRpb25Qcm9vZihtZXNzYWdlOiBCdWZmZXIpOiBCdWZmZXIge1xuICBpZiAobWVzc2FnZS5sZW5ndGggPD0gUHJlZml4TGVuZ3RoICsgRW50cm9weUxlbiArIFV1aWRCdWZmZXJMZW5ndGgpIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoJ1BheUdvIGF0dGVzdGF0aW9uIHByb29mIGlzIHRvbyBzaG9ydCB0byBjb250YWluIGEgdmFsaWQgYWRkcmVzcycpO1xuICB9XG5cbiAgLy8gVGhpcyBnZW5lcmF0ZXMgdGhlIGZpcnN0IHBhcnQgYmVmb3JlIHRoZSB2YXJpbnQgbGVuZ3RoIHNvIHRoYXQgd2UgY2FuXG4gIC8vIGRldGVybWluZSBob3cgbWFueSBieXRlcyB0aGlzIGlzIGFuZCBpdGVyYXRlIHRocm91Z2ggdGhlIEJ1ZmZlci5cbiAgbGV0IG9mZnNldCA9IFByZWZpeExlbmd0aDtcblxuICAvLyB3ZSBkZWNvZGUgdGhlIHZhcmludCBvZiB0aGUgbWVzc2FnZSB3aGljaCBpcyB1aW50MzJcbiAgLy8gaHR0cHM6Ly9lbi5iaXRjb2luLml0L3dpa2kvUHJvdG9jb2xfZG9jdW1lbnRhdGlvblxuICBjb25zdCB2YXJJbnQgPSBidWZmZXJ1dGlscy52YXJ1aW50LmRlY29kZShtZXNzYWdlLCBvZmZzZXQpO1xuICBhc3NlcnQodmFySW50KTtcbiAgb2Zmc2V0ICs9IDE7XG5cbiAgY29uc3QgYWRkcmVzc0xlbmd0aCA9IHZhckludCAtIEVudHJvcHlMZW4gLSBVdWlkQnVmZmVyTGVuZ3RoO1xuICBvZmZzZXQgKz0gRW50cm9weUxlbjtcblxuICAvLyB3ZSByZXR1cm4gd2hhdCB0aGUgQnVmZmVyIHN1YmFycmF5IGZyb20gdGhlIG9mZnNldCAoYmVnaW5uaW5nIG9mIGFkZHJlc3MpXG4gIC8vIHRvIHRoZSBlbmQgb2YgdGhlIGFkZHJlc3MgaW5kZXggaW4gdGhlIGJ1ZmZlci5cbiAgcmV0dXJuIG1lc3NhZ2Uuc3ViYXJyYXkob2Zmc2V0LCBvZmZzZXQgKyBhZGRyZXNzTGVuZ3RoKTtcbn1cbiJdfQ==
@@ -0,0 +1,2 @@
1
+ export * from './ExtractAddressPayGoAttestation';
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/paygo/index.ts"],"names":[],"mappings":"AAAA,cAAc,kCAAkC,CAAC"}
@@ -0,0 +1,18 @@
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 __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ __exportStar(require("./ExtractAddressPayGoAttestation"), exports);
18
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvcGF5Z28vaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLG1FQUFpRCIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vRXh0cmFjdEFkZHJlc3NQYXlHb0F0dGVzdGF0aW9uJztcbiJdfQ==
@@ -0,0 +1,12 @@
1
+ /** We have a mirrored function similar to our hsm that generates our Bitcoin signed
2
+ * message so that we can use for testing. This creates a random entropy as well using
3
+ * the nilUUID structure to construct our uuid buffer and given our address we can
4
+ * directly encode it into our message.
5
+ *
6
+ * @param attestationPrvKey
7
+ * @param uuid
8
+ * @param address
9
+ * @returns
10
+ */
11
+ export declare function generatePayGoAttestationProof(uuid: string, address: Buffer): Buffer;
12
+ //# sourceMappingURL=generatePayGoAttestationProof.utils.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"generatePayGoAttestationProof.utils.d.ts","sourceRoot":"","sources":["../../../src/testutil/generatePayGoAttestationProof.utils.ts"],"names":[],"mappings":"AAGA;;;;;;;;;GASG;AACH,wBAAgB,6BAA6B,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,MAAM,CA6BnF"}
@@ -0,0 +1,43 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.generatePayGoAttestationProof = generatePayGoAttestationProof;
7
+ const crypto_1 = __importDefault(require("crypto"));
8
+ const utxo_lib_1 = require("@bitgo-beta/utxo-lib");
9
+ /** We have a mirrored function similar to our hsm that generates our Bitcoin signed
10
+ * message so that we can use for testing. This creates a random entropy as well using
11
+ * the nilUUID structure to construct our uuid buffer and given our address we can
12
+ * directly encode it into our message.
13
+ *
14
+ * @param attestationPrvKey
15
+ * @param uuid
16
+ * @param address
17
+ * @returns
18
+ */
19
+ function generatePayGoAttestationProof(uuid, address) {
20
+ // <0x18Bitcoin Signed Message:\n
21
+ const prefixByte = Buffer.from([0x18]);
22
+ const prefixMessage = Buffer.from('Bitcoin Signed Message:\n');
23
+ const prefixBuffer = Buffer.concat([prefixByte, prefixMessage]);
24
+ // <ENTROPY>
25
+ const entropyLength = 64;
26
+ const entropy = crypto_1.default.randomBytes(entropyLength);
27
+ // <UUID>
28
+ const uuidBuffer = Buffer.from(uuid);
29
+ const uuidBufferLength = uuidBuffer.length;
30
+ // <ADDRESS>
31
+ const addressBufferLength = address.length;
32
+ // <VARINT_LENGTH>
33
+ const msgLength = entropyLength + addressBufferLength + uuidBufferLength;
34
+ const msgLengthBuffer = utxo_lib_1.bufferutils.varuint.encode(msgLength);
35
+ // <0x18Bitcoin Signed Message:\n<LENGTH><ENTROPY><ADDRESS><UUID>
36
+ const proofMessage = Buffer.concat([prefixBuffer, msgLengthBuffer, entropy, address, uuidBuffer]);
37
+ // we sign this with the priv key
38
+ // don't know what sign function to call. Since this is just a mirrored function don't know if we need
39
+ // to include this part.
40
+ // const signedMsg = sign(attestationPrvKey, proofMessage);
41
+ return proofMessage;
42
+ }
43
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2VuZXJhdGVQYXlHb0F0dGVzdGF0aW9uUHJvb2YudXRpbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvdGVzdHV0aWwvZ2VuZXJhdGVQYXlHb0F0dGVzdGF0aW9uUHJvb2YudXRpbHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFhQSxzRUE2QkM7QUExQ0Qsb0RBQTRCO0FBRTVCLG1EQUFtRDtBQUNuRDs7Ozs7Ozs7O0dBU0c7QUFDSCxTQUFnQiw2QkFBNkIsQ0FBQyxJQUFZLEVBQUUsT0FBZTtJQUN6RSxpQ0FBaUM7SUFDakMsTUFBTSxVQUFVLEdBQUcsTUFBTSxDQUFDLElBQUksQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUM7SUFDdkMsTUFBTSxhQUFhLEdBQUcsTUFBTSxDQUFDLElBQUksQ0FBQywyQkFBMkIsQ0FBQyxDQUFDO0lBQy9ELE1BQU0sWUFBWSxHQUFHLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQyxVQUFVLEVBQUUsYUFBYSxDQUFDLENBQUMsQ0FBQztJQUVoRSxZQUFZO0lBQ1osTUFBTSxhQUFhLEdBQUcsRUFBRSxDQUFDO0lBQ3pCLE1BQU0sT0FBTyxHQUFHLGdCQUFNLENBQUMsV0FBVyxDQUFDLGFBQWEsQ0FBQyxDQUFDO0lBRWxELFNBQVM7SUFDVCxNQUFNLFVBQVUsR0FBRyxNQUFNLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ3JDLE1BQU0sZ0JBQWdCLEdBQUcsVUFBVSxDQUFDLE1BQU0sQ0FBQztJQUUzQyxZQUFZO0lBQ1osTUFBTSxtQkFBbUIsR0FBRyxPQUFPLENBQUMsTUFBTSxDQUFDO0lBRTNDLGtCQUFrQjtJQUNsQixNQUFNLFNBQVMsR0FBRyxhQUFhLEdBQUcsbUJBQW1CLEdBQUcsZ0JBQWdCLENBQUM7SUFDekUsTUFBTSxlQUFlLEdBQUcsc0JBQVcsQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLFNBQVMsQ0FBQyxDQUFDO0lBRTlELGlFQUFpRTtJQUNqRSxNQUFNLFlBQVksR0FBRyxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUMsWUFBWSxFQUFFLGVBQWUsRUFBRSxPQUFPLEVBQUUsT0FBTyxFQUFFLFVBQVUsQ0FBQyxDQUFDLENBQUM7SUFFbEcsaUNBQWlDO0lBQ2pDLHNHQUFzRztJQUN0Ryx3QkFBd0I7SUFDeEIsMkRBQTJEO0lBQzNELE9BQU8sWUFBWSxDQUFDO0FBQ3RCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgY3J5cHRvIGZyb20gJ2NyeXB0byc7XG5cbmltcG9ydCB7IGJ1ZmZlcnV0aWxzIH0gZnJvbSAnQGJpdGdvLWJldGEvdXR4by1saWInO1xuLyoqIFdlIGhhdmUgYSBtaXJyb3JlZCBmdW5jdGlvbiBzaW1pbGFyIHRvIG91ciBoc20gdGhhdCBnZW5lcmF0ZXMgb3VyIEJpdGNvaW4gc2lnbmVkXG4gKiBtZXNzYWdlIHNvIHRoYXQgd2UgY2FuIHVzZSBmb3IgdGVzdGluZy4gVGhpcyBjcmVhdGVzIGEgcmFuZG9tIGVudHJvcHkgYXMgd2VsbCB1c2luZ1xuICogdGhlIG5pbFVVSUQgc3RydWN0dXJlIHRvIGNvbnN0cnVjdCBvdXIgdXVpZCBidWZmZXIgYW5kIGdpdmVuIG91ciBhZGRyZXNzIHdlIGNhblxuICogZGlyZWN0bHkgZW5jb2RlIGl0IGludG8gb3VyIG1lc3NhZ2UuXG4gKlxuICogQHBhcmFtIGF0dGVzdGF0aW9uUHJ2S2V5XG4gKiBAcGFyYW0gdXVpZFxuICogQHBhcmFtIGFkZHJlc3NcbiAqIEByZXR1cm5zXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBnZW5lcmF0ZVBheUdvQXR0ZXN0YXRpb25Qcm9vZih1dWlkOiBzdHJpbmcsIGFkZHJlc3M6IEJ1ZmZlcik6IEJ1ZmZlciB7XG4gIC8vIDwweDE4Qml0Y29pbiBTaWduZWQgTWVzc2FnZTpcXG5cbiAgY29uc3QgcHJlZml4Qnl0ZSA9IEJ1ZmZlci5mcm9tKFsweDE4XSk7XG4gIGNvbnN0IHByZWZpeE1lc3NhZ2UgPSBCdWZmZXIuZnJvbSgnQml0Y29pbiBTaWduZWQgTWVzc2FnZTpcXG4nKTtcbiAgY29uc3QgcHJlZml4QnVmZmVyID0gQnVmZmVyLmNvbmNhdChbcHJlZml4Qnl0ZSwgcHJlZml4TWVzc2FnZV0pO1xuXG4gIC8vIDxFTlRST1BZPlxuICBjb25zdCBlbnRyb3B5TGVuZ3RoID0gNjQ7XG4gIGNvbnN0IGVudHJvcHkgPSBjcnlwdG8ucmFuZG9tQnl0ZXMoZW50cm9weUxlbmd0aCk7XG5cbiAgLy8gPFVVSUQ+XG4gIGNvbnN0IHV1aWRCdWZmZXIgPSBCdWZmZXIuZnJvbSh1dWlkKTtcbiAgY29uc3QgdXVpZEJ1ZmZlckxlbmd0aCA9IHV1aWRCdWZmZXIubGVuZ3RoO1xuXG4gIC8vIDxBRERSRVNTPlxuICBjb25zdCBhZGRyZXNzQnVmZmVyTGVuZ3RoID0gYWRkcmVzcy5sZW5ndGg7XG5cbiAgLy8gPFZBUklOVF9MRU5HVEg+XG4gIGNvbnN0IG1zZ0xlbmd0aCA9IGVudHJvcHlMZW5ndGggKyBhZGRyZXNzQnVmZmVyTGVuZ3RoICsgdXVpZEJ1ZmZlckxlbmd0aDtcbiAgY29uc3QgbXNnTGVuZ3RoQnVmZmVyID0gYnVmZmVydXRpbHMudmFydWludC5lbmNvZGUobXNnTGVuZ3RoKTtcblxuICAvLyA8MHgxOEJpdGNvaW4gU2lnbmVkIE1lc3NhZ2U6XFxuPExFTkdUSD48RU5UUk9QWT48QUREUkVTUz48VVVJRD5cbiAgY29uc3QgcHJvb2ZNZXNzYWdlID0gQnVmZmVyLmNvbmNhdChbcHJlZml4QnVmZmVyLCBtc2dMZW5ndGhCdWZmZXIsIGVudHJvcHksIGFkZHJlc3MsIHV1aWRCdWZmZXJdKTtcblxuICAvLyB3ZSBzaWduIHRoaXMgd2l0aCB0aGUgcHJpdiBrZXlcbiAgLy8gZG9uJ3Qga25vdyB3aGF0IHNpZ24gZnVuY3Rpb24gdG8gY2FsbC4gU2luY2UgdGhpcyBpcyBqdXN0IGEgbWlycm9yZWQgZnVuY3Rpb24gZG9uJ3Qga25vdyBpZiB3ZSBuZWVkXG4gIC8vIHRvIGluY2x1ZGUgdGhpcyBwYXJ0LlxuICAvLyBjb25zdCBzaWduZWRNc2cgPSBzaWduKGF0dGVzdGF0aW9uUHJ2S2V5LCBwcm9vZk1lc3NhZ2UpO1xuICByZXR1cm4gcHJvb2ZNZXNzYWdlO1xufVxuIl19
@@ -1,4 +1,5 @@
1
1
  export * from './fixtures.utils';
2
2
  export * from './key.utils';
3
3
  export * from './toPlainObject.utils';
4
+ export * from './generatePayGoAttestationProof.utils';
4
5
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/testutil/index.ts"],"names":[],"mappings":"AAAA,cAAc,kBAAkB,CAAC;AACjC,cAAc,aAAa,CAAC;AAC5B,cAAc,uBAAuB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/testutil/index.ts"],"names":[],"mappings":"AAAA,cAAc,kBAAkB,CAAC;AACjC,cAAc,aAAa,CAAC;AAC5B,cAAc,uBAAuB,CAAC;AACtC,cAAc,uCAAuC,CAAC"}
@@ -17,4 +17,5 @@ Object.defineProperty(exports, "__esModule", { value: true });
17
17
  __exportStar(require("./fixtures.utils"), exports);
18
18
  __exportStar(require("./key.utils"), exports);
19
19
  __exportStar(require("./toPlainObject.utils"), exports);
20
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvdGVzdHV0aWwvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLG1EQUFpQztBQUNqQyw4Q0FBNEI7QUFDNUIsd0RBQXNDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9maXh0dXJlcy51dGlscyc7XG5leHBvcnQgKiBmcm9tICcuL2tleS51dGlscyc7XG5leHBvcnQgKiBmcm9tICcuL3RvUGxhaW5PYmplY3QudXRpbHMnO1xuIl19
20
+ __exportStar(require("./generatePayGoAttestationProof.utils"), exports);
21
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvdGVzdHV0aWwvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLG1EQUFpQztBQUNqQyw4Q0FBNEI7QUFDNUIsd0RBQXNDO0FBQ3RDLHdFQUFzRCIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vZml4dHVyZXMudXRpbHMnO1xuZXhwb3J0ICogZnJvbSAnLi9rZXkudXRpbHMnO1xuZXhwb3J0ICogZnJvbSAnLi90b1BsYWluT2JqZWN0LnV0aWxzJztcbmV4cG9ydCAqIGZyb20gJy4vZ2VuZXJhdGVQYXlHb0F0dGVzdGF0aW9uUHJvb2YudXRpbHMnO1xuIl19
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@bitgo-beta/utxo-core",
3
- "version": "1.8.1-beta.7",
3
+ "version": "1.8.1-beta.71",
4
4
  "description": "BitGo UTXO Core types",
5
5
  "main": "./dist/src/index.js",
6
6
  "types": "./dist/src/index.d.ts",
@@ -51,10 +51,15 @@
51
51
  ]
52
52
  },
53
53
  "dependencies": {
54
- "@bitgo-beta/unspents": "0.13.2-beta.890",
55
- "@bitgo-beta/utxo-lib": "8.0.3-beta.891",
54
+ "@bitgo-beta/unspents": "0.13.2-beta.954",
55
+ "@bitgo-beta/utxo-lib": "8.0.3-beta.955",
56
56
  "@bitgo/wasm-miniscript": "2.0.0-beta.7",
57
- "bip174": "npm:@bitgo-forks/bip174@3.1.0-master.4"
57
+ "bip174": "npm:@bitgo-forks/bip174@3.1.0-master.4",
58
+ "bitcoinjs-message": "npm:@bitgo-forks/bitcoinjs-message@1.0.0-master.3",
59
+ "lodash": "^4.17.15"
58
60
  },
59
- "gitHead": "8648fc816027d574f8d15321b60d73773ec6fccb"
61
+ "devDependencies": {
62
+ "@types/lodash": "^4.14.151"
63
+ },
64
+ "gitHead": "648ed5ad4cbbe1bb347b18bb3b6a9c4c783ec42d"
60
65
  }