Bitcoin Forum
May 13, 2024, 01:52:00 AM *
News: Latest Bitcoin Core release: 27.0 [Torrent]
 
  Home Help Search Login Register More  
  Show Posts
Pages: [1]
1  Bitcoin / Bitcoin Technical Support / Re: Bitcoin address management on: October 06, 2020, 08:27:03 PM

Yes, it is. By changing the derivation path you create what is known as a new account. Ledger Live will deal with the derivation path automatically for you in the background - all you have to do is add a new account for the coin in question (bitcoin, in this case), and the address type you want to use (legacy or segwit). There are instructions on doing this here: https://support.ledger.com/hc/en-us/articles/360006410253-Add-your-accounts. The only caveat here is you can only create a new account for each address type if the previous account for that address type has received a transaction already. This is to stop users creating dozens of unnecessary accounts and then forgetting which one their bitcoin is in.

If you follow this method, it is important to remember what is happening in the background - Ledger Live is changing the derivation path for each account. This is important if you ever need to restore your seed phrase to another wallet, as by default most wallets will show the first account only, and you'll need to specifically tell them to look for other accounts.

Thanks a lot, that's very clear!

If I understand well, what you describe is one of the characteristics of HD wallets: a single seed allows you to generate a virtually infinite number of wallets that are all separate from each other. The only way to link them to each other, given no cross-transaction, would be to know the seed.

Then, if as you mention, I need to restore the seed on another wallet/service, how would the software know "which derivation path to look for"?
My understanding is that this is the "deterministic" part of HD wallet and the derivation paths follow a sequence that will always be the same, going from wallet number 1 to wallet number infinite always in the same order no matter the service used to access this wallet. Am I correct?

Sorry if I'm way off, as you can tell, I'm not that technical...
2  Bitcoin / Bitcoin Technical Support / Re: Bitcoin address management on: October 06, 2020, 04:20:33 PM
Question 1:
Let's say I have been using a seed/wallet ("A") for a bit of time and received/spent BTC from it.
If I transfer the whole balance of this wallet ("A") to another seed ("B") and then generate a new address on that first wallet ("A") to receive BTC from a new source, will it be possible to link the balance on my initial ("A") addresses to the newly created ("A") address?

No.
There is no link visible between single addresses generated from the same seed.

As long as you are not signing a transaction with inputs from both addresses, or are being analyzed through some meta data (e.g. using web wallet from browser X with addons y,z and a specific resolution, etc..), you are fine.



Question 2:
If I use a single seed to generate a legacy BTC address and a Bech32 address, is it possible for someone analyzing the blockchain to determine that these two addresses come from the same seed / are linked?

No.

Thank you, it makes sense.
I just need to be really careful with spending / dusting and address reuse.
3  Bitcoin / Bitcoin Technical Support / Re: Bitcoin address management on: October 06, 2020, 04:06:55 PM
Provided you do not reveal your master public key or other details of your wallet, then there is no way to link any two addresses together just by looking at the addresses. In both your questions, there is no inherent way to link addresses together, be it two addresses from the same wallet, or two addresses generated by the same seed phrase.

The most common way that people link addresses together is either by spending from two addresses in the same transaction, or by doing this via another address. For example, you have some coins on address A and address B, and you use both these addresses in one transaction. They are obviously now linked. If you later use address B and address C in the same transaction, then it is fairly trivial to also link address A with address C via address B, even though they haven't shared a transaction.



If you want to be completely safe, then you could use derivation paths to create a whole new account. This essentially uses the same seed phrase but generates a whole different set of keys and addresses. Once you are done with wallet A and you empty it, rather than using different addresses from A and running the risk of making a mistake and accidentally linking the new addresses to the old, you can just use a different derivation path to create a brand new wallet. If you let us know which wallet we are using, we can talk you through how to do this if you like.

Thanks a lot, that's really helpful!
I guess my overall understanding was not too far from the truth, but your explanation confirms it and makes it much more clear.

So using a new address from the same wallet would make me highly vulnerable to a dust attack or doxing if I'm not careful with old address reuse.

I'm mostly using ledger live these days. I'm going through their documentation right now to see if it is possible to derivate a new wallet, but any help/tutorial would be more than welcome.

Thanks,
4  Bitcoin / Bitcoin Technical Support / Re: Bitcoin address management on: October 06, 2020, 03:25:23 PM
Thanks for your answer.

for question 1, I do actually mean "A".
 the flow would be:
1) I have xxx BTC on wallet "A"
2) I empty that wallet to another one ("B")
3) I receive yyy BTC from a different source on a new address of the same wallet "A"
==> by analyzing the blockchain, can you tell that wallet "A" went from xxx BTC to 0 and then to yyy BTC or would using a new address to receive the yyy BTC "break the cycle" and make it appear as a new wallet to any observer?

Thanks,
5  Bitcoin / Bitcoin Technical Support / Bitcoin address management on: October 06, 2020, 03:13:20 PM
Hello!

Sorry if these are dumb questions, but I'm trying to get a better understanding of bitcoin address management and would appreciate any good resource (I've been through the Bitcoin wiki etc, but still can't answer my questions).

The main point I'd like to understand is the linkage between addresses from a single seed/within a single wallet.

Question 1:
Let's say I have been using a seed/wallet ("A") for a bit of time and received/spent BTC from it.
If I transfer the whole balance of this wallet ("A") to another seed ("B") and then generate a new address on that first wallet ("A") to receive BTC from a new source, will it be possible to link the balance on my initial ("A") addresses to the newly created ("A") address?

Question 2:
If I use a single seed to generate a legacy BTC address and a Bech32 address, is it possible for someone analyzing the blockchain to determine that these two addresses come from the same seed / are linked?

Thanks!

Pages: [1]
Powered by MySQL Powered by PHP Powered by SMF 1.1.19 | SMF © 2006-2009, Simple Machines Valid XHTML 1.0! Valid CSS!