aboutsummaryrefslogtreecommitdiff
path: root/src/js/index.js
diff options
context:
space:
mode:
Diffstat (limited to 'src/js/index.js')
-rw-r--r--src/js/index.js62
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 },