X-Git-Url: https://git.immae.eu/?a=blobdiff_plain;f=src%2Fjs%2Findex.js;h=41b59c2bb03a1910d212958f588b7f8bb322ae53;hb=3c222e57df566e6d79a0379a2758d34cffdc589e;hp=b0700063c3383157604e91909420308439b967f0;hpb=bf96267f89d18f278e78cf02c97ab1e7513fb871;p=perso%2FImmae%2FProjets%2FCryptomonnaies%2FBIP39.git diff --git a/src/js/index.js b/src/js/index.js index b070006..41b59c2 100644 --- a/src/js/index.js +++ b/src/js/index.js @@ -47,6 +47,8 @@ DOM.entropyWeakEntropyOverrideWarning = DOM.entropyContainer.find(".weak-entropy-override-warning"); DOM.entropyFilterWarning = DOM.entropyContainer.find(".filter-warning"); DOM.phrase = $(".phrase"); + DOM.splitMnemonic = $(".splitMnemonic"); + DOM.showSplitMnemonic = $(".showSplitMnemonic"); DOM.phraseSplit = $(".phraseSplit"); DOM.phraseSplitWarn = $(".phraseSplitWarn"); DOM.passphrase = $(".passphrase"); @@ -133,6 +135,7 @@ DOM.entropyMnemonicLength.on("change", entropyChanged); DOM.entropyTypeInputs.on("change", entropyTypeChanged); DOM.phrase.on("input", delayedPhraseChanged); + DOM.showSplitMnemonic.on("change", toggleSplitMnemonic); DOM.passphrase.on("input", delayedPhraseChanged); DOM.generate.on("click", generateClicked); DOM.more.on("click", showMore); @@ -428,6 +431,15 @@ phraseChanged(); } + function toggleSplitMnemonic() { + if (DOM.showSplitMnemonic.prop("checked")) { + DOM.splitMnemonic.removeClass("hidden"); + } + else { + DOM.splitMnemonic.addClass("hidden"); + } + } + function calcForDerivationPath() { clearDerivedKeys(); clearAddressesList(); @@ -1139,6 +1151,17 @@ privkey = libs.ethUtil.bufferToHex(keyPair.d.toBuffer()); } } + //TRX is different + if (networks[DOM.network.val()].name == "TRX - Tron") { + keyPair = new libs.bitcoin.ECPair(keyPair.d, null, { network: network, compressed: false }); + var pubkeyBuffer = keyPair.getPublicKeyBuffer(); + var ethPubkey = libs.ethUtil.importPublic(pubkeyBuffer); + var addressBuffer = libs.ethUtil.publicToAddress(ethPubkey); + address = libs.bitcoin.address.toBase58Check(addressBuffer, 0x41); + if (hasPrivkey) { + privkey = keyPair.d.toBuffer().toString('hex'); + } + } // RSK values are different if (networkIsRsk()) { @@ -1186,6 +1209,15 @@ privkey = keypair.secret(); pubkey = address = keypair.publicKey(); } + + // Nano currency + if (networks[DOM.network.val()].name == "NANO - Nano") { + var nanoKeypair = libs.nanoUtil.getKeypair(index, seed); + privkey = nanoKeypair.privKey; + pubkey = nanoKeypair.pubKey; + address = nanoKeypair.address; + } + if ((networks[DOM.network.val()].name == "NAS - Nebulas")) { var privKeyBuffer = keyPair.d.toBuffer(32); var nebulasAccount = libs.nebulas.Account.NewAccount(); @@ -1887,6 +1919,7 @@ || (name == "ESN - Ethersocial Network") || (name == "VET - VeChain") || (name == "ERE - EtherCore") + || (name == "BSC - Binance Smart Chain") } function networkIsRsk() { @@ -2232,6 +2265,13 @@ setHdCoin(183); }, }, + { + name: "BSC - Binance Smart Chain", + onSelect: function() { + network = libs.bitcoin.networks.bitcoin; + setHdCoin(60); + }, + }, { name: "BSV - BitcoinSV", onSelect: function() { @@ -2554,6 +2594,13 @@ setHdCoin(235); }, }, + { + name: "FIRO - Firo (XZC - Zcoin)", + onSelect: function() { + network = libs.bitcoin.networks.firo; + setHdCoin(136); + }, + }, { name: "FIX - FIX", onSelect: function() { @@ -2834,6 +2881,13 @@ setHdCoin(184); }, }, + { + name: "NANO - Nano", + onSelect: function() { + network = network = libs.nanoUtil.dummyNetwork; + setHdCoin(165); + }, + }, { name: "NAV - Navcoin", onSelect: function() { @@ -3228,6 +3282,12 @@ setHdCoin(159); }, }, + { + name: "TRX - Tron", + onSelect: function() { + setHdCoin(195); + }, + }, { name: "TWINS - TWINS", onSelect: function() { @@ -3383,13 +3443,6 @@ setHdCoin(155); }, }, - { - name: "XZC - Zcoin", - onSelect: function() { - network = libs.bitcoin.networks.zcoin; - setHdCoin(136); - }, - }, { name: "ZCL - Zclassic", onSelect: function() {