]> git.immae.eu Git - perso/Immae/Projets/Cryptomonnaies/BIP39.git/blobdiff - src/js/index.js
new Crown address format. May not be elegant solution, but bitcoinjs has limitation...
[perso/Immae/Projets/Cryptomonnaies/BIP39.git] / src / js / index.js
index 86997333d7756030635db050753937ab0ace3718..8262947a64aa82a967566e6549370dcbef5a83c8 100644 (file)
                     pubkey = ethUtil.addHexPrefix(pubkey);
                 }
                 if ((networks[DOM.network.val()].name == "NAS - Nebulas")) {
-                    var NasAccount = require("nebulas").Account;
+                    var NasAccount = require("nebulas-account");
                     var privKeyBuffer = keyPair.d.toBuffer(32);
-                    // privkey = privKeyBuffer.toString('hex');
-                    console.log(privkey);
-                    var nasAccount = NasAccount.NewAccount(privKeyBuffer);
-                    // var addressBuffer = ethUtil.privateToAddress(privKeyBuffer);
-                    // var hexAddress = addressBuffer.toString('hex');
-                    // var checksumAddress = ethUtil.toChecksumAddress(hexAddress);
-                    address = nasAccount.getAddressString();
-                    privkey = nasAccount.getPrivateKeyString();
-                    pubkey = nasAccount.getPublicKeyString();
+                    var nebulasAccount = new NasAccount();
+                    nebulasAccount.setPrivateKey(privKeyBuffer);
+                    address = nebulasAccount.getAddressString();
+                    privkey = nebulasAccount.getPrivateKeyString();
+                    pubkey = nebulasAccount.getPublicKeyString();
                 }
                 // Ripple values are different
                 if (networks[DOM.network.val()].name == "XRP - Ripple") {
                         address = bchaddr.toBitpayAddress(address);
                     }
                 }
+                 // Bitcoin Cash address format may vary
+                 if (networks[DOM.network.val()].name == "SLP - Simple Ledger Protocol") {
+                     var bchAddrType = DOM.bitcoinCashAddressType.filter(":checked").val();
+                     if (bchAddrType == "cashaddr") {
+                         address = bchaddr.toSlpAddress(address);
+                     }
+                 }
                 // Segwit addresses are different
                 if (isSegwit) {
                     if (!segwitAvailable) {
                         address = bitcoinjs.bitcoin.address.fromOutputScript(scriptpubkey, network)
                     }
                 }
+                
+                if ((networks[DOM.network.val()].name == "CRW - Crown")) {
+                    address = bitcoinjs.bitcoin.networks.crown.toNewAddress(address);
+                }
+                
                 addAddressToList(indexText, address, pubkey, privkey);
                 if (isLast) {
                     hidePending();
                 network = bitcoinjs.bitcoin.networks.blocknode;
                 setHdCoin(2941);
             },
-        },     
+        },
                {
             name: "tBND - Blocknode Testnet",
             onSelect: function() {
                 setHdCoin(186);
             },
         },
+        {
+            name: "CRW - Crown (Legacy)",
+            onSelect: function() {
+                network = bitcoinjs.bitcoin.networks.crown;
+                setHdCoin(72);
+            },
+        },
         {
             name: "CRW - Crown",
             onSelect: function() {
                 setHdCoin(111);
             },
         },
+        {
+            name: "SLP - Simple Ledger Protocol",
+            onSelect: function() {
+                DOM.bitcoinCashAddressTypeContainer.removeClass("hidden");
+                setHdCoin(245);
+            },
+        },
         {
             name: "SLR - Solarcoin",
             onSelect: function() {