Hechos clave:
-
Las versiones antiguas de Geth contendrĆan fallas de consenso en la red.
-
El error se habĆa corregido hace cinco versiones, pero los clientes debĆan actualizar.
El ecosistema alrededor del proyecto Ethereum amaneciĆ³ de golpe este miĆ©rcoles tras una divisiĆ³n en la cadena. La causa del chain split serĆa por las demoras en la actualizaciĆ³n de los clientes de sus nodos. Uno que destaca es el de la empresa Infura que, segĆŗn se conociĆ³, corrĆa una versiĆ³n antigua del cliente Geth.
La situaciĆ³n fue descrita por el desarrollador de Blockchair, Nikita Zhavoronkov, al decir:
Ā«En algĆŗn momento, los desarrolladores de Ethereum introdujeron un cambio en el cĆ³digo que llevĆ³ hoy a una divisiĆ³n de la cadena a partir del bloque 11234873 (07:08 UTC). Aquellos que no han actualizado (@Blockchair, @infura_io, algunos mineros y muchos otros) se atascaron en una cadena minoritaria (~ 30 bloques en 2 horas)Ā».
El programador indicĆ³ que tĆ©cnicamente se tratĆ³ de un hard fork o bifurcaciĆ³n dura sin previo aviso. AdemĆ”s, cuestionĆ³ la situaciĆ³n al decir que se tratarĆa de un Ā«fracasoĀ» para el consenso de Ethereum, lo que no debe subestimarse. SegĆŗn su opiniĆ³n lo ocurrido es el problema mĆ”s grave que Ethereum ha enfrentado desde la debacle de DAO hace 4 aƱos.
Maniobras de Infura sobre lo ocurrido en Ethereum
El error generĆ³ mĆŗltiples demoras y caĆda de servicios, ya que, en el caso de Infura, la compaƱĆa ofrece soporte a diversas empresas que no corren sus propios nodos, sino que utilizan sus servicios como proveedor tercerizado.
Infura emitiĆ³Ā una alerta a las 4:12 de la madrugada (hora de Venezuela) en el que advirtiĆ³ que habĆan registrado un Ā«corte de servicioĀ» para su API de Ethereum. A las 5:47 am Infura identificĆ³ el problema sin ofrecer detalles sobre lo ocurrido. Sin embargo, casi dos horas despuĆ©s indicĆ³ lo siguiente:
Ā«La causa principal fue rastreada a varios componentes dentro de nuestra infraestructura que fueron bloqueados a una versiĆ³n estable mĆ”s antigua del cliente go-ethereum. (Esto) encontrĆ³ un error de consenso crĆtico en el bloque 11234873, lo que afectĆ³ a varias versiones de Geth, incluyendo la 1.9.9 y la 1.9.13. Los componentes que funcionaban en 1.9.19 y posteriores no se vieron afectados. Se completarĆ” y compartirĆ” una autopsia completa despuĆ©s de que se resuelva el incidenteĀ».
En medio de la recuperaciĆ³n del servicio, Infura informĆ³ a sus clientes que estaba limitando el trĆ”fico en su puerta de enlace de la API para Ā«acelerar la recuperaciĆ³n del servicioĀ».
Servicios detenidos y reacciones de usuarios
El CEO del exchange Binance, Changpeng Zhao, publicĆ³ en su cuenta en Twitter que habĆan suspendido temporalmente los retiros, pero que los fondos estaban resguardados. Una hora despuĆ©s informĆ³Ā que tanto los depĆ³sitos como los retiros para los tokens ERC-20 se habĆan restablecidos.
El director de tecnologĆa de la casa de cambio Bitfinex, Paolo Ardonio, hizo un llamado de atenciĆ³n al decir que los exchanges deben correr sus propios nodos de Ethereum. Sobre este punto el propio Zhao indicĆ³ en otro mensaje que ellos en Binance lo tienen, pero que no estaba Ā«seguro de sĆ estarĆ” en una cadena huĆ©rfanaĀ».
En Reddit los usuarios tambiĆ©n dieron a conocer sus puntos de vista colocando el resaltador sobre el tema de la centralizaciĆ³n de servicios. Uno de ellos fue nice2yz quien alegĆ³: Ā«ĀæQuĆ© pasĆ³ con la descentralizaciĆ³n? Esto es vergonzoso para los servicios que no estĆ”n dirigiendo sus propios nodosĀ».
Otro que intervino en el debate fue eastsideski al decir que Ā«hay muchas alternativas a Infura, pero la mayorĆa de las dapps (y aparentemente hasta los exchanges) han sido demasiado perezosos para cambiar. Esto es un buen llamado de atenciĆ³nĀ».
Servicios informativos que siguen los precios en el mercado de criptomonedas como CoinMarketCap alertaron que Infura estaba experimentando problemas, lo que generĆ³ demoras en el reflejo de las cotizaciones. Al momento de escribir este artĆculo, ETH, el token nativo de Ethereum se cotizaba en 461 dĆ³lares por unidad, segĆŗn el Ćndice de precios de CriptoNoticias.