Identificar el archivo de la billetera entre la sopa de archivos .dat recuperados

¡Hola mis amigos!

Aquí está mi situación:

Accidentalmente eliminé una partición en mi disco duro que contenía la única copia de mi billetera bitcoin. Facepalm. Después de ejecutar las herramientas de recuperación de datos, encontré y restauré alrededor de 150 .datarchivos. Lamentablemente, el software de recuperación asigna nombres arbitrarios a estos archivos, por lo que no puedo identificar cuál es mi BTC wallet.dat.

Mi pregunta :

¿Existe una forma rápida o una utilidad que pueda confirmar si un archivo .dat es una billetera bitcoin válida? Me gustaría ejecutar un script para recorrer cada uno .daty verificarlo para encontrar la billetera bitcoin entre todos los .datarchivos que recuperé.

En el peor de los casos, solo tendré que intentar importar cada uno, uno por uno (lo que suena como una manera horrible de pasar mi tarde mañana). Todavía soy bastante nuevo en BTC y no estoy familiarizado con el conjunto de herramientas. involucra, así que espero que haya una forma programática de hacer esto: D

Respuestas (2)

Rápidamente verifiqué mi sistema, esto es lo que podría ayudarlo a identificar:

$ file wallet.dat 
wallet.dat: Berkeley DB (Btree, version 9, native byte-order)

$ file blocks/blk00233.dat 
blocks/blk00233.dat: data

y si tiene una herramienta hexdump (esto aquí debería funcionar en sistemas de tipo Unixoide):

$ hexdump -C wallet.dat | more
00000000  00 00 00 00 01 00 00 00  00 00 00 00 62 31 05 00  |............b1..|
... many, many zeros, and from time to time some numbers :-)
00001ff0  04 00 01 00 00 00 02 00  04 00 01 6d 61 69 6e 00  |...........main.|

mientras que los bloks están llenos de números...

$ hexdump -C blk00233.dat | more
00000000  f9 be b4 d9 1f ad 06 00  02 00 00 00 f2 50 36 7e  |.............P6~|
00000010  af 4f e8 37 f7 2f 0f db  8b cf a1 3e 34 73 0d eb  |.O.7./.....>4s..|
00000020  f9 ca 1d 05 00 00 00 00  00 00 00 00 76 89 01 91  |............v...|
00000030  46 d5 24 ed 48 bd ff ed  68 77 3e ca 28 0e b8 74  |F.$.H...hw>.(..t|
00000040  30 73 cb aa 0e 32 d9 91  9f a9 ed 73 b1 d2 e5 54  |0s...2.....s...T|
00000050  87 bb 18 18 90 7d 19 02  fd c6 02 01 00 00 00 01  |.....}..........|
00000060  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  |................|
*

Como no desea hacer esto para todos y cada uno de los archivos, es posible que desee decirle a su sistema qué hacer:

for i in *.dat; do file $i; done
Maravilloso es exactamente lo que estaba buscando, gracias. Usando filedentro de un ciclo for pude encontrar el archivo Berkeley DB.

Aquí hay otra versión, quizás más rápida:

find /my/folder -exec file {} ";" | grep 'Berkeley'

Este comando imprimirá la lista de todos los archivos de /my/folder, que tienen el tipo de Berkeley DB. Por encima de todo, este es el tipo de archivos de la billetera Bitcoin.