Weird Wallet Address Behavior Between Two Bitcoin Core Instances

11 replies 95 views
Posts: 13 · Reputation: 221
#1Dec 20, 2022, 01:04 PM
Something strange is happening with my wallets. I'm digging through old USB drives and loaded a wallet.dat file into Bitcoin Core on two different computers. Both are running the same version, but the addresses look totally different. On one machine, I've got an address starting with a 3 that's shown received coins, but it doesn't appear in the receiving addresses list. What gives?
3 Reply Quote Share
Posts: 25 · Reputation: 179
#2Dec 20, 2022, 06:51 PM
We need more info. Are you loading the exact same wallet file on both PCs? What version of Bitcoin Core are you dealing with here? Also, what's the prefix of the addresses? 1 for legacy, 3 for p2sh-segwit, or bc1 for native segwit? Don’t forget, there’s a button in the receive tab to switch address types.
3 Reply Quote Share
Posts: 11 · Reputation: 223
#3Dec 21, 2022, 01:02 AM
Old wallets used to be all over the place with non-deterministic behavior. If you copied the wallet.dat, old keys were accessible on both nodes, but new addresses would be all random after the copy. So now both machines might be making unique keys based on the same old keys.
5 Reply Quote Share
chris2016Member
Posts: 24 · Reputation: 61
#4Dec 22, 2022, 08:03 AM
Thanks for the replies! Found some updates. Machine 1 is offline but updated the blockchain recently, while Machine 2’s blockchain is ancient. Both have the same wallet.dat, or at least a close copy. Both show the same received transactions, but balances differ slightly.
1 Reply Quote Share
Posts: 13 · Reputation: 221
#5Dec 22, 2022, 08:43 AM
I'm still lost here... Are you seeing addresses starting with 1, 3, and bc1 on both machines? Those starting with 1 are legacy, 3 for p2sh, and bc1 for newer segwit. Did you play around with multisig or use the console for different types of addresses?
3 Reply Quote Share
chris2016Member
Posts: 24 · Reputation: 61
#6Dec 22, 2022, 02:50 PM
No multisig here. I think the real issue was that Machine 1 saw used addresses and hid them. Machine 2 was generating new addresses 'cause it didn’t know better, making it seem like they were out of sync. Finally found an unused address on both.
1 Reply Quote Share
Posts: 13 · Reputation: 221
#7Dec 24, 2022, 07:46 PM
Glad you found a solution! By the way, there's a command called "listreceivedbyaddress 0 true" you can use in the console. It should show all addresses that ever received funds. The 0 shows it includes unconfirmed, and true means it counts watch-only addresses.
1 Reply Quote Share
chris2016Member
Posts: 24 · Reputation: 61
#8Dec 25, 2022, 12:11 AM
That’s interesting. I ran that command on both machines, and they showed a legacy address funded the same. But Machine 2 showed a p2sh address with more coins. How can both show received coins but not match up?
2 Reply Quote Share
Posts: 13 · Reputation: 221
#9Dec 26, 2022, 01:42 AM
Feels odd that both machines show the same p2sh address, yet only one lists it in the command output. Maybe the wallets are just out of sync, or the transaction funding that address is unconfirmed or not fully recognized yet?
3 Reply Quote Share
chris2016Member
Posts: 24 · Reputation: 61
#10Dec 26, 2022, 02:24 AM
Try restarting Bitcoin Core and perform "rescanblockchain" on both wallets. That should update the transaction history and give you matching results for "listreceivedbyaddress" on both machines.
2 Reply Quote Share
0xNodeMember
Posts: 257 · Reputation: 80
#11Dec 27, 2022, 06:14 PM
Older legacy wallets generated keys randomly and when those ran out, new keys were created. If you're recovering from backups, you could seriously miss some newer keys and hence lose access to coins if you're not careful.
3 Reply Quote Share
Posts: 53 · Reputation: 37
#12Dec 27, 2022, 06:41 PM
So there’s a real risk of losing access to coins just from messing with backups? That's kinda scary... Guess I better keep a closer eye on my wallet management.
6 Reply Quote Share

Related topics