@shapeshiftoss/hdwallet-native 1.18.4 → 1.20.0

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.
Files changed (200) hide show
  1. package/dist/adapter.d.ts +2 -1
  2. package/dist/adapter.d.ts.map +1 -1
  3. package/dist/adapter.js.map +1 -1
  4. package/dist/binance.d.ts +1 -1
  5. package/dist/binance.d.ts.map +1 -1
  6. package/dist/binance.js +9 -4
  7. package/dist/binance.js.map +1 -1
  8. package/dist/binance.test.js +2 -32
  9. package/dist/binance.test.js.map +1 -1
  10. package/dist/bitcoin.d.ts +2 -2
  11. package/dist/bitcoin.d.ts.map +1 -1
  12. package/dist/bitcoin.js +14 -5
  13. package/dist/bitcoin.js.map +1 -1
  14. package/dist/bitcoin.test.js +6 -4
  15. package/dist/bitcoin.test.js.map +1 -1
  16. package/dist/cosmos.d.ts +1 -1
  17. package/dist/cosmos.d.ts.map +1 -1
  18. package/dist/cosmos.js +10 -5
  19. package/dist/cosmos.js.map +1 -1
  20. package/dist/cosmos.test.js +26 -8
  21. package/dist/cosmos.test.js.map +1 -1
  22. package/dist/crypto/CryptoHelper.d.ts.map +1 -1
  23. package/dist/crypto/CryptoHelper.js.map +1 -1
  24. package/dist/crypto/CryptoHelper.test.js +9 -11
  25. package/dist/crypto/CryptoHelper.test.js.map +1 -1
  26. package/dist/crypto/EncryptedWallet.d.ts +5 -5
  27. package/dist/crypto/EncryptedWallet.d.ts.map +1 -1
  28. package/dist/crypto/EncryptedWallet.js +9 -9
  29. package/dist/crypto/EncryptedWallet.js.map +1 -1
  30. package/dist/crypto/EncryptedWallet.test.js +1 -4
  31. package/dist/crypto/EncryptedWallet.test.js.map +1 -1
  32. package/dist/crypto/classes/cipherString.js.map +1 -1
  33. package/dist/crypto/classes/cipherString.test.js.map +1 -1
  34. package/dist/crypto/classes/encryptedObject.d.ts +1 -1
  35. package/dist/crypto/classes/encryptedObject.d.ts.map +1 -1
  36. package/dist/crypto/classes/encryptedObject.js +1 -1
  37. package/dist/crypto/classes/encryptedObject.js.map +1 -1
  38. package/dist/crypto/classes/encryptionType.d.ts.map +1 -1
  39. package/dist/crypto/classes/encryptionType.js +0 -1
  40. package/dist/crypto/classes/encryptionType.js.map +1 -1
  41. package/dist/crypto/classes/symmetricCryptoKey.test.js +0 -2
  42. package/dist/crypto/classes/symmetricCryptoKey.test.js.map +1 -1
  43. package/dist/crypto/engines/web-crypto.d.ts.map +1 -1
  44. package/dist/crypto/engines/web-crypto.js.map +1 -1
  45. package/dist/crypto/engines/web-crypto.test.js +1 -2
  46. package/dist/crypto/engines/web-crypto.test.js.map +1 -1
  47. package/dist/crypto/isolation/adapters/binance.d.ts +1 -1
  48. package/dist/crypto/isolation/adapters/binance.d.ts.map +1 -1
  49. package/dist/crypto/isolation/adapters/binance.js +22 -3
  50. package/dist/crypto/isolation/adapters/binance.js.map +1 -1
  51. package/dist/crypto/isolation/adapters/bip32.d.ts +4 -4
  52. package/dist/crypto/isolation/adapters/bip32.d.ts.map +1 -1
  53. package/dist/crypto/isolation/adapters/bip32.js +12 -7
  54. package/dist/crypto/isolation/adapters/bip32.js.map +1 -1
  55. package/dist/crypto/isolation/adapters/bitcoin.d.ts +2 -2
  56. package/dist/crypto/isolation/adapters/bitcoin.d.ts.map +1 -1
  57. package/dist/crypto/isolation/adapters/bitcoin.js +35 -5
  58. package/dist/crypto/isolation/adapters/bitcoin.js.map +1 -1
  59. package/dist/crypto/isolation/adapters/cosmos.d.ts +4 -3
  60. package/dist/crypto/isolation/adapters/cosmos.d.ts.map +1 -1
  61. package/dist/crypto/isolation/adapters/cosmos.js.map +1 -1
  62. package/dist/crypto/isolation/adapters/cosmosDirect.d.ts +14 -0
  63. package/dist/crypto/isolation/adapters/cosmosDirect.d.ts.map +1 -0
  64. package/dist/crypto/isolation/adapters/cosmosDirect.js +80 -0
  65. package/dist/crypto/isolation/adapters/cosmosDirect.js.map +1 -0
  66. package/dist/crypto/isolation/adapters/ethereum.d.ts +3 -3
  67. package/dist/crypto/isolation/adapters/ethereum.d.ts.map +1 -1
  68. package/dist/crypto/isolation/adapters/ethereum.js +5 -1
  69. package/dist/crypto/isolation/adapters/ethereum.js.map +1 -1
  70. package/dist/crypto/isolation/adapters/fio.d.ts.map +1 -1
  71. package/dist/crypto/isolation/adapters/fio.js +5 -1
  72. package/dist/crypto/isolation/adapters/fio.js.map +1 -1
  73. package/dist/crypto/isolation/adapters/index.d.ts +1 -0
  74. package/dist/crypto/isolation/adapters/index.d.ts.map +1 -1
  75. package/dist/crypto/isolation/adapters/index.js +3 -1
  76. package/dist/crypto/isolation/adapters/index.js.map +1 -1
  77. package/dist/crypto/isolation/core/bip32/index.d.ts +4 -2
  78. package/dist/crypto/isolation/core/bip32/index.d.ts.map +1 -1
  79. package/dist/crypto/isolation/core/bip32/index.js +2 -2
  80. package/dist/crypto/isolation/core/bip32/index.js.map +1 -1
  81. package/dist/crypto/isolation/core/bip32/interfaces.d.ts +3 -3
  82. package/dist/crypto/isolation/core/bip32/interfaces.d.ts.map +1 -1
  83. package/dist/crypto/isolation/core/bip32/interfaces.js.map +1 -1
  84. package/dist/crypto/isolation/core/bip32/types.d.ts.map +1 -1
  85. package/dist/crypto/isolation/core/bip32/types.js.map +1 -1
  86. package/dist/crypto/isolation/core/bip39/interfaces.d.ts.map +1 -1
  87. package/dist/crypto/isolation/core/digest/algorithms.d.ts +1 -1
  88. package/dist/crypto/isolation/core/digest/algorithms.d.ts.map +1 -1
  89. package/dist/crypto/isolation/core/digest/algorithms.js +10 -7
  90. package/dist/crypto/isolation/core/digest/algorithms.js.map +1 -1
  91. package/dist/crypto/isolation/core/digest/index.test.js +7 -2
  92. package/dist/crypto/isolation/core/digest/index.test.js.map +1 -1
  93. package/dist/crypto/isolation/core/digest/types.d.ts +16 -16
  94. package/dist/crypto/isolation/core/digest/types.d.ts.map +1 -1
  95. package/dist/crypto/isolation/core/digest/types.js +11 -11
  96. package/dist/crypto/isolation/core/digest/types.js.map +1 -1
  97. package/dist/crypto/isolation/core/index.d.ts.map +1 -1
  98. package/dist/crypto/isolation/core/index.js.map +1 -1
  99. package/dist/crypto/isolation/core/secp256k1/interfaces.d.ts +3 -3
  100. package/dist/crypto/isolation/core/secp256k1/interfaces.d.ts.map +1 -1
  101. package/dist/crypto/isolation/core/secp256k1/types.d.ts +62 -62
  102. package/dist/crypto/isolation/core/secp256k1/types.d.ts.map +1 -1
  103. package/dist/crypto/isolation/core/secp256k1/types.js +149 -91
  104. package/dist/crypto/isolation/core/secp256k1/types.js.map +1 -1
  105. package/dist/crypto/isolation/engines/default/bip32.d.ts +23 -33
  106. package/dist/crypto/isolation/engines/default/bip32.d.ts.map +1 -1
  107. package/dist/crypto/isolation/engines/default/bip32.js +61 -56
  108. package/dist/crypto/isolation/engines/default/bip32.js.map +1 -1
  109. package/dist/crypto/isolation/engines/default/bip39.d.ts +4 -4
  110. package/dist/crypto/isolation/engines/default/bip39.d.ts.map +1 -1
  111. package/dist/crypto/isolation/engines/default/bip39.js +6 -7
  112. package/dist/crypto/isolation/engines/default/bip39.js.map +1 -1
  113. package/dist/crypto/isolation/engines/default/index.test.d.ts +2 -0
  114. package/dist/crypto/isolation/engines/default/index.test.d.ts.map +1 -0
  115. package/dist/crypto/isolation/engines/default/index.test.js +98 -0
  116. package/dist/crypto/isolation/engines/default/index.test.js.map +1 -0
  117. package/dist/crypto/isolation/engines/default/revocable.d.ts +2 -2
  118. package/dist/crypto/isolation/engines/default/revocable.d.ts.map +1 -1
  119. package/dist/crypto/isolation/engines/default/revocable.js +26 -15
  120. package/dist/crypto/isolation/engines/default/revocable.js.map +1 -1
  121. package/dist/crypto/isolation/engines/dummy/bip32.d.ts +26 -0
  122. package/dist/crypto/isolation/engines/dummy/bip32.d.ts.map +1 -0
  123. package/dist/crypto/isolation/engines/dummy/bip32.js +136 -0
  124. package/dist/crypto/isolation/engines/dummy/bip32.js.map +1 -0
  125. package/dist/crypto/isolation/engines/dummy/bip39.d.ts +13 -0
  126. package/dist/crypto/isolation/engines/dummy/bip39.d.ts.map +1 -0
  127. package/dist/crypto/isolation/engines/dummy/bip39.js +101 -0
  128. package/dist/crypto/isolation/engines/dummy/bip39.js.map +1 -0
  129. package/dist/crypto/isolation/engines/dummy/index.d.ts +4 -0
  130. package/dist/crypto/isolation/engines/dummy/index.d.ts.map +1 -0
  131. package/dist/crypto/isolation/engines/dummy/index.js +27 -0
  132. package/dist/crypto/isolation/engines/dummy/index.js.map +1 -0
  133. package/dist/crypto/isolation/engines/dummy/index.test.d.ts +2 -0
  134. package/dist/crypto/isolation/engines/dummy/index.test.d.ts.map +1 -0
  135. package/dist/crypto/isolation/engines/dummy/index.test.js +111 -0
  136. package/dist/crypto/isolation/engines/dummy/index.test.js.map +1 -0
  137. package/dist/crypto/isolation/engines/dummy/types.d.ts +18 -0
  138. package/dist/crypto/isolation/engines/dummy/types.d.ts.map +1 -0
  139. package/dist/crypto/isolation/engines/dummy/types.js +10 -0
  140. package/dist/crypto/isolation/engines/dummy/types.js.map +1 -0
  141. package/dist/crypto/isolation/engines/index.d.ts +1 -0
  142. package/dist/crypto/isolation/engines/index.d.ts.map +1 -1
  143. package/dist/crypto/isolation/engines/index.js +2 -1
  144. package/dist/crypto/isolation/engines/index.js.map +1 -1
  145. package/dist/crypto/isolation/types.d.ts +1 -1
  146. package/dist/crypto/isolation/types.d.ts.map +1 -1
  147. package/dist/crypto/isolation/types.js +22 -12
  148. package/dist/crypto/isolation/types.js.map +1 -1
  149. package/dist/ethereum.d.ts +2 -2
  150. package/dist/ethereum.d.ts.map +1 -1
  151. package/dist/ethereum.js +13 -4
  152. package/dist/ethereum.js.map +1 -1
  153. package/dist/ethereum.test.js +5 -6
  154. package/dist/ethereum.test.js.map +1 -1
  155. package/dist/fio.d.ts +2 -2
  156. package/dist/fio.d.ts.map +1 -1
  157. package/dist/fio.js +8 -1
  158. package/dist/fio.js.map +1 -1
  159. package/dist/fio.test.js +2 -2
  160. package/dist/fio.test.js.map +1 -1
  161. package/dist/kava.d.ts +2 -2
  162. package/dist/kava.d.ts.map +1 -1
  163. package/dist/kava.js +7 -1
  164. package/dist/kava.js.map +1 -1
  165. package/dist/kava.test.js.map +1 -1
  166. package/dist/native.d.ts +8 -11
  167. package/dist/native.d.ts.map +1 -1
  168. package/dist/native.js +20 -8
  169. package/dist/native.js.map +1 -1
  170. package/dist/native.test.js +0 -1
  171. package/dist/native.test.js.map +1 -1
  172. package/dist/networks.d.ts.map +1 -1
  173. package/dist/networks.js +13 -2
  174. package/dist/networks.js.map +1 -1
  175. package/dist/osmosis.d.ts +3 -3
  176. package/dist/osmosis.d.ts.map +1 -1
  177. package/dist/osmosis.js +9 -5
  178. package/dist/osmosis.js.map +1 -1
  179. package/dist/osmosis.test.js +26 -8
  180. package/dist/osmosis.test.js.map +1 -1
  181. package/dist/secret.d.ts +1 -1
  182. package/dist/secret.d.ts.map +1 -1
  183. package/dist/secret.js +7 -1
  184. package/dist/secret.js.map +1 -1
  185. package/dist/secret.test.js.map +1 -1
  186. package/dist/terra.d.ts +1 -1
  187. package/dist/terra.d.ts.map +1 -1
  188. package/dist/terra.js +7 -1
  189. package/dist/terra.js.map +1 -1
  190. package/dist/terra.test.js.map +1 -1
  191. package/dist/thorchain.d.ts +1 -1
  192. package/dist/thorchain.d.ts.map +1 -1
  193. package/dist/thorchain.js +7 -2
  194. package/dist/thorchain.js.map +1 -1
  195. package/dist/util.d.ts.map +1 -1
  196. package/dist/util.js +1 -4
  197. package/dist/util.js.map +1 -1
  198. package/dist/util.test.js +1 -1
  199. package/dist/util.test.js.map +1 -1
  200. package/package.json +6 -3
@@ -61,57 +61,68 @@ Proxy handler invariants (per MDN):
61
61
  If target is not extensible, the prototype parameter must be the same value as Object.getPrototypeOf(target).
62
62
  */
63
63
  exports.revocable = _freeze((x, addRevoker) => {
64
- const universalProxyHandler = (x) => new Proxy({}, { get(_, p) {
64
+ const universalProxyHandler = (pseudoTarget) => new Proxy({}, {
65
+ get(_, p) {
65
66
  return (_t, p2, r) => {
66
67
  switch (p) {
67
68
  case "get": {
68
- const out = Reflect.get(x, p2, r);
69
+ const out = Reflect.get(pseudoTarget, p2, r);
69
70
  if (typeof out === "function")
70
71
  return out.bind(x);
71
72
  return out;
72
73
  }
73
74
  case "getOwnPropertyDescriptor": {
74
- const out = Reflect.getOwnPropertyDescriptor(x, p2);
75
+ const out = Reflect.getOwnPropertyDescriptor(pseudoTarget, p2);
75
76
  if (out)
76
77
  out.configurable = true;
77
78
  return out;
78
79
  }
79
- case "isExtensible": return true;
80
- case "preventExtensions": return false;
81
- default: return Reflect[p](x, p2, r);
80
+ case "isExtensible":
81
+ return true;
82
+ case "preventExtensions":
83
+ return false;
84
+ default:
85
+ return Reflect[p](pseudoTarget, p2, r);
82
86
  }
83
87
  };
84
- } });
88
+ },
89
+ });
85
90
  const { proxy, revoke } = _revocable({}, universalProxyHandler(x));
86
91
  addRevoker(revoke);
87
92
  return proxy;
88
93
  });
89
94
  exports.Revocable = _freeze((x) => {
90
95
  var _Revocable_revokers, _Revocable_revoked, _a;
91
- const out = _freeze((_a = class Revocable extends x {
96
+ const out = _freeze((_a =
97
+ // eslint-disable-next-line @typescript-eslint/no-shadow
98
+ class Revocable extends x {
92
99
  constructor() {
93
100
  super(...arguments);
94
101
  _Revocable_revokers.set(this, new _Set());
95
102
  _Revocable_revoked.set(this, false);
96
103
  this.revoke = () => {
97
104
  __classPrivateFieldSet(this, _Revocable_revoked, true, "f");
98
- __classPrivateFieldGet(this, _Revocable_revokers, "f").forEach(x => {
105
+ __classPrivateFieldGet(this, _Revocable_revokers, "f").forEach((revoker) => {
99
106
  try {
100
- x();
107
+ revoker();
108
+ }
109
+ catch (_a) {
110
+ // revoker errors get swallowed.
101
111
  }
102
- catch (_a) { }
103
112
  });
104
113
  __classPrivateFieldGet(this, _Revocable_revokers, "f").clear();
105
114
  };
106
- this.addRevoker = (x) => {
115
+ this.addRevoker = (revoker) => {
107
116
  if (__classPrivateFieldGet(this, _Revocable_revoked, "f")) {
108
117
  try {
109
- x();
118
+ revoker();
119
+ }
120
+ catch (_a) {
121
+ // revoker errors get swallowed.
110
122
  }
111
- catch (_a) { }
112
123
  }
113
124
  else {
114
- __classPrivateFieldGet(this, _Revocable_revokers, "f").add(x);
125
+ __classPrivateFieldGet(this, _Revocable_revokers, "f").add(revoker);
115
126
  }
116
127
  };
117
128
  }
@@ -1 +1 @@
1
- {"version":3,"file":"revocable.js","sourceRoot":"","sources":["../../../../../src/crypto/isolation/engines/default/revocable.ts"],"names":[],"mappings":";;;;;;;;;;;;;;AAEA,MAAM,IAAI,GAAG,GAAG,CAAA;AAChB,MAAM,OAAO,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;AAC1C,MAAM,UAAU,GAAG,KAAK,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;AAE9C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA4CE;AAEW,QAAA,SAAS,GAAG,OAAO,CAAC,CAAmB,CAAI,EAAE,UAAwC,EAAE,EAAE;IACpG,MAAM,qBAAqB,GAAG,CAAC,CAAS,EAAE,EAAE,CAAC,IAAI,KAAK,CAAC,EAAE,EAAE,EAAE,GAAG,CAAC,CAAC,EAAE,CAAC;YACnE,OAAO,CAAC,EAAO,EAAE,EAAO,EAAE,CAAM,EAAE,EAAE;gBAClC,QAAQ,CAAC,EAAE;oBACT,KAAK,KAAK,CAAC,CAAC;wBACV,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,CAAA;wBACjC,IAAI,OAAO,GAAG,KAAK,UAAU;4BAAE,OAAO,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;wBAClD,OAAO,GAAG,CAAA;qBACX;oBACD,KAAK,0BAA0B,CAAC,CAAC;wBAC/B,MAAM,GAAG,GAAG,OAAO,CAAC,wBAAwB,CAAC,CAAC,EAAE,EAAE,CAAC,CAAA;wBACnD,IAAI,GAAG;4BAAE,GAAG,CAAC,YAAY,GAAG,IAAI,CAAA;wBAChC,OAAO,GAAG,CAAA;qBACX;oBACD,KAAK,cAAc,CAAC,CAAC,OAAO,IAAI,CAAA;oBAChC,KAAK,mBAAmB,CAAC,CAAC,OAAO,KAAK,CAAA;oBACtC,OAAO,CAAC,CAAC,OAAQ,OAAe,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,CAAA;iBAC9C;YACH,CAAC,CAAC;QACJ,CAAC,EAAC,CAAC,CAAA;IACH,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,UAAU,CAAC,EAAO,EAAE,qBAAqB,CAAC,CAAC,CAAC,CAAC,CAAA;IACvE,UAAU,CAAC,MAAM,CAAC,CAAA;IAClB,OAAO,KAAK,CAAA;AACd,CAAC,CAAC,CAAA;AAOW,QAAA,SAAS,GAAG,OAAO,CAAC,CAA6B,CAAI,EAAE,EAAE;;IACpE,MAAM,GAAG,GAAG,OAAO,OAAC,MAAM,SAAU,SAAQ,CAAC;YAAzB;;gBAClB,8BAAsC,IAAI,IAAI,EAAE,EAAA;gBAChD,6BAAW,KAAK,EAAA;gBAEP,WAAM,GAAG,GAAG,EAAE;oBACrB,uBAAA,IAAI,sBAAY,IAAI,MAAA,CAAC;oBACrB,uBAAA,IAAI,2BAAU,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE;wBACzB,IAAI;4BACF,CAAC,EAAE,CAAA;yBACJ;wBAAC,WAAM,GAAG;oBACb,CAAC,CAAC,CAAC;oBACH,uBAAA,IAAI,2BAAU,CAAC,KAAK,EAAE,CAAC;gBACzB,CAAC,CAAC;gBAEO,eAAU,GAAG,CAAC,CAAa,EAAE,EAAE;oBACtC,IAAI,uBAAA,IAAI,0BAAS,EAAE;wBACjB,IAAI;4BACF,CAAC,EAAE,CAAA;yBACJ;wBAAC,WAAM,GAAG;qBACZ;yBAAM;wBACL,uBAAA,IAAI,2BAAU,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;qBACvB;gBACH,CAAC,CAAC;YACJ,CAAC;SAAA;;;YAAC,CAAC;IACH,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;IACvB,OAAO,GAAG,CAAC;AACb,CAAC,CAAC,CAAA"}
1
+ {"version":3,"file":"revocable.js","sourceRoot":"","sources":["../../../../../src/crypto/isolation/engines/default/revocable.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 Node implements BIP32.Node, SecP256K1.ECDSARecoverableKey, SecP256K1.ECDHKey {
6
+ readonly xpubTree: ParsedXpubTree;
7
+ protected constructor(xpubTree: ParsedXpubTree);
8
+ static create(xpubTree: ParsedXpubTree): Promise<BIP32.Node>;
9
+ getPublicKey(): Promise<SecP256K1.CompressedPoint>;
10
+ getChainCode(): Promise<BIP32.ChainCode>;
11
+ ecdsaSign(digestAlgorithm: null, msg: ByteArray<32>, counter?: Uint32): Promise<SecP256K1.Signature>;
12
+ ecdsaSign(digestAlgorithm: Digest.AlgorithmName<32>, msg: Uint8Array, counter?: Uint32): Promise<SecP256K1.Signature>;
13
+ ecdsaSignRecoverable(digestAlgorithm: null, msg: ByteArray<32>, counter?: Uint32): Promise<SecP256K1.RecoverableSignature>;
14
+ ecdsaSignRecoverable(digestAlgorithm: Digest.AlgorithmName<32>, msg: Uint8Array, counter?: Uint32): Promise<SecP256K1.RecoverableSignature>;
15
+ derive(index: Uint32): Promise<this>;
16
+ ecdh(publicKey: SecP256K1.CurvePoint, digestAlgorithm?: Digest.AlgorithmName<32>): Promise<ByteArray<32>>;
17
+ ecdhRaw(publicKey: SecP256K1.CurvePoint): Promise<SecP256K1.UncompressedPoint>;
18
+ }
19
+ export declare class Seed implements BIP32.Seed {
20
+ readonly xpubTree: ParsedXpubTree;
21
+ protected constructor(xpubTree: ParsedXpubTree);
22
+ static create(xpubTree: ParsedXpubTree): Promise<BIP32.Seed>;
23
+ toMasterKey(): Promise<BIP32.Node>;
24
+ toMasterKey(hmacKey: string | Uint8Array): never;
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,EAA6B,MAAM,EAAE,MAAM,aAAa,CAAC;AAC3E,OAAO,EAAoB,cAAc,EAAE,MAAM,SAAS,CAAC;AAE3D,cAAc,kBAAkB,CAAC;AAEjC,qBAAa,IAAK,YAAW,KAAK,CAAC,IAAI,EAAE,SAAS,CAAC,mBAAmB,EAAE,SAAS,CAAC,OAAO;IACvF,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,CACb,eAAe,EAAE,MAAM,CAAC,aAAa,CAAC,EAAE,CAAC,EACzC,GAAG,EAAE,UAAU,EACf,OAAO,CAAC,EAAE,MAAM,GACf,OAAO,CAAC,SAAS,CAAC,SAAS,CAAC;IAKzB,oBAAoB,CACxB,eAAe,EAAE,IAAI,EACrB,GAAG,EAAE,SAAS,CAAC,EAAE,CAAC,EAClB,OAAO,CAAC,EAAE,MAAM,GACf,OAAO,CAAC,SAAS,CAAC,oBAAoB,CAAC;IACpC,oBAAoB,CACxB,eAAe,EAAE,MAAM,CAAC,aAAa,CAAC,EAAE,CAAC,EACzC,GAAG,EAAE,UAAU,EACf,OAAO,CAAC,EAAE,MAAM,GACf,OAAO,CAAC,SAAS,CAAC,oBAAoB,CAAC;IAKpC,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;IAKzG,OAAO,CAAC,SAAS,EAAE,SAAS,CAAC,UAAU,GAAG,OAAO,CAAC,SAAS,CAAC,iBAAiB,CAAC;CAIrF;AAED,qBAAa,IAAK,YAAW,KAAK,CAAC,IAAI;IACrC,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;CAMjD"}
@@ -0,0 +1,136 @@
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.Seed = exports.Node = 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 Node {
43
+ constructor(xpubTree) {
44
+ this.xpubTree = xpubTree;
45
+ }
46
+ static create(xpubTree) {
47
+ return __awaiter(this, void 0, void 0, function* () {
48
+ return new Node(xpubTree);
49
+ });
50
+ }
51
+ getPublicKey() {
52
+ return __awaiter(this, void 0, void 0, function* () {
53
+ return this.xpubTree.publicKey;
54
+ });
55
+ }
56
+ getChainCode() {
57
+ return __awaiter(this, void 0, void 0, function* () {
58
+ return this.xpubTree.chainCode;
59
+ });
60
+ }
61
+ ecdsaSign() {
62
+ return __awaiter(this, void 0, void 0, function* () {
63
+ throw new types_2.DummyEngineError();
64
+ });
65
+ }
66
+ ecdsaSignRecoverable() {
67
+ return __awaiter(this, void 0, void 0, function* () {
68
+ throw new types_2.DummyEngineError();
69
+ });
70
+ }
71
+ derive(index) {
72
+ return __awaiter(this, void 0, void 0, function* () {
73
+ types_1.Uint32.assert(index);
74
+ const child = (() => {
75
+ const existingChild = this.xpubTree.children.get(index);
76
+ if (existingChild)
77
+ return existingChild;
78
+ if (index >= 0x80000000)
79
+ throw new types_2.DummyEngineError();
80
+ const serP = Buffer.alloc(37);
81
+ serP.set(this.xpubTree.publicKey, 0);
82
+ serP.writeUInt32BE(index, 33);
83
+ const I = bip32crypto.hmacSHA512(types_1.safeBufferFrom(this.xpubTree.chainCode), serP);
84
+ const IL = I.slice(0, 32);
85
+ const IR = I.slice(32, 64);
86
+ const Ki = tinyecc.pointAddScalar(types_1.safeBufferFrom(this.xpubTree.publicKey), IL);
87
+ if (Ki === null)
88
+ throw new Error("Ki is null; this should be cryptographically impossible");
89
+ const newChild = {
90
+ version: this.xpubTree.version,
91
+ depth: this.xpubTree.depth + 1,
92
+ parentFp: this.xpubTree.fingerprint,
93
+ childNum: index,
94
+ chainCode: types_1.checkType(core_1.BIP32.ChainCode, IR),
95
+ publicKey: types_1.checkType(core_1.SecP256K1.CompressedPoint, Ki),
96
+ fingerprint: new DataView(hdwallet_core_1.toArrayBuffer(core_1.Digest.Algorithms.hash160(Ki))).getUint32(0),
97
+ children: new Map(),
98
+ };
99
+ this.xpubTree.children.set(index, newChild);
100
+ return newChild;
101
+ })();
102
+ const out = yield Node.create(child);
103
+ return out;
104
+ });
105
+ }
106
+ ecdh() {
107
+ return __awaiter(this, void 0, void 0, function* () {
108
+ throw new types_2.DummyEngineError();
109
+ });
110
+ }
111
+ ecdhRaw() {
112
+ return __awaiter(this, void 0, void 0, function* () {
113
+ throw new types_2.DummyEngineError();
114
+ });
115
+ }
116
+ }
117
+ exports.Node = Node;
118
+ class Seed {
119
+ constructor(xpubTree) {
120
+ this.xpubTree = xpubTree;
121
+ }
122
+ static create(xpubTree) {
123
+ return __awaiter(this, void 0, void 0, function* () {
124
+ return new Seed(xpubTree);
125
+ });
126
+ }
127
+ toMasterKey(hmacKey) {
128
+ return __awaiter(this, void 0, void 0, function* () {
129
+ if (hmacKey !== undefined)
130
+ throw new Error("bad hmacKey type");
131
+ return yield Node.create(this.xpubTree);
132
+ });
133
+ }
134
+ }
135
+ exports.Seed = Seed;
136
+ //# 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;AAK1C,OAAO,EAAE,cAAc,EAAE,MAAM,SAAS,CAAC;AAEzC,cAAc,kBAAkB,CAAC;AAEjC,qBAAa,QAAS,YAAW,KAAK,CAAC,QAAQ;IAC7C,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;IA2C9D,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;CAMlC"}
@@ -0,0 +1,101 @@
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
75
+ .map((xpub) => {
76
+ return [xpub.fingerprint, xpub];
77
+ })
78
+ .reduce((a, [k, v]) => {
79
+ if (k in a)
80
+ throw new Error("key fingerprint collision");
81
+ a[k] = v;
82
+ return a;
83
+ }, {});
84
+ for (const xpub of parsedXpubs.filter((x) => x !== tree)) {
85
+ if (!(xpub.parentFp in xpubsByFp))
86
+ throw new Error("found xpub, but not its parent");
87
+ xpubsByFp[xpub.parentFp].children.set(xpub.childNum, xpub);
88
+ }
89
+ return new Mnemonic(tree);
90
+ });
91
+ }
92
+ toSeed(passphrase) {
93
+ return __awaiter(this, void 0, void 0, function* () {
94
+ if (passphrase !== undefined && passphrase !== "")
95
+ throw new Error("bad passphrase type");
96
+ return yield BIP32Engine.Seed.create(this.xpubTree);
97
+ });
98
+ }
99
+ }
100
+ exports.Mnemonic = Mnemonic;
101
+ //# 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,4 @@
1
+ export * as BIP32 from "./bip32";
2
+ export * as BIP39 from "./bip39";
3
+ export { DummyEngineError } from "./types";
4
+ //# sourceMappingURL=index.d.ts.map
@@ -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,2 @@
1
+ export {};
2
+ //# sourceMappingURL=index.test.d.ts.map
@@ -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,111 @@
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
+ yield expect((() => __awaiter(void 0, void 0, void 0, function* () {
39
+ mnemonic = yield Dummy.BIP39.Mnemonic.create([
40
+ "xpub661MyMwAqRbcFLgDU7wpcEVubSF7NkswwmXBUkDiGUW6uopeUMys4AqKXNgpfZKRTLnpKQgffd6a2c3J8JxLkF1AQN17Pm9QYHEqEfo1Rsx",
41
+ "xpub68Zyu13qjcQxDzLNfTYnUXtJuX2qJgnxP6osrcAvJGdo6bs9M2Adt2BunbwiYrZS5qpA1QKoMf3uqS2NHpbyZp4KMJxDrL58NTyvHXBeAv6",
42
+ "xpub6APRH5kELakva27TFbzpfhfsY3Jd4dRGo7NocHb63qWecSgK2dUkjWaYevJsCunicpdAkPg9fvHAdpSFMDCMCDMit8kiTM1w9QoGmfyVwDo",
43
+ "xpub6BiVtCpG9fQPxnPmHXG8PhtzQdWC2Su4qWu6XW9tpWFYhxydCLJGrWBJZ5H6qTAHdPQ7pQhtpjiYZVZARo14qHiay2fvrX996oEP42u8wZy",
44
+ "xpub6APRH5kELakyDsZMmBU9HEoeRUzM9F8STp6ztXLPUJQLiXGrbsfACbngkw5vySPfa9vFs2p3kMsRPxhyDTLhKYEf5HLVfDcDuTTazgzvArk",
45
+ "xpub6CNFa58kEQJu2hwMVoofpDEKVVSg6gfwqBqE2zHAianaUnQkrJzJJ42iLDp7Dmg2aP88qCKoFZ4jidk3tECdQuF4567NGHDfe7iBRwHxgke",
46
+ "xpub68Zyu13qjcQxUZiesSWiHJMqkg8G8Guft6MvDhwP72zSYXr9iKnNmDo7LxuSVwtpamrNwGQHkGDWoK8MAp3S9GW5fVxsjBY6AdvZc1hB7kK",
47
+ "xpub6AA5piovovuKytxa5QtBWAbixSjg7fbmu5gqs6QmvARrUMgewJV51roNH4M7GtvZmjBY1m5oAgAjoHivasewSh4S2H7LAikCyuhJxfHdSsK",
48
+ "xpub6CVKsQYXc9awxgV1tWbG4foDvdcnieK2JkbpPEBKB5WwAPKBZ1mstLbKVB4ov7QzxzjaxNK6EfmNY5Jsk2cG26EVcEkycGW4tchT2dyUhrx",
49
+ "xpub68Zyu13qjcQz2DTzkBfLNCfsCTgT39rsUY9JT7MFvG3oEJvS8gUYwRX4RheUTFGZ6EtW4dFYhCdBX32GHJCodkQLAARjNsw4Drj1oDxvo9p",
50
+ "xpub69s3dQnszuX49hTwhNAQEMJyTcRQNZyhtKAqNgQXApquzXdR3fEjXg75ScXzMMMLkUjQnz2Giwt2L7vesiswkAYwzbHezaUXayU8Z81CW56",
51
+ "xpub6DDUPHpUo4pcy43iJeZjbSVWGav1SMMmuWdMHiGtkK8rhKmfbomtkwW6GKs1GGAKehT6QRocrmda3WWxXawpjmwaUHfFRXuKrXSapdckEYF", // all seed m/84'/0'/0'
52
+ ].join(" "));
53
+ }))()).resolves.not.toThrow();
54
+ expect(mnemonic).toBeDefined();
55
+ }));
56
+ it("produces a seed", () => __awaiter(void 0, void 0, void 0, function* () {
57
+ yield expect((() => __awaiter(void 0, void 0, void 0, function* () {
58
+ seed = yield mnemonic.toSeed();
59
+ }))()).resolves.not.toThrow();
60
+ expect(seed).toBeDefined();
61
+ }));
62
+ it("produces a master key", () => __awaiter(void 0, void 0, void 0, function* () {
63
+ masterKey = yield seed.toMasterKey();
64
+ const pk = yield masterKey.getPublicKey();
65
+ expect(Buffer.from(pk).toString("hex")).toEqual("03e3b30e8c21923752a408242e069941fedbaef7db7161f7e2c5f3fdafe7e25ddc");
66
+ }));
67
+ it.each([
68
+ ["m/44'", "034d600165882b6faf32a3f1f2c4755eeb0f0486954718d46fd9621e8ca40ca6b6"],
69
+ ["m/44'/0'", "03dde722d51529c6744d45e1a5e644c6e27520bd8bc7278fbeb1f43094f3dce91a"],
70
+ ["m/44'/0'/0'", "03c8166eb40ac84088b618ec07c7cebadacee31c5f5b04a1e8c2a2f3e748eb2cdd"],
71
+ ["m/44'/0'/0'/0", "02d3f906cd22167506f94331fc879b1757695c9d9b09fbb1cd6bee9c7ee7019751"],
72
+ ["m/44'/0'/0'/0/0", "03c6d9cc725bb7e19c026df03bf693ee1171371a8eaf25f04b7a58f6befabcd38c"],
73
+ ["m/44'/0'/0'/0/1", "02c651a011009e2c7e7b3ed2068857ca0a47cba35b73e06c32e3c06ef3aa67621d"],
74
+ ["m/44'/0'/0'/0/2", "03330236b68aa6fdcaca0ea72e11b360c84ed19a338509aa527b678a7ec9076882"],
75
+ ["m/44'/0'/0'/1", "0377d49f78af126571d0e995656ab0b12cf149a6761bfc3e75132813c7d9c1739f"],
76
+ ["m/44'/0'/0'/1/0", "035bc524b005abbf8c3f0c22a452d0b9c2ad43c4609b4b78c745b47f66120bb1a0"],
77
+ ["m/44'/0'/0'/1/1", "0203ae8dbf9f9b65f3922a4a855a7c5d7e7700b0f38477b9e047385eed1ba6e18c"],
78
+ ["m/44'/0'/0'/1/2", "03389aa9b8d59b776a93a26cf7ee3d9e0ad1b8f0440e778f5270785d12936dad3c"],
79
+ ["m/44'/60'", "026efeb8a29b3eedec94c5aca20a84ff4b98d57f9967856a21a64c8d127d863098"],
80
+ ["m/44'/60'/0'", "03d92dfaf121b2723d0e6dabb2637b2d9b2b3b2d8026ab901f2df3eea3f6d200c9"],
81
+ ["m/44'/60'/0'/0", "0217ebaac6b4c12d3c7e0fc21d8d53d89adf007ff7988840926032c89eb966a37c"],
82
+ ["m/44'/60'/0'/0/0", "03ad8e7eb4f3a7d1a409fa7bdc7b79d8840fe746d3fa9ee17fee4f84631ec1430b"],
83
+ ["m/49'", "02afb083c2e97455310c8591c6235c9ceb92dc32f4e40d146cd5b550e3bebbc74a"],
84
+ ["m/49'/0'", "039051bb3f5af2094a2b4ee31964b8d82b379604926b393b698314e098b6984bd0"],
85
+ ["m/49'/0'/0'", "0215a09870bbb713f1ba94d364e1e5bfcf9cdb5178d22efbca6ec17dc2c4f706cd"],
86
+ ["m/49'/0'/0'/0", "020ddd7e4206daf889a2c11920fcccbb60df383d4c5fcd982cd5c7d400fdd46c8e"],
87
+ ["m/49'/0'/0'/0/0", "02f770feae292b5b3f41d8c81220c2568cb73eb8042def35e648dfe048e4b41b11"],
88
+ ["m/49'/0'/0'/0/1", "02dc4843f2fbef594a8c41573ca7a91c968ced334c16c5200cc6a07e8dbba3bdb2"],
89
+ ["m/49'/0'/0'/0/2", "03eb2d79f0e0896f523a30d92f395e31c31d0196f2f36d8284145007e68d0563fa"],
90
+ ["m/49'/0'/0'/1", "02f7ff3aab4f9fd88190ac153bd0bcb26758a6b3b75480ddda8c0f43147fbbee95"],
91
+ ["m/49'/0'/0'/1/0", "03a961687895a78da9aef98eed8e1f2a3e91cfb69d2f3cf11cbd0bb1773d951928"],
92
+ ["m/49'/0'/0'/1/1", "03f459101133e88e5953ec0a128c3bc17d5e6e7e8dd035b4dbffad364774f1e710"],
93
+ ["m/49'/0'/0'/1/2", "036a7e2f1544eb4ddf1e3df4fedd4c8c0c39b988f3ac99e927f4a00fc5fddfc653"],
94
+ ["m/84'", "0225ee2bad1901cea8dca61028fa2c39f9bc6fe6fde7f06405c4cf1131e0ec91ae"],
95
+ ["m/84'/0'", "031c9a1c04f0c3b62c013e27ce7a6c7720ac669ee738aa4a6c9112f25d731b6c27"],
96
+ ["m/84'/0'/0'", "03e36a4f3fee21bfe83447b209d8de6da1ce1ae38f76bc2c00652dc5e0a8c5c0b5"],
97
+ ["m/84'/0'/0'/0", "025982bc036c5321d35d808ab872b2337438b1bb07d5544cf0a20e84327e05897f"],
98
+ ["m/84'/0'/0'/0/0", "0396070f2813933502e907c011ae7ba928683a9c2f0e888dae7ebd2c41120ee6b5"],
99
+ ["m/84'/0'/0'/0/1", "026b6039331b4d7bb2037fe72411a582e3d1993190731582bf04f18cc4249ea83e"],
100
+ ["m/84'/0'/0'/0/2", "03e4a361a06cdf253f7be2b00bb171e30f6f73ec06eb437d9842ec593c5ac0e499"],
101
+ ["m/84'/0'/0'/1", "03bc5bf5297765cd1675cd93667500529476502a413310afbfdeb04963e130ea3e"],
102
+ ["m/84'/0'/0'/1/0", "032ef68318c8f6aaa0adec0199c69901f0db7d3485eb38d9ad235221dc3d61154b"],
103
+ ["m/84'/0'/0'/1/1", "02768afac47832d02e24c39ffcaa9bbd54be67460e38c255d97192cec5e4e25975"],
104
+ ["m/84'/0'/0'/1/2", "0245ac2db850ba9a1971741267a1849c72b91722e09cf71c9ff3754ff41f2a0419"],
105
+ ])("derives the key at %s", (path, expectedPk) => __awaiter(void 0, void 0, void 0, function* () {
106
+ const node = yield Core.BIP32.derivePath(masterKey, path);
107
+ const pk = Buffer.from(yield node.getPublicKey()).toString("hex");
108
+ expect(pk).toEqual(expectedPk);
109
+ }));
110
+ });
111
+ //# 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,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,SAAS,CAAC;IACrB,SAAS,EAAE,eAAe,CAAC;CAC5B;AAED,oBAAY,cAAc,GAAG,UAAU,GAAG;IACxC,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,GAAG,CAAC,MAAM,EAAE,cAAc,CAAC,CAAC;CACvC,CAAC"}
@@ -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,2 +1,3 @@
1
1
  export * as Default from "./default";
2
+ export * as Dummy from "./dummy";
2
3
  //# sourceMappingURL=index.d.ts.map
@@ -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"}