Una contraseña olvidada en una billetera antigua de Blockchain.info no tiene por qué significar que los fondos se perdieron. Para los clientes que crearon una billetera hace años y perdieron u olvidaron parcialmente la contraseña, la recuperación por fuerza bruta acelerada por GPU es una opción legítima y a menudo exitosa, siempre que la búsqueda se construya en torno a un modelo realista de lo que la persona probablemente escribió, en lugar de un intento a ciegas por cada combinación posible.
Cómo es realmente una recuperación
Un caso reciente tardó aproximadamente una semana de cómputo continuo en una sola GPU de consumo. A lo largo de toda la recuperación, el proceso analizó bastante más de mil millones de contraseñas candidatas, probadas en lotes cada vez más grandes, porque una búsqueda puramente aleatoria de esa escala tomaría, en la práctica, una eternidad. Los lotes que importan se construyen a partir de lo que el cliente recuerda, frases parciales, palabras probables, sustituciones y errores tipográficos comunes, no a partir de recorrer caracteres arbitrarios.
Por qué importa la aceleración por GPU
Las billeteras de Blockchain.info y Blockchain.com usan derivación de claves PBKDF2 con un número considerable de iteraciones, que es intencionalmente lenta de calcular, ese es justamente el propósito del diseño, ya que encarece la fuerza bruta. Ejecutar la búsqueda en una tarjeta gráfica en lugar de una CPU es más de diez veces más rápido, porque ese mismo paso de derivación repetitivo se paraleliza bien en la arquitectura de una GPU. El hardware para esto cuesta unos pocos miles de dólares y no es especialmente exótico, pero convierte una búsqueda de varios años en una de varios días.
Dónde ocurre realmente el trabajo
Las herramientas de hardware y software involucradas, construidas en gran parte sobre el proyecto de código abierto btcrecover, no son la parte difícil. La verdadera habilidad está en construir la lista de tokens, el conjunto de palabras, frases y variaciones probables que la búsqueda va a probar, lo suficientemente acotada como para que el proceso termine en horas o días en lugar de siglos, pero lo bastante amplia como para cubrir lo que el cliente pudo haber escrito de forma realista.
- Entrevistar al cliente sobre cada recuerdo parcial de la contraseña: palabras, números, una frase, un patrón que suela reutilizar.
- Construir una lista de tokens a partir de esos fragmentos, incluyendo variantes probables de mayúsculas y sustituciones.
- Añadir patrones comunes de errores tipográficos: eliminaciones, caracteres intercambiados, teclas repetidas, caracteres insertados, ya que las contraseñas reales tampoco suelen escribirse perfectamente a la primera.
- Ejecutar la búsqueda con aceleración por GPU, monitoreando el tiempo estimado de finalización a medida que se amplía el conjunto de candidatos.
- Recalcular la búsqueda usando un conjunto de candidatos cada vez más amplio si la pasada inicial, más acotada, no produce una coincidencia.
La tasa de éxito de este tipo de recuperación depende casi por completo de cuánto recuerda realmente el cliente sobre la contraseña, no del poder de cómputo bruto. Una lista de tokens bien construida a partir de unos pocos recuerdos reales supera por órdenes de magnitud a una búsqueda de fuerza bruta sobre todo el espacio de caracteres.
Lo que esto no cubre
Este enfoque funciona específicamente para una contraseña olvidada o parcialmente recordada en un archivo de billetera al que el cliente todavía tiene acceso legítimo, no para una billetera cuyo acceso se perdió por completo, ni para casos en los que falta la frase semilla en lugar de la contraseña. Una billetera protegida con una contraseña totalmente aleatoria y no recordada no es un objetivo realista de fuerza bruta dentro de ningún plazo práctico, sin importar el hardware.
Por qué esto importa más allá del detalle técnico
Las billeteras antiguas de Blockchain.info de la era 2013-2017 son una fuente común de valor atascado: cuentas que la gente creó en los primeros años, olvidó y ya no puede acceder con confianza en la contraseña exacta usada. Entender que la recuperación es realmente posible, y aproximadamente cuánto tiempo toma, cambia el cálculo para mucha gente que tiene fondos que de otro modo habría dado por perdidos por completo.