Author

Topic: Can a new address be generated without having received funds in Ledger Nano? (Read 145 times)

legendary
Activity: 2730
Merit: 7065
Ledger Live does not allow checking of arbitrary derivation paths like Electrum does, so if you have deviated from this scheme then it will never find your addresses.
That could be a decent experimental feature to have for those that want it. You don't expect newbies to use it, but someone might like hiding coins away from the standard derivation paths. 

All in all, better to just not use Ledger Live. It does not allow proper coin control anyway.
Ledger Live also offers bad fee selections. You can't add decimals, so if you don't want to broadcast a transaction at 1 sat/vByte, the next bump is 2 sat/vByte in LL. Not good enough.
legendary
Activity: 2268
Merit: 18748
-snip-
Ledger Live will scan the standard derivation paths with a default gap limit of 20, as Pmalek has pointed out. So m/84'/0'/0'/0/0-19 for segwit. Any addresses beyond 20 empty addresses would not be picked up by default.

In terms of accounts, Ledger Live will allow incremental account numbers only if it finds some history in the preceding account. So if it finds coins or transactions in m/84'/0'/0', then it will allow you to create an account at m/84'/0'/1', and then will again look at addresses m/84'/0'/1'/0/0-19, continuing upwards with the gap limit of 20 if it finds any history. If you skip an account then you will be unable to recover your coins. So if you never used m/84'/0'/1', but did use m/84'/0'/2', you will not be able to recover m/84'/0'/2' using Ledger Live until you send some coins to m/84'/0'/1'.

Ledger Live does not allow checking of arbitrary derivation paths like Electrum does, so if you have deviated from this scheme then it will never find your addresses.

All in all, better to just not use Ledger Live. It does not allow proper coin control anyway.
legendary
Activity: 2730
Merit: 7065
What would happen if I used several addresses from Ledger using Electrum wallet, but then I had to install Ledger Live on a different device, and if same thing was done vice versa?
I am not sure if all those addresses would all be clearly shown in Ledger Live or in Electrum, or I would have to manually add specific derivation paths to show them.
Like I mentioned previously, Ledger Live's gap limit is 20 addresses. That's how many BTC addresses will be scanned when you recover your wallet and/or try to create a new account. If the addresses you funded through Electrum are are part of that initial 20 address gap limit, LL will find them just fine. If not, there is an experimental settings feature that allows you to customize your gap limit. Just set it to a higher count and do a rescan. 
legendary
Activity: 3668
Merit: 6382
Looking for campaign manager? Contact icopress!
What would happen if I used several addresses from Ledger using Electrum wallet, but then I had to install Ledger Live on a different device, and if same thing was done vice versa?
I am not sure if all those addresses would all be clearly shown in Ledger Live or in Electrum, or I would have to manually add specific derivation paths to show them.

I think that it will work fine. The problems may start if one start using "accounts" in Ledger (which are different derivation path). Plus I expect that if one starts using his Ledger with Electrum, he may not go back to LL.

With electrum, you don't have to make a request and wait for it to expire like you said. You can just head to the addresses tab, and you should be able to see your addresses there.

This is imho the cleanest solution, but I will add that of course, if one just picks addresses from Electrum's Addresses tab, it would be nice to label them so he knowns which is for what, so he can avoid confusion.
legendary
Activity: 2212
Merit: 7064
As mentioned above, the easiest way to achieve what you want is going to be pairing your Ledger device with Electrum. The other option would be to extract the xpub from Ledger Live and use that to generate addresses to receive to, and then increasing the gap limit in Ledger Live if needed to cover all these addresses.
What would happen if I used several addresses from Ledger using Electrum wallet, but then I had to install Ledger Live on a different device, and if same thing was done vice versa?
I am not sure if all those addresses would all be clearly shown in Ledger Live or in Electrum, or I would have to manually add specific derivation paths to show them.
legendary
Activity: 2730
Merit: 7065
...and you cannot even derive a second account if your first account remains empty.
If we are talking about the same address types, then yes, what you said is true. An address on Native SegWit account #1 has to be funded before you can create and fund an address on Native SegWit account #2. But it is possible to create a second account with Nested SegWit addresses for example. Maybe even a third one for Legacy addresses. That would then in theory give you 3 new (but different) addresses to work with through Ledger Live. It is, of course, recommended to stick with Bech32 addresses and unless there are some sort of compatibility issues between the service you use and Native SegWit, there is no reason to go for the older address types. 
legendary
Activity: 2268
Merit: 18748
Ledger Live is designed to be difficult to go wrong with, which also means it lacks many important features. You can only use addresses in the order they are derived, you cannot derive more than one address at a time, and you cannot even derive a second account if your first account remains empty. While this means that users cannot "lose" funds on derivation paths they can't find again, it also means you cannot just generate new addresses like you want to.

As mentioned above, the easiest way to achieve what you want is going to be pairing your Ledger device with Electrum. The other option would be to extract the xpub from Ledger Live and use that to generate addresses to receive to, and then increasing the gap limit in Ledger Live if needed to cover all these addresses.
legendary
Activity: 2730
Merit: 7065
When the Ledger Live scans your Bitcoin accounts to check which ones have funded addresses, it starts from the standard derivation path. Let's use m/84'/0'/0' as an example for native segwit addresses. During the scanning process, it's going to check the first 20 addresses for that path, and if they are empty, it considers that account (at that derivation path) as empty and unused. If for some reason you used address #30 in that account, there would be issues during wallet recovery in Ledger Live. This can be fixed by expanding the gap limit, which can be done from the settings. But it's an advanced feature and not something regular users should have to worry about.

I guess their way of preventing people from getting into trouble and funding an address at a far away gap limit, is forcing them to take it one address at a time. Luckily, you have Electrum that let's you use multiple ones, which comes in handy if you need 3 new addresses for 3 different people at the same time for example.   
legendary
Activity: 2212
Merit: 7064
I guess the solution would be to use Electrum with the ledger nano, which I was doing for a while, but I changed computer recently and I haven't installed Electrum yet.
So what if you don't have electrum on your new computer, just install it again or use standalone version.
Good alternative for Electrum would be another open source wallet called Sparrow and I think it works even better in combination with ledger device.
https://sparrowwallet.com/
 
legendary
Activity: 1512
Merit: 7340
Farewell, Leo
Just install Electrum. If you were an Electrum user before, there's no reason not to switch. It's basically better as it comes with coin control, optional privacy (since you can connect to your own node), and it is more lightweight.

With electrum, you don't have to make a request and wait for it to expire like you said. You can just head to the addresses tab, and you should be able to see your addresses there.
You can request a new invoice, and have a brand new address too, regardless of whether the previous was paid or not.
staff
Activity: 3500
Merit: 6152
With electrum, you don't have to make a request and wait for it to expire like you said. You can just head to the addresses tab, and you should be able to see your addresses there.
legendary
Activity: 1372
Merit: 2017
I use ledger nano and when I want to receive funds it generates a new address as long as I have already received funds in the one generated the last time. Otherwise this address generated last time appears again.

In mobile wallets I would say that in Mycellium you can't, or at least I don't know the way, but in Electrum you can, because it assigns by default an expiration date that you can change to just 10 minutes.

I guess the solution would be to use Electrum with the ledger nano, which I was doing for a while, but I changed computer recently and I haven't installed Electrum yet.

Thoughts? Experiences?
Jump to: