Bitcoin Forum
May 04, 2024, 09:49:07 PM *
News: Latest Bitcoin Core release: 27.0 [Torrent]
 
   Home   Help Search Login Register More  
Pages: [1]
  Print  
Author Topic: Why did my bitcoin core descriptor wallet generate 16 output descriptors?  (Read 119 times)
Forsyth Jones (OP)
Hero Member
*****
Offline Offline

Activity: 1162
Merit: 618


Press F for Leo


View Profile WWW
March 10, 2024, 01:40:57 AM
Merited by vapourminer (1)
 #1

Bitcoin Core v26.0

When I create a wallet in Bitcoin Core, then I gave the listdescriptors command, I could see that it generated 8 output descriptors, two for each scripts (receiving and change), but when I checked the other day, giving the listdescriptors command, I came across with 16 descriptors.

I don't remember importing any descriptors in this new wallet.

Remembering that the new generated descriptors generated a new xpriv, I checked it with the true argument.

Detail: I never transferred any funds to this new wallet.

.
 airbet 
██
██
██
██
██
██
██
██
██
██
██
██
██
 .

▄████▄▄▄██████▄
███████████████
███████████████
███████▀▀▀▀████
██████████████
▀███▀███████▄██
██████████▄███
██████████████
███████████████
███████████████
██████████████
█████▐████████
██████▀███████▀
▄███████████████▄
████████████████
█░██████████████
████████████████
████████████████
█████████████████
█████████████████
███████░█░███████
████████████████
█████████████████
██████████████░█
████████████████
▀███████████████▀
.
.
.
.
██▄▄▄
████████▄▄
██████▀▀████▄
██████▄░░████▄
██████████████
████████░░▀███▌
░████████▄▄████
██████████████▌
███░░░█████████
█████████░░░██▀
░░░███████████▀
██████░░░██▀
░░▀▀███▀

  
|.
....
██
██
██
██
██
██
██
██
██
██
██
██
██
.
 PLAY NOW 
1714859347
Hero Member
*
Offline Offline

Posts: 1714859347

View Profile Personal Message (Offline)

Ignore
1714859347
Reply with quote  #2

1714859347
Report to moderator
1714859347
Hero Member
*
Offline Offline

Posts: 1714859347

View Profile Personal Message (Offline)

Ignore
1714859347
Reply with quote  #2

1714859347
Report to moderator
1714859347
Hero Member
*
Offline Offline

Posts: 1714859347

View Profile Personal Message (Offline)

Ignore
1714859347
Reply with quote  #2

1714859347
Report to moderator
There are several different types of Bitcoin clients. The most secure are full nodes like Bitcoin Core, but full nodes are more resource-heavy, and they must do a lengthy initial syncing process. As a result, lightweight clients with somewhat less security are commonly used.
Advertised sites are not endorsed by the Bitcoin Forum. They may be unsafe, untrustworthy, or illegal in your jurisdiction.
1714859347
Hero Member
*
Offline Offline

Posts: 1714859347

View Profile Personal Message (Offline)

Ignore
1714859347
Reply with quote  #2

1714859347
Report to moderator
1714859347
Hero Member
*
Offline Offline

Posts: 1714859347

View Profile Personal Message (Offline)

Ignore
1714859347
Reply with quote  #2

1714859347
Report to moderator
1714859347
Hero Member
*
Offline Offline

Posts: 1714859347

View Profile Personal Message (Offline)

Ignore
1714859347
Reply with quote  #2

1714859347
Report to moderator
Churchillvv
Full Member
***
Online Online

Activity: 392
Merit: 166


Eloncoin.org - Mars, here we come!


View Profile WWW
March 10, 2024, 02:16:42 AM
 #2

I'm not too aquatinted with technical knowledge but from a quick search I just did, such thing happens if you have created or imported an old wallet while the Bitcoin core is running and then you deleted it from the disk while it's still in memory and then you created another one using the same name, it proceeds to write both the deleted and new wallet descriptors to the wallet.dat [1]

This might be totally wrong because from the source I read it from it was specifically for ordinals issues.


[1] https://github.com/ordinals/ord/issues/2719#issuecomment-1866006258

achow101
Moderator
Legendary
*
expert
Offline Offline

Activity: 3388
Merit: 6581


Just writing some code


View Profile WWW
March 11, 2024, 10:13:02 AM
Merited by vapourminer (1), ABCbits (1), nc50lc (1)
 #3

If you've encrypted your wallet since creating it, you'll get new descriptors. This behavior is analogous to the legacy wallet dropping the keypool and generating new keys when encrypting.

Forsyth Jones (OP)
Hero Member
*****
Offline Offline

Activity: 1162
Merit: 618


Press F for Leo


View Profile WWW
March 11, 2024, 05:44:05 PM
 #4

I'm not too aquatinted with technical knowledge but from a quick search I just did, such thing happens if you have created or imported an old wallet while the Bitcoin core is running and then you deleted it from the disk while it's still in memory and then you created another one using the same name, it proceeds to write both the deleted and new wallet descriptors to the wallet.dat [1]

This might be totally wrong because from the source I read it from it was specifically for ordinals issues.


[1] https://github.com/ordinals/ord/issues/2719#issuecomment-1866006258
I still can't prove whether the new wallet descriptors are the same as those excluded by the previous wallet.dat.

If you've encrypted your wallet since creating it, you'll get new descriptors. This behavior is analogous to the legacy wallet dropping the keypool and generating new keys when encrypting.
@achow101 What do you think?

When I have time I will do more tests.

So is it normal behavior for the wallet to create 8 new descriptors, leaving 16 in total after encrypting the wallet?

.
 airbet 
██
██
██
██
██
██
██
██
██
██
██
██
██
 .

▄████▄▄▄██████▄
███████████████
███████████████
███████▀▀▀▀████
██████████████
▀███▀███████▄██
██████████▄███
██████████████
███████████████
███████████████
██████████████
█████▐████████
██████▀███████▀
▄███████████████▄
████████████████
█░██████████████
████████████████
████████████████
█████████████████
█████████████████
███████░█░███████
████████████████
█████████████████
██████████████░█
████████████████
▀███████████████▀
.
.
.
.
██▄▄▄
████████▄▄
██████▀▀████▄
██████▄░░████▄
██████████████
████████░░▀███▌
░████████▄▄████
██████████████▌
███░░░█████████
█████████░░░██▀
░░░███████████▀
██████░░░██▀
░░▀▀███▀

  
|.
....
██
██
██
██
██
██
██
██
██
██
██
██
██
.
 PLAY NOW 
achow101
Moderator
Legendary
*
expert
Offline Offline

Activity: 3388
Merit: 6581


Just writing some code


View Profile WWW
March 12, 2024, 10:12:34 AM
 #5

I'm not too aquatinted with technical knowledge but from a quick search I just did, such thing happens if you have created or imported an old wallet while the Bitcoin core is running and then you deleted it from the disk while it's still in memory and then you created another one using the same name, it proceeds to write both the deleted and new wallet descriptors to the wallet.dat [1]

This might be totally wrong because from the source I read it from it was specifically for ordinals issues.


[1] https://github.com/ordinals/ord/issues/2719#issuecomment-1866006258
I still can't prove whether the new wallet descriptors are the same as those excluded by the previous wallet.dat.
There's no guarantee that all previous descriptors would show up, and certainly not with their private keys. You'd have to do a pretty weird sequence of things for all of the previous descriptor to appear. If that happened, it probably wouldn't load without errors either.

So is it normal behavior for the wallet to create 8 new descriptors, leaving 16 in total after encrypting the wallet?
Yes,

nc50lc
Legendary
*
Offline Offline

Activity: 2408
Merit: 5588


Self-proclaimed Genius


View Profile
March 13, 2024, 09:40:53 AM
 #6

When I have time I will do more tests.

So is it normal behavior for the wallet to create 8 new descriptors, leaving 16 in total after encrypting the wallet?
Even with a total of 16, only the newly generated 8 are the "active" descriptors.
Active ones are the descriptors to be used when requesting addresses in the GUI's receive tab, change address and getnewaddress command.
The inactive descriptors prior to encryption will not be used to generate new keys/addresses but will still be able to track and sign associated transactions.

In your test, you can check each descriptor's active status in listdescriptors command.

.
.HUGE.
▄██████████▄▄
▄█████████████████▄
▄█████████████████████▄
▄███████████████████████▄
▄█████████████████████████▄
███████▌██▌▐██▐██▐████▄███
████▐██▐████▌██▌██▌██▌██
█████▀███▀███▀▐██▐██▐█████

▀█████████████████████████▀

▀███████████████████████▀

▀█████████████████████▀

▀█████████████████▀

▀██████████▀▀
█▀▀▀▀











█▄▄▄▄
▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
.
CASINSPORTSBOOK
▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄
▀▀▀▀█











▄▄▄▄█
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!