Hechos clave:
-
Cerca de 1 millón de transacciones con timelocked no fueron aplicadas con precisión por la red.
-
Esto será más importante mientras las comisiones por transacción cobren más peso en la red.
Según muestra una nueva investigación, un amplio error ha comprometido a un tipo especial de transacciones de Bitcoin, las cuales se suponen que disuaden a los mineros de hacer trampa.
En un reporte publicado a finales de abril, el ingeniero bajo el pseudónimo 0xb10c, descubrió que más de un millón de estas transacciones de bitcoin con timelocked (bloqueo en el tiempo) realizadas entre septiembre del 2019 y marzo del 2020, las cuales no fueron aplicadas con precisión por la red. Esto incrementa el riesgo de una hipotética forma de ataque en el cual los mineros podrían básicamente robarse bitcoins unos a otros. Este fallo afecta al 10% de las transacciones con timelocked, o el 2% de las transacciones de bitcoin en general.
Estos hallazgos resaltan una área clave de la investigación de bitcoin, la cual tiene el fin de disuadir a los mineros de la intención de acumular mucho poder o de hacer trampas de diversas maneras, de forma que la criptomoneda más grande del mundo, con una capitalización del mercado valuada alrededor de los USD 173 mil millones, funcione tal como se diseñó. Además, según 0xb10c, es una de las redes globales de desarrolladores e investigadores que prueban en batalla la red, para estar en guardia contra incluso ataques teóricos, que hasta el momento no han sido ningún problema.
Una transacción de bitcoin con timelocked evita que el receptor de los bitcoins tenga acceso a estos de una vez. Es decir, la persona debe esperar hasta que la red añada una cantidad de bloques a la cadena. Dado que a cada nuevo bloque le toma alrededor de 10 minutos en ser grabado, un timelocked puede ser programado para expirar en un momento aproximado en el futuro al configurar una altura de bloque correspondiente.
Un caso de uso para esta función es como una forma de derecho de adquisición, por ejemplo, la iniciativa de Blockstream les ha pagado a sus empleados con transacciones de bitcoins con timelocked, lo cual teóricamente los incentiva a hacer lo que es mejor para el valor a largo plazo de la red.
Sin embargo, las transacciones de bitcoin con timelocked defectuosas que fueron detectadas por 0xb10c tienen un propósito más inmediato. Siendo establecidas para el bloque inmediato, de manera que no sean válidas hasta un bloque después, estas están diseñadas para hacer que “una estrategia de minado posiblemente disruptiva, llamada cobro de honorarios, sea menos rentable” aclaró 0xb10c.
Con el cobro de honorarios, un minero malicioso puede intentar reemplazar el bloque que alguien más acaba de minar con su propio bloque, incluyendo la misma transacción además de posiblemente otras transacciones que todavía están pendientes. El timelocked evita que esto suceda, limitando así el botín del ataque, de manera que no valga la pena intentarlo.
Las transacciones de bitcoin con timelocked a largo plazo
Las probabilidades de dicho ataque podrían aumentar, mientras que las comisiones de las transacciones las cuales utilizan los usuarios para priorizar sus pagos, se convierten cada vez más en fuentes de ingreso más importantes para los mineros. Justo ahora, los mineros dependen más que nada de las recompensas de bloques de los nuevos bitcoins emitidos para cubrir sus costos. Sin embargo, este flujo de ingresos disminuye a lo largo del tiempo, tal como muestra el reciente halving de la red de Bitcoin.
“Actualmente no ejecutar un timelocked a una altura del bloque absoluta no tiene consecuencias para la mayoría de las transacciones. En unos pocos años, cuando la recompensa por bloques consista principalmente de las comisiones de transacción, esto podría hacer que el cobro de honorarios fuese más rentable.”
Ingeniero bajo el pseudónimo 0xb10c.
Es por ello, que el fallo podría ser perjudicial para toda la red. Pero justo ahora, probablemente esto sea un problema de “baja prioridad” dado que arreglar esto, representa para la mayoría de servicios de carteras, que los usuarios pierdan su dinero o que no afecten a los timelocked establecidos sino para más a futuro, mencionó 0xb10c.
Además, el fallo es una fuga de privacidad para los usuarios. El timelocked formado de manera extraña es diferente de todos los demás timelocked, de manera que es sencillo para los mirones de la blockchain ver que la transacción viene de una cartera particular.
Muchas de las transacciones defectuosas que detectó 0xb10c, fueron realizadas por una única gran entidad, la cual no nombraron. El ingeniero contó que se aproximó a la entidad que estaba produciendo el software fallido, quien respondió “profesionalmente” según dijo, surgiendo con una solución al problema. Sin embargo, podría tomar un tiempo para que la solución se despliegue. Al respecto, afirmó:
«Un arreglo para esto ha sido liberado a inicio del 2020. Sin embargo, tomará algo de tiempo, antes de que todas las cuestiones del software actualmente desplegado sean mejoradas».
0xb10c, espera que su investigación traiga conciencia sobre el riesgo de los ataques de cobro de honorarios, de manera que las carteras que aún no han sido configuradas de manera correcta, puedan hacer ajustes realizando transacciones de bitcoin con timelocked, de esta forma la red de Bitcoin será un poco más robusta.
Este personaje, el ingeniero bajo el pseudónimo 0xb10c, fue capaz de localizar y contactar con la principal entidad productora de estas transacciones desechadas, pero existen otros cometiendo los mismos errores.
“Es difícil hallar la implementación correspondiente que crean estas transacciones” destacó 0xb10c. “Algunas de estas incluso podrían no ser de fuente abierta, lo que lo haría aún más difícil”.
Versión traducida del artículo de Alyssa Herting, publicado en CoinDesk.