Accessing/viewing/using funds in an old (2014-ish) LTC Core wallet.dat file

Dear LTC-ers

Sorry for the long post. Please skip to ‘Things I Have Noticed’ after reading the next paragraph if you don’t want the full explanation. The full explanation might help people who are trying to get coins off an old wallet so thought I would keep it in.

The gist of the first part is that I have accessed the old wallet.dat file and have the passphrase but now cannot get access to the balance that appears to be on there as the old transactions don’t seem to be found on the blockchain, and so the balance has been essentially ‘unconfirmed’ for years! I did find some posts from other people with a similar issue but I’m not allowed to post links. Two of them did not seem to get suitable responses and another one solved it by downloading the recent Core and re-syncing (I have tried that).

Problem:

I know there’s been quite a lot of messages in this and other forums asking about accessing funds from an old LTC wallet.dat file. I have read as many as I could and learnt a bit but still don’t seem to have a concrete answer about how to find/access any old funds that may be in a wallet. I would be grateful if anyone can help, and I’ve tried to explain everything as clearly as possible, and maybe it might help someone else if not me.

Background:

I’ve had at least one Litecoin wallet on an old PC that we got rid of. I kept a few wallet.dat files I moved off the PC and thought there was likely a small amount of ltc on at least one of them, but not enough to worry too much about before. I have tried maybe once in the past but had no luck finding any viable wallet as I think the Core kept crashing before it synced or something, so gave up. I have decided it is about time to see what’s on there, and have a proper go during the cold winter nights

What I had:

I have/had several old wallet.dat files mostly from about 2015 or earlier when we got rid of an old PC. I know some of the wallet.dat files are for oldskool crypto like PPC/XPM so most probably have almost zero financial value at this time. I know I have at least one LTC wallet which had some use, and probably still has some LTC in there, so may have some value. I have two main passphrases in my head that I probably used for the wallets.

What I’ve done:

I backed up all the wallet.dat files, then downloaded a few different version of Litecoin Core. I tried installing some of the Core software (I figured an older version of Core should be best initially, but also tried modern versions later on with same result), adding one of the old wallet.dat files at a time, and then shutting them down and restarting to see if the wallet works or shows anything. Then repeating until I found a Litecoin wallet which showed something immediately and that it was also locked with a passphrase, long before the wallet had synced (to get the whole blockchain to sync is nearly 200GB I found without pruning).

The wallet that showed something shows three transactions, one going into the wallet and two coming out. I was given some hope by the fact the wallet is showing more LTC coming into the wallet than going out, suggesting I might have something in there. The transactions were all from late 2013 and early 2014 and used the older address format [34 alphanumeric digits starting with – Lc or Lu] or similar.

I found the correct passphrase to unlock the wallet (one of the two I I had in my head that I thought it would be) and then allowed the wallet to sync. I tried various commands to dumpprivkey in the console, showbalances etc (I tried this in the v21 Core and in and I think two older versions - v10 and v13 I think it was). There seems to be more commands in the recent version. With the commands I was able to find/show a few different addresses linked to the wallet/account and pasted them elsewhere to keep a record, they were all in the same 34 alphanumeric format as above.

I unlocked the wallet in the console using:

walletpassphrase passphrase time

Once the wallet was unlocked I used:

dumpprivkey 34digitaddressbeginningwithL

This then gives me a private key beginning with T, which I think is 52 alphanumeric digits.

If I put this private key into the liteaddress(dot)org form and click on the wallet details tab it gives me the ‘compressed’ L address above linked to the private key, it also gives me an ‘uncompressed’ litecoin address which is a different 34 digit address beginning with L. It also gives me an uncompressed private key beginning with 6, and also other private keys and public keys.

I have downloaded Electrum wallet and imported the addresses linked to the wallet.dat using the private keys I got from the console. These addresses added to Electrum fine but show no balance or history.

Things I have noticed:

Although the commands in the console work they only seem to show me information about transactions that are in the wallet. Every address I try to find a balance initially showed 0. After trying a few commands I found that if I try the command (in v13.2 of Core) ‘listaccounts’ in the console on the top line it gives:

“”: [negative ltc balance (showing the total outgoing transactions only)]

On the second line it gives " ": 0.000000

[note above the “” on the top line then the " " on the next line which I think refers to the default account and then subaddresses of the account]

Underneath that it shows three litecoin addresses with zero balance.

I believe the command above shows the balance in the account which is confirmed by at least one transaction. If I do the same command but with ‘listaccounts 0’ I believe it shows the balance without any confirmations. When I put this command in it gives me the same as above except the top line is showing the expected positive balance (transactions in minus transactions out). I get the same negative and then positive balance if I do the ’ getbalances “*” ’ and ‘getbalances “” 0’ commands respectively.

Therefore there does seem to be some evidence there may be some ltc in the wallet. I am wondering first if the balance is associated with the account instead of a specific address, and that is why it didn’t show up for any of the addresses themselves but does for the wallet/account?

The Core wallet itself shows the transaction history and address of the three transactions in the wallet but if I try to search for any of the addresses in the history on any of the blockchain explorers they all show 0 or no record of any transactions or balances in them, and the same for the address that the ltc was sent into my wallet from which must have had some history. If I try to search for transactions on explorer using the transaction IDs from the history in the wallet, they show up as having no record, when clearly they did happen according to the wallet history, and the wallet would not have made them up. I would have to had received some ltc in to have then sent some out, and as far as I know I did send some out twice to the same address successfully as the received received the funds as far as I recall.

I also noticed the wallet only unlocks using the console, there is not an option in the Core to unlock it as far as I can see. I’m sure originally there was an option in the wallet to unlock it rather than having to do it in the console.

There seemed to be no noticeable difference in the wallet when first opened in the un-synced Core or when the whole full blockchain had been downloaded/synced suggesting there is no interaction between the blockchain and the wallet addresses. It almost seems as if the wallet is stuck in the past and is not interacting with the blockchain and the modern Litecoin network. I know the modern Litecoin addresses start with ltc and there have been some changes over the years but I am not sure how this affects the old wallet and addresses. It seems like there is no link between the old and the new network.

Help!?

Does anyone have any idea of what can be done to at least definitively check what is in the wallet? If there was 0 balance and zero activity or if it was showing equal litecoins in and out I would be ok with that. If all in the wallet has been spent but something is not updated I am ok with that. The fact there seems to be a surplus of ltc (which I thought there might be before checking it) but I can’t seem to find them is a bit frustrating, but the facts I can’t find any history of the transactions which must have happened evident on he blockchain gives me some hope it might be quite a simple thing to fix once everything is updated correctly.

Can anyone explain why the transactions in the wallet (and in/out of the wallet with other addresses) show as not existing on block explorers and what this means for the balance of the wallet? What’s the point of a blockchain that doesn’t retain its history when it’s needed? Can anyone explain how these old addresses interact with the modern ones? There may be a something very basic I am not doing. Maybe I need to convert the addresses or keys to a different format, or need to use an older or different format version of the blockchain? Will any balance be attributed to the wallet/account itself or is it only to a specific address within the wallet? This isn’t quite clear to me. Could there be other addresses used in the wallet that I can’t see that might have a balance?

Is there anything else I can do with the private key? If I try to recover a wallet on any other software apart from Electrum they seem to only ask for 12 recovery words which I would never have had for this wallet. The Electrum wallet seems to find and add the compressed or uncompressed addresses when the (compressed or uncompressed) private key is imported but does not show up any old transactions or any balance, and also does not appear to interact with the old network just like the wallet and console were doing in Core. It’s like these old addresses and wallets are carrying dead information which can’t be accessed with modern technology. I also just tried to import the private key into Guarda wallet as I saw it has a private key import option but it did not seem to accept any of the private keys.

Is there some sort of settings, commands, or other things I can do in the v21 or 13.2 wallet that will find proof of the old transactions or any balance? I currently have v21 loaded and fully synced with full blockchain downloaded on a PC and the v13.2 partially synced on a laptop. I wondered if rebroadcasting transactions or abandoning them might help. Would anything happen if I abandoned transactions? What about the command fundrawtransaction?

I have just tried broadcasting transactions in the v21 wallet as it has the option, and got this message in the debug log:

-submitting wtx [TX no.] to mempool for relay

-RebroadcastTransaction(): Transaction cannot be broadcast immediately, bad-txns-inputs-missingorspent

I have also since decoded the transactions in the history and it found two addresses I had not found before, one being the external address I received the initial funds from (but when I search on the explorers it shows no balance or history), and the other being another address in the wallet/account I had not found before. This new address shows up with the right balance but only when I search for transactions received with 0 confirmations. I got the private key for that address and added it to Electrum but it does not show any balance.

I saw one mention in a post about an HD wallet. Would having or not having one make any difference? The HD symbol is currently greyed out in the v21 wallet and not present in the v13 wallet.

I’ll happily donate 10% of the contents (it’s not a massive amount) of the wallet to anyone who can provide some definitive help if I am able to recover any contents. Please only respond in the public forum so it may help others, and please do not ask for any private key, passphrase etc.

Thanks in advance,

LnC

8 Likes