Bitcoin Forum
April 23, 2024, 09:10:16 PM *
News: Latest Bitcoin Core release: 27.0 [Torrent]
 
   Home   Help Search Login Register More  
Pages: [1]
  Print  
Author Topic: Generating a fresh non HD wallet in the newer versions of Core  (Read 364 times)
cellard (OP)
Legendary
*
Offline Offline

Activity: 1372
Merit: 1250


View Profile
November 06, 2017, 06:53:18 PM
 #1

If I wanted to generate an empty fresh non-HD wallet using Bitcoin 0.15.0.1, how would I go about it? or is this not possible?

I don't like HD wallets in general, I like the old approach better. Im not sure how exactly this HD wallet works, I just like the original format. As far as I know, there is no seed, so the wallet cannot be generated unless you own the wallet.dat file which is good, I wouldn't trust a wallet that can be generated with a single seed containing all of your private keys.

What are the pros and cons of the new HD enabled wallet.dat compared to the original format? I've had the same wallet.dat since Bitcoin-qt in 2013-ish and I never had any problems with it. But now with all the fork nonsense I will be forced to move my coins into another wallet, and when I tried to generate a new wallet in the new versions of Core it was HD-enabled.
1713906616
Hero Member
*
Offline Offline

Posts: 1713906616

View Profile Personal Message (Offline)

Ignore
1713906616
Reply with quote  #2

1713906616
Report to moderator
1713906616
Hero Member
*
Offline Offline

Posts: 1713906616

View Profile Personal Message (Offline)

Ignore
1713906616
Reply with quote  #2

1713906616
Report to moderator
1713906616
Hero Member
*
Offline Offline

Posts: 1713906616

View Profile Personal Message (Offline)

Ignore
1713906616
Reply with quote  #2

1713906616
Report to moderator
Advertised sites are not endorsed by the Bitcoin Forum. They may be unsafe, untrustworthy, or illegal in your jurisdiction.
RGBKey
Hero Member
*****
Offline Offline

Activity: 854
Merit: 658


rgbkey.github.io/pgp.txt


View Profile WWW
November 06, 2017, 07:38:16 PM
 #2

It appears you need to use the
Code:
-usehd 0
command line flag (can also be used in a bitcoin.conf file, read the linked article).

There are many advantages to using an HD wallet. The main one being a wallet backup lasts the life of the wallet, but without an HD wallet the backup only covers the addresses in use at the time of the backup. Additionally, wallet.dat files can get pretty big if you've got a lot of addresses.

https://en.bitcoin.it/wiki/Running_Bitcoin#Command-line_arguments
achow101
Moderator
Legendary
*
Offline Offline

Activity: 3374
Merit: 6531


Just writing some code


View Profile WWW
November 06, 2017, 07:43:28 PM
 #3

I don't like HD wallets in general, I like the old approach better. Im not sure how exactly this HD wallet works, I just like the original format. As far as I know, there is no seed, so the wallet cannot be generated unless you own the wallet.dat file which is good, I wouldn't trust a wallet that can be generated with a single seed containing all of your private keys.
Clearly you don't understand how HD wallets work. Bitcoin Core does not use a seed phrase that you are probably thinking of. Seed phrases are not required for an HD wallet; you still have to own and hold the wallet.dat file. The only thing that changes is how the private keys are generated; everything else about how they are stored and the backup and security measures that you must take still exist with Bitcoin Core's HD wallets. It still uses a HD wallet and the private keys are still stored in the exact same format as before.

What are the pros and cons of the new HD enabled wallet.dat compared to the original format? I've had the same wallet.dat since Bitcoin-qt in 2013-ish and I never had any problems with it. But now with all the fork nonsense I will be forced to move my coins into another wallet, and when I tried to generate a new wallet in the new versions of Core it was HD-enabled.
With an HD wallet, you can restore any backup of your wallet.dat and still be able to access your Bitcoin whereas with non-HD wallets older backups may no longer be valid (they don't contain later private keys). However if your wallet.dat file is stolen, then all of your private keys for that wallet.dat file (including those that have not yet been generated used) are revealed. But you should be using a new wallet.dat file anyways if yours is ever stolen, regardless of HD or not.

To disable HD wallets, you must start Bitcoin Core with the -usehd=0 option. However this option and the ability to create a non-HD wallet has been removed for Bitcoin Core 0.16.

Spendulus
Legendary
*
Offline Offline

Activity: 2898
Merit: 1386



View Profile
November 07, 2017, 02:33:41 AM
 #4

....But now with all the fork nonsense I will be forced to move my coins into another wallet...

Why is that?
cellard (OP)
Legendary
*
Offline Offline

Activity: 1372
Merit: 1250


View Profile
November 07, 2017, 03:37:29 PM
 #5

....But now with all the fork nonsense I will be forced to move my coins into another wallet...

Why is that?

Well, everytime that there is a hardfork, you are forced to move your coins into a new wallet before accessing the coins on the other fork, in order to not have any problems of replay attacks. It is always recommended to not having matching addresses before you send coins to an exchange. I wish I wouldn't need to deal with any of this but can you do.



I don't like HD wallets in general, I like the old approach better. Im not sure how exactly this HD wallet works, I just like the original format. As far as I know, there is no seed, so the wallet cannot be generated unless you own the wallet.dat file which is good, I wouldn't trust a wallet that can be generated with a single seed containing all of your private keys.
Clearly you don't understand how HD wallets work. Bitcoin Core does not use a seed phrase that you are probably thinking of. Seed phrases are not required for an HD wallet; you still have to own and hold the wallet.dat file. The only thing that changes is how the private keys are generated; everything else about how they are stored and the backup and security measures that you must take still exist with Bitcoin Core's HD wallets. It still uses a HD wallet and the private keys are still stored in the exact same format as before.

What are the pros and cons of the new HD enabled wallet.dat compared to the original format? I've had the same wallet.dat since Bitcoin-qt in 2013-ish and I never had any problems with it. But now with all the fork nonsense I will be forced to move my coins into another wallet, and when I tried to generate a new wallet in the new versions of Core it was HD-enabled.
With an HD wallet, you can restore any backup of your wallet.dat and still be able to access your Bitcoin whereas with non-HD wallets older backups may no longer be valid (they don't contain later private keys). However if your wallet.dat file is stolen, then all of your private keys for that wallet.dat file (including those that have not yet been generated used) are revealed. But you should be using a new wallet.dat file anyways if yours is ever stolen, regardless of HD or not.

To disable HD wallets, you must start Bitcoin Core with the -usehd=0 option. However this option and the ability to create a non-HD wallet has been removed for Bitcoin Core 0.16.


I said that I know Bitcoin Core's HD wallet cannot be generated by a single seed, im just asking if it adds any possible exploits. So you are saying that the new format has 0 disadvantages or attack vectors compared to the old format?

And why would you disable the ability to create non-HD wallets in 0.16?
achow101
Moderator
Legendary
*
Offline Offline

Activity: 3374
Merit: 6531


Just writing some code


View Profile WWW
November 07, 2017, 04:09:45 PM
 #6

I said that I know Bitcoin Core's HD wallet cannot be generated by a single seed, im just asking if it adds any possible exploits. So you are saying that the new format has 0 disadvantages or attack vectors compared to the old format?
Yes.

And why would you disable the ability to create non-HD wallets in 0.16?
Because continuing to support HD wallets hinders future changes and limits what we can do with the wallet. Part of that is due to some poor design choices on our side when implementing HD wallets, but regardless, continuing to allow for non-HD wallets prevents us from making certain future changes or requires a lot of hacks to make those changes work.

cellard (OP)
Legendary
*
Offline Offline

Activity: 1372
Merit: 1250


View Profile
November 07, 2017, 05:22:57 PM
 #7

I said that I know Bitcoin Core's HD wallet cannot be generated by a single seed, im just asking if it adds any possible exploits. So you are saying that the new format has 0 disadvantages or attack vectors compared to the old format?
Yes.

And why would you disable the ability to create non-HD wallets in 0.16?
Because continuing to support HD wallets hinders future changes and limits what we can do with the wallet. Part of that is due to some poor design choices on our side when implementing HD wallets, but regardless, continuing to allow for non-HD wallets prevents us from making certain future changes or requires a lot of hacks to make those changes work.

Ok then, if there are no downsides and only benefits I guess I will get to work and move my coins for once, but I will do it after the segwit2x hardfork so I kill 2 birds with one stone.

And btw, does "no HD support" means that if you try to load an old format wallet.dat, your coins will not show up?

There's people often finding very old HD wallets from the -qt era, example:

https://bitcointalk.org/index.php?topic=2364176.0

If this guy came here with an old wallet after 0.16 is released, he would download it then try to open it and he would have problems if legacy format is not supported.
achow101
Moderator
Legendary
*
Offline Offline

Activity: 3374
Merit: 6531


Just writing some code


View Profile WWW
November 07, 2017, 06:55:20 PM
 #8

And btw, does "no HD support" means that if you try to load an old format wallet.dat, your coins will not show up?
No, not at all. Old wallets are still supported and non-HD wallets created with previous versions of Bitcoin Core will still be supported. The only thing you can't do is create a new non-HD wallet.

Pages: [1]
  Print  
 
Jump to:  

Powered by MySQL Powered by PHP Powered by SMF 1.1.19 | SMF © 2006-2009, Simple Machines Valid XHTML 1.0! Valid CSS!