X-Git-Url: https://git.immae.eu/?p=perso%2FImmae%2FProjets%2FCryptomonnaies%2FBIP39.git;a=blobdiff_plain;f=src%2Fjs%2Fbitcoinjs-extensions.js;h=e4eef0c1a7b9c59aba4db296599e5437ab4ebafd;hp=78440bef2c73086837a14a587ed2100ac282d6c5;hb=bf13c95fb0a800b8d40b2c8ee0826a49b17ccd7d;hpb=9d9fefbb28d401ac3d1b861a645ec61b58186044 diff --git a/src/js/bitcoinjs-extensions.js b/src/js/bitcoinjs-extensions.js index 78440be..e4eef0c 100644 --- a/src/js/bitcoinjs-extensions.js +++ b/src/js/bitcoinjs-extensions.js @@ -39,7 +39,27 @@ bitcoinjs.bitcoin.networks.crown = { }, pubKeyHash: 0x00, scriptHash: 0x05, - wif: 0x80 + wif: 0x80, + toNewAddress: function(oldAddress) + { + var ALPHABET = '123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz' + var b58 = basex(ALPHABET); + + var addrBytes = b58.decode(oldAddress); + + var hash160 = new Uint16Array(23); + hash160[0]= 0x01; //C + hash160[1]= 0x75; //R + hash160[2]= 0x07; //W + addrBytes.copy(hash160, 3, 1, 21); + + var checksum = bitcoinjs.bitcoin.crypto.hash256(hash160).subarray(0, 4); + var binaryAddr = new Uint16Array(27); + binaryAddr.set(hash160,0); + checksum.copy(binaryAddr, 23, 0, 4); + var newAddress = b58.encode(binaryAddr); + return newAddress; + } }; bitcoinjs.bitcoin.networks.dash = { @@ -93,7 +113,7 @@ bitcoinjs.bitcoin.networks.namecoin = { private: 0x0488ade4 }, pubKeyHash: 0x34, - scriptHash: 0x00, // TODO set this correctly + scriptHash: 0x0D, wif: 0x80 }; @@ -236,20 +256,20 @@ bitcoinjs.bitcoin.networks.myriadcoin = { private: 0x0488ade4 }, pubKeyHash: 0x32, - scriptHash: 0x00, // TODO set this correctly + scriptHash: 0x09, wif: 0xb2 }; bitcoinjs.bitcoin.networks.onixcoin = { - messagePrefix: 'unused', + messagePrefix: 'ONIX Signed Message:\n', bip32: { - public: 0x049d7cb2, - private: 0x049d7878 + public: 0x0488b21e, + private: 0x0488ade4 }, pubKeyHash: 0x4B, scriptHash: 0x05, - wif: 0x80 + wif: 0xCB }; @@ -261,7 +281,7 @@ bitcoinjs.bitcoin.networks.lkrcoin = { }, pubKeyHash: 0x30, scriptHash: 0x55, - wif: 0x80 + wif: 0xB0 }; bitcoinjs.bitcoin.networks.pivx = {