El software original de BTCrecover (o lo que creo que es) parece llevar años sin actualizarse, y he visto que hay varios usuarios que han clonado el repositorio y lo han evolucionado un tanto a su manera. Queda claro que, sea con el software original, o una derivada, uno ha de tener cuidado con lo que instala y ejecuta, y para pruebas, sería mejor establecer una máquina virtual a tales efectos.
He localizado un video del 2020, donde su autor ya anotaba tiempos máximos (en el peor de los casos) de entre 15 y 50 en sus entornos. De hecho, en la prueba que grabó para el video tardó 11 minutos.
Ver (El acento no es trivial para todos):
https://www.youtube.com/watch?v=ruSF8OKwBRkHay un aspecto a destacar en lo que observo en el video anterior: Usa una dirección ya conocida de la wallet como uno de los parámetros. Más específicamente, usa la primera dirección, aunque puede usar otra y cambiar los parámetros. Esto entiendo que facilita que se acelere el proceso. El comando Python es relativamente sencillo de usar para el usuario.
El video habla de que, si no se tiene una dirección de la wallet, se puede usar una AddressDB, y cita que en otro video lo explica (no lo he buscado). En la documentación de BTCRecover cita como crear y usar una address DB. Si no te la bajas de algún lado, parte de derivarla a partir de la blockchain completa de Bitcoin:
https://btcrecover.readthedocs.io/en/latest/Creating_and_Using_AddressDB/Entiendo por tanto que este proceso sería más largo de ejecutar (*) que no el que parte de la guía de una dirección BTC ya conocida de la wallet, y que además requiere que exista una TX onchain ya realizada para que una dirección de la wallet exista al derivar la AddressDB (para qué hacer el ejercicio si no).
No obstante, la documentación dice que el tiempo es
casi igual realizando la prueba contra 1 dirección BTC ya conocida que una BD con 600K direcciones. Claro que ahora mismo la blockchain contiene más de
1,1M 1,110,878,796 direcciones distintas, y todo dependerá del equipo un tanto más de lo que dice la documentación a mi entender:
https://studio.glassnode.com/metrics?a=BTC&category=Addresses&m=addresses.CountA destacar que la solución parece autosuficiente en base a Python, y sólo hace falta la blockchain si hemos de derivar una nueva AddressDB.
Nota: El software permite trabajar sobre más casos de uso, como sería por ejemplo que conozcamos la posición de determinadas palabras, que desconozcamos otras (la palabra en sí), wallets ETH, etc.