DOM.generatedStrength = $(".generate-container .strength");
DOM.generatedStrengthWarning = $(".generate-container .warning");
DOM.hardenedAddresses = $(".hardened-addresses");
- DOM.useBitpayAddressesContainer = $(".use-bitpay-addresses-container");
- DOM.useBitpayAddresses = $(".use-bitpay-addresses");
+ DOM.bitcoinCashAddressTypeContainer = $(".bch-addr-type-container");
+ DOM.bitcoinCashAddressType = $("[name=bch-addr-type]")
DOM.useBip38 = $(".use-bip38");
DOM.bip38Password = $(".bip38-password");
DOM.addresses = $(".addresses");
DOM.privateKeyToggle.on("click", togglePrivateKeys);
DOM.csvTab.on("click", updateCsv);
DOM.languages.on("click", languageChanged);
- DOM.useBitpayAddresses.on("change", useBitpayAddressesChange);
+ DOM.bitcoinCashAddressType.on("change", bitcoinCashAddressTypeChange);
setQrEvents(DOM.showQrEls);
disableForms();
hidePending();
clearDerivedKeys();
clearAddressesList();
DOM.litecoinLtubContainer.addClass("hidden");
- DOM.useBitpayAddressesContainer.addClass("hidden");
+ DOM.bitcoinCashAddressTypeContainer.addClass("hidden");
var networkIndex = e.target.value;
var network = networks[networkIndex];
network.onSelect();
}, 50);
}
- function useBitpayAddressesChange() {
- setBitcoinCashNetworkValues();
+ function bitcoinCashAddressTypeChange() {
phraseChanged();
}
var keyPair = key.keyPair;
var useUncompressed = useBip38;
if (useUncompressed) {
- keyPair = new bitcoinjs.bitcoin.ECPair(keyPair.d, null, { compressed: false });
+ keyPair = new bitcoinjs.bitcoin.ECPair(keyPair.d, null, { network: network, compressed: false });
}
// get address
var address = keyPair.getAddress().toString();
var hasPrivkey = !key.isNeutered();
var privkey = "NA";
if (hasPrivkey) {
- privkey = keyPair.toWIF(network);
+ privkey = keyPair.toWIF();
// BIP38 encode private key if required
if (useBip38) {
privkey = bitcoinjsBip38.encrypt(keyPair.d.toBuffer(), false, bip38password, function(p) {
privkey = convertRipplePriv(privkey);
address = convertRippleAdrr(address);
}
+ // Bitcoin Cash address format may vary
+ if (networks[DOM.network.val()].name == "BCH - Bitcoin Cash") {
+ var bchAddrType = DOM.bitcoinCashAddressType.filter(":checked").val();
+ if (bchAddrType == "cashaddr") {
+ address = bchaddr.toCashAddress(address);
+ }
+ else if (bchAddrType == "bitpay") {
+ address = bchaddr.toBitpayAddress(address);
+ }
+ }
// Segwit addresses are different
if (isSegwit) {
if (!segwitAvailable) {
function wordArrayToPhrase(words) {
var phrase = words.join(" ");
var language = getLanguageFromPhrase(phrase);
- if (language == "japanese" || language == "korean") {
+ if (language == "japanese") {
phrase = words.join("\u3000");
}
return phrase;
DOM.bip141unavailable.removeClass("hidden");
}
- function useBitpayAddresses() {
- return !(DOM.useBitpayAddresses.prop("checked"));
- }
-
- function setBitcoinCashNetworkValues() {
- if (useBitpayAddresses()) {
- network = bitcoinjs.bitcoin.networks.bitcoin;
- }
- else {
- network = bitcoinjs.bitcoin.networks.bitcoinCashBitbpay;
- }
- }
-
function adjustNetworkForSegwit() {
// If segwit is selected the xpub/xprv prefixes need to be adjusted
// to avoid accidentally importing BIP49 xpub to BIP44 watch only
segwitAvailable: false,
onSelect: function() {
network = bitcoinjs.bitcoin.networks.axe;
- setHdCoin(0);
+ setHdCoin(4242);
},
},
{
name: "BCH - Bitcoin Cash",
segwitAvailable: false,
onSelect: function() {
- DOM.useBitpayAddressesContainer.removeClass("hidden");
- setBitcoinCashNetworkValues();
+ DOM.bitcoinCashAddressTypeContainer.removeClass("hidden");
setHdCoin(145);
},
},
setHdCoin(1);
},
},
+ {
+ name: "BTCP - Bitcoin Private",
+ segwitAvailable: true,
+ onSelect: function() {
+ network = bitcoinjs.bitcoin.networks.bitcoinprivate;
+ setHdCoin(183);
+ },
+ },
+ {
+ name: "BTCZ - Bitcoinz",
+ segwitAvailable: false,
+ onSelect: function() {
+ network = bitcoinjs.bitcoin.networks.bitcoinz;
+ setHdCoin(177);
+ },
+ },
{
name: "BTG - Bitcoin Gold",
segwitAvailable: true,
setHdCoin(7);
},
},
+ {
+ name: "NRG - Energi",
+ segwitAvailable: false,
+ onSelect: function() {
+ network = bitcoinjs.bitcoin.networks.energi;
+ setHdCoin(204);
+ },
+ },
{
name: "NRO - Neurocoin",
segwitAvailable: false,
setHdCoin(136);
},
},
+ {
+ name: "ZCL - Zclassic",
+ segwitAvailable: false,
+ onSelect: function() {
+ network = bitcoinjs.bitcoin.networks.zclassic;
+ setHdCoin(147);
+ },
+ },
{
name: "ZEC - Zcash",
segwitAvailable: false,
setHdCoin(133);
},
},
+ {
+ name: "XUEZ - Xuez",
+ segwitAvailable: false,
+ onSelect: function() {
+ network = bitcoinjs.bitcoin.networks.xuez;
+ setHdCoin(225);
+ },
+ },
+ {
+ name: "ZEN - Zencash",
+ segwitAvailable: false,
+ onSelect: function() {
+ network = bitcoinjs.bitcoin.networks.zencash;
+ setHdCoin(121);
+ },
+ },
]
var clients = [