@ledgerhq/live-common 21.25.2 → 21.26.3-hotfix.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.
- package/lib/__tests__/families/bitcoin/wallet-btc/xpub.getAddress.d.ts +2 -0
- package/lib/__tests__/families/bitcoin/wallet-btc/xpub.getAddress.d.ts.map +1 -0
- package/lib/__tests__/families/bitcoin/wallet-btc/xpub.getAddress.js +126 -0
- package/lib/__tests__/families/bitcoin/wallet-btc/xpub.getAddress.js.map +1 -0
- package/lib/__tests__/families/bitcoin/wallet-btc/xpub.syncing.integration.test.js +9 -7
- package/lib/__tests__/families/bitcoin/wallet-btc/xpub.syncing.integration.test.js.map +1 -1
- package/lib/account/support.d.ts.map +1 -1
- package/lib/account/support.js +1 -25
- package/lib/account/support.js.map +1 -1
- package/lib/api/Ethereum.d.ts.map +1 -1
- package/lib/api/Ethereum.js +1 -4
- package/lib/api/Ethereum.js.map +1 -1
- package/lib/api/explorerConfig/index.d.ts.map +1 -1
- package/lib/api/explorerConfig/index.js +0 -4
- package/lib/api/explorerConfig/index.js.map +1 -1
- package/lib/errors.d.ts +3 -0
- package/lib/errors.d.ts.map +1 -1
- package/lib/errors.js +3 -2
- package/lib/errors.js.map +1 -1
- package/lib/families/bitcoin/test-dataset.js +1 -1
- package/lib/families/bitcoin/test-dataset.js.map +1 -1
- package/lib/families/bitcoin/wallet-btc/crypto/base.d.ts.map +1 -1
- package/lib/families/bitcoin/wallet-btc/crypto/base.js +19 -20
- package/lib/families/bitcoin/wallet-btc/crypto/base.js.map +1 -1
- package/lib/families/bitcoin/wallet-btc/crypto/bip32.js +2 -2
- package/lib/families/bitcoin/wallet-btc/crypto/bip32.js.map +1 -1
- package/lib/families/bitcoin/wallet-btc/crypto/bitcoin.d.ts.map +1 -1
- package/lib/families/bitcoin/wallet-btc/crypto/bitcoin.js +4 -5
- package/lib/families/bitcoin/wallet-btc/crypto/bitcoin.js.map +1 -1
- package/lib/families/bitcoin/wallet-btc/crypto/bitcoincash.d.ts.map +1 -1
- package/lib/families/bitcoin/wallet-btc/crypto/bitcoincash.js +3 -4
- package/lib/families/bitcoin/wallet-btc/crypto/bitcoincash.js.map +1 -1
- package/lib/families/bitcoin/wallet-btc/crypto/decred.d.ts.map +1 -1
- package/lib/families/bitcoin/wallet-btc/crypto/decred.js +3 -4
- package/lib/families/bitcoin/wallet-btc/crypto/decred.js.map +1 -1
- package/lib/families/bitcoin/wallet-btc/crypto/litecoin.d.ts.map +1 -1
- package/lib/families/bitcoin/wallet-btc/crypto/litecoin.js +3 -4
- package/lib/families/bitcoin/wallet-btc/crypto/litecoin.js.map +1 -1
- package/lib/families/bitcoin/wallet-btc/crypto/zec.d.ts +4 -4
- package/lib/families/bitcoin/wallet-btc/crypto/zec.d.ts.map +1 -1
- package/lib/families/bitcoin/wallet-btc/crypto/zec.js +64 -26
- package/lib/families/bitcoin/wallet-btc/crypto/zec.js.map +1 -1
- package/lib/families/bitcoin/wallet-btc/crypto/zen.d.ts +2 -3
- package/lib/families/bitcoin/wallet-btc/crypto/zen.d.ts.map +1 -1
- package/lib/families/bitcoin/wallet-btc/crypto/zen.js +78 -39
- package/lib/families/bitcoin/wallet-btc/crypto/zen.js.map +1 -1
- package/lib/families/bitcoin/wallet-btc/xpub.js +1 -1
- package/lib/families/bitcoin/wallet-btc/xpub.js.map +1 -1
- package/lib/families/ethereum/modules/send.d.ts.map +1 -1
- package/lib/families/ethereum/modules/send.js +3 -1
- package/lib/families/ethereum/modules/send.js.map +1 -1
- package/lib/families/tezos/bridge/js.d.ts.map +1 -1
- package/lib/families/tezos/bridge/js.js +19 -20
- package/lib/families/tezos/bridge/js.js.map +1 -1
- package/lib/families/tezos/hw-getAddress.d.ts.map +1 -1
- package/lib/families/tezos/hw-getAddress.js +1 -3
- package/lib/families/tezos/hw-getAddress.js.map +1 -1
- package/lib/families/tezos/synchronisation.d.ts.map +1 -1
- package/lib/families/tezos/synchronisation.js +1 -1
- package/lib/families/tezos/synchronisation.js.map +1 -1
- package/package.json +3 -3
- package/src/.DS_Store +0 -0
- package/src/__tests__/.DS_Store +0 -0
- package/src/__tests__/families/bitcoin/wallet-btc/xpub.getAddress.ts +78 -0
- package/src/__tests__/families/bitcoin/wallet-btc/xpub.syncing.integration.test.ts +2 -0
- package/src/account/support.ts +1 -25
- package/src/api/Ethereum.ts +1 -4
- package/src/api/explorerConfig/index.ts +0 -4
- package/src/errors.ts +3 -0
- package/src/families/bitcoin/test-dataset.ts +1 -1
- package/src/families/bitcoin/wallet-btc/crypto/base.ts +41 -20
- package/src/families/bitcoin/wallet-btc/crypto/bip32.ts +2 -2
- package/src/families/bitcoin/wallet-btc/crypto/bitcoin.ts +12 -5
- package/src/families/bitcoin/wallet-btc/crypto/bitcoincash.ts +11 -4
- package/src/families/bitcoin/wallet-btc/crypto/decred.ts +11 -4
- package/src/families/bitcoin/wallet-btc/crypto/litecoin.ts +11 -4
- package/src/families/bitcoin/wallet-btc/crypto/zec.ts +32 -25
- package/src/families/bitcoin/wallet-btc/crypto/zen.ts +39 -33
- package/src/families/bitcoin/wallet-btc/xpub.ts +1 -1
- package/src/families/ethereum/modules/send.ts +3 -0
- package/src/families/tezos/bridge/js.ts +41 -40
- package/src/families/tezos/hw-getAddress.ts +1 -3
- package/src/families/tezos/synchronisation.ts +4 -3
- package/src/currencies/__snapshots__/.DS_Store +0 -0
|
@@ -3,7 +3,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
3
3
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
4
|
};
|
|
5
5
|
exports.__esModule = true;
|
|
6
|
-
var
|
|
6
|
+
var secp256k1_1 = require("secp256k1");
|
|
7
7
|
var create_hmac_1 = __importDefault(require("create-hmac"));
|
|
8
8
|
// the BIP32 class is inspired from https://github.com/bitcoinjs/bip32/blob/master/src/bip32.js
|
|
9
9
|
var BIP32 = /** @class */ (function () {
|
|
@@ -23,7 +23,7 @@ var BIP32 = /** @class */ (function () {
|
|
|
23
23
|
var I = (0, create_hmac_1["default"])("sha512", this.chainCode).update(data).digest();
|
|
24
24
|
var IL = I.slice(0, 32);
|
|
25
25
|
var IR = I.slice(32);
|
|
26
|
-
var Ki =
|
|
26
|
+
var Ki = Buffer.from((0, secp256k1_1.publicKeyTweakAdd)(this.publicKey, IL));
|
|
27
27
|
return new BIP32(Ki, IR, this.network, this.depth + 1, index);
|
|
28
28
|
};
|
|
29
29
|
return BIP32;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bip32.js","sourceRoot":"","sources":["../../../../../src/families/bitcoin/wallet-btc/crypto/bip32.ts"],"names":[],"mappings":";;;;;AAAA,
|
|
1
|
+
{"version":3,"file":"bip32.js","sourceRoot":"","sources":["../../../../../src/families/bitcoin/wallet-btc/crypto/bip32.ts"],"names":[],"mappings":";;;;;AAAA,uCAA8C;AAC9C,4DAAqC;AAErC,+FAA+F;AAC/F;IAME,eACE,SAAc,EACd,SAAc,EACd,OAAY,EACZ,KAAS,EACT,KAAS;QADT,sBAAA,EAAA,SAAS;QACT,sBAAA,EAAA,SAAS;QAET,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;QAC3B,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;QAC3B,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QACnB,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;IACrB,CAAC;IACD,sBAAM,GAAN,UAAO,KAAa;QAClB,IAAM,IAAI,GAAG,MAAM,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC;QACpC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;QAC7B,IAAI,CAAC,aAAa,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;QAC9B,IAAM,CAAC,GAAG,IAAA,wBAAU,EAAC,QAAQ,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,CAAC;QACrE,IAAM,EAAE,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;QAC1B,IAAM,EAAE,GAAG,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;QACvB,IAAM,EAAE,GAAG,MAAM,CAAC,IAAI,CAAC,IAAA,6BAAiB,EAAC,IAAI,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC,CAAC;QAC9D,OAAO,IAAI,KAAK,CAAC,EAAE,EAAE,EAAE,EAAE,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,KAAK,GAAG,CAAC,EAAE,KAAK,CAAC,CAAC;IAChE,CAAC;IACH,YAAC;AAAD,CAAC,AA7BD,IA6BC;AAED,qBAAe,KAAK,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bitcoin.d.ts","sourceRoot":"","sources":["../../../../../src/families/bitcoin/wallet-btc/crypto/bitcoin.ts"],"names":[],"mappings":";AAQA,OAAO,IAAI,MAAM,QAAQ,CAAC;AA6E1B,cAAM,OAAQ,SAAQ,IAAI;IACxB,cAAc,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM;IAiBvC,eAAe,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO;IAkBzC,UAAU,CACR,cAAc,EAAE,MAAM,EACtB,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,MAAM,EACf,KAAK,EAAE,MAAM,GACZ,MAAM;
|
|
1
|
+
{"version":3,"file":"bitcoin.d.ts","sourceRoot":"","sources":["../../../../../src/families/bitcoin/wallet-btc/crypto/bitcoin.ts"],"names":[],"mappings":";AAQA,OAAO,IAAI,MAAM,QAAQ,CAAC;AA6E1B,cAAM,OAAQ,SAAQ,IAAI;IACxB,cAAc,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM;IAiBvC,eAAe,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO;IAkBzC,UAAU,CACR,cAAc,EAAE,MAAM,EACtB,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,MAAM,EACf,KAAK,EAAE,MAAM,GACZ,MAAM;IAuBT,OAAO,CAAC,SAAS;IAyBjB,OAAO,CAAC,SAAS;IAWjB,OAAO,CAAC,YAAY;IAOpB,OAAO,CAAC,iBAAiB;IA4BzB,gBAAgB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO;CAY3C;AAED,eAAe,OAAO,CAAC"}
|
|
@@ -152,14 +152,13 @@ var Bitcoin = /** @class */ (function (_super) {
|
|
|
152
152
|
};
|
|
153
153
|
// get address given an address type
|
|
154
154
|
Bitcoin.prototype.getAddress = function (derivationMode, xpub, account, index) {
|
|
155
|
-
if (base_1["default"].addressCache["".concat(derivationMode, "-").concat(xpub, "-").concat(account, "-").concat(index)]) {
|
|
156
|
-
return base_1["default"].addressCache["".concat(derivationMode, "-").concat(xpub, "-").concat(account, "-").concat(index)];
|
|
155
|
+
if (base_1["default"].addressCache["".concat(this.network.name, "-").concat(derivationMode, "-").concat(xpub, "-").concat(account, "-").concat(index)]) {
|
|
156
|
+
return base_1["default"].addressCache["".concat(this.network.name, "-").concat(derivationMode, "-").concat(xpub, "-").concat(account, "-").concat(index)];
|
|
157
157
|
}
|
|
158
158
|
switch (derivationMode) {
|
|
159
159
|
case types_1.DerivationModes.TAPROOT:
|
|
160
|
-
base_1["default"].addressCache["".concat(derivationMode, "-").concat(xpub, "-").concat(account, "-").concat(index)] =
|
|
161
|
-
|
|
162
|
-
return base_1["default"].addressCache["".concat(derivationMode, "-").concat(xpub, "-").concat(account, "-").concat(index)];
|
|
160
|
+
base_1["default"].addressCache["".concat(this.network.name, "-").concat(derivationMode, "-").concat(xpub, "-").concat(account, "-").concat(index)] = this.getTaprootAddress(xpub, account, index);
|
|
161
|
+
return base_1["default"].addressCache["".concat(this.network.name, "-").concat(derivationMode, "-").concat(xpub, "-").concat(account, "-").concat(index)];
|
|
163
162
|
default:
|
|
164
163
|
return _super.prototype.getAddress.call(this, derivationMode, xpub, account, index);
|
|
165
164
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bitcoin.js","sourceRoot":"","sources":["../../../../../src/families/bitcoin/wallet-btc/crypto/bitcoin.ts"],"names":[],"mappings":";AAAA,wFAAwF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAExF,6CAAiC;AACjC,yCAAwC;AACxC,iDAAqC;AACrC,uCAA8C;AAC9C,2CAAkD;AAClD,kCAA2C;AAC3C,gDAA0B;AAE1B;;;;;;;;;;;GAWG;AACH,oBAAoB;AACpB,SAAS,UAAU,CAAC,OAAe;IAKjC,IAAI,MAAM,CAAC;IACX,IAAI,OAAO,CAAC;IACZ,IAAI;QACF,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;KACjC;IAAC,OAAO,CAAC,EAAE,GAAE;IAEd,IAAI,MAAM,EAAE;QACV,OAAO,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QAC1B,IAAI,OAAO,KAAK,CAAC;YAAE,MAAM,IAAI,SAAS,CAAC,OAAO,GAAG,sBAAsB,CAAC,CAAC;KAC1E;SAAM;QACL,MAAM,GAAG,iBAAO,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QACjC,OAAO,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QAC1B,IAAI,OAAO,KAAK,CAAC;YAAE,MAAM,IAAI,SAAS,CAAC,OAAO,GAAG,sBAAsB,CAAC,CAAC;KAC1E;IAED,IAAM,IAAI,GAAG,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;IAErD,OAAO;QACL,OAAO,SAAA;QACP,MAAM,EAAE,MAAM,CAAC,MAAM;QACrB,IAAI,EAAE,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC;KACxB,CAAC;AACJ,CAAC;AAED,SAAS,QAAQ,CAAC,IAAY,EAAE,OAAe,EAAE,MAAc;IAC7D,IAAM,KAAK,GAAG,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;IACnC,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;IAEvB,OAAO,OAAO,KAAK,CAAC;QAClB,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC;QAC9B,CAAC,CAAC,iBAAO,CAAC,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;AACpC,CAAC;AACD,mBAAmB;AAEnB,+DAA+D;AAC/D,0BAA0B;AAC1B,SAAS,uBAAuB,CAC9B,YAAoB,EACpB,OAAoB;IAEpB,IAAI;QACF,IAAM,YAAY,GAAG,GAAG,CAAC,OAAO,CAAC,eAAe,CAAC,YAAY,CAAC,CAAC;QAC/D,IAAI,YAAY,CAAC,OAAO,KAAK,OAAO,CAAC,UAAU;YAC7C,OAAO,GAAG,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,IAAI,EAAE,YAAY,CAAC,IAAI,EAAE,CAAC,CAAC,MAAgB,CAAC;QAC1E,IAAI,YAAY,CAAC,OAAO,KAAK,OAAO,CAAC,UAAU;YAC7C,OAAO,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,YAAY,CAAC,IAAI,EAAE,CAAC,CAAC,MAAgB,CAAC;KAC1E;IAAC,OAAO,CAAC,EAAE;QACV,sDAAsD;KACvD;IACD,IAAM,YAAY,GAAG,UAAU,CAAC,YAAY,CAAC,CAAC;IAC9C,OAAO,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC;QACxB,8FAA8F;QAC9F,YAAY,CAAC,OAAO,GAAG,CAAC,YAAY,CAAC,OAAO,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;QAC5D,YAAY,CAAC,IAAI;KAClB,CAAC,CAAC;AACL,CAAC;AAED;IAAsB,2BAAI;IAA1B;;
|
|
1
|
+
{"version":3,"file":"bitcoin.js","sourceRoot":"","sources":["../../../../../src/families/bitcoin/wallet-btc/crypto/bitcoin.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bitcoincash.d.ts","sourceRoot":"","sources":["../../../../../src/families/bitcoin/wallet-btc/crypto/bitcoincash.ts"],"names":[],"mappings":"AAQA,OAAO,EAAE,eAAe,EAAE,MAAM,UAAU,CAAC;AAC3C,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAIlC,cAAM,WAAY,YAAW,OAAO;IAElC,OAAO,EAAE,GAAG,CAAC;gBAGD,EAAE,OAAO,EAAE,EAAE;QAAE,OAAO,EAAE,GAAG,CAAA;KAAE;IASzC,2BAA2B,CACzB,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,MAAM,EACf,KAAK,EAAE,MAAM,GACZ,MAAM;IAYT,UAAU,CACR,cAAc,EAAE,MAAM,EACtB,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,MAAM,EACf,KAAK,EAAE,MAAM,GACZ,MAAM;
|
|
1
|
+
{"version":3,"file":"bitcoincash.d.ts","sourceRoot":"","sources":["../../../../../src/families/bitcoin/wallet-btc/crypto/bitcoincash.ts"],"names":[],"mappings":"AAQA,OAAO,EAAE,eAAe,EAAE,MAAM,UAAU,CAAC;AAC3C,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAIlC,cAAM,WAAY,YAAW,OAAO;IAElC,OAAO,EAAE,GAAG,CAAC;gBAGD,EAAE,OAAO,EAAE,EAAE;QAAE,OAAO,EAAE,GAAG,CAAA;KAAE;IASzC,2BAA2B,CACzB,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,MAAM,EACf,KAAK,EAAE,MAAM,GACZ,MAAM;IAYT,UAAU,CACR,cAAc,EAAE,MAAM,EACtB,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,MAAM,EACf,KAAK,EAAE,MAAM,GACZ,MAAM;IAuBT,iBAAiB,CAAC,OAAO,EAAE,MAAM;IAIjC,cAAc,CAAC,OAAO,EAAE,MAAM;IAS9B,eAAe,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO;IAKzC,gBAAgB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO;CAG3C;AAED,eAAe,WAAW,CAAC"}
|
|
@@ -56,12 +56,11 @@ var BitcoinCash = /** @class */ (function () {
|
|
|
56
56
|
};
|
|
57
57
|
// get address given an address type
|
|
58
58
|
BitcoinCash.prototype.getAddress = function (derivationMode, xpub, account, index) {
|
|
59
|
-
if (base_1["default"].addressCache["".concat(derivationMode, "-").concat(xpub, "-").concat(account, "-").concat(index)]) {
|
|
60
|
-
return base_1["default"].addressCache["".concat(derivationMode, "-").concat(xpub, "-").concat(account, "-").concat(index)];
|
|
59
|
+
if (base_1["default"].addressCache["".concat(this.network.name, "-").concat(derivationMode, "-").concat(xpub, "-").concat(account, "-").concat(index)]) {
|
|
60
|
+
return base_1["default"].addressCache["".concat(this.network.name, "-").concat(derivationMode, "-").concat(xpub, "-").concat(account, "-").concat(index)];
|
|
61
61
|
}
|
|
62
62
|
var address = this.getLegacyBitcoinCashAddress(xpub, account, index);
|
|
63
|
-
base_1["default"].addressCache["".concat(derivationMode, "-").concat(xpub, "-").concat(account, "-").concat(index)] =
|
|
64
|
-
address;
|
|
63
|
+
base_1["default"].addressCache["".concat(this.network.name, "-").concat(derivationMode, "-").concat(xpub, "-").concat(account, "-").concat(index)] = address;
|
|
65
64
|
return address;
|
|
66
65
|
};
|
|
67
66
|
// infer address type from its syntax
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bitcoincash.js","sourceRoot":"","sources":["../../../../../src/families/bitcoin/wallet-btc/crypto/bitcoincash.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;AAAA,qHAAqH;AACrH,OAAO,MAAM,CAAC,YAAY,CAAC;AAC3B,oDAAwC;AACxC,wDAAgC;AAChC,6DAA6D;AAC7D,aAAa;AACb,qDAA2D;AAC3D,2CAAkD;AAClD,kCAA2C;AAE3C,gDAA0B;AAE1B,iDAAiD;AACjD;IAIE,8DAA8D;IAC9D,qBAAY,EAA6B;YAA3B,OAAO,aAAA;QACnB,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,CAAC,OAAO,CAAC,aAAa,GAAG,IAAI,CAAC;QAClC,IAAI,CAAC,OAAO,CAAC,UAAU,GAAG,OAAO,CAAC;QAClC,IAAI,CAAC,OAAO,CAAC,0BAA0B,GAAG,KAAK,CAAC;IAClD,CAAC;IAED,4HAA4H;IAC5H,2BAA2B;IAC3B,iDAA2B,GAA3B,UACE,IAAY,EACZ,OAAe,EACf,KAAa;QAEb,IAAM,IAAI,GAAG,IAAI,GAAG,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;QACvC,IAAM,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QACjD,IAAM,OAAO,GAAG,IAAI,GAAG,CAAC,OAAO,CAAC,KAAK,CAAC,SAAS,EAAE,GAAG,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QACvE,IAAM,OAAO,GAAG,OAAO,CAAC,QAAQ,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QAC9C,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE;YACxB,OAAO,sBAAO,CAAC,aAAa,CAAC,sBAAO,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;SACnE;QACD,MAAM,IAAI,KAAK,CAAC,4CAAqC,OAAO,CAAE,CAAC,CAAC;IAClE,CAAC;IAED,oCAAoC;IACpC,gCAAU,GAAV,UACE,cAAsB,EACtB,IAAY,EACZ,OAAe,EACf,KAAa;QAEb,
|
|
1
|
+
{"version":3,"file":"bitcoincash.js","sourceRoot":"","sources":["../../../../../src/families/bitcoin/wallet-btc/crypto/bitcoincash.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"decred.d.ts","sourceRoot":"","sources":["../../../../../src/families/bitcoin/wallet-btc/crypto/decred.ts"],"names":[],"mappings":";AAAA,OAAO,IAAI,MAAM,QAAQ,CAAC;AAU1B,cAAM,MAAO,SAAQ,IAAI;gBAEX,EAAE,OAAO,EAAE,EAAE;QAAE,OAAO,EAAE,GAAG,CAAA;KAAE;IAMzC,MAAM,CAAC,QAAQ,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM;IASvC,MAAM,CAAC,gBAAgB,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM;IAUlD,MAAM,CAAC,QAAQ,CAAC,WAAW,WAAY,MAAM,KAAG,MAAM,CACX;IAC3C,MAAM,CAAC,QAAQ,CAAC,SAAS,MAAqC;IAC9D,cAAc,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM;IAiBvC,eAAe,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO;IAazC,UAAU,CACR,cAAc,EAAE,MAAM,EACtB,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,MAAM,EACf,KAAK,EAAE,MAAM,GACZ,MAAM;
|
|
1
|
+
{"version":3,"file":"decred.d.ts","sourceRoot":"","sources":["../../../../../src/families/bitcoin/wallet-btc/crypto/decred.ts"],"names":[],"mappings":";AAAA,OAAO,IAAI,MAAM,QAAQ,CAAC;AAU1B,cAAM,MAAO,SAAQ,IAAI;gBAEX,EAAE,OAAO,EAAE,EAAE;QAAE,OAAO,EAAE,GAAG,CAAA;KAAE;IAMzC,MAAM,CAAC,QAAQ,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM;IASvC,MAAM,CAAC,gBAAgB,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM;IAUlD,MAAM,CAAC,QAAQ,CAAC,WAAW,WAAY,MAAM,KAAG,MAAM,CACX;IAC3C,MAAM,CAAC,QAAQ,CAAC,SAAS,MAAqC;IAC9D,cAAc,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM;IAiBvC,eAAe,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO;IAazC,UAAU,CACR,cAAc,EAAE,MAAM,EACtB,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,MAAM,EACf,KAAK,EAAE,MAAM,GACZ,MAAM;CA4BV;AAED,eAAe,MAAM,CAAC"}
|
|
@@ -105,8 +105,8 @@ var Decred = /** @class */ (function (_super) {
|
|
|
105
105
|
};
|
|
106
106
|
// get address given an address type
|
|
107
107
|
Decred.prototype.getAddress = function (derivationMode, xpub, account, index) {
|
|
108
|
-
if (base_1["default"].addressCache["".concat(derivationMode, "-").concat(xpub, "-").concat(account, "-").concat(index)]) {
|
|
109
|
-
return base_1["default"].addressCache["".concat(derivationMode, "-").concat(xpub, "-").concat(account, "-").concat(index)];
|
|
108
|
+
if (base_1["default"].addressCache["".concat(this.network.name, "-").concat(derivationMode, "-").concat(xpub, "-").concat(account, "-").concat(index)]) {
|
|
109
|
+
return base_1["default"].addressCache["".concat(this.network.name, "-").concat(derivationMode, "-").concat(xpub, "-").concat(account, "-").concat(index)];
|
|
110
110
|
}
|
|
111
111
|
var buffer;
|
|
112
112
|
try {
|
|
@@ -122,8 +122,7 @@ var Decred = /** @class */ (function (_super) {
|
|
|
122
122
|
var hd = new bip32_1["default"](X, chainCode, this.network, depth, i);
|
|
123
123
|
var publicKey = hd.derive(account).derive(index).publicKey;
|
|
124
124
|
var address = Decred.getAddressFromPk(publicKey);
|
|
125
|
-
base_1["default"].addressCache["".concat(derivationMode, "-").concat(xpub, "-").concat(account, "-").concat(index)] =
|
|
126
|
-
address;
|
|
125
|
+
base_1["default"].addressCache["".concat(this.network.name, "-").concat(derivationMode, "-").concat(xpub, "-").concat(account, "-").concat(index)] = address;
|
|
127
126
|
return address;
|
|
128
127
|
};
|
|
129
128
|
Decred._blake256x2 = function (buffer) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"decred.js","sourceRoot":"","sources":["../../../../../src/families/bitcoin/wallet-btc/crypto/decred.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"decred.js","sourceRoot":"","sources":["../../../../../src/families/bitcoin/wallet-btc/crypto/decred.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"litecoin.d.ts","sourceRoot":"","sources":["../../../../../src/families/bitcoin/wallet-btc/crypto/litecoin.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,eAAe,EAAE,MAAM,UAAU,CAAC;AAC3C,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAClC,OAAO,IAAI,MAAM,QAAQ,CAAC;AAG1B,cAAM,QAAS,SAAQ,IAAK,YAAW,OAAO;IAE5C,OAAO,EAAE,GAAG,CAAC;gBAGD,EAAE,OAAO,EAAE,EAAE;QAAE,OAAO,EAAE,GAAG,CAAA;KAAE;IAOzC,gBAAgB,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM;IAStE,gBAAgB,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM;IAatE,sBAAsB,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM;IAU5E,UAAU,CACR,cAAc,EAAE,eAAe,EAC/B,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,MAAM,EACf,KAAK,EAAE,MAAM,GACZ,MAAM;
|
|
1
|
+
{"version":3,"file":"litecoin.d.ts","sourceRoot":"","sources":["../../../../../src/families/bitcoin/wallet-btc/crypto/litecoin.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,eAAe,EAAE,MAAM,UAAU,CAAC;AAC3C,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAClC,OAAO,IAAI,MAAM,QAAQ,CAAC;AAG1B,cAAM,QAAS,SAAQ,IAAK,YAAW,OAAO;IAE5C,OAAO,EAAE,GAAG,CAAC;gBAGD,EAAE,OAAO,EAAE,EAAE;QAAE,OAAO,EAAE,GAAG,CAAA;KAAE;IAOzC,gBAAgB,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM;IAStE,gBAAgB,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM;IAatE,sBAAsB,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM;IAU5E,UAAU,CACR,cAAc,EAAE,eAAe,EAC/B,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,MAAM,EACf,KAAK,EAAE,MAAM,GACZ,MAAM;IA+BT,iBAAiB,CAAC,OAAO,EAAE,MAAM;IAejC,cAAc,CAAC,OAAO,EAAE,MAAM;IAK9B,eAAe,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO;CAU1C;AAED,eAAe,QAAQ,CAAC"}
|
|
@@ -86,8 +86,8 @@ var Litecoin = /** @class */ (function (_super) {
|
|
|
86
86
|
return String(address);
|
|
87
87
|
};
|
|
88
88
|
Litecoin.prototype.getAddress = function (derivationMode, xpub, account, index) {
|
|
89
|
-
if (base_1["default"].addressCache["".concat(derivationMode, "-").concat(xpub, "-").concat(account, "-").concat(index)]) {
|
|
90
|
-
return base_1["default"].addressCache["".concat(derivationMode, "-").concat(xpub, "-").concat(account, "-").concat(index)];
|
|
89
|
+
if (base_1["default"].addressCache["".concat(this.network.name, "-").concat(derivationMode, "-").concat(xpub, "-").concat(account, "-").concat(index)]) {
|
|
90
|
+
return base_1["default"].addressCache["".concat(this.network.name, "-").concat(derivationMode, "-").concat(xpub, "-").concat(account, "-").concat(index)];
|
|
91
91
|
}
|
|
92
92
|
var address;
|
|
93
93
|
switch (derivationMode) {
|
|
@@ -103,8 +103,7 @@ var Litecoin = /** @class */ (function (_super) {
|
|
|
103
103
|
default:
|
|
104
104
|
throw new Error("Should not be reachable");
|
|
105
105
|
}
|
|
106
|
-
base_1["default"].addressCache["".concat(derivationMode, "-").concat(xpub, "-").concat(account, "-").concat(index)] =
|
|
107
|
-
address;
|
|
106
|
+
base_1["default"].addressCache["".concat(this.network.name, "-").concat(derivationMode, "-").concat(xpub, "-").concat(account, "-").concat(index)] = address;
|
|
108
107
|
return address;
|
|
109
108
|
};
|
|
110
109
|
// infer address type from its syntax
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"litecoin.js","sourceRoot":"","sources":["../../../../../src/families/bitcoin/wallet-btc/crypto/litecoin.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,iDAAqC;AACrC,2CAA+B;AAC/B,6DAA6D;AAC7D,aAAa;AACb,qDAA2D;AAC3D,6CAAiC;AACjC,kCAA2C;AAE3C,gDAA0B;AAE1B,2DAA2D;AAC3D;IAAuB,4BAAI;IAIzB,8DAA8D;IAC9D,kBAAY,EAA6B;YAA3B,OAAO,aAAA;QAArB,YACE,kBAAM,EAAE,OAAO,SAAA,EAAE,CAAC,SAInB;QAHC,KAAI,CAAC,OAAO,CAAC,aAAa,GAAG,KAAK,CAAC;QACnC,KAAI,CAAC,OAAO,CAAC,UAAU,GAAG,OAAO,CAAC;QAClC,KAAI,CAAC,OAAO,CAAC,0BAA0B,GAAG,KAAK,CAAC;;IAClD,CAAC;IAED,mCAAgB,GAAhB,UAAiB,IAAY,EAAE,OAAe,EAAE,KAAa;QACnD,IAAA,OAAO,GAAK,GAAG,CAAC,QAAQ,CAAC,KAAK,CAAC;YACrC,MAAM,EAAE,KAAK,CAAC,UAAU,CAAC,IAAI,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;iBACvE,SAAS;YACZ,OAAO,EAAE,IAAI,CAAC,OAAO;SACtB,CAAC,QAJa,CAIZ;QACH,OAAO,MAAM,CAAC,OAAO,CAAC,CAAC;IACzB,CAAC;IAED,mCAAgB,GAAhB,UAAiB,IAAY,EAAE,OAAe,EAAE,KAAa;QACnD,IAAA,OAAO,GAAK,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC;YACpC,MAAM,EAAE,GAAG,CAAC,QAAQ,CAAC,MAAM,CAAC;gBAC1B,MAAM,EAAE,KAAK;qBACV,UAAU,CAAC,IAAI,EAAE,IAAI,CAAC,OAAO,CAAC;qBAC9B,MAAM,CAAC,OAAO,CAAC;qBACf,MAAM,CAAC,KAAK,CAAC,CAAC,SAAS;gBAC1B,OAAO,EAAE,IAAI,CAAC,OAAO;aACtB,CAAC;SACH,CAAC,QARa,CAQZ;QACH,OAAO,MAAM,CAAC,OAAO,CAAC,CAAC;IACzB,CAAC;IAED,yCAAsB,GAAtB,UAAuB,IAAY,EAAE,OAAe,EAAE,KAAa;QACzD,IAAA,OAAO,GAAK,GAAG,CAAC,QAAQ,CAAC,MAAM,CAAC;YACtC,MAAM,EAAE,KAAK,CAAC,UAAU,CAAC,IAAI,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;iBACvE,SAAS;YACZ,OAAO,EAAE,IAAI,CAAC,OAAO;SACtB,CAAC,QAJa,CAIZ;QAEH,OAAO,MAAM,CAAC,OAAO,CAAC,CAAC;IACzB,CAAC;IAED,6BAAU,GAAV,UACE,cAA+B,EAC/B,IAAY,EACZ,OAAe,EACf,KAAa;QAEb,
|
|
1
|
+
{"version":3,"file":"litecoin.js","sourceRoot":"","sources":["../../../../../src/families/bitcoin/wallet-btc/crypto/litecoin.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,16 +1,16 @@
|
|
|
1
|
+
/// <reference types="node" />
|
|
1
2
|
import { DerivationModes } from "../types";
|
|
2
|
-
import
|
|
3
|
-
declare class ZCash
|
|
3
|
+
import Base from "./base";
|
|
4
|
+
declare class ZCash extends Base {
|
|
4
5
|
network: any;
|
|
5
6
|
constructor({ network }: {
|
|
6
7
|
network: any;
|
|
7
8
|
});
|
|
8
9
|
baddrToTaddr(baddrStr: string): string;
|
|
9
|
-
private static toBitcoinAddr;
|
|
10
10
|
getLegacyAddress(xpub: string, account: number, index: number): string;
|
|
11
11
|
getAddress(derivationMode: string, xpub: string, account: number, index: number): string;
|
|
12
12
|
getDerivationMode(address: string): DerivationModes;
|
|
13
|
-
toOutputScript(address: string):
|
|
13
|
+
toOutputScript(address: string): Buffer;
|
|
14
14
|
validateAddress(address: string): boolean;
|
|
15
15
|
isTaprootAddress(address: string): boolean;
|
|
16
16
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"zec.d.ts","sourceRoot":"","sources":["../../../../../src/families/bitcoin/wallet-btc/crypto/zec.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"zec.d.ts","sourceRoot":"","sources":["../../../../../src/families/bitcoin/wallet-btc/crypto/zec.ts"],"names":[],"mappings":";AAMA,OAAO,EAAE,eAAe,EAAE,MAAM,UAAU,CAAC;AAC3C,OAAO,IAAI,MAAM,QAAQ,CAAC;AAE1B,cAAM,KAAM,SAAQ,IAAI;IAEtB,OAAO,EAAE,GAAG,CAAC;gBAGD,EAAE,OAAO,EAAE,EAAE;QAAE,OAAO,EAAE,GAAG,CAAA;KAAE;IASzC,YAAY,CAAC,QAAQ,EAAE,MAAM;IAS7B,gBAAgB,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM;IAQtE,UAAU,CACR,cAAc,EAAE,MAAM,EACtB,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,MAAM,EACf,KAAK,EAAE,MAAM,GACZ,MAAM;IAkBT,iBAAiB,CAAC,OAAO,EAAE,MAAM;IAIjC,cAAc,CAAC,OAAO,EAAE,MAAM;IAqB9B,eAAe,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO;IAKzC,gBAAgB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO;CAG3C;AAED,eAAe,KAAK,CAAC"}
|
|
@@ -1,27 +1,61 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
+
var __extends = (this && this.__extends) || (function () {
|
|
3
|
+
var extendStatics = function (d, b) {
|
|
4
|
+
extendStatics = Object.setPrototypeOf ||
|
|
5
|
+
({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
|
|
6
|
+
function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
|
|
7
|
+
return extendStatics(d, b);
|
|
8
|
+
};
|
|
9
|
+
return function (d, b) {
|
|
10
|
+
if (typeof b !== "function" && b !== null)
|
|
11
|
+
throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
|
|
12
|
+
extendStatics(d, b);
|
|
13
|
+
function __() { this.constructor = d; }
|
|
14
|
+
d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
|
|
15
|
+
};
|
|
16
|
+
})();
|
|
17
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
18
|
+
if (k2 === undefined) k2 = k;
|
|
19
|
+
Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
|
|
20
|
+
}) : (function(o, m, k, k2) {
|
|
21
|
+
if (k2 === undefined) k2 = k;
|
|
22
|
+
o[k2] = m[k];
|
|
23
|
+
}));
|
|
24
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
25
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
26
|
+
}) : function(o, v) {
|
|
27
|
+
o["default"] = v;
|
|
28
|
+
});
|
|
29
|
+
var __importStar = (this && this.__importStar) || function (mod) {
|
|
30
|
+
if (mod && mod.__esModule) return mod;
|
|
31
|
+
var result = {};
|
|
32
|
+
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
33
|
+
__setModuleDefault(result, mod);
|
|
34
|
+
return result;
|
|
35
|
+
};
|
|
2
36
|
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
37
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
38
|
};
|
|
5
39
|
exports.__esModule = true;
|
|
6
40
|
// eslint-disable-next-line @typescript-eslint/ban-ts-comment
|
|
7
41
|
// @ts-ignore
|
|
8
|
-
var address_1 = require("bitcoinjs-lib/src/address");
|
|
9
|
-
// eslint-disable-next-line @typescript-eslint/ban-ts-comment
|
|
10
|
-
// @ts-ignore
|
|
11
42
|
var zcash_bitcore_lib_1 = __importDefault(require("zcash-bitcore-lib"));
|
|
12
43
|
var bs58check_1 = __importDefault(require("bs58check"));
|
|
13
|
-
var
|
|
44
|
+
var bjs = __importStar(require("bitcoinjs-lib"));
|
|
14
45
|
var errors_1 = require("@ledgerhq/errors");
|
|
15
46
|
var types_1 = require("../types");
|
|
16
47
|
var base_1 = __importDefault(require("./base"));
|
|
17
|
-
var ZCash = /** @class */ (function () {
|
|
48
|
+
var ZCash = /** @class */ (function (_super) {
|
|
49
|
+
__extends(ZCash, _super);
|
|
18
50
|
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
19
51
|
function ZCash(_a) {
|
|
20
52
|
var network = _a.network;
|
|
21
|
-
this
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
53
|
+
var _this = _super.call(this, { network: network }) || this;
|
|
54
|
+
_this.network = network;
|
|
55
|
+
_this.network.dustThreshold = 10000;
|
|
56
|
+
_this.network.dustPolicy = "FIXED";
|
|
57
|
+
_this.network.usesTimestampedTransaction = false;
|
|
58
|
+
return _this;
|
|
25
59
|
}
|
|
26
60
|
// eslint-disable-next-line
|
|
27
61
|
ZCash.prototype.baddrToTaddr = function (baddrStr) {
|
|
@@ -31,26 +65,20 @@ var ZCash = /** @class */ (function () {
|
|
|
31
65
|
taddr.set([0x1c, 0xb8], 0);
|
|
32
66
|
return bs58check_1["default"].encode(Buffer.from(taddr));
|
|
33
67
|
};
|
|
34
|
-
ZCash.toBitcoinAddr = function (taddr) {
|
|
35
|
-
// refer to https://runkitcdn.com/gojomo/baddr2taddr/1.0.2
|
|
36
|
-
var baddr = new Uint8Array(21);
|
|
37
|
-
baddr.set(bs58check_1["default"].decode(taddr).slice(2), 1);
|
|
38
|
-
return bs58check_1["default"].encode(Buffer.from(baddr));
|
|
39
|
-
};
|
|
40
68
|
// eslint-disable-next-line
|
|
41
69
|
ZCash.prototype.getLegacyAddress = function (xpub, account, index) {
|
|
42
|
-
var
|
|
43
|
-
var
|
|
44
|
-
|
|
45
|
-
|
|
70
|
+
var pk = bjs.crypto.hash160(this.getPubkeyAt(xpub, account, index));
|
|
71
|
+
var payload = Buffer.allocUnsafe(22);
|
|
72
|
+
payload.writeUInt16BE(this.network.pubKeyHash, 0);
|
|
73
|
+
pk.copy(payload, 2);
|
|
74
|
+
return bs58check_1["default"].encode(payload);
|
|
46
75
|
};
|
|
47
76
|
ZCash.prototype.getAddress = function (derivationMode, xpub, account, index) {
|
|
48
|
-
if (base_1["default"].addressCache["".concat(derivationMode, "-").concat(xpub, "-").concat(account, "-").concat(index)]) {
|
|
49
|
-
return base_1["default"].addressCache["".concat(derivationMode, "-").concat(xpub, "-").concat(account, "-").concat(index)];
|
|
77
|
+
if (base_1["default"].addressCache["".concat(this.network.name, "-").concat(derivationMode, "-").concat(xpub, "-").concat(account, "-").concat(index)]) {
|
|
78
|
+
return base_1["default"].addressCache["".concat(this.network.name, "-").concat(derivationMode, "-").concat(xpub, "-").concat(account, "-").concat(index)];
|
|
50
79
|
}
|
|
51
80
|
var address = this.getLegacyAddress(xpub, account, index);
|
|
52
|
-
base_1["default"].addressCache["".concat(derivationMode, "-").concat(xpub, "-").concat(account, "-").concat(index)] =
|
|
53
|
-
address;
|
|
81
|
+
base_1["default"].addressCache["".concat(this.network.name, "-").concat(derivationMode, "-").concat(xpub, "-").concat(account, "-").concat(index)] = address;
|
|
54
82
|
return address;
|
|
55
83
|
};
|
|
56
84
|
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
@@ -61,8 +89,18 @@ var ZCash = /** @class */ (function () {
|
|
|
61
89
|
if (!this.validateAddress(address)) {
|
|
62
90
|
throw new errors_1.InvalidAddress();
|
|
63
91
|
}
|
|
64
|
-
|
|
65
|
-
|
|
92
|
+
var version = Number("0x" + bs58check_1["default"].decode(address).slice(0, 2).toString("hex"));
|
|
93
|
+
if (version === this.network.pubKeyHash) {
|
|
94
|
+
//Pay-to-PubkeyHash
|
|
95
|
+
return bjs.payments.p2pkh({ hash: bs58check_1["default"].decode(address).slice(2) })
|
|
96
|
+
.output;
|
|
97
|
+
}
|
|
98
|
+
if (version === this.network.scriptHash) {
|
|
99
|
+
//Pay-to-Script-Hash
|
|
100
|
+
return bjs.payments.p2sh({ hash: bs58check_1["default"].decode(address).slice(2) })
|
|
101
|
+
.output;
|
|
102
|
+
}
|
|
103
|
+
throw new errors_1.InvalidAddress();
|
|
66
104
|
};
|
|
67
105
|
// eslint-disable-next-line class-methods-use-this
|
|
68
106
|
ZCash.prototype.validateAddress = function (address) {
|
|
@@ -73,6 +111,6 @@ var ZCash = /** @class */ (function () {
|
|
|
73
111
|
return false;
|
|
74
112
|
};
|
|
75
113
|
return ZCash;
|
|
76
|
-
}());
|
|
114
|
+
}(base_1["default"]));
|
|
77
115
|
exports["default"] = ZCash;
|
|
78
116
|
//# sourceMappingURL=zec.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"zec.js","sourceRoot":"","sources":["../../../../../src/families/bitcoin/wallet-btc/crypto/zec.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"zec.js","sourceRoot":"","sources":["../../../../../src/families/bitcoin/wallet-btc/crypto/zec.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,13 +1,12 @@
|
|
|
1
1
|
/// <reference types="node" />
|
|
2
2
|
import { DerivationModes } from "../types";
|
|
3
|
-
import
|
|
4
|
-
declare class Zen
|
|
3
|
+
import Base from "./base";
|
|
4
|
+
declare class Zen extends Base {
|
|
5
5
|
network: any;
|
|
6
6
|
constructor({ network }: {
|
|
7
7
|
network: any;
|
|
8
8
|
});
|
|
9
9
|
baddrToTaddr(baddrStr: string): string;
|
|
10
|
-
private static toBitcoinAddr;
|
|
11
10
|
getLegacyAddress(xpub: string, account: number, index: number): string;
|
|
12
11
|
getAddress(derivationMode: string, xpub: string, account: number, index: number): string;
|
|
13
12
|
getDerivationMode(address: string): DerivationModes;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"zen.d.ts","sourceRoot":"","sources":["../../../../../src/families/bitcoin/wallet-btc/crypto/zen.ts"],"names":[],"mappings":";
|
|
1
|
+
{"version":3,"file":"zen.d.ts","sourceRoot":"","sources":["../../../../../src/families/bitcoin/wallet-btc/crypto/zen.ts"],"names":[],"mappings":";AAEA,OAAO,EAAE,eAAe,EAAE,MAAM,UAAU,CAAC;AAC3C,OAAO,IAAI,MAAM,QAAQ,CAAC;AAG1B,cAAM,GAAI,SAAQ,IAAI;IAEpB,OAAO,EAAE,GAAG,CAAC;gBAGD,EAAE,OAAO,EAAE,EAAE;QAAE,OAAO,EAAE,GAAG,CAAA;KAAE;IA0BzC,YAAY,CAAC,QAAQ,EAAE,MAAM;IAU7B,gBAAgB,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM;IAQtE,UAAU,CACR,cAAc,EAAE,MAAM,EACtB,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,MAAM,EACf,KAAK,EAAE,MAAM,GACZ,MAAM;IAkBT,iBAAiB,CAAC,OAAO,EAAE,MAAM;IAIjC,cAAc,CAAC,OAAO,EAAE,MAAM;IA8B9B,eAAe,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO;IAazC,gBAAgB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO;CAG3C;AAED,eAAe,GAAG,CAAC"}
|
|
@@ -1,44 +1,75 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
+
var __extends = (this && this.__extends) || (function () {
|
|
3
|
+
var extendStatics = function (d, b) {
|
|
4
|
+
extendStatics = Object.setPrototypeOf ||
|
|
5
|
+
({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
|
|
6
|
+
function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
|
|
7
|
+
return extendStatics(d, b);
|
|
8
|
+
};
|
|
9
|
+
return function (d, b) {
|
|
10
|
+
if (typeof b !== "function" && b !== null)
|
|
11
|
+
throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
|
|
12
|
+
extendStatics(d, b);
|
|
13
|
+
function __() { this.constructor = d; }
|
|
14
|
+
d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
|
|
15
|
+
};
|
|
16
|
+
})();
|
|
17
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
18
|
+
if (k2 === undefined) k2 = k;
|
|
19
|
+
Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
|
|
20
|
+
}) : (function(o, m, k, k2) {
|
|
21
|
+
if (k2 === undefined) k2 = k;
|
|
22
|
+
o[k2] = m[k];
|
|
23
|
+
}));
|
|
24
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
25
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
26
|
+
}) : function(o, v) {
|
|
27
|
+
o["default"] = v;
|
|
28
|
+
});
|
|
29
|
+
var __importStar = (this && this.__importStar) || function (mod) {
|
|
30
|
+
if (mod && mod.__esModule) return mod;
|
|
31
|
+
var result = {};
|
|
32
|
+
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
33
|
+
__setModuleDefault(result, mod);
|
|
34
|
+
return result;
|
|
35
|
+
};
|
|
2
36
|
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
37
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
38
|
};
|
|
5
39
|
exports.__esModule = true;
|
|
6
|
-
// eslint-disable-next-line @typescript-eslint/ban-ts-comment
|
|
7
|
-
// @ts-ignore
|
|
8
|
-
var address_1 = require("bitcoinjs-lib/src/address");
|
|
9
|
-
// eslint-disable-next-line @typescript-eslint/ban-ts-comment
|
|
10
|
-
// @ts-ignore
|
|
11
|
-
var zcash_bitcore_lib_1 = __importDefault(require("zcash-bitcore-lib"));
|
|
12
40
|
var bs58check_1 = __importDefault(require("bs58check"));
|
|
13
|
-
var coininfo_1 = __importDefault(require("coininfo"));
|
|
14
41
|
var errors_1 = require("@ledgerhq/errors");
|
|
15
42
|
var types_1 = require("../types");
|
|
16
43
|
var base_1 = __importDefault(require("./base"));
|
|
17
|
-
var
|
|
44
|
+
var bjs = __importStar(require("bitcoinjs-lib"));
|
|
45
|
+
var Zen = /** @class */ (function (_super) {
|
|
46
|
+
__extends(Zen, _super);
|
|
18
47
|
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
19
48
|
function Zen(_a) {
|
|
20
49
|
var network = _a.network;
|
|
50
|
+
var _this = _super.call(this, { network: network }) || this;
|
|
21
51
|
// refer to https://github.com/HorizenOfficial/zen/blob/master/src/chainparams.cpp for the blockchain params
|
|
22
|
-
|
|
23
|
-
|
|
52
|
+
_this.network = network;
|
|
53
|
+
_this.network.versions = {
|
|
24
54
|
bip32: {
|
|
25
55
|
public: 0x043587cf,
|
|
26
56
|
private: 0x04358394
|
|
27
57
|
},
|
|
28
58
|
bip44: 121,
|
|
29
59
|
private: 0x80,
|
|
30
|
-
public:
|
|
31
|
-
scripthash:
|
|
60
|
+
public: 0x2089,
|
|
61
|
+
scripthash: 0x2096
|
|
32
62
|
};
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
63
|
+
_this.network.name = "Zencash";
|
|
64
|
+
_this.network.unit = "ZEN";
|
|
65
|
+
_this.network.messagePrefix = "Zencash Signed Message:\n";
|
|
66
|
+
_this.network.wif = 0x80;
|
|
67
|
+
_this.network.pubKeyHash = 0x2089;
|
|
68
|
+
_this.network.scriptHash = 0x2096;
|
|
69
|
+
_this.network.dustThreshold = 10000;
|
|
70
|
+
_this.network.dustPolicy = "FIXED";
|
|
71
|
+
_this.network.usesTimestampedTransaction = false;
|
|
72
|
+
return _this;
|
|
42
73
|
}
|
|
43
74
|
// eslint-disable-next-line
|
|
44
75
|
Zen.prototype.baddrToTaddr = function (baddrStr) {
|
|
@@ -49,28 +80,20 @@ var Zen = /** @class */ (function () {
|
|
|
49
80
|
taddr.set([0x20, 0x89], 0);
|
|
50
81
|
return bs58check_1["default"].encode(Buffer.from(taddr));
|
|
51
82
|
};
|
|
52
|
-
Zen.toBitcoinAddr = function (taddr) {
|
|
53
|
-
// refer to https://runkitcdn.com/gojomo/baddr2taddr/1.0.2
|
|
54
|
-
var baddr = new Uint8Array(21);
|
|
55
|
-
baddr.set(bs58check_1["default"].decode(taddr).slice(2), 1);
|
|
56
|
-
return bs58check_1["default"].encode(Buffer.from(baddr));
|
|
57
|
-
};
|
|
58
83
|
// eslint-disable-next-line
|
|
59
84
|
Zen.prototype.getLegacyAddress = function (xpub, account, index) {
|
|
60
|
-
var
|
|
61
|
-
var
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
return this.baddrToTaddr(bs58check_1["default"].encode(Buffer.from(baddr)));
|
|
85
|
+
var pk = bjs.crypto.hash160(this.getPubkeyAt(xpub, account, index));
|
|
86
|
+
var payload = Buffer.allocUnsafe(22);
|
|
87
|
+
payload.writeUInt16BE(this.network.pubKeyHash, 0);
|
|
88
|
+
pk.copy(payload, 2);
|
|
89
|
+
return bs58check_1["default"].encode(payload);
|
|
66
90
|
};
|
|
67
91
|
Zen.prototype.getAddress = function (derivationMode, xpub, account, index) {
|
|
68
|
-
if (base_1["default"].addressCache["".concat(derivationMode, "-").concat(xpub, "-").concat(account, "-").concat(index)]) {
|
|
69
|
-
return base_1["default"].addressCache["".concat(derivationMode, "-").concat(xpub, "-").concat(account, "-").concat(index)];
|
|
92
|
+
if (base_1["default"].addressCache["".concat(this.network.name, "-").concat(derivationMode, "-").concat(xpub, "-").concat(account, "-").concat(index)]) {
|
|
93
|
+
return base_1["default"].addressCache["".concat(this.network.name, "-").concat(derivationMode, "-").concat(xpub, "-").concat(account, "-").concat(index)];
|
|
70
94
|
}
|
|
71
95
|
var address = this.getLegacyAddress(xpub, account, index);
|
|
72
|
-
base_1["default"].addressCache["".concat(derivationMode, "-").concat(xpub, "-").concat(account, "-").concat(index)] =
|
|
73
|
-
address;
|
|
96
|
+
base_1["default"].addressCache["".concat(this.network.name, "-").concat(derivationMode, "-").concat(xpub, "-").concat(account, "-").concat(index)] = address;
|
|
74
97
|
return address;
|
|
75
98
|
};
|
|
76
99
|
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
@@ -81,7 +104,23 @@ var Zen = /** @class */ (function () {
|
|
|
81
104
|
if (!this.validateAddress(address)) {
|
|
82
105
|
throw new errors_1.InvalidAddress();
|
|
83
106
|
}
|
|
84
|
-
var outputScript
|
|
107
|
+
var outputScript;
|
|
108
|
+
var version = Number("0x" + bs58check_1["default"].decode(address).slice(0, 2).toString("hex"));
|
|
109
|
+
if (version === this.network.pubKeyHash) {
|
|
110
|
+
//Pay-to-PubkeyHash
|
|
111
|
+
outputScript = bjs.payments.p2pkh({
|
|
112
|
+
hash: bs58check_1["default"].decode(address).slice(2)
|
|
113
|
+
}).output;
|
|
114
|
+
}
|
|
115
|
+
else if (version === this.network.scriptHash) {
|
|
116
|
+
//Pay-to-Script-Hash
|
|
117
|
+
outputScript = bjs.payments.p2sh({
|
|
118
|
+
hash: bs58check_1["default"].decode(address).slice(2)
|
|
119
|
+
}).output;
|
|
120
|
+
}
|
|
121
|
+
else {
|
|
122
|
+
throw new errors_1.InvalidAddress();
|
|
123
|
+
}
|
|
85
124
|
// refer to https://github.com/LedgerHQ/lib-ledger-core/blob/fc9d762b83fc2b269d072b662065747a64ab2816/core/src/wallet/bitcoin/scripts/BitcoinLikeScript.cpp#L139 and https://github.com/LedgerHQ/lib-ledger-core/blob/fc9d762b83fc2b269d072b662065747a64ab2816/core/src/wallet/bitcoin/networks.cpp#L39 for bip115 Script and its network parameters
|
|
86
125
|
var bip115Script = Buffer.from("209ec9845acb02fab24e1c0368b3b517c1a4488fba97f0e3459ac053ea0100000003c01f02b4", "hex");
|
|
87
126
|
return Buffer.concat([outputScript, bip115Script]);
|
|
@@ -102,6 +141,6 @@ var Zen = /** @class */ (function () {
|
|
|
102
141
|
return false;
|
|
103
142
|
};
|
|
104
143
|
return Zen;
|
|
105
|
-
}());
|
|
144
|
+
}(base_1["default"]));
|
|
106
145
|
exports["default"] = Zen;
|
|
107
146
|
//# sourceMappingURL=zen.js.map
|