Bitcoin Core · wallet.dat
Recuperar la contraseña de un wallet.dat
Son los casos más antiguos que llegan, y a veces los más agradecidos: contraseñas de 2011 a 2014, puestas cuando aquello no valía nada, con parámetros de derivación más débiles que los de hoy y con dueños que todavía recuerdan sus costumbres de entonces.
Qué hay dentro del fichero
Un wallet.dat no está cifrado del todo: lo que está cifrado es la clave maestra, y con ella las claves privadas. El resto —direcciones, etiquetas, metadatos— suele poder leerse sin contraseña. Eso tiene una consecuencia útil: se puede comprobar de qué monedero es el fichero, y cuánto tiene, antes de intentar nada.
Dónde está
- Windows
%APPDATA%\Bitcoin\wallet.dat, o%APPDATA%\Bitcoin\wallets\<nombre>\wallet.daten versiones modernas- macOS
~/Library/Application Support/Bitcoin/- Linux
~/.bitcoin/- Dónde más buscar
- Copias de seguridad antiguas: discos externos, imágenes de Time Machine,
backup.dat, CD y DVD grabados en su día, cuentas de correo donde te lo mandaste a ti mismo.
Qué protege la contraseña
Bitcoin Core deriva la clave con SHA-512 iterado un número de veces que no es fijo: al cifrar la cartera, el programa calibra las iteraciones para que la derivación tarde en torno a una décima de segundo en la máquina donde se hizo. Un portátil de 2012 dejó un número de iteraciones bastante más bajo que un equipo actual, y ese número viaja dentro del fichero.
En la práctica, el orden de magnitud para un equipo doméstico está entre diez y cien intentos por segundo. No es rápido, pero tampoco es scrypt: con un espacio de búsqueda bien acotado por lo que recuerdas, caben millones de candidatas en unos días.
Cuándo tiene solución
- Recuerdas la contraseña a trozos, o recuerdas qué contraseñas usabas en esa época. Esto es lo más frecuente en carteras antiguas: la gente reutilizaba.
- La pusiste hace más de diez años, cuando las contraseñas de la gente eran más cortas y más humanas.
- Tienes el fichero original o una copia íntegra. Con el fichero se puede confirmar el saldo antes de decidir si merece la pena.
- Recuerdas el idioma y el teclado con el que escribías entonces, y si usabas tildes o eñes.
Cuándo no
- No tienes el fichero. Aquí no hay atajo: el
wallet.datno está en ninguna parte de la red, es un fichero tuyo y si no existe, no hay caso. - El fichero está truncado o corrupto y no contiene la clave maestra completa. Se puede comprobar antes de firmar nada.
- La contraseña era aleatoria y larga, y no recuerdas ni su longitud.
- Lo que tienes es un disco formateado o un portátil tirado hace años: eso es recuperación de datos, no de contraseñas, y es otro oficio.
wallet.dat antiguo con una versión moderna de Bitcoin Core puede migrar el formato del fichero, y una migración a medias sobre el único ejemplar que te queda es la forma más tonta de perder una cartera que sí tenía solución.Qué necesito para el estudio
- El tamaño del fichero y si es el original o una copia, y de dónde salió.
- Con qué versión de Bitcoin Core lo creaste y cuándo, aunque sea aproximado.
- En qué equipo lo cifraste, si lo recuerdas: influye en las iteraciones.
- Todo lo que recuerdes de la contraseña, descrito con palabras.
- Una dirección de esa cartera, si la tienes: sirve como prueba de propiedad y para confirmar el saldo.