El riesgo de doble gasto persiste tras la bifurcación de Bitcoin del 4 de julio
Una bifurcación en la red Bitcoin ha planteado problemas respecto de cómo los participantes clave en la red de pagos procesan y confirman las transacciones.
La implementación retrasada de una actualización de Bitcoin CORE por parte de un pequeño número de mineros de la red resultó en la adición de bloques de transacciones no válidas a la cadena de bloques de Bitcoin este fin de semana.
El resultado fue una bifurcación en la red que creó dos versiones de la blockchain de Bitcoin , que se prolongó durante seis bloques el 4 de julio. Al día siguiente, se añadieron tres bloques inválidos adicionales a la blockchain, repitiéndose el problema.
Como resultado, los desarrolladores de CORE emitió una advertencia en Bitcoin solicitando que los proveedores de billeteras pongan mayor escrutinio en las transacciones entrantes debido al riesgo de que los fondos puedan gastarse dos veces como resultado de la discrepancia entre cadenas.
La publicación, que todavía está activa en el sitio web, recomienda a estas entidades esperar 30 confirmaciones adicionales antes de considerar que las transacciones son válidas.
Raíz del problema
En el centro de la cuestión se encuentra, sin duda, la naturaleza descentralizada de la cadena de bloques de Bitcoin y el grado de control que tienen sus participantes sobre cómo contribuyen a la verificación de las transacciones en el libro de contabilidad distribuido de la moneda digital.
Esta capacidad de los usuarios de tener cierto control sobre cómo interactúan con la red, por ejemplo, da como resultado que los mineros puedan ignorar los cambios de software y que la red continúe funcionando incluso si lo hacen.
Como medida de precaución, los desarrolladores de CORE han optado por esperar a que la mayoría de los mineros implementen los cambios. En este caso, BIP66 – una bifurcación suave de Bitcoin diseñada para hacer que la red sea menos dependiente del análisis de firmas de OpenSSL – declaró que ciertos bloques de transacciones creados sin esta actualización se considerarían inválidos una vez que la mayoría – 950 de 1.000 bloques – se extrajeran con la última versión.
En teoría, el riesgo de un problema era bajo, ya que solo el 5% de la red utilizaba la versión obsoleta de BIP66. Sin embargo, en la práctica, tres grupos que ejecutaban versiones ligeras de elementos de software lograron procesar seis bloques consecutivos que deberían haber sido inválidos, creando dos versiones de la cadena de bloques de Bitcoin , la más larga de las cuales operaba con un software más antiguo.
En este caso, ciertos pools de minería fueronMinería SPV, lo que significa que no validaban la versión completa de la cadena de bloques de Bitcoin . A su vez, estos bloques inválidos eran considerados válidos por los proveedores de billeteras de Bitcoin y los exploradores de bloques que ejecutaban versiones SPV del software, en lugar de nodos completos con el historial completo del libro mayor.
Fabio Federici, CEO del proveedor de inteligencia blockchain Coinalytics, explicó a CoinDesk:
Los clientes de SPV afirmaban que Síguenos las reglas BIP66, pero en realidad no las aplicaban. Gran parte de la red minera no funciona en nodos completos, lo que validaría cada transacción.
Aunque fue iniciado por F2Pool, si los otros grupos de minería hubieran estado ejecutando un nodo completo para procesar la totalidad de la cadena de bloques de Bitcoin , los bloques no válidos deberían haber sido detectados más rápidamente.
Consenso común
Si bien no es algo inusual con las actualizaciones de software, la situación fue digna de mención ya que el bloque no válido fue posteriormente construido por la red minera más grande.
Peter Gray, fundador de la API para desarrolladores de Bitcoin Coinkite, señaló que los problemas con las actualizaciones de software son comunes, como resultado de las continuas actualizaciones que se realizan a la red de pagos.
"Creo que es útil recordar a la gente que las bifurcaciones ocurren cada semana en Bitcoin. Normalmente, solo un bloque queda huérfano en una semana típica, y no se trata de un error ni de un ataque ni nada por el estilo; simplemente es la forma en que funciona Bitcoin ", dijo Gray.
Las empresas mineras que resolvieron bloques no válidos perdieron ingresos como resultado de la necesidad de corregir el problema, y Bitcoin estima que se retuvieron efectivamente $50,000 en ingresos de F2Pool, AntPool y BTC Nuggets. tres pools de mineríaque efectivamente creó y propagó brevemente la cadena inválida.
Las recompensas finalmente nunca se pagaron ya que las ganancias de 25 BTC por bloque se enviaron a una billetera de Bitcoin que invalidó los bloques después de sincronizarse con la cadena válida.
Efectos posteriores
En su advertencia, Bitcoin dijo que los clientes cuyas transacciones de Bitcoin fueron confirmadas antes de la medianoche (UTC) del 6 de julio no se vieron afectados por el fallo, aunque se cree que las transacciones realizadas después de esta hora tienen puntajes de confirmación "significativamente menos confiables".
Bitcoin explicadoLa confirmación debloques no válidosSe debe a que los clientes de software no se actualizaron a Bitcoin CORE 0.9.5 o posterior y advirtió que las billeteras livianas que usan SPV y las billeteras web eran particularmente vulnerables al error.
Bitcoin advirtió que el problema seguía sin resolverse y recomendó a los usuarios esperar 30 confirmaciones más de lo habitual antes de aceptar una transacción como válida. También recomendó que los mineros se cambiaran a un pool que validara los bloques de transacciones mediante un nodo completo y que cada minero usara Bitcoin CORE 0.10.2.
En cuanto a las conclusiones más importantes, quienes comentaron sugirieron que el evento debería usarse como recordatorio de la necesidad de que los participantes clave de la red Bitcoin ejecuten nodos completos.
La conclusión clave es la distribución de nodos completos frente a nodos SPV. Todos deberían tener un nodo completo, y quizá no sea rentable o existan otras ventajas de un cliente SPV, pero eso conlleva un riesgo», continuó Federici.
Yessi Bello-Pérez colaboró con el reportaje.
Imagen de una bifurcación en el caminovía Shutterstock
Pete Rizzo
Pete Rizzo fue editor en jefe de CoinDesk hasta septiembre de 2019. Antes de unirse a CoinDesk en 2013, fue editor en la fuente de noticias sobre pagos PYMNTS.com.
