How to generate a Litecoin testnet addresses (Segwit also) (Derivation path, bip32)

3

I'm creating a wallet that generates address for litecoin mainnet in two ways.

One is using bitcoinjs-lib. This library has an object with all the data need it to create private keys and address:

import Bitcoin from 'bitcoinjs-lib'

console.log(Bitcoin.networks.litecoin)
{
    messagePrefix: '\x18Bitcoin Signed Message:\n',
    bip32: {
        public: 71979618,
        private: 71978536
    },
    pubKeyHash: 111,
    scriptHash: 196,
    wif: 239
}

This ok for the mainnet, but I am not able to find on internet the same version of this for testnet.

The other way is using derivation paths. But again, I only could find the mainnet version of this.

mainnet: `m/44'/2'/0'/0/${index}`
mainnet_segwit: `m/49'/2'/0'/0/${index}`

Any idea where I can find it?

EnZo

Posted 2018-05-28T12:17:47.150

Reputation: 159

Answers

2

const ltcnet = {
    messagePrefix: '\x19Litecoin Signed Message:\n',
    bip32: { 
      public: 0x043587cf,
      private: 0x04358394
    },
    pubKeyHash: 0x6f,
    scriptHash: 0xc4, //  for segwit (start with 2)
    wif: 0xef
  }

use it like this:

var key = bitcoin.HDNode.fromSeedHex(seed, ltcnet)

Adam

Posted 2018-05-28T12:17:47.150

Reputation: 3 215

Do you also know what is the derivation path is (bip32)?EnZo 2018-05-29T09:21:58.193

1@EnZo Most coins don't have a separate testnet derivation path, they just change the prefixRaghav Sood 2018-05-29T10:18:14.530

1I think you should also consider scriptHash: 0x3a to get the testnet p2sh addresses that start with Q.Thalis K. 2018-10-23T11:21:13.207