Durante un sorteo realizado por Alistair Milne, el desarrollador de Bitcoin John Cantrell pudo hackear una wallet que contenía 1 BTC, una hazaña que realizó en menos de 48 horas.
Alistair Milne, inversionista y empresario de criptomonedas, anunció un sorteo de Bitcoin hace varias semanas, en el cual el ganador obtendría la cantidad de 1 BTC, valorado actualmente en 8.542 € (9.626 $ USD), si lograba resolver los acertijos y las pistas dadas por Milne. En el sorteo Milne proporcionaría pistas para que los participantes descubrieran cuál era la frase semilla mnemónica de 12 palabras que contenía el monedero; para esto únicamente Milne proporcionó 8 de las 12 palabras de la frase semilla de forma aleatoria y en intervalos de tiempo regulares. Ahora, recientemente, el desarrollador de Bitcoin y Lightning Network, John Cantrell, anunció que pudo resolver el acertijo y hackear la wallet con el bitcoin que contenía.
Aunque para el momento de realizar su anuncio, muchos usuarios de Bitcoin comenzaron a alegar que Bitcoin ya no es seguro, motivo por el cual Cantrell publicó un hilo en sus cuenta de Twitter mencionando que Bitcoin sigue siendo seguro y que este fue un ejercicio cuyo objetivo no era comprobar la seguridad de Bitcoin.
Así mismo, Cantrell publicó un artículo donde describió todo el proceso que había realizado para lograr descifrar la frase semilla de la wallet, resaltando que tuvo que probar un trillón de palabras diferentes para lograr resolver los acertijos en menos de 48 horas.
Te puede interesar: Alerta: Fondos de los usuarios de Lighting Network pueden estar en peligro de robo
Desafío de Bitcoin explicado por John Cantrell
En primer lugar Cantrell señala que con solo 8 de las 12 palabras de la frase tenía que probar 1,1 trillones de palabras mnemotécnicas para descubrir la frase. Así mismo, Cantrell señaló que para poder probar una única mnemónica, debía generar una semilla a partir de la clave privada maestra (Master Private Key) mnemónica que era generada a partir de la semilla, además de una dirección a partir de la clave privada maestra.
Cantrell luego nos explica que creó una versión de CPU en Rust con la finalidad de comparar el rendimiento de un solucionador de CPU, pero que su ordenador solo pudo verificar alrededor de 1.250 mnemónicos por segundo; por lo que comprobar el trillón de mnemónicos le hubiese tomado aproximadamente 25 años, algo para nada alentador.
Luego de este ensayo, Cantrell optó por probar todo el código necesario para generar y verificar la frase mnemónica con el lenguaje de programación OpenCL C, que le permite ejecutar códigos en una GPU. Desde esta versión, Cantrell señala que pudo comprobar alrededor de 143.000 mnemónicos por segundo, por lo que solamente le tomaría unos 83 días comprobar el trillón de mnemónicos y descubrir la frase semilla del monedero. Ahora con este método, Cantrell revela que gastó poco más de 350 dólares alquilando equipos de GPU para agrupar lotes de 16 millones de mnemónicos por cada GPU, los cuales registraban los resultados en el servidor.
Por otra parte, Cantrell revela que pensaba que otras personas estaban haciendo el mismo procedimiento que él, por lo que una vez pudo acceder al monedero decidió pagar una tarifa de 0,01 BTC en las comisiones de los mineros para que confirmaran su transacción antes que cualquier otro.
Bitcoin sigue siendo seguro
A pesar de la gran hazaña que realizó, Cantrell afirma que Bitcoin sigue siendo seguro para los usuarios. En un hilo publicado en Twitter Catrell comenta que afirmar que Bitcoin ya no es seguro es una conclusión falsa, y que los usuarios no deben preocuparse por la aplicación de fuerza bruta para hackear un monedero.
De igual forma el desarrollador señala que pudo realizar el hackeo de la wallet porque Milne ya había proporcionado 8 de las 12 palabras de la frase semilla, así que si los usuarios quieren mantener sus fondos seguros no deben publicar ninguna de estas palabras en ninguna parte.
Por su parte, en su publicación también señaló que con las 8 palabras de la frase aún le quedaban por resolver las 4 restantes, por lo que necesitaría probar aproximadamente 1 trillón de mnemónicos para revelar la clave completa.
“Con 8 palabras, eso significa que sabemos 8 * 11 u 88 bits de los 128 bits que estamos tratando de resolver. Significa que hay ‘solo’ 2 ^ (128–88) o 2⁴⁰ posibles mnemónicos que tendríamos que verificar. Esto es 1,099,511,627,776 o aproximadamente 1.1 trillones de mnemónicos posibles”.
Así mismo, señaló que si un usuario decidiera invertir en el alquiler de equipos, incluso en equipos ASIC, tendría que gastar una suma millonaria para realizar esta hazaña partiendo sin ninguna pista. Por lo que esta hazaña nos demuestra la importancia de mantener seguras y protegidas nuestra frase semilla en todo momento, si no queremos perder nuestros fondos.
Continúa leyendo: Argent Ethereum presenta una grave vulnerabilidad de seguridad que puede poner en riesgo los fondos de los usuarios