Trying to recover BCH sent to BTC segwit. Being asked for Xpub for a specific address. I exported the Xpub per instructions, but the response is that the xpub is wrong.
I suspect i am exporting the Xpub for the wrong address since they change.
Is there a way to find the Xpub for a specific address on Ledger nano?
Specific addresses don't have an "xpub"... the "xpub" is the master public key, from which all the addresses are derived.
It seems there might be a "bug" within the Ledger Wallet Bitcoin (Chrome App) that gives you an "xpub" for your SegWit wallet... which possibly should be a "ypub" for BIP49?
I'm not 100% sure on this point and haven't been able to find a solid answer if it should be "xpub" or "ypub"
. The best reference I have found which explains the difference in simple terms is:
https://support.samourai.io/article/49-xpub-s-ypub-s-zpub-sBasically:
- xpub = Legacy wallet (legacy Bitcoin addresses)
- ypub = SegWit wallet (P2SH-P2WPKH addresses)
- zpub = SegWit wallet (P2WPKH addresses)
And from the Electrum release notes:
* xpub/xprv : p2pkh or p2sh
* ypub/yprv : p2wpkh-in-p2sh
* Ypub/Yprv : p2wsh-in-p2sh
* zpub/zprv : p2wpkh
* Zpub/Zprv : p2wsh
So, I believe that the Ledger SegWit wallet
should be giving a "ypub".
Anyway, I've been experimenting with Ian Coleman's Mnemonic Code Convertor (
https://iancoleman.io/bip39/)... and found the following:
If you put your Ledger SegWit "xpub" as the "BIP32 Root Key", click the BIP141 tab and then delete the derivation path and retype it as m/0 (
NOTE: even if it already says m/0, you MUST delete it and retype it)
You will see your Ledger SegWit "3" addresses listed below.
However, if you import your Ledger SegWit wallet into Electrum. (File -> New\Restore -> Standard Wallet -> Use hardware device -> Connect/Unlock your Ledger device -> set Derivation Path to m/
49'/0'/0') And then take a look at the "Wallet -> Information", you will see you actually get a "
ypub" and not an "
xpub".
You can also put this "ypub" into the "Mnemonic Code Convertor", click the BIP141 tab and again use derivation path of m/0 and you'll get your Ledger SegWit "3" addresses listed below.
From what wallet did you send BCH to a segwit address? it is a nested or bech32 address? I find it weird that a BCH wallet would allow you to send coins to a segwit format address, unless I misunderstood your post.
It isn't weird... Ledger Nano (S and Blue) wallets generate P2SH-P2WPKH SegWit addresses... they start with "3" and are "backwards compatible" by design... as such, they look identical to any other P2SH "3" address and are therefore valid on both BTC and BCH networks.