Oddbean new post about | logout
 holy shit, minor panic

rearranging my mini pc and forgot to take care to back up my wallet

but i already found several copies of it

and once i restore this thing

the seed is going to hard copy

never again

this is a purgatory i am in now without complete certainty that i have control of this 
 i have an online wallet with more than pocket money? 
 *do u have 
 this is the result of me playing silly with zfs

never zfs, not even once

bsd can go to hell

no bitcoin wallet is secure without a physical hard copy of the seed or secret in some form 
 You got this. Will be watching for good news in a few min 
 i'm still in panic, i have old versions of the file but that is not gonna cut it

i did not know that bitcoin core doesn't use HD wallet by default

btcwallet has only used that always, since i ever worked with it

i am horrified, and transfixed, i need a coffee 
 Huh. This is beyond my level... How does the HD-ness make a difference? I thought that meant your wallet software could generate random strings for addresses. 
 HD means it's literally 32 bytes to recover a whole wallet

non-hd means you have to have every single private key of each address you have UTXOs on

there is a reasonable chance i'm gonna find this because i literally made a backup of this shit just today, which is after when i last moved things around 
 i literally was bumbling through this with my full node not even realising that i had not actually taken care to ensure i had a backup of my keys... i am such a :ooof: 
 for those who don't get it, i may have burned some bitcoin tonight

there is a good chance i can fix my mistake but this is super cereal and i'm in a total situation right now 
 Update? 
 This will probably take up my Sunday to resolve

Everything else is on pause. I have at least one copy of it for sure, but it will take time to run the search.

Second option will be more hacking involving possibly modifying a wallet search tool that already told me on both disks there are dozens of copies.

I mill find it. At least one copy exists of the newest.  My worst case projection is I lose the newest utxo or maybe two newest. That will hurt but not so bad as allp 
 You got the .dat file? What else is needed? This is all new to me. After you restore the wallet, can't you fetch addresses until you find all the utxo's? 
 The dat files I found already are ancient, they don't have anything current 
 So sorry to hear… I also lost some bitcoin this way when I first got started with bitcoin and was using Bitcoin Core, because I didn’t have a hardware wallet yet. It was quite a hard and off putting lesson 
 Update on progress, currently duplicating the main disk where the original was located. Soon will have two copies of both drives meaning I can restart the process if I fail somehow during the recovery

I'm really leaning towards starting with a tool that scans the raw volume and dumps what should be the full wallet file plus extra bits after. So far not having the greatest success with testdisk but once this is done copying I might try on the backup disk anyway, just haven't been able to make sense of the variety of disk dimensions it has been showing, like which one... Really just to have it scan from all filesystem roots looking for the file seems like what it should be doing.

I will explore the wallet file searcher first I think. At least see how it can be made to dump the possible files to disk 
 Maybe you jotted it down and forgot. Anyways, keep us posted. Sounds like I could learn from this. 
 nondeterministic wallets each change address is randomly generated out of nothing, HD means they are derived from a seed in a way that can be easily recovered if you have the seed

nondeterministic wallets you MUST back up the file, and every new address on it is missing from earlier backups compared to new ones

these are UTXOs private keys

i'm pretty sure i have got them on the disks i just wiped the partitioning information, repartitioned, so that part of the disk is mangled but it's at the front of the disk, the rest should be pretty much intact 
 Okay, sounds familiar. I'm reading stuff now, but what I'm trying to find is - is it only the wallet that's HD or is there a difference in initial key generation that allows HD derivations 
 There is a seed for HD but nondeterministic keychains use a cryptographically secure pseudorandom generator, on Linux it's /dev/random these random numbers are very secure but they come from nowhere and have no relation to each other

HD keys take a secret, concatenate a specific, usually number based string to the end of it, and then hash the joined string of bytes, and that is a new key. The schemes can also I think actually work from a seed that is made from the seed so if one derived secret is leaked the others are not revealed

These kind of keychains can back up a wallet containing hundreds of keys with just 12 or 24 word ciphers. 
 bitcoin core USED to do nondeterministic