Bitcoin Forum
September 23, 2024, 12:07:02 AM *
News: Latest Bitcoin Core release: 27.1 [Torrent]
 
  Home Help Search Login Register More  
  Show Posts
Pages: [1]
1  Bitcoin / Bitcoin Technical Support / Re: Get addresses from wallet.dat on: April 09, 2021, 04:45:43 PM
When it finished I was able to see the addresses I used and verify that they were 0BTC (well, 0.0000008BTC) with blockchain.info.
Why the need for an external site? When it's synced, Bitcoin Core shows the balance already.

Quote
Is there any way to list the addresses without having to download the coin client and synchronize it?
I would download the client and use listaddressgroupings in console. Or just let it sync, that shouldn't take as long for those altcoins.



Please stop the inappropriate use of bold font.

Thank you,  listaddressgroupings  solve my problem. I didn't know that I could list addresses without sync.
2  Bitcoin / Bitcoin Technical Support / Get addresses from wallet.dat on: April 09, 2021, 09:53:29 AM

I have several wallet.dat files of different currencies from a few years ago.

I'm pretty sure they're empty but I'd like to check it out. Since I only have the wallet.dat (I can't remember the passphrase), I downloaded the bitcoin-qt client and loaded the wallet and let it sync.

When it finished I was able to see the addresses I used and verify that they were 0BTC (well, 0.0000008BTC) with blockchain.info.

Now I want to do the same with doge, ltc and a few more.

Is there any way to list the addresses without having to download the coin client and synchronize it?

3  Bitcoin / Bitcoin Technical Support / Re: Wallets from 2014 vs Wallets from 2021 on: April 09, 2021, 09:41:13 AM
Hey guys, thank you very much for your replies. I did not know the answers because bitcointalk did not notify me by email.


Code:
$bitcoin$<length of encrypted key>$<encrypted key>$<length of salt>$<salt>$<derivation method iteration count>$<length of derivation method>$<derivation method>$<length of additional parameters>$<additional parameters>$
<length of encrypted key> is always 64. The encrypted key is a 32 byte key which means it is 64 characters.
<encrypted key> is the encryption key which itself is encrypted with your passphrase. Your passphrase is hashed to get the key that is used to encrypt this encrypted key.
<length of salt> is always 16. The salt is 8 bytes which means it is 16 characters.
<salt> is the salt. It is randomly generated. The salt is combined with your passphrase to generate the key used to encrypt the actual encryption key.
<derivation method iteration count> is the number of times to run the hash function that is used to derive the encryption key from your passphrase.
<length of derivation method> is always 2. The derivation method is stored as a single byte number, so it is always 2 characters.
<derivation method> is an integer that indicates the function to be used to derive the encryption key from the passphrase. Currently there is only one method, SHA512, and it is indicated with the number 0.
<length of additional parameters> is always 2. There are no additional parameters, so it is represented by a single byte of 0, which makes the length 2 characters.
<additional parameters> is always 00. There are no additional parameters, so it is always a 0 byte.


achow101 thank you very much for your detailed explanation. Now I'm sure that the wallet.dat is not corrupted.



The next step is to download and run hashcat and run it with the options hashcat -a 0 -m 11300 <paste the hash here> <dictionary file>. -a 0 stands for attack mode 0 which just uses a dictionary file with a password on each line, it's good if you have a large number of passwords you think you used or you used an easy-to-guess password. There's also a "mask mode" you can toggle to construct a pattern to match each characters of a potential pattern against. -m 11300 interprets the hash as one from a Bitcoin or Litecoin wallet.dat file, and it'll probably work for your dogecoin wallet too. Then you paste the hash

For the hash you need to paste the entire line you for from bitcoin2john.py. Then you need to make a dictionary file or download one from the internet. But if you remember using some unique password then you're probably better off making the file yourself.

Instead of putting the hash on the command line you can also put all 5 hashes in a file and pass that in place of the hash.


So.. I should run

Code:
hashcat -a 0 -m 11300 $bitcoin$64$6a750G4ef1867cff00d941df3d1165c39164b4273aca3c7e57af5adf60183945$16$83c69fe19b89ab31$81501$2$00$2$00

I tried hashcat few weeks ago. It was slower than btcrecover (I think btcrecover uses all cores of GPU). I assume that btcrecover does the same as hashcat but with the wallet.dat file instead wallet hash.



Why is it strange? Huh How do you even know that the "half of the password" is actually correct? Huh Are you assuming that because the "half of the password" worked on some of your other wallets (for ltc/doge etc), that it must also be "half of the password" to your btc wallet? Huh

Unfortunately, you have not way of knowing this is true until you actually find the correct passphrase for the wallet.dat. Undecided

It is entirely possible that the "half of the password" that you believe to be correct, is in fact completely wrong... which would explain why btcrecover is not able to recover the complete passphrase, as if you've given it an incorrect starting point, then btcrecover will never be able to find the passphrase.

That is to say... if the passphrase is: password123
and you believe that the passphrase starts: "abc", then there is literally 0% chance that btcrecover would be able to get end up finding "password123"

Yes, I'm sure that the password is created by my own pattern. I just recover a few other wallets with btcrecover. The key is to create patterns and choose only the characters that I suppose I used. They are words, and in my language + words that I usually use (there are many letters of the alphabet that are not used (w, x, y, k) and special characters I only use three or four). So I think I have a chance of getting them back.

Once again, thank you very much.

4  Bitcoin / Bitcoin Technical Support / Wallets from 2014 vs Wallets from 2021 on: April 06, 2021, 06:30:15 PM
Hello, today I bring you a classic.

I am trying to recover a wallet.dat with date Feb 2014 of which I DO NOT REMEMBER THE KEY !!!
Wait, wait ... Don't go yet, this gets better ...

Actually, I remember half of the password, so I downloaded btc-qt v0.21.0 and loaded the wallet and, initially, there was no problem and I loaded it without errors. Indeed, the wallet is encrypted.

Well, I downloaded btcrecover , as I said, I will only need 4/5 characters to get it and I have a couple of powerful GPUs ...
So I have tried btcrecover with a wallet of btc-qt v0.21 (just created, so I know the key) and I made it difficult for btcrecover. After 19million passwords I got the correct one.

At this point, I tried the wallet from 2014 and there was no way. HOWEVER, I had other wallets from 2015 (ltc, doges) and another from btc from 2016 of which I DID NOT REMEMBER THE KEY. The 2015 ones I didn't get any but the 2016 btc one did found it (I put patterns, etc and it took it out after 3h testing).

Furthermore, the size of the 2014 wallet is 70kb while an empty wallet from 2021 is 1.5mb

I downloaded a snapshot of Arch Linux from 2014 that included the btc v0.9.0 , with which I created the original wallets and YES it's size is 70kb . I changed the passphrase of this one and the key was recovered by btcrecover .

I thought that the format of the Wallet would be different but ... no. I still find it very strange that I do not get the btc key but I do with the other currencies / versions ...

I passed the wallets through the bitcoin2john.py (which I don't know very well what it does, I suppose it decrypts it ... but without a password or anything? Any ideas?) And it got me the next.


Code:
# BTC2014 $ bitcoin $ 64 $ 6a750G4ef1867cff00d941df3d1165c39164b4273aca3c7e57af5adf60183945 $ 16 $ 83c69fe19b89ab31 $ 81501 $ 2 $ 00 $ 2 $ 00
# DGE2015 $ bitcoin $ 64 $ cf76aeFba7fb934a2bec1188374c4e6ba48eec8420a6d31ed60938bfb338f7c5 $ 16 $ 7c764655dce776eb $ 76294 $ 2 $ 00 $ 2 $ 00
# LTC2015 $ bitcoin $ 64 $ 46566411G6f01f736a5b3034a6f08c243c56b2a80f8efae989b82c7f6ce9a16a $ 16 $ 043d2183deb8a8f0 $ 83 052 $ 2 $ 00 $ 2 $ 00
# BTC2016 $ bitcoin $ 64 $ 51af538da4S6ea0ef645c1f3e48235bc154fd223b6b80055384cb23b9b349274 $ 16 $ 41cd67deea8c4a99 $ 292912 $ 2 $ 00 $ 2 $ 00
# BTC2021 $ bitcoin $ 64 $ 7c2ccf1efA605be8bd2b6a5976fb82e1347a3b379212ef2ce06e4bd642fdea80 $ 16 $ 441c84e628c44f46 $ 269046 $ 2 $ 00 $ 2 $ 00


As you can see, those of 2014 and 2015 have one less character. I don't know if this has something to do with it or not.
The btc-qt v0.21 does not give me errors when loading the 2014 and 2015 wallets , in fact it detects the movements that there were. The btcrecover does not show any error either (I don't know, something like the wallet was not formatted correctly or something like that, but no ...)

I'm also not sure what each fields represents:

Code:
 $ bitcoin => currency?
$ 64 => 64 bytes of encryption
$ 6a75 ... 945 => key that I am looking for?
$ 16 => no idea ...
$ 83c69fe19b89ab31 => no idea ... (I have read some salt, which I think is how it is encrypted)
$ 81501 => no idea ...
$ 2 => no idea ...
$ 00 => no idea ...
$ 2 => no idea ...
$ 00 => no idea ...


At this point, I'm a bit stuck. I'm not sure what to do... Before leaving computers for eons trying to get the password, I prefer to exhaust the possibilities and understand well the fields of wallets and everything that surrounds them.

So my doubts are:
1. What does bitcoin2john.py do?
2. What does each field of the wallet represent? ? Link with info?
3. Any ideas about wallet versioning?
4. Any place where I can find technical information of this level?
5. And more importantly ... Any ideas to keep trying to decrypt the wallet?


PS: In 2015/2016 I took out almost all the bitcoins, there were only a few satoshis that today are worth 8€ ... so it pisses me off, but I don't want to commit suicide thinking I'm a millionaire xD
5  Local / Primeros pasos y ayuda / Wallet 2014 vs Wallet 2021 on: April 05, 2021, 08:21:02 PM
Hola, hoy os traigo un clásico.

Estoy intentando recuperar un wallet.dat con fecha Feb 2014 de la que NO RECUERDO LA CLAVE!!!
Espera, espera... No te vayas todavía, que esto mejora...

En realidad, recuerdo la mitad de la clave, así que... me he bajado btc-qt v0.21.0 y he cargado la wallet y, en principio, no ha habido problema y me la ha cargado bien. Efectivamente, la wallet está encriptada.

Bien, me bajé btcrecover, como os digo, me faltarán apenas 4/5 carácteres para sacarla y tengo un par de GPUs potentes...
Así que he probrado btcrecover con una wallet de btc-qt v0.21 (recién creada, por lo q me sé la clave) y se lo puse difícil al btcrecover. Después de 19mill de passwords me sacó el correcto.

Bien, llegados a este punto, como es lógico, probé con la wallet de 2014 y no hubo forma. SIN EMBARGO, tenía otras wallets de 2015 (ltc, doges) y otra de btc de 2016 de la que NO RECORDABA LA CLAVE. Las de 2015 no saqué ninguna pero la de 2016 de btc sí que me la encontró (puse patrones, etc y la sacó después de 3h probando).

Además, el tamaño de la wallet de 2014 es de 70kb mientras que una wallet, vacía, de 2021 son 1.5mb

Me bajé un snapshot de Arch Linux de 2014 que incluía el btc v0.9.0, con el que creé las wallets originales y SÍ que ocupa 70kb. Cambié el passphrase de ésta y me recuperó la clave el btcrecover.

Pensaba que el formato de la Wallet serría diferente pero...  no. Me sigue resultando muy raro que no saque la clave de btc pero sí las del resto de monedas/versiones...

Pasé las wallets por el
Code:
bitcoin2john.py
[/b] (que no sé muy bien que hace, supongo que desencriptarlo... pero sin clave ni nada? alguna idea?) y me sacó  lo siguiente.


Code:
#BTC2014	$bitcoin$64$6a750G4ef1867cff00d941df3d1165c39164b4273aca3c7e57af5adf60183945$16$83c69fe19b89ab31$81501$2$00$2$00
#DGE2015 $bitcoin$64$cf76aeFba7fb934a2bec1188374c4e6ba48eec8420a6d31ed60938bfb338f7c5$16$7c764655dce776eb$76294$2$00$2$00
#LTC2015 $bitcoin$64$46566411G6f01f736a5b3034a6f08c243c56b2a80f8efae989b82c7f6ce9a16a$16$043d2183deb8a8f0$83052$2$00$2$00
#BTC2016 $bitcoin$64$51af538da4S6ea0ef645c1f3e48235bc154fd223b6b80055384cb23b9b349274$16$41cd67deea8c4a99$292912$2$00$2$00
#BTC2021 $bitcoin$64$7c2ccf1efA605be8bd2b6a5976fb82e1347a3b379212ef2ce06e4bd642fdea80$16$441c84e628c44f46$269046$2$00$2$00


Como podéis observar, las de 2014 y 2015 tienen un carácter menos. No sé si esto tendrá algo que ver o no.
El btc-qt v0.21 no me da fallo al cargar las wallets de 2014 y 2015, de hecho detecta los movimientos que hubieron. Tampoco falla el btcrecover (no sé, lo mismo decía que la wallet no tenía formato correcto o algo así, pero no...)

Tampoco sé bien lo que representa cada bloque:

Code:
$bitcoin 				=> moneda?
$64 => 64 bytes de encriptación
$6a75...945 => clave que busco?
$16 => ni idea...
$83c69fe19b89ab31 => ni idea... (he leído algo de salt, q creo q es como se encripta)
$81501 => ni idea...
$2 => ni idea...
$00 => ni idea...
$2 => ni idea...
$00 => ni idea...


Llegados a este punto, estoy un poco bloqueado. No sé bien por donde tirar... Antes de dejar los ordenadores eones intentando sacar la clave prefiero agotar las posibilidades y entender bien los campos de las wallets y todo lo que a ellas rodea.

Así que mis dudas son:
1. ¿Qué hace bitcoin2john.py?
2. ¿Qué representa cada campo de la wallet? ?Link con info?
3. ¿Alguna idea sobre versionados de las wallets?
4. ¿Algún sitio donde pueda encontrar información técnica de este nivel?
5. Y más importante... ¿Alguna idea para seguir intentando desencriptar la wallet?


PD: En 2015/2016 saqué casi todos los bitcoins, se quedaron apenas unos satoshis q hoy valen 800€... así que me jode, pero no me entran ganas de suicidarme pensando que soy millonario xD
Pages: [1]
Powered by MySQL Powered by PHP Powered by SMF 1.1.19 | SMF © 2006-2009, Simple Machines Valid XHTML 1.0! Valid CSS!