diff options
Diffstat (limited to 'src/js/index.js')
-rw-r--r-- | src/js/index.js | 62 |
1 files changed, 31 insertions, 31 deletions
diff --git a/src/js/index.js b/src/js/index.js index 1e88b70..9b8432a 100644 --- a/src/js/index.js +++ b/src/js/index.js | |||
@@ -6,7 +6,7 @@ | |||
6 | var seed = null; | 6 | var seed = null; |
7 | var bip32RootKey = null; | 7 | var bip32RootKey = null; |
8 | var bip32ExtendedKey = null; | 8 | var bip32ExtendedKey = null; |
9 | var network = bitcoin.networks.bitcoin; | 9 | var network = bitcoinjs.bitcoin.networks.bitcoin; |
10 | var addressRowTemplate = $("#address-row-template"); | 10 | var addressRowTemplate = $("#address-row-template"); |
11 | 11 | ||
12 | var showIndex = true; | 12 | var showIndex = true; |
@@ -338,11 +338,11 @@ | |||
338 | 338 | ||
339 | function calcBip32RootKeyFromSeed(phrase, passphrase) { | 339 | function calcBip32RootKeyFromSeed(phrase, passphrase) { |
340 | seed = mnemonic.toSeed(phrase, passphrase); | 340 | seed = mnemonic.toSeed(phrase, passphrase); |
341 | bip32RootKey = bitcoin.HDNode.fromSeedHex(seed, network); | 341 | bip32RootKey = bitcoinjs.bitcoin.HDNode.fromSeedHex(seed, network); |
342 | } | 342 | } |
343 | 343 | ||
344 | function calcBip32RootKeyFromBase58(rootKeyBase58) { | 344 | function calcBip32RootKeyFromBase58(rootKeyBase58) { |
345 | bip32RootKey = bitcoin.HDNode.fromBase58(rootKeyBase58, network); | 345 | bip32RootKey = bitcoinjs.bitcoin.HDNode.fromBase58(rootKeyBase58, network); |
346 | } | 346 | } |
347 | 347 | ||
348 | function calcBip32ExtendedKey(path) { | 348 | function calcBip32ExtendedKey(path) { |
@@ -360,7 +360,7 @@ | |||
360 | continue; | 360 | continue; |
361 | } | 361 | } |
362 | var hardened = bit[bit.length-1] == "'"; | 362 | var hardened = bit[bit.length-1] == "'"; |
363 | var isPriv = "privKey" in extendedKey; | 363 | var isPriv = !(extendedKey.isNeutered()); |
364 | var invalidDerivationPath = hardened && !isPriv; | 364 | var invalidDerivationPath = hardened && !isPriv; |
365 | if (invalidDerivationPath) { | 365 | if (invalidDerivationPath) { |
366 | extendedKey = null; | 366 | extendedKey = null; |
@@ -416,7 +416,7 @@ | |||
416 | 416 | ||
417 | function validateRootKey(rootKeyBase58) { | 417 | function validateRootKey(rootKeyBase58) { |
418 | try { | 418 | try { |
419 | bitcoin.HDNode.fromBase58(rootKeyBase58); | 419 | bitcoinjs.bitcoin.HDNode.fromBase58(rootKeyBase58); |
420 | } | 420 | } |
421 | catch (e) { | 421 | catch (e) { |
422 | return "Invalid root key"; | 422 | return "Invalid root key"; |
@@ -490,7 +490,7 @@ | |||
490 | } | 490 | } |
491 | // Check no hardened derivation path when using xpub keys | 491 | // Check no hardened derivation path when using xpub keys |
492 | var hardened = path.indexOf("'") > -1; | 492 | var hardened = path.indexOf("'") > -1; |
493 | var isXpubkey = !("privKey" in bip32RootKey); | 493 | var isXpubkey = bip32RootKey.isNeutered(); |
494 | if (hardened && isXpubkey) { | 494 | if (hardened && isXpubkey) { |
495 | return "Hardened derivation path is invalid with xpub key"; | 495 | return "Hardened derivation path is invalid with xpub key"; |
496 | } | 496 | } |
@@ -509,7 +509,7 @@ | |||
509 | // Calculate the account extended keys | 509 | // Calculate the account extended keys |
510 | var accountExtendedKey = calcBip32ExtendedKey(path); | 510 | var accountExtendedKey = calcBip32ExtendedKey(path); |
511 | var accountXprv = accountExtendedKey.toBase58(); | 511 | var accountXprv = accountExtendedKey.toBase58(); |
512 | var accountXpub = accountExtendedKey.toBase58(false); | 512 | var accountXpub = accountExtendedKey.neutered().toBase58(); |
513 | // Display the extended keys | 513 | // Display the extended keys |
514 | DOM.bip44accountXprv.val(accountXprv); | 514 | DOM.bip44accountXprv.val(accountXprv); |
515 | DOM.bip44accountXpub.val(accountXpub); | 515 | DOM.bip44accountXpub.val(accountXpub); |
@@ -521,12 +521,12 @@ | |||
521 | var rootKey = bip32RootKey.toBase58(); | 521 | var rootKey = bip32RootKey.toBase58(); |
522 | DOM.rootKey.val(rootKey); | 522 | DOM.rootKey.val(rootKey); |
523 | var xprvkeyB58 = "NA"; | 523 | var xprvkeyB58 = "NA"; |
524 | if (bip32ExtendedKey.privKey) { | 524 | if (!bip32ExtendedKey.isNeutered()) { |
525 | xprvkeyB58 = bip32ExtendedKey.toBase58(); | 525 | xprvkeyB58 = bip32ExtendedKey.toBase58(); |
526 | } | 526 | } |
527 | var extendedPrivKey = xprvkeyB58; | 527 | var extendedPrivKey = xprvkeyB58; |
528 | DOM.extendedPrivKey.val(extendedPrivKey); | 528 | DOM.extendedPrivKey.val(extendedPrivKey); |
529 | var extendedPubKey = bip32ExtendedKey.toBase58(false); | 529 | var extendedPubKey = bip32ExtendedKey.neutered().toBase58(); |
530 | DOM.extendedPubKey.val(extendedPubKey); | 530 | DOM.extendedPubKey.val(extendedPubKey); |
531 | // Display the addresses and privkeys | 531 | // Display the addresses and privkeys |
532 | clearAddressesList(); | 532 | clearAddressesList(); |
@@ -567,7 +567,7 @@ | |||
567 | if (!self.shouldGenerate) { | 567 | if (!self.shouldGenerate) { |
568 | return; | 568 | return; |
569 | } | 569 | } |
570 | var key = ""; | 570 | var key = "NA"; |
571 | if (useHardenedAddresses) { | 571 | if (useHardenedAddresses) { |
572 | key = bip32ExtendedKey.deriveHardened(index); | 572 | key = bip32ExtendedKey.deriveHardened(index); |
573 | } | 573 | } |
@@ -576,17 +576,17 @@ | |||
576 | } | 576 | } |
577 | var address = key.getAddress().toString(); | 577 | var address = key.getAddress().toString(); |
578 | var privkey = "NA"; | 578 | var privkey = "NA"; |
579 | if (key.privKey) { | 579 | if (!key.isNeutered()) { |
580 | privkey = key.privKey.toWIF(network); | 580 | privkey = key.keyPair.toWIF(network); |
581 | } | 581 | } |
582 | var pubkey = key.pubKey.toHex(); | 582 | var pubkey = key.getPublicKeyBuffer().toString('hex'); |
583 | var indexText = getDerivationPath() + "/" + index; | 583 | var indexText = getDerivationPath() + "/" + index; |
584 | if (useHardenedAddresses) { | 584 | if (useHardenedAddresses) { |
585 | indexText = indexText + "'"; | 585 | indexText = indexText + "'"; |
586 | } | 586 | } |
587 | // Ethereum values are different | 587 | // Ethereum values are different |
588 | if (networks[DOM.network.val()].name == "ETH - Ethereum") { | 588 | if (networks[DOM.network.val()].name == "ETH - Ethereum") { |
589 | var privKeyBuffer = key.privKey.d.toBuffer(); | 589 | var privKeyBuffer = key.keyPair.d.toBuffer(); |
590 | privkey = privKeyBuffer.toString('hex'); | 590 | privkey = privKeyBuffer.toString('hex'); |
591 | var addressBuffer = ethUtil.privateToAddress(privKeyBuffer); | 591 | var addressBuffer = ethUtil.privateToAddress(privKeyBuffer); |
592 | var hexAddress = addressBuffer.toString('hex'); | 592 | var hexAddress = addressBuffer.toString('hex'); |
@@ -1059,21 +1059,21 @@ | |||
1059 | { | 1059 | { |
1060 | name: "BTC - Bitcoin", | 1060 | name: "BTC - Bitcoin", |
1061 | onSelect: function() { | 1061 | onSelect: function() { |
1062 | network = bitcoin.networks.bitcoin; | 1062 | network = bitcoinjs.bitcoin.networks.bitcoin; |
1063 | DOM.bip44coin.val(0); | 1063 | DOM.bip44coin.val(0); |
1064 | }, | 1064 | }, |
1065 | }, | 1065 | }, |
1066 | { | 1066 | { |
1067 | name: "BTC - Bitcoin Testnet", | 1067 | name: "BTC - Bitcoin Testnet", |
1068 | onSelect: function() { | 1068 | onSelect: function() { |
1069 | network = bitcoin.networks.testnet; | 1069 | network = bitcoinjs.bitcoin.networks.testnet; |
1070 | DOM.bip44coin.val(1); | 1070 | DOM.bip44coin.val(1); |
1071 | }, | 1071 | }, |
1072 | }, | 1072 | }, |
1073 | { | 1073 | { |
1074 | name: "CLAM - Clams", | 1074 | name: "CLAM - Clams", |
1075 | onSelect: function() { | 1075 | onSelect: function() { |
1076 | network = bitcoin.networks.clam; | 1076 | network = bitcoinjs.bitcoin.networks.clam; |
1077 | DOM.bip44coin.val(23); | 1077 | DOM.bip44coin.val(23); |
1078 | }, | 1078 | }, |
1079 | }, | 1079 | }, |
@@ -1087,14 +1087,14 @@ | |||
1087 | { | 1087 | { |
1088 | name: "DASH - Dash", | 1088 | name: "DASH - Dash", |
1089 | onSelect: function() { | 1089 | onSelect: function() { |
1090 | network = bitcoin.networks.dash; | 1090 | network = bitcoinjs.bitcoin.networks.dash; |
1091 | DOM.bip44coin.val(5); | 1091 | DOM.bip44coin.val(5); |
1092 | }, | 1092 | }, |
1093 | }, | 1093 | }, |
1094 | { | 1094 | { |
1095 | name: "DASH - Dash Testnet", | 1095 | name: "DASH - Dash Testnet", |
1096 | onSelect: function() { | 1096 | onSelect: function() { |
1097 | network = bitcoin.networks.dashtn; | 1097 | network = bitcoinjs.bitcoin.networks.dashtn; |
1098 | DOM.bip44coin.val(1); | 1098 | DOM.bip44coin.val(1); |
1099 | }, | 1099 | }, |
1100 | }, | 1100 | }, |
@@ -1108,84 +1108,84 @@ | |||
1108 | { | 1108 | { |
1109 | name: "ETH - Ethereum", | 1109 | name: "ETH - Ethereum", |
1110 | onSelect: function() { | 1110 | onSelect: function() { |
1111 | network = bitcoin.networks.bitcoin; | 1111 | network = bitcoinjs.bitcoin.networks.bitcoin; |
1112 | DOM.bip44coin.val(60); | 1112 | DOM.bip44coin.val(60); |
1113 | }, | 1113 | }, |
1114 | }, | 1114 | }, |
1115 | { | 1115 | { |
1116 | name: "GAME - GameCredits", | 1116 | name: "GAME - GameCredits", |
1117 | onSelect: function() { | 1117 | onSelect: function() { |
1118 | network = bitcoin.networks.game; | 1118 | network = bitcoinjs.bitcoin.networks.game; |
1119 | DOM.bip44coin.val(101); | 1119 | DOM.bip44coin.val(101); |
1120 | }, | 1120 | }, |
1121 | }, | 1121 | }, |
1122 | { | 1122 | { |
1123 | name: "JBS - Jumbucks", | 1123 | name: "JBS - Jumbucks", |
1124 | onSelect: function() { | 1124 | onSelect: function() { |
1125 | network = bitcoin.networks.jumbucks; | 1125 | network = bitcoinjs.bitcoin.networks.jumbucks; |
1126 | DOM.bip44coin.val(26); | 1126 | DOM.bip44coin.val(26); |
1127 | }, | 1127 | }, |
1128 | }, | 1128 | }, |
1129 | { | 1129 | { |
1130 | name: "LTC - Litecoin", | 1130 | name: "LTC - Litecoin", |
1131 | onSelect: function() { | 1131 | onSelect: function() { |
1132 | network = bitcoin.networks.litecoin; | 1132 | network = bitcoinjs.bitcoin.networks.litecoin; |
1133 | DOM.bip44coin.val(2); | 1133 | DOM.bip44coin.val(2); |
1134 | }, | 1134 | }, |
1135 | }, | 1135 | }, |
1136 | { | 1136 | { |
1137 | name: "NMC - Namecoin", | 1137 | name: "NMC - Namecoin", |
1138 | onSelect: function() { | 1138 | onSelect: function() { |
1139 | network = bitcoin.networks.namecoin; | 1139 | network = bitcoinjs.bitcoin.networks.namecoin; |
1140 | DOM.bip44coin.val(7); | 1140 | DOM.bip44coin.val(7); |
1141 | }, | 1141 | }, |
1142 | }, | 1142 | }, |
1143 | { | 1143 | { |
1144 | name: "PPC - Peercoin", | 1144 | name: "PPC - Peercoin", |
1145 | onSelect: function() { | 1145 | onSelect: function() { |
1146 | network = bitcoin.networks.peercoin; | 1146 | network = bitcoinjs.bitcoin.networks.peercoin; |
1147 | DOM.bip44coin.val(6); | 1147 | DOM.bip44coin.val(6); |
1148 | }, | 1148 | }, |
1149 | }, | 1149 | }, |
1150 | { | 1150 | { |
1151 | name: "SDC - ShadowCash", | 1151 | name: "SDC - ShadowCash", |
1152 | onSelect: function() { | 1152 | onSelect: function() { |
1153 | network = bitcoin.networks.shadow; | 1153 | network = bitcoinjs.bitcoin.networks.shadow; |
1154 | DOM.bip44coin.val(35); | 1154 | DOM.bip44coin.val(35); |
1155 | }, | 1155 | }, |
1156 | }, | 1156 | }, |
1157 | { | 1157 | { |
1158 | name: "SDC - ShadowCash Testnet", | 1158 | name: "SDC - ShadowCash Testnet", |
1159 | onSelect: function() { | 1159 | onSelect: function() { |
1160 | network = bitcoin.networks.shadowtn; | 1160 | network = bitcoinjs.bitcoin.networks.shadowtn; |
1161 | DOM.bip44coin.val(1); | 1161 | DOM.bip44coin.val(1); |
1162 | }, | 1162 | }, |
1163 | }, | 1163 | }, |
1164 | { | 1164 | { |
1165 | name: "SLM - Slimcoin", | 1165 | name: "SLM - Slimcoin", |
1166 | onSelect: function() { | 1166 | onSelect: function() { |
1167 | network = bitcoin.networks.slimcoin; | 1167 | network = bitcoinjs.bitcoin.networks.slimcoin; |
1168 | DOM.bip44coin.val(63); | 1168 | DOM.bip44coin.val(63); |
1169 | }, | 1169 | }, |
1170 | }, | 1170 | }, |
1171 | { | 1171 | { |
1172 | name: "SLM - Slimcoin Testnet", | 1172 | name: "SLM - Slimcoin Testnet", |
1173 | onSelect: function() { | 1173 | onSelect: function() { |
1174 | network = bitcoin.networks.slimcointn; | 1174 | network = bitcoinjs.bitcoin.networks.slimcointn; |
1175 | DOM.bip44coin.val(111); | 1175 | DOM.bip44coin.val(111); |
1176 | }, | 1176 | }, |
1177 | }, | 1177 | }, |
1178 | { | 1178 | { |
1179 | name: "VIA - Viacoin", | 1179 | name: "VIA - Viacoin", |
1180 | onSelect: function() { | 1180 | onSelect: function() { |
1181 | network = bitcoin.networks.viacoin; | 1181 | network = bitcoinjs.bitcoin.networks.viacoin; |
1182 | DOM.bip44coin.val(14); | 1182 | DOM.bip44coin.val(14); |
1183 | }, | 1183 | }, |
1184 | }, | 1184 | }, |
1185 | { | 1185 | { |
1186 | name: "VIA - Viacoin Testnet", | 1186 | name: "VIA - Viacoin Testnet", |
1187 | onSelect: function() { | 1187 | onSelect: function() { |
1188 | network = bitcoin.networks.viacointestnet; | 1188 | network = bitcoinjs.bitcoin.networks.viacointestnet; |
1189 | DOM.bip44coin.val(1); | 1189 | DOM.bip44coin.val(1); |
1190 | }, | 1190 | }, |
1191 | }, | 1191 | }, |