@shapeshiftoss/hdwallet-native 1.19.0 → 1.19.1
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/adapter.d.ts +2 -1
- package/dist/adapter.d.ts.map +1 -1
- package/dist/crypto/isolation/engines/default/bip32.d.ts +2 -3
- package/dist/crypto/isolation/engines/default/bip32.d.ts.map +1 -1
- package/dist/crypto/isolation/engines/default/bip32.js +5 -6
- package/dist/crypto/isolation/engines/default/bip32.js.map +1 -1
- package/dist/crypto/isolation/engines/default/bip39.js.map +1 -1
- package/dist/crypto/isolation/engines/default/index.test.d.ts +2 -0
- package/dist/crypto/isolation/engines/default/index.test.d.ts.map +1 -0
- package/dist/crypto/isolation/engines/default/index.test.js +92 -0
- package/dist/crypto/isolation/engines/default/index.test.js.map +1 -0
- package/dist/crypto/isolation/engines/dummy/bip32.d.ts +26 -0
- package/dist/crypto/isolation/engines/dummy/bip32.d.ts.map +1 -0
- package/dist/crypto/isolation/engines/dummy/bip32.js +137 -0
- package/dist/crypto/isolation/engines/dummy/bip32.js.map +1 -0
- package/dist/crypto/isolation/engines/dummy/bip39.d.ts +13 -0
- package/dist/crypto/isolation/engines/dummy/bip39.d.ts.map +1 -0
- package/dist/crypto/isolation/engines/dummy/bip39.js +100 -0
- package/dist/crypto/isolation/engines/dummy/bip39.js.map +1 -0
- package/dist/crypto/isolation/engines/dummy/index.d.ts +4 -0
- package/dist/crypto/isolation/engines/dummy/index.d.ts.map +1 -0
- package/dist/crypto/isolation/engines/dummy/index.js +27 -0
- package/dist/crypto/isolation/engines/dummy/index.js.map +1 -0
- package/dist/crypto/isolation/engines/dummy/index.test.d.ts +2 -0
- package/dist/crypto/isolation/engines/dummy/index.test.d.ts.map +1 -0
- package/dist/crypto/isolation/engines/dummy/index.test.js +105 -0
- package/dist/crypto/isolation/engines/dummy/index.test.js.map +1 -0
- package/dist/crypto/isolation/engines/dummy/types.d.ts +18 -0
- package/dist/crypto/isolation/engines/dummy/types.d.ts.map +1 -0
- package/dist/crypto/isolation/engines/dummy/types.js +10 -0
- package/dist/crypto/isolation/engines/dummy/types.js.map +1 -0
- package/dist/crypto/isolation/engines/index.d.ts +1 -0
- package/dist/crypto/isolation/engines/index.d.ts.map +1 -1
- package/dist/crypto/isolation/engines/index.js +2 -1
- package/dist/crypto/isolation/engines/index.js.map +1 -1
- package/package.json +3 -3
package/dist/adapter.d.ts
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import * as core from "@shapeshiftoss/hdwallet-core";
|
|
2
|
+
import * as native from "./native";
|
|
2
3
|
import * as Isolation from "./crypto/isolation";
|
|
3
4
|
export declare type NativeAdapterArgs = {
|
|
4
5
|
deviceId: string;
|
|
@@ -14,6 +15,6 @@ export declare class NativeAdapter {
|
|
|
14
15
|
private constructor();
|
|
15
16
|
static useKeyring(keyring: core.Keyring): NativeAdapter;
|
|
16
17
|
initialize(): Promise<number>;
|
|
17
|
-
pairDevice(deviceId: string): Promise<
|
|
18
|
+
pairDevice(deviceId: string): Promise<native.NativeHDWallet | null>;
|
|
18
19
|
}
|
|
19
20
|
//# sourceMappingURL=adapter.d.ts.map
|
package/dist/adapter.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"adapter.d.ts","sourceRoot":"","sources":["../src/adapter.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,IAAI,MAAM,8BAA8B,CAAC;
|
|
1
|
+
{"version":3,"file":"adapter.d.ts","sourceRoot":"","sources":["../src/adapter.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,IAAI,MAAM,8BAA8B,CAAC;AAErD,OAAO,KAAK,MAAM,MAAM,UAAU,CAAC;AACnC,OAAO,KAAK,SAAS,MAAM,oBAAoB,CAAC;AAEhD,oBAAY,iBAAiB,GAAG;IAC9B,QAAQ,EAAE,MAAM,CAAC;CAClB,GAAG,CAAC;IACH,QAAQ,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC;IAClD,SAAS,CAAC,EAAE,KAAK,CAAC;CACnB,GAAG;IACF,QAAQ,CAAC,EAAE,KAAK,CAAC;IACjB,SAAS,CAAC,EAAE,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC;CACvC,CAAC,CAAC;AAEH,qBAAa,aAAa;IACxB,OAAO,EAAE,IAAI,CAAC,OAAO,CAAC;IAEtB,OAAO;IAIP,MAAM,CAAC,UAAU,CAAC,OAAO,EAAE,IAAI,CAAC,OAAO;IAIjC,UAAU,IAAI,OAAO,CAAC,MAAM,CAAC;IAI7B,UAAU,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,cAAc,GAAG,IAAI,CAAC;CAmB1E"}
|
|
@@ -1,8 +1,7 @@
|
|
|
1
1
|
/// <reference types="node" />
|
|
2
|
-
export * from "../../core/bip32";
|
|
3
|
-
import * as BIP32 from "../../core/bip32";
|
|
4
2
|
import { ByteArray, Uint32 } from "../../types";
|
|
5
|
-
import { Digest, SecP256K1 } from "../../core";
|
|
3
|
+
import { BIP32, Digest, SecP256K1 } from "../../core";
|
|
4
|
+
export * from "../../core/bip32";
|
|
6
5
|
declare const Seed_base: {
|
|
7
6
|
new (...args: any[]): {
|
|
8
7
|
readonly "__#1@#revokers": Set<() => void>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bip32.d.ts","sourceRoot":"","sources":["../../../../../src/crypto/isolation/engines/default/bip32.ts"],"names":[],"mappings":";
|
|
1
|
+
{"version":3,"file":"bip32.d.ts","sourceRoot":"","sources":["../../../../../src/crypto/isolation/engines/default/bip32.ts"],"names":[],"mappings":";AAIA,OAAO,EAAE,SAAS,EAAE,MAAM,EAAyC,MAAM,aAAa,CAAC;AACvF,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAGtD,cAAc,kBAAkB,CAAC;;;;;;;;;;;AAEjC,qBAAa,IAAK,SAAQ,SAAoB,YAAW,KAAK,CAAC,IAAI;;IAG/D,SAAS,aAAa,IAAI,EAAE,UAAU;WAMzB,MAAM,CAAC,IAAI,EAAE,UAAU,GAAG,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC;IAKpD,WAAW,CAAC,OAAO,CAAC,EAAE,MAAM,GAAG,UAAU,GAAG,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC;CAaxE;;;;;;;;;;;AAED,qBAAa,IAAK,SAAQ,SAAoB,YAAW,KAAK,CAAC,IAAI,EAAE,SAAS,CAAC,mBAAmB,EAAE,SAAS,CAAC,OAAO;;IAEjH,QAAQ,CAAC,SAAS,EAAE,MAAM,GAAG,KAAK,CAAC,SAAS,CAAC;IAI7C,MAAM,CAAC,eAAe,UAAgC;IAEtD,SAAS,aAAa,UAAU,EAAE,UAAU,EAAE,SAAS,EAAE,UAAU;WAStD,MAAM,CAAC,UAAU,EAAE,UAAU,EAAE,SAAS,EAAE,UAAU,GAAG,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC;IAKjF,YAAY,IAAI,OAAO,CAAC,SAAS,CAAC,eAAe,CAAC;IAKlD,YAAY;;;IAEZ,SAAS,CAAC,eAAe,EAAE,IAAI,EAAE,GAAG,EAAE,SAAS,CAAC,EAAE,CAAC,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,CAAC,SAAS,CAAC;IACpG,SAAS,CAAC,eAAe,EAAE,MAAM,CAAC,aAAa,CAAC,EAAE,CAAC,EAAE,GAAG,EAAE,UAAU,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,CAAC,SAAS,CAAC;IAarH,oBAAoB,CAAC,eAAe,EAAE,IAAI,EAAE,GAAG,EAAE,SAAS,CAAC,EAAE,CAAC,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,CAAC,oBAAoB,CAAC;IAC1H,oBAAoB,CAAC,eAAe,EAAE,MAAM,CAAC,aAAa,CAAC,EAAE,CAAC,EAAE,GAAG,EAAE,UAAU,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,CAAC,oBAAoB,CAAC;IAoB3I,MAAM,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAqBpC,IAAI,CAAC,SAAS,EAAE,SAAS,CAAC,UAAU,EAAE,eAAe,CAAC,EAAE,MAAM,CAAC,aAAa,CAAC,EAAE,CAAC,GAAG,OAAO,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC;IAOzG,OAAO,CAAC,SAAS,EAAE,SAAS,CAAC,UAAU,GAAG,OAAO,CAAC,SAAS,CAAC,iBAAiB,CAAC;YAItE,KAAK;CAWtB"}
|
|
@@ -11,9 +11,6 @@ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (
|
|
|
11
11
|
}) : function(o, v) {
|
|
12
12
|
o["default"] = v;
|
|
13
13
|
});
|
|
14
|
-
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
15
|
-
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
16
|
-
};
|
|
17
14
|
var __importStar = (this && this.__importStar) || function (mod) {
|
|
18
15
|
if (mod && mod.__esModule) return mod;
|
|
19
16
|
var result = {};
|
|
@@ -21,6 +18,9 @@ var __importStar = (this && this.__importStar) || function (mod) {
|
|
|
21
18
|
__setModuleDefault(result, mod);
|
|
22
19
|
return result;
|
|
23
20
|
};
|
|
21
|
+
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
22
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
23
|
+
};
|
|
24
24
|
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
25
25
|
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
26
26
|
return new (P || (P = Promise))(function (resolve, reject) {
|
|
@@ -44,14 +44,13 @@ var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (
|
|
|
44
44
|
var _Seed_seed, _Node_privateKey, _Node_publicKey;
|
|
45
45
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
46
46
|
exports.Node = exports.Seed = void 0;
|
|
47
|
-
__exportStar(require("../../core/bip32"), exports);
|
|
48
|
-
const BIP32 = __importStar(require("../../core/bip32"));
|
|
49
47
|
const bip32crypto = __importStar(require("bip32/src/crypto"));
|
|
50
48
|
const tinyecc = __importStar(require("tiny-secp256k1"));
|
|
51
49
|
const web_encoding_1 = require("web-encoding");
|
|
52
50
|
const types_1 = require("../../types");
|
|
53
51
|
const core_1 = require("../../core");
|
|
54
52
|
const revocable_1 = require("./revocable");
|
|
53
|
+
__exportStar(require("../../core/bip32"), exports);
|
|
55
54
|
class Seed extends revocable_1.Revocable(class {
|
|
56
55
|
}) {
|
|
57
56
|
constructor(seed) {
|
|
@@ -97,7 +96,7 @@ class Node extends revocable_1.Revocable(class {
|
|
|
97
96
|
throw new Error("bad private key length");
|
|
98
97
|
__classPrivateFieldSet(this, _Node_privateKey, types_1.safeBufferFrom(privateKey), "f");
|
|
99
98
|
this.addRevoker(() => __classPrivateFieldGet(this, _Node_privateKey, "f").fill(0));
|
|
100
|
-
this.chainCode = types_1.safeBufferFrom(types_1.checkType(BIP32.ChainCode, chainCode));
|
|
99
|
+
this.chainCode = types_1.safeBufferFrom(types_1.checkType(core_1.BIP32.ChainCode, chainCode));
|
|
101
100
|
}
|
|
102
101
|
static create(privateKey, chainCode) {
|
|
103
102
|
return __awaiter(this, void 0, void 0, function* () {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bip32.js","sourceRoot":"","sources":["../../../../../src/crypto/isolation/engines/default/bip32.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,
|
|
1
|
+
{"version":3,"file":"bip32.js","sourceRoot":"","sources":["../../../../../src/crypto/isolation/engines/default/bip32.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bip39.js","sourceRoot":"","sources":["../../../../../src/crypto/isolation/engines/default/bip39.ts"],"names":[],"mappings":";AAAA,4CAA4C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAE5C,mEAAoD;AAEpD,8DAAgD;AAChD,+CAA2C;AAI3C,uCAA6C;AAC7C,qDAAuC;AACvC,2CAAmD;AAEnD,mDAAiC;AAEjC,gDAAgD;AAChD,4BAA4B;AAC5B,SAAS,yBAAyB,CAC9B,QAAgB,EAChB,IAAgB,EAChB,UAAkB;IAElB,SAAS,OAAO,CAAC,KAAa;QAC9B,MAAM,OAAO,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QAChC,OAAO,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;QAC7B,OAAO,OAAO,CAAC;IACf,CAAC;IAED,MAAM,QAAQ,GAAG,sBAAc,CAAC,IAAI,0BAAW,EAAE,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC;IAEpE,IAAI,GAAG,GAAG,WAAW,CAAC,UAAU,CAAC,QAAQ,EAAE,IAAI,CAAC,sBAAsB,CAAC,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAA4B,CAAC;IACvH,IAAI,KAAK,GAAG,GAAG,CAAC;IAChB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,UAAU,EAAE,CAAC,EAAE,EAAE;
|
|
1
|
+
{"version":3,"file":"bip39.js","sourceRoot":"","sources":["../../../../../src/crypto/isolation/engines/default/bip39.ts"],"names":[],"mappings":";AAAA,4CAA4C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAE5C,mEAAoD;AAEpD,8DAAgD;AAChD,+CAA2C;AAI3C,uCAA6C;AAC7C,qDAAuC;AACvC,2CAAmD;AAEnD,mDAAiC;AAEjC,gDAAgD;AAChD,4BAA4B;AAC5B,SAAS,yBAAyB,CAC9B,QAAgB,EAChB,IAAgB,EAChB,UAAkB;IAElB,SAAS,OAAO,CAAC,KAAa;QAC9B,MAAM,OAAO,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QAChC,OAAO,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;QAC7B,OAAO,OAAO,CAAC;IACf,CAAC;IAED,MAAM,QAAQ,GAAG,sBAAc,CAAC,IAAI,0BAAW,EAAE,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC;IAEpE,IAAI,GAAG,GAAG,WAAW,CAAC,UAAU,CAAC,QAAQ,EAAE,IAAI,CAAC,sBAAsB,CAAC,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAA4B,CAAC;IACvH,IAAI,KAAK,GAAG,GAAG,CAAC;IAChB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,UAAU,EAAE,CAAC,EAAE,EAAE;QAClC,IAAI,IAAI,GAAG,WAAW,CAAC,UAAU,CAAC,QAAQ,EAAE,KAAK,CAA4B,CAAC;QAC9E,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,GAAG,CAAC,MAAM,EAAE,CAAC,EAAE;YAAE,GAAG,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,CAAC;QACvD,KAAK,GAAG,IAAI,CAAC;KAChB;IAED,OAAO,GAAG,CAAC;AACf,CAAC;AAED,MAAa,QAAS,SAAQ,qBAAS,CAAC;CAAQ,CAAC;IAG7C,YAAsB,QAAgB;QAClC,KAAK,EAAE,CAAC;QAHZ,qCAA2B;QAIvB,uBAAA,IAAI,sBAAa,QAAQ,CAAC,SAAS,CAAC,MAAM,CAAC,MAAA,CAAC;IAChD,CAAC;IAED,MAAM,CAAO,MAAM,CAAC,QAAgB;;YAChC,MAAM,GAAG,GAAG,IAAI,QAAQ,CAAC,QAAQ,CAAC,CAAA;YAClC,OAAO,qBAAS,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC;QACpD,CAAC;KAAA;IAEK,MAAM,CAAC,UAAmB;;YAC5B,IAAI,UAAU,KAAK,SAAS,IAAI,OAAO,UAAU,KAAK,QAAQ;gBAAE,MAAM,IAAI,KAAK,CAAC,qBAAqB,CAAC,CAAC;YAEvG,MAAM,QAAQ,GAAG,uBAAA,IAAI,0BAAU,CAAC;YAChC,MAAM,IAAI,GAAG,IAAI,0BAAW,EAAE,CAAC,MAAM,CAAC,WAAW,UAAU,aAAV,UAAU,cAAV,UAAU,GAAI,EAAE,EAAE,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC;YAEvF,MAAM,GAAG,GAAG,MAAM,WAAW,CAAC,IAAI,CAAC,MAAM,CAAC,yBAAyB,CAAC,QAAQ,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC;YAC3F,IAAI,CAAC,UAAU,CAAC,GAAG,EAAE,WAAC,OAAA,MAAA,GAAG,CAAC,MAAM,+CAAV,GAAG,CAAW,CAAA,EAAA,CAAC,CAAA;YACrC,OAAO,GAAG,CAAA;QACd,CAAC;KAAA;IAAA,CAAC;CACL;AAvBD,4BAuBC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.test.d.ts","sourceRoot":"","sources":["../../../../../src/crypto/isolation/engines/default/index.test.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,92 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
|
|
5
|
+
}) : (function(o, m, k, k2) {
|
|
6
|
+
if (k2 === undefined) k2 = k;
|
|
7
|
+
o[k2] = m[k];
|
|
8
|
+
}));
|
|
9
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
10
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
11
|
+
}) : function(o, v) {
|
|
12
|
+
o["default"] = v;
|
|
13
|
+
});
|
|
14
|
+
var __importStar = (this && this.__importStar) || function (mod) {
|
|
15
|
+
if (mod && mod.__esModule) return mod;
|
|
16
|
+
var result = {};
|
|
17
|
+
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
18
|
+
__setModuleDefault(result, mod);
|
|
19
|
+
return result;
|
|
20
|
+
};
|
|
21
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
22
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
23
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
24
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
25
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
26
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
27
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
28
|
+
});
|
|
29
|
+
};
|
|
30
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
31
|
+
const Core = __importStar(require("../../core"));
|
|
32
|
+
const Default = __importStar(require("./"));
|
|
33
|
+
describe("Isolation.Engines.Default", () => {
|
|
34
|
+
let mnemonic;
|
|
35
|
+
let seed;
|
|
36
|
+
let masterKey;
|
|
37
|
+
it("can be loaded with a list of xpubs", () => __awaiter(void 0, void 0, void 0, function* () {
|
|
38
|
+
mnemonic = yield Default.BIP39.Mnemonic.create("all all all all all all all all all all all all");
|
|
39
|
+
}));
|
|
40
|
+
it("produces a seed", () => __awaiter(void 0, void 0, void 0, function* () {
|
|
41
|
+
seed = yield mnemonic.toSeed();
|
|
42
|
+
}));
|
|
43
|
+
it("produces a master key", () => __awaiter(void 0, void 0, void 0, function* () {
|
|
44
|
+
masterKey = yield seed.toMasterKey();
|
|
45
|
+
const pk = yield masterKey.getPublicKey();
|
|
46
|
+
expect(Buffer.from(pk).toString("hex")).toEqual("03e3b30e8c21923752a408242e069941fedbaef7db7161f7e2c5f3fdafe7e25ddc");
|
|
47
|
+
}));
|
|
48
|
+
it.each([
|
|
49
|
+
["m/44'", "034d600165882b6faf32a3f1f2c4755eeb0f0486954718d46fd9621e8ca40ca6b6"],
|
|
50
|
+
["m/44'/0'", "03dde722d51529c6744d45e1a5e644c6e27520bd8bc7278fbeb1f43094f3dce91a"],
|
|
51
|
+
["m/44'/0'/0'", "03c8166eb40ac84088b618ec07c7cebadacee31c5f5b04a1e8c2a2f3e748eb2cdd"],
|
|
52
|
+
["m/44'/0'/0'/0", "02d3f906cd22167506f94331fc879b1757695c9d9b09fbb1cd6bee9c7ee7019751"],
|
|
53
|
+
["m/44'/0'/0'/0/0", "03c6d9cc725bb7e19c026df03bf693ee1171371a8eaf25f04b7a58f6befabcd38c"],
|
|
54
|
+
["m/44'/0'/0'/0/1", "02c651a011009e2c7e7b3ed2068857ca0a47cba35b73e06c32e3c06ef3aa67621d"],
|
|
55
|
+
["m/44'/0'/0'/0/2", "03330236b68aa6fdcaca0ea72e11b360c84ed19a338509aa527b678a7ec9076882"],
|
|
56
|
+
["m/44'/0'/0'/1", "0377d49f78af126571d0e995656ab0b12cf149a6761bfc3e75132813c7d9c1739f"],
|
|
57
|
+
["m/44'/0'/0'/1/0", "035bc524b005abbf8c3f0c22a452d0b9c2ad43c4609b4b78c745b47f66120bb1a0"],
|
|
58
|
+
["m/44'/0'/0'/1/1", "0203ae8dbf9f9b65f3922a4a855a7c5d7e7700b0f38477b9e047385eed1ba6e18c"],
|
|
59
|
+
["m/44'/0'/0'/1/2", "03389aa9b8d59b776a93a26cf7ee3d9e0ad1b8f0440e778f5270785d12936dad3c"],
|
|
60
|
+
["m/44'/60'", "026efeb8a29b3eedec94c5aca20a84ff4b98d57f9967856a21a64c8d127d863098"],
|
|
61
|
+
["m/44'/60'/0'", "03d92dfaf121b2723d0e6dabb2637b2d9b2b3b2d8026ab901f2df3eea3f6d200c9"],
|
|
62
|
+
["m/44'/60'/0'/0", "0217ebaac6b4c12d3c7e0fc21d8d53d89adf007ff7988840926032c89eb966a37c"],
|
|
63
|
+
["m/44'/60'/0'/0/0", "03ad8e7eb4f3a7d1a409fa7bdc7b79d8840fe746d3fa9ee17fee4f84631ec1430b"],
|
|
64
|
+
["m/49'", "02afb083c2e97455310c8591c6235c9ceb92dc32f4e40d146cd5b550e3bebbc74a"],
|
|
65
|
+
["m/49'/0'", "039051bb3f5af2094a2b4ee31964b8d82b379604926b393b698314e098b6984bd0"],
|
|
66
|
+
["m/49'/0'/0'", "0215a09870bbb713f1ba94d364e1e5bfcf9cdb5178d22efbca6ec17dc2c4f706cd"],
|
|
67
|
+
["m/49'/0'/0'/0", "020ddd7e4206daf889a2c11920fcccbb60df383d4c5fcd982cd5c7d400fdd46c8e"],
|
|
68
|
+
["m/49'/0'/0'/0/0", "02f770feae292b5b3f41d8c81220c2568cb73eb8042def35e648dfe048e4b41b11"],
|
|
69
|
+
["m/49'/0'/0'/0/1", "02dc4843f2fbef594a8c41573ca7a91c968ced334c16c5200cc6a07e8dbba3bdb2"],
|
|
70
|
+
["m/49'/0'/0'/0/2", "03eb2d79f0e0896f523a30d92f395e31c31d0196f2f36d8284145007e68d0563fa"],
|
|
71
|
+
["m/49'/0'/0'/1", "02f7ff3aab4f9fd88190ac153bd0bcb26758a6b3b75480ddda8c0f43147fbbee95"],
|
|
72
|
+
["m/49'/0'/0'/1/0", "03a961687895a78da9aef98eed8e1f2a3e91cfb69d2f3cf11cbd0bb1773d951928"],
|
|
73
|
+
["m/49'/0'/0'/1/1", "03f459101133e88e5953ec0a128c3bc17d5e6e7e8dd035b4dbffad364774f1e710"],
|
|
74
|
+
["m/49'/0'/0'/1/2", "036a7e2f1544eb4ddf1e3df4fedd4c8c0c39b988f3ac99e927f4a00fc5fddfc653"],
|
|
75
|
+
["m/84'", "0225ee2bad1901cea8dca61028fa2c39f9bc6fe6fde7f06405c4cf1131e0ec91ae"],
|
|
76
|
+
["m/84'/0'", "031c9a1c04f0c3b62c013e27ce7a6c7720ac669ee738aa4a6c9112f25d731b6c27"],
|
|
77
|
+
["m/84'/0'/0'", "03e36a4f3fee21bfe83447b209d8de6da1ce1ae38f76bc2c00652dc5e0a8c5c0b5"],
|
|
78
|
+
["m/84'/0'/0'/0", "025982bc036c5321d35d808ab872b2337438b1bb07d5544cf0a20e84327e05897f"],
|
|
79
|
+
["m/84'/0'/0'/0/0", "0396070f2813933502e907c011ae7ba928683a9c2f0e888dae7ebd2c41120ee6b5"],
|
|
80
|
+
["m/84'/0'/0'/0/1", "026b6039331b4d7bb2037fe72411a582e3d1993190731582bf04f18cc4249ea83e"],
|
|
81
|
+
["m/84'/0'/0'/0/2", "03e4a361a06cdf253f7be2b00bb171e30f6f73ec06eb437d9842ec593c5ac0e499"],
|
|
82
|
+
["m/84'/0'/0'/1", "03bc5bf5297765cd1675cd93667500529476502a413310afbfdeb04963e130ea3e"],
|
|
83
|
+
["m/84'/0'/0'/1/0", "032ef68318c8f6aaa0adec0199c69901f0db7d3485eb38d9ad235221dc3d61154b"],
|
|
84
|
+
["m/84'/0'/0'/1/1", "02768afac47832d02e24c39ffcaa9bbd54be67460e38c255d97192cec5e4e25975"],
|
|
85
|
+
["m/84'/0'/0'/1/2", "0245ac2db850ba9a1971741267a1849c72b91722e09cf71c9ff3754ff41f2a0419"],
|
|
86
|
+
])("derives the key at %s", (path, expectedPk) => __awaiter(void 0, void 0, void 0, function* () {
|
|
87
|
+
const node = yield Core.BIP32.derivePath(masterKey, path);
|
|
88
|
+
const pk = Buffer.from(yield node.getPublicKey()).toString("hex");
|
|
89
|
+
expect(pk).toEqual(expectedPk);
|
|
90
|
+
}));
|
|
91
|
+
});
|
|
92
|
+
//# sourceMappingURL=index.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.test.js","sourceRoot":"","sources":["../../../../../src/crypto/isolation/engines/default/index.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import { BIP32, Digest, SecP256K1 } from "../../core";
|
|
2
|
+
import { ByteArray, Uint32 } from "../../types";
|
|
3
|
+
import { ParsedXpubTree } from "./types";
|
|
4
|
+
export * from "../../core/bip32";
|
|
5
|
+
export declare class Seed implements BIP32.Seed {
|
|
6
|
+
readonly xpubTree: ParsedXpubTree;
|
|
7
|
+
protected constructor(xpubTree: ParsedXpubTree);
|
|
8
|
+
static create(xpubTree: ParsedXpubTree): Promise<BIP32.Seed>;
|
|
9
|
+
toMasterKey(): Promise<BIP32.Node>;
|
|
10
|
+
toMasterKey(hmacKey: string | Uint8Array): never;
|
|
11
|
+
}
|
|
12
|
+
export declare class Node implements BIP32.Node, SecP256K1.ECDSARecoverableKey, SecP256K1.ECDHKey {
|
|
13
|
+
readonly xpubTree: ParsedXpubTree;
|
|
14
|
+
protected constructor(xpubTree: ParsedXpubTree);
|
|
15
|
+
static create(xpubTree: ParsedXpubTree): Promise<BIP32.Node>;
|
|
16
|
+
getPublicKey(): Promise<SecP256K1.CompressedPoint>;
|
|
17
|
+
getChainCode(): Promise<BIP32.ChainCode>;
|
|
18
|
+
ecdsaSign(digestAlgorithm: null, msg: ByteArray<32>, counter?: Uint32): Promise<SecP256K1.Signature>;
|
|
19
|
+
ecdsaSign(digestAlgorithm: Digest.AlgorithmName<32>, msg: Uint8Array, counter?: Uint32): Promise<SecP256K1.Signature>;
|
|
20
|
+
ecdsaSignRecoverable(digestAlgorithm: null, msg: ByteArray<32>, counter?: Uint32): Promise<SecP256K1.RecoverableSignature>;
|
|
21
|
+
ecdsaSignRecoverable(digestAlgorithm: Digest.AlgorithmName<32>, msg: Uint8Array, counter?: Uint32): Promise<SecP256K1.RecoverableSignature>;
|
|
22
|
+
derive(index: Uint32): Promise<this>;
|
|
23
|
+
ecdh(publicKey: SecP256K1.CurvePoint, digestAlgorithm?: Digest.AlgorithmName<32>): Promise<ByteArray<32>>;
|
|
24
|
+
ecdhRaw(publicKey: SecP256K1.CurvePoint): Promise<SecP256K1.UncompressedPoint>;
|
|
25
|
+
}
|
|
26
|
+
//# sourceMappingURL=bip32.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"bip32.d.ts","sourceRoot":"","sources":["../../../../../src/crypto/isolation/engines/dummy/bip32.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AACtD,OAAO,EAAE,SAAS,EAAE,MAAM,EAA6B,MAAM,aAAa,CAAC;AAE3E,OAAO,EAAoB,cAAc,EAAE,MAAM,SAAS,CAAC;AAE3D,cAAc,kBAAkB,CAAC;AAEjC,qBAAa,IAAK,YAAW,KAAK,CAAC,IAAI;IACnC,QAAQ,CAAC,QAAQ,EAAE,cAAc,CAAC;IAElC,SAAS,aAAa,QAAQ,EAAE,cAAc;WAIjC,MAAM,CAAC,QAAQ,EAAE,cAAc,GAAG,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC;IAIlE,WAAW,IAAI,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC;IAClC,WAAW,CAAC,OAAO,EAAE,MAAM,GAAG,UAAU,GAAG,KAAK;CAMnD;AAED,qBAAa,IAAK,YAAW,KAAK,CAAC,IAAI,EAAE,SAAS,CAAC,mBAAmB,EAAE,SAAS,CAAC,OAAO;IACrF,QAAQ,CAAC,QAAQ,EAAE,cAAc,CAAC;IAElC,SAAS,aAAa,QAAQ,EAAE,cAAc;WAIjC,MAAM,CAAC,QAAQ,EAAE,cAAc,GAAG,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC;IAI5D,YAAY,IAAI,OAAO,CAAC,SAAS,CAAC,eAAe,CAAC;IAIlD,YAAY,IAAI,OAAO,CAAC,KAAK,CAAC,SAAS,CAAC;IAIxC,SAAS,CAAC,eAAe,EAAE,IAAI,EAAE,GAAG,EAAE,SAAS,CAAC,EAAE,CAAC,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,CAAC,SAAS,CAAC;IACpG,SAAS,CAAC,eAAe,EAAE,MAAM,CAAC,aAAa,CAAC,EAAE,CAAC,EAAE,GAAG,EAAE,UAAU,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,CAAC,SAAS,CAAC;IAKrH,oBAAoB,CAAC,eAAe,EAAE,IAAI,EAAE,GAAG,EAAE,SAAS,CAAC,EAAE,CAAC,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,CAAC,oBAAoB,CAAC;IAC1H,oBAAoB,CAAC,eAAe,EAAE,MAAM,CAAC,aAAa,CAAC,EAAE,CAAC,EAAE,GAAG,EAAE,UAAU,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,CAAC,oBAAoB,CAAC;IAK3I,MAAM,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAmCpC,IAAI,CAAC,SAAS,EAAE,SAAS,CAAC,UAAU,EAAE,eAAe,CAAC,EAAE,MAAM,CAAC,aAAa,CAAC,EAAE,CAAC,GAAG,OAAO,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC;IAIzG,OAAO,CAAC,SAAS,EAAE,SAAS,CAAC,UAAU,GAAG,OAAO,CAAC,SAAS,CAAC,iBAAiB,CAAC;CAGvF"}
|
|
@@ -0,0 +1,137 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
|
|
5
|
+
}) : (function(o, m, k, k2) {
|
|
6
|
+
if (k2 === undefined) k2 = k;
|
|
7
|
+
o[k2] = m[k];
|
|
8
|
+
}));
|
|
9
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
10
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
11
|
+
}) : function(o, v) {
|
|
12
|
+
o["default"] = v;
|
|
13
|
+
});
|
|
14
|
+
var __importStar = (this && this.__importStar) || function (mod) {
|
|
15
|
+
if (mod && mod.__esModule) return mod;
|
|
16
|
+
var result = {};
|
|
17
|
+
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
18
|
+
__setModuleDefault(result, mod);
|
|
19
|
+
return result;
|
|
20
|
+
};
|
|
21
|
+
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
22
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
23
|
+
};
|
|
24
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
25
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
26
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
27
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
28
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
29
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
30
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
31
|
+
});
|
|
32
|
+
};
|
|
33
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
34
|
+
exports.Node = exports.Seed = void 0;
|
|
35
|
+
const hdwallet_core_1 = require("@shapeshiftoss/hdwallet-core");
|
|
36
|
+
const bip32crypto = __importStar(require("bip32/src/crypto"));
|
|
37
|
+
const tinyecc = __importStar(require("tiny-secp256k1"));
|
|
38
|
+
const core_1 = require("../../core");
|
|
39
|
+
const types_1 = require("../../types");
|
|
40
|
+
const types_2 = require("./types");
|
|
41
|
+
__exportStar(require("../../core/bip32"), exports);
|
|
42
|
+
class Seed {
|
|
43
|
+
constructor(xpubTree) {
|
|
44
|
+
this.xpubTree = xpubTree;
|
|
45
|
+
}
|
|
46
|
+
static create(xpubTree) {
|
|
47
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
48
|
+
return new Seed(xpubTree);
|
|
49
|
+
});
|
|
50
|
+
}
|
|
51
|
+
toMasterKey(hmacKey) {
|
|
52
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
53
|
+
if (hmacKey !== undefined)
|
|
54
|
+
throw new Error("bad hmacKey type");
|
|
55
|
+
return yield Node.create(this.xpubTree);
|
|
56
|
+
});
|
|
57
|
+
}
|
|
58
|
+
;
|
|
59
|
+
}
|
|
60
|
+
exports.Seed = Seed;
|
|
61
|
+
class Node {
|
|
62
|
+
constructor(xpubTree) {
|
|
63
|
+
this.xpubTree = xpubTree;
|
|
64
|
+
}
|
|
65
|
+
static create(xpubTree) {
|
|
66
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
67
|
+
return new Node(xpubTree);
|
|
68
|
+
});
|
|
69
|
+
}
|
|
70
|
+
getPublicKey() {
|
|
71
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
72
|
+
return this.xpubTree.publicKey;
|
|
73
|
+
});
|
|
74
|
+
}
|
|
75
|
+
getChainCode() {
|
|
76
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
77
|
+
return this.xpubTree.chainCode;
|
|
78
|
+
});
|
|
79
|
+
}
|
|
80
|
+
ecdsaSign(digestAlgorithm, msg, counter) {
|
|
81
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
82
|
+
throw new types_2.DummyEngineError();
|
|
83
|
+
});
|
|
84
|
+
}
|
|
85
|
+
ecdsaSignRecoverable(digestAlgorithm, msg, counter) {
|
|
86
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
87
|
+
throw new types_2.DummyEngineError();
|
|
88
|
+
});
|
|
89
|
+
}
|
|
90
|
+
derive(index) {
|
|
91
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
92
|
+
types_1.Uint32.assert(index);
|
|
93
|
+
const child = (() => {
|
|
94
|
+
const existingChild = this.xpubTree.children.get(index);
|
|
95
|
+
if (existingChild)
|
|
96
|
+
return existingChild;
|
|
97
|
+
if (index >= 0x80000000)
|
|
98
|
+
throw new types_2.DummyEngineError();
|
|
99
|
+
let serP = Buffer.alloc(37);
|
|
100
|
+
serP.set(this.xpubTree.publicKey, 0);
|
|
101
|
+
serP.writeUInt32BE(index, 33);
|
|
102
|
+
const I = bip32crypto.hmacSHA512(types_1.safeBufferFrom(this.xpubTree.chainCode), serP);
|
|
103
|
+
const IL = I.slice(0, 32);
|
|
104
|
+
const IR = I.slice(32, 64);
|
|
105
|
+
const Ki = tinyecc.pointAddScalar(types_1.safeBufferFrom(this.xpubTree.publicKey), IL);
|
|
106
|
+
if (Ki === null)
|
|
107
|
+
throw new Error("Ki is null; this should be cryptographically impossible");
|
|
108
|
+
const newChild = {
|
|
109
|
+
version: this.xpubTree.version,
|
|
110
|
+
depth: this.xpubTree.depth + 1,
|
|
111
|
+
parentFp: this.xpubTree.fingerprint,
|
|
112
|
+
childNum: index,
|
|
113
|
+
chainCode: types_1.checkType(core_1.BIP32.ChainCode, IR),
|
|
114
|
+
publicKey: types_1.checkType(core_1.SecP256K1.CompressedPoint, Ki),
|
|
115
|
+
fingerprint: new DataView(hdwallet_core_1.toArrayBuffer(core_1.Digest.Algorithms.hash160(Ki))).getUint32(0),
|
|
116
|
+
children: new Map()
|
|
117
|
+
};
|
|
118
|
+
this.xpubTree.children.set(index, newChild);
|
|
119
|
+
return newChild;
|
|
120
|
+
})();
|
|
121
|
+
const out = yield Node.create(child);
|
|
122
|
+
return out;
|
|
123
|
+
});
|
|
124
|
+
}
|
|
125
|
+
ecdh(publicKey, digestAlgorithm) {
|
|
126
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
127
|
+
throw new types_2.DummyEngineError();
|
|
128
|
+
});
|
|
129
|
+
}
|
|
130
|
+
ecdhRaw(publicKey) {
|
|
131
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
132
|
+
throw new types_2.DummyEngineError();
|
|
133
|
+
});
|
|
134
|
+
}
|
|
135
|
+
}
|
|
136
|
+
exports.Node = Node;
|
|
137
|
+
//# sourceMappingURL=bip32.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"bip32.js","sourceRoot":"","sources":["../../../../../src/crypto/isolation/engines/dummy/bip32.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import * as BIP32 from "../../core/bip32";
|
|
2
|
+
import * as BIP39 from "../../core/bip39";
|
|
3
|
+
import { ParsedXpubTree } from "./types";
|
|
4
|
+
export * from "../../core/bip39";
|
|
5
|
+
export declare class Mnemonic implements BIP39.Mnemonic {
|
|
6
|
+
readonly xpubTree: ParsedXpubTree;
|
|
7
|
+
protected constructor(xpubTree: ParsedXpubTree);
|
|
8
|
+
static create(xpubList: string): Promise<BIP39.Mnemonic>;
|
|
9
|
+
toSeed(): Promise<BIP32.Seed>;
|
|
10
|
+
toSeed(passphrase: ""): Promise<BIP32.Seed>;
|
|
11
|
+
toSeed(passphrase: string): never;
|
|
12
|
+
}
|
|
13
|
+
//# sourceMappingURL=bip39.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"bip39.d.ts","sourceRoot":"","sources":["../../../../../src/crypto/isolation/engines/dummy/bip39.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,KAAK,MAAM,kBAAkB,CAAC;AAC1C,OAAO,KAAK,KAAK,MAAM,kBAAkB,CAAC;AAM1C,OAAO,EAAE,cAAc,EAAE,MAAM,SAAS,CAAC;AAEzC,cAAc,kBAAkB,CAAC;AAEjC,qBAAa,QAAS,YAAW,KAAK,CAAC,QAAQ;IAC3C,QAAQ,CAAC,QAAQ,EAAE,cAAc,CAAC;IAElC,SAAS,aAAa,QAAQ,EAAE,cAAc;WAIjC,MAAM,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC;IAyC9D,MAAM,IAAI,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC;IAC7B,MAAM,CAAC,UAAU,EAAE,EAAE,GAAG,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC;IAC3C,MAAM,CAAC,UAAU,EAAE,MAAM,GAAG,KAAK;CAMpC"}
|
|
@@ -0,0 +1,100 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
|
|
5
|
+
}) : (function(o, m, k, k2) {
|
|
6
|
+
if (k2 === undefined) k2 = k;
|
|
7
|
+
o[k2] = m[k];
|
|
8
|
+
}));
|
|
9
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
10
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
11
|
+
}) : function(o, v) {
|
|
12
|
+
o["default"] = v;
|
|
13
|
+
});
|
|
14
|
+
var __importStar = (this && this.__importStar) || function (mod) {
|
|
15
|
+
if (mod && mod.__esModule) return mod;
|
|
16
|
+
var result = {};
|
|
17
|
+
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
18
|
+
__setModuleDefault(result, mod);
|
|
19
|
+
return result;
|
|
20
|
+
};
|
|
21
|
+
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
22
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
23
|
+
};
|
|
24
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
25
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
26
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
27
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
28
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
29
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
30
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
31
|
+
});
|
|
32
|
+
};
|
|
33
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
34
|
+
exports.Mnemonic = void 0;
|
|
35
|
+
const hdwallet_core_1 = require("@shapeshiftoss/hdwallet-core");
|
|
36
|
+
const bs58check = __importStar(require("bs58check"));
|
|
37
|
+
const BIP32 = __importStar(require("../../core/bip32"));
|
|
38
|
+
const Digest = __importStar(require("../../core/digest"));
|
|
39
|
+
const SecP256K1 = __importStar(require("../../core/secp256k1"));
|
|
40
|
+
const types_1 = require("../../types");
|
|
41
|
+
const BIP32Engine = __importStar(require("./bip32"));
|
|
42
|
+
__exportStar(require("../../core/bip39"), exports);
|
|
43
|
+
class Mnemonic {
|
|
44
|
+
constructor(xpubTree) {
|
|
45
|
+
this.xpubTree = xpubTree;
|
|
46
|
+
}
|
|
47
|
+
static create(xpubList) {
|
|
48
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
49
|
+
const parsedXpubs = xpubList.split(" ").map(xpub => {
|
|
50
|
+
const xpubBuf = bs58check.decode(xpub);
|
|
51
|
+
if (xpubBuf.length !== 78)
|
|
52
|
+
throw new Error("Isolation.Engine.Dummy.BIP39.create - Invalid xpub");
|
|
53
|
+
const xpubView = new DataView(hdwallet_core_1.toArrayBuffer(xpubBuf));
|
|
54
|
+
const pk = types_1.checkType(SecP256K1.CompressedPoint, xpubBuf.slice(45));
|
|
55
|
+
return {
|
|
56
|
+
version: xpubView.getUint32(0),
|
|
57
|
+
depth: xpubView.getUint8(4),
|
|
58
|
+
parentFp: xpubView.getUint32(5),
|
|
59
|
+
childNum: xpubView.getUint32(9),
|
|
60
|
+
chainCode: types_1.checkType(BIP32.ChainCode, xpubBuf.slice(13, 45)),
|
|
61
|
+
publicKey: pk,
|
|
62
|
+
fingerprint: new DataView(hdwallet_core_1.toArrayBuffer(Digest.Algorithms.hash160(pk))).getUint32(0),
|
|
63
|
+
children: new Map()
|
|
64
|
+
};
|
|
65
|
+
});
|
|
66
|
+
const tree = (() => {
|
|
67
|
+
const rootXpubs = parsedXpubs.filter(x => x.parentFp === 0x00000000);
|
|
68
|
+
if (rootXpubs.length === 0)
|
|
69
|
+
throw new Error("can't find root xpub");
|
|
70
|
+
if (rootXpubs.length > 1)
|
|
71
|
+
throw new Error("more than one root xpub");
|
|
72
|
+
return rootXpubs[0];
|
|
73
|
+
})();
|
|
74
|
+
const xpubsByFp = parsedXpubs.map(xpub => {
|
|
75
|
+
return [xpub.fingerprint, xpub];
|
|
76
|
+
}).reduce((a, [k, v]) => {
|
|
77
|
+
if (k in a)
|
|
78
|
+
throw new Error("key fingerprint collision");
|
|
79
|
+
a[k] = v;
|
|
80
|
+
return a;
|
|
81
|
+
}, {});
|
|
82
|
+
for (const xpub of parsedXpubs.filter(x => x !== tree)) {
|
|
83
|
+
if (!(xpub.parentFp in xpubsByFp))
|
|
84
|
+
throw new Error("found xpub, but not its parent");
|
|
85
|
+
xpubsByFp[xpub.parentFp].children.set(xpub.childNum, xpub);
|
|
86
|
+
}
|
|
87
|
+
return new Mnemonic(tree);
|
|
88
|
+
});
|
|
89
|
+
}
|
|
90
|
+
toSeed(passphrase) {
|
|
91
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
92
|
+
if (passphrase !== undefined && passphrase !== "")
|
|
93
|
+
throw new Error("bad passphrase type");
|
|
94
|
+
return yield BIP32Engine.Seed.create(this.xpubTree);
|
|
95
|
+
});
|
|
96
|
+
}
|
|
97
|
+
;
|
|
98
|
+
}
|
|
99
|
+
exports.Mnemonic = Mnemonic;
|
|
100
|
+
//# sourceMappingURL=bip39.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"bip39.js","sourceRoot":"","sources":["../../../../../src/crypto/isolation/engines/dummy/bip39.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/crypto/isolation/engines/dummy/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,SAAS,CAAC;AACjC,OAAO,KAAK,KAAK,MAAM,SAAS,CAAC;AACjC,OAAO,EAAE,gBAAgB,EAAE,MAAM,SAAS,CAAC"}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
|
|
5
|
+
}) : (function(o, m, k, k2) {
|
|
6
|
+
if (k2 === undefined) k2 = k;
|
|
7
|
+
o[k2] = m[k];
|
|
8
|
+
}));
|
|
9
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
10
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
11
|
+
}) : function(o, v) {
|
|
12
|
+
o["default"] = v;
|
|
13
|
+
});
|
|
14
|
+
var __importStar = (this && this.__importStar) || function (mod) {
|
|
15
|
+
if (mod && mod.__esModule) return mod;
|
|
16
|
+
var result = {};
|
|
17
|
+
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
18
|
+
__setModuleDefault(result, mod);
|
|
19
|
+
return result;
|
|
20
|
+
};
|
|
21
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
22
|
+
exports.DummyEngineError = exports.BIP39 = exports.BIP32 = void 0;
|
|
23
|
+
exports.BIP32 = __importStar(require("./bip32"));
|
|
24
|
+
exports.BIP39 = __importStar(require("./bip39"));
|
|
25
|
+
var types_1 = require("./types");
|
|
26
|
+
Object.defineProperty(exports, "DummyEngineError", { enumerable: true, get: function () { return types_1.DummyEngineError; } });
|
|
27
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/crypto/isolation/engines/dummy/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;AAAA,iDAAiC;AACjC,iDAAiC;AACjC,iCAA2C;AAAlC,yGAAA,gBAAgB,OAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.test.d.ts","sourceRoot":"","sources":["../../../../../src/crypto/isolation/engines/dummy/index.test.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,105 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
|
|
5
|
+
}) : (function(o, m, k, k2) {
|
|
6
|
+
if (k2 === undefined) k2 = k;
|
|
7
|
+
o[k2] = m[k];
|
|
8
|
+
}));
|
|
9
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
10
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
11
|
+
}) : function(o, v) {
|
|
12
|
+
o["default"] = v;
|
|
13
|
+
});
|
|
14
|
+
var __importStar = (this && this.__importStar) || function (mod) {
|
|
15
|
+
if (mod && mod.__esModule) return mod;
|
|
16
|
+
var result = {};
|
|
17
|
+
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
18
|
+
__setModuleDefault(result, mod);
|
|
19
|
+
return result;
|
|
20
|
+
};
|
|
21
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
22
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
23
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
24
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
25
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
26
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
27
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
28
|
+
});
|
|
29
|
+
};
|
|
30
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
31
|
+
const Core = __importStar(require("../../core"));
|
|
32
|
+
const Dummy = __importStar(require("./"));
|
|
33
|
+
describe("Isolation.Engines.Dummy", () => {
|
|
34
|
+
let mnemonic;
|
|
35
|
+
let seed;
|
|
36
|
+
let masterKey;
|
|
37
|
+
it("can be loaded with a list of xpubs", () => __awaiter(void 0, void 0, void 0, function* () {
|
|
38
|
+
mnemonic = yield Dummy.BIP39.Mnemonic.create([
|
|
39
|
+
"xpub661MyMwAqRbcFLgDU7wpcEVubSF7NkswwmXBUkDiGUW6uopeUMys4AqKXNgpfZKRTLnpKQgffd6a2c3J8JxLkF1AQN17Pm9QYHEqEfo1Rsx",
|
|
40
|
+
"xpub68Zyu13qjcQxDzLNfTYnUXtJuX2qJgnxP6osrcAvJGdo6bs9M2Adt2BunbwiYrZS5qpA1QKoMf3uqS2NHpbyZp4KMJxDrL58NTyvHXBeAv6",
|
|
41
|
+
"xpub6APRH5kELakva27TFbzpfhfsY3Jd4dRGo7NocHb63qWecSgK2dUkjWaYevJsCunicpdAkPg9fvHAdpSFMDCMCDMit8kiTM1w9QoGmfyVwDo",
|
|
42
|
+
"xpub6BiVtCpG9fQPxnPmHXG8PhtzQdWC2Su4qWu6XW9tpWFYhxydCLJGrWBJZ5H6qTAHdPQ7pQhtpjiYZVZARo14qHiay2fvrX996oEP42u8wZy",
|
|
43
|
+
"xpub6APRH5kELakyDsZMmBU9HEoeRUzM9F8STp6ztXLPUJQLiXGrbsfACbngkw5vySPfa9vFs2p3kMsRPxhyDTLhKYEf5HLVfDcDuTTazgzvArk",
|
|
44
|
+
"xpub6CNFa58kEQJu2hwMVoofpDEKVVSg6gfwqBqE2zHAianaUnQkrJzJJ42iLDp7Dmg2aP88qCKoFZ4jidk3tECdQuF4567NGHDfe7iBRwHxgke",
|
|
45
|
+
"xpub68Zyu13qjcQxUZiesSWiHJMqkg8G8Guft6MvDhwP72zSYXr9iKnNmDo7LxuSVwtpamrNwGQHkGDWoK8MAp3S9GW5fVxsjBY6AdvZc1hB7kK",
|
|
46
|
+
"xpub6AA5piovovuKytxa5QtBWAbixSjg7fbmu5gqs6QmvARrUMgewJV51roNH4M7GtvZmjBY1m5oAgAjoHivasewSh4S2H7LAikCyuhJxfHdSsK",
|
|
47
|
+
"xpub6CVKsQYXc9awxgV1tWbG4foDvdcnieK2JkbpPEBKB5WwAPKBZ1mstLbKVB4ov7QzxzjaxNK6EfmNY5Jsk2cG26EVcEkycGW4tchT2dyUhrx",
|
|
48
|
+
"xpub68Zyu13qjcQz2DTzkBfLNCfsCTgT39rsUY9JT7MFvG3oEJvS8gUYwRX4RheUTFGZ6EtW4dFYhCdBX32GHJCodkQLAARjNsw4Drj1oDxvo9p",
|
|
49
|
+
"xpub69s3dQnszuX49hTwhNAQEMJyTcRQNZyhtKAqNgQXApquzXdR3fEjXg75ScXzMMMLkUjQnz2Giwt2L7vesiswkAYwzbHezaUXayU8Z81CW56",
|
|
50
|
+
"xpub6DDUPHpUo4pcy43iJeZjbSVWGav1SMMmuWdMHiGtkK8rhKmfbomtkwW6GKs1GGAKehT6QRocrmda3WWxXawpjmwaUHfFRXuKrXSapdckEYF", // all seed m/84'/0'/0'
|
|
51
|
+
].join(" "));
|
|
52
|
+
}));
|
|
53
|
+
it("produces a seed", () => __awaiter(void 0, void 0, void 0, function* () {
|
|
54
|
+
seed = yield mnemonic.toSeed();
|
|
55
|
+
}));
|
|
56
|
+
it("produces a master key", () => __awaiter(void 0, void 0, void 0, function* () {
|
|
57
|
+
masterKey = yield seed.toMasterKey();
|
|
58
|
+
const pk = yield masterKey.getPublicKey();
|
|
59
|
+
expect(Buffer.from(pk).toString("hex")).toEqual("03e3b30e8c21923752a408242e069941fedbaef7db7161f7e2c5f3fdafe7e25ddc");
|
|
60
|
+
}));
|
|
61
|
+
it.each([
|
|
62
|
+
["m/44'", "034d600165882b6faf32a3f1f2c4755eeb0f0486954718d46fd9621e8ca40ca6b6"],
|
|
63
|
+
["m/44'/0'", "03dde722d51529c6744d45e1a5e644c6e27520bd8bc7278fbeb1f43094f3dce91a"],
|
|
64
|
+
["m/44'/0'/0'", "03c8166eb40ac84088b618ec07c7cebadacee31c5f5b04a1e8c2a2f3e748eb2cdd"],
|
|
65
|
+
["m/44'/0'/0'/0", "02d3f906cd22167506f94331fc879b1757695c9d9b09fbb1cd6bee9c7ee7019751"],
|
|
66
|
+
["m/44'/0'/0'/0/0", "03c6d9cc725bb7e19c026df03bf693ee1171371a8eaf25f04b7a58f6befabcd38c"],
|
|
67
|
+
["m/44'/0'/0'/0/1", "02c651a011009e2c7e7b3ed2068857ca0a47cba35b73e06c32e3c06ef3aa67621d"],
|
|
68
|
+
["m/44'/0'/0'/0/2", "03330236b68aa6fdcaca0ea72e11b360c84ed19a338509aa527b678a7ec9076882"],
|
|
69
|
+
["m/44'/0'/0'/1", "0377d49f78af126571d0e995656ab0b12cf149a6761bfc3e75132813c7d9c1739f"],
|
|
70
|
+
["m/44'/0'/0'/1/0", "035bc524b005abbf8c3f0c22a452d0b9c2ad43c4609b4b78c745b47f66120bb1a0"],
|
|
71
|
+
["m/44'/0'/0'/1/1", "0203ae8dbf9f9b65f3922a4a855a7c5d7e7700b0f38477b9e047385eed1ba6e18c"],
|
|
72
|
+
["m/44'/0'/0'/1/2", "03389aa9b8d59b776a93a26cf7ee3d9e0ad1b8f0440e778f5270785d12936dad3c"],
|
|
73
|
+
["m/44'/60'", "026efeb8a29b3eedec94c5aca20a84ff4b98d57f9967856a21a64c8d127d863098"],
|
|
74
|
+
["m/44'/60'/0'", "03d92dfaf121b2723d0e6dabb2637b2d9b2b3b2d8026ab901f2df3eea3f6d200c9"],
|
|
75
|
+
["m/44'/60'/0'/0", "0217ebaac6b4c12d3c7e0fc21d8d53d89adf007ff7988840926032c89eb966a37c"],
|
|
76
|
+
["m/44'/60'/0'/0/0", "03ad8e7eb4f3a7d1a409fa7bdc7b79d8840fe746d3fa9ee17fee4f84631ec1430b"],
|
|
77
|
+
["m/49'", "02afb083c2e97455310c8591c6235c9ceb92dc32f4e40d146cd5b550e3bebbc74a"],
|
|
78
|
+
["m/49'/0'", "039051bb3f5af2094a2b4ee31964b8d82b379604926b393b698314e098b6984bd0"],
|
|
79
|
+
["m/49'/0'/0'", "0215a09870bbb713f1ba94d364e1e5bfcf9cdb5178d22efbca6ec17dc2c4f706cd"],
|
|
80
|
+
["m/49'/0'/0'/0", "020ddd7e4206daf889a2c11920fcccbb60df383d4c5fcd982cd5c7d400fdd46c8e"],
|
|
81
|
+
["m/49'/0'/0'/0/0", "02f770feae292b5b3f41d8c81220c2568cb73eb8042def35e648dfe048e4b41b11"],
|
|
82
|
+
["m/49'/0'/0'/0/1", "02dc4843f2fbef594a8c41573ca7a91c968ced334c16c5200cc6a07e8dbba3bdb2"],
|
|
83
|
+
["m/49'/0'/0'/0/2", "03eb2d79f0e0896f523a30d92f395e31c31d0196f2f36d8284145007e68d0563fa"],
|
|
84
|
+
["m/49'/0'/0'/1", "02f7ff3aab4f9fd88190ac153bd0bcb26758a6b3b75480ddda8c0f43147fbbee95"],
|
|
85
|
+
["m/49'/0'/0'/1/0", "03a961687895a78da9aef98eed8e1f2a3e91cfb69d2f3cf11cbd0bb1773d951928"],
|
|
86
|
+
["m/49'/0'/0'/1/1", "03f459101133e88e5953ec0a128c3bc17d5e6e7e8dd035b4dbffad364774f1e710"],
|
|
87
|
+
["m/49'/0'/0'/1/2", "036a7e2f1544eb4ddf1e3df4fedd4c8c0c39b988f3ac99e927f4a00fc5fddfc653"],
|
|
88
|
+
["m/84'", "0225ee2bad1901cea8dca61028fa2c39f9bc6fe6fde7f06405c4cf1131e0ec91ae"],
|
|
89
|
+
["m/84'/0'", "031c9a1c04f0c3b62c013e27ce7a6c7720ac669ee738aa4a6c9112f25d731b6c27"],
|
|
90
|
+
["m/84'/0'/0'", "03e36a4f3fee21bfe83447b209d8de6da1ce1ae38f76bc2c00652dc5e0a8c5c0b5"],
|
|
91
|
+
["m/84'/0'/0'/0", "025982bc036c5321d35d808ab872b2337438b1bb07d5544cf0a20e84327e05897f"],
|
|
92
|
+
["m/84'/0'/0'/0/0", "0396070f2813933502e907c011ae7ba928683a9c2f0e888dae7ebd2c41120ee6b5"],
|
|
93
|
+
["m/84'/0'/0'/0/1", "026b6039331b4d7bb2037fe72411a582e3d1993190731582bf04f18cc4249ea83e"],
|
|
94
|
+
["m/84'/0'/0'/0/2", "03e4a361a06cdf253f7be2b00bb171e30f6f73ec06eb437d9842ec593c5ac0e499"],
|
|
95
|
+
["m/84'/0'/0'/1", "03bc5bf5297765cd1675cd93667500529476502a413310afbfdeb04963e130ea3e"],
|
|
96
|
+
["m/84'/0'/0'/1/0", "032ef68318c8f6aaa0adec0199c69901f0db7d3485eb38d9ad235221dc3d61154b"],
|
|
97
|
+
["m/84'/0'/0'/1/1", "02768afac47832d02e24c39ffcaa9bbd54be67460e38c255d97192cec5e4e25975"],
|
|
98
|
+
["m/84'/0'/0'/1/2", "0245ac2db850ba9a1971741267a1849c72b91722e09cf71c9ff3754ff41f2a0419"],
|
|
99
|
+
])("derives the key at %s", (path, expectedPk) => __awaiter(void 0, void 0, void 0, function* () {
|
|
100
|
+
const node = yield Core.BIP32.derivePath(masterKey, path);
|
|
101
|
+
const pk = Buffer.from(yield node.getPublicKey()).toString("hex");
|
|
102
|
+
expect(pk).toEqual(expectedPk);
|
|
103
|
+
}));
|
|
104
|
+
});
|
|
105
|
+
//# sourceMappingURL=index.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.test.js","sourceRoot":"","sources":["../../../../../src/crypto/isolation/engines/dummy/index.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { ChainCode } from "../../core/bip32";
|
|
2
|
+
import { CompressedPoint } from "../../core/secp256k1";
|
|
3
|
+
export declare class DummyEngineError extends Error {
|
|
4
|
+
constructor();
|
|
5
|
+
}
|
|
6
|
+
export interface ParsedXpub {
|
|
7
|
+
version: number;
|
|
8
|
+
depth: number;
|
|
9
|
+
parentFp: number;
|
|
10
|
+
childNum: number;
|
|
11
|
+
chainCode: ChainCode;
|
|
12
|
+
publicKey: CompressedPoint;
|
|
13
|
+
}
|
|
14
|
+
export declare type ParsedXpubTree = ParsedXpub & {
|
|
15
|
+
fingerprint: number;
|
|
16
|
+
children: Map<number, ParsedXpubTree>;
|
|
17
|
+
};
|
|
18
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../../src/crypto/isolation/engines/dummy/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAC7C,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAEvD,qBAAa,gBAAiB,SAAQ,KAAK;;CAI1C;AAED,MAAM,WAAW,UAAU;IACzB,OAAO,EAAE,MAAM,CAAA;IACf,KAAK,EAAE,MAAM,CAAA;IACb,QAAQ,EAAE,MAAM,CAAA;IAChB,QAAQ,EAAE,MAAM,CAAA;IAChB,SAAS,EAAE,SAAS,CAAA;IACpB,SAAS,EAAE,eAAe,CAAA;CAC3B;AAED,oBAAY,cAAc,GAAG,UAAU,GAAG;IACxC,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,GAAG,CAAC,MAAM,EAAE,cAAc,CAAC,CAAA;CACtC,CAAA"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.DummyEngineError = void 0;
|
|
4
|
+
class DummyEngineError extends Error {
|
|
5
|
+
constructor() {
|
|
6
|
+
super("Isolation.Engines.Dummy - Invalid operation: private key not available");
|
|
7
|
+
}
|
|
8
|
+
}
|
|
9
|
+
exports.DummyEngineError = DummyEngineError;
|
|
10
|
+
//# sourceMappingURL=types.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../../src/crypto/isolation/engines/dummy/types.ts"],"names":[],"mappings":";;;AAGA,MAAa,gBAAiB,SAAQ,KAAK;IACzC;QACE,KAAK,CAAC,wEAAwE,CAAC,CAAC;IAClF,CAAC;CACF;AAJD,4CAIC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/crypto/isolation/engines/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,OAAO,MAAM,WAAW,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/crypto/isolation/engines/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,OAAO,MAAM,WAAW,CAAC;AACrC,OAAO,KAAK,KAAK,MAAM,SAAS,CAAC"}
|
|
@@ -19,6 +19,7 @@ var __importStar = (this && this.__importStar) || function (mod) {
|
|
|
19
19
|
return result;
|
|
20
20
|
};
|
|
21
21
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
22
|
-
exports.Default = void 0;
|
|
22
|
+
exports.Dummy = exports.Default = void 0;
|
|
23
23
|
exports.Default = __importStar(require("./default"));
|
|
24
|
+
exports.Dummy = __importStar(require("./dummy"));
|
|
24
25
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/crypto/isolation/engines/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;AAAA,qDAAqC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/crypto/isolation/engines/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;AAAA,qDAAqC;AACrC,iDAAiC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@shapeshiftoss/hdwallet-native",
|
|
3
|
-
"version": "1.19.
|
|
3
|
+
"version": "1.19.1",
|
|
4
4
|
"license": "MIT",
|
|
5
5
|
"publishConfig": {
|
|
6
6
|
"access": "public"
|
|
@@ -16,7 +16,7 @@
|
|
|
16
16
|
"dependencies": {
|
|
17
17
|
"@shapeshiftoss/bitcoinjs-lib": "5.2.0-shapeshift.2",
|
|
18
18
|
"@shapeshiftoss/fiosdk": "1.2.1-shapeshift.6",
|
|
19
|
-
"@shapeshiftoss/hdwallet-core": "1.19.
|
|
19
|
+
"@shapeshiftoss/hdwallet-core": "1.19.1",
|
|
20
20
|
"@shapeshiftoss/proto-tx-builder": "^0.1.3",
|
|
21
21
|
"@zxing/text-encoding": "^0.9.0",
|
|
22
22
|
"bchaddrjs": "^0.4.9",
|
|
@@ -56,5 +56,5 @@
|
|
|
56
56
|
"ts-jest": "^26.5.5",
|
|
57
57
|
"typescript": "^4.3.2"
|
|
58
58
|
},
|
|
59
|
-
"gitHead": "
|
|
59
|
+
"gitHead": "3defcea50818dc7c0422bb4efb4cc1fa7fce7530"
|
|
60
60
|
}
|