Error en el cálculo de la raíz de Prysm, causando una interrupción en la cadena principal de Ethereum

robot
Generación de resúmenes en curso

Según un informe de PANews, el equipo Prysm ha publicado un análisis detallado sobre la falla técnica ocurrida durante la operación de la mainnet el 14 de diciembre. La causa principal del incidente fue que un nodo beacon, que no estaba sincronizado con la red, recibió una certificación de un nodo no sincronizado, lo que provocó un error inesperado en el proceso de cálculo de la raíz. Esto fue más que un simple error de cliente y tuvo un impacto amplio en toda la red.

Recepción de certificaciones de nodos no sincronizados, inicio de la reacción en cadena en el cálculo de la raíz

El problema se desencadenó cuando el nodo beacon Prysm recibió una certificación que hacía referencia a la raíz del bloque de la época anterior desde un nodo no sincronizado. Para verificar esto, Prysm intentó reconstruir el estado beacon para que fuera compatible con el estado de la cadena reconocido por el nodo no sincronizado, pero esta tarea de reconstrucción del cálculo de la raíz consumió más recursos de cálculo de lo esperado.

Como resultado, los bloques de la época anterior se procesaron en doble, y las operaciones de transición de época, incluido el cálculo de la raíz, generaron una carga excesiva. De hecho, esta vulnerabilidad ya estaba incluida en el PR 15965 de Prysm y fue desplegada en la testnet un mes antes del incidente, pero en ese momento no se detectó ningún problema.

Sobrecarga en el cálculo de la raíz, agotamiento rápido de recursos y estado de no respuesta de los validadores

El 4 de diciembre, durante la sesión de la mainnet de Ethereum en Fusaka, casi todos los nodos Prysm experimentaron retrasos en el procesamiento durante el cálculo de la raíz. Al procesar ciertos datos de prueba, los recursos computacionales se agotaron rápidamente, lo que provocó que los nodos no pudieran responder a las solicitudes de los validadores a tiempo.

Debido a esta escasez de recursos, los bloques y las pruebas comenzaron a perderse en cadena. La falla persistió durante 42 épocas, desde la 411439 hasta la 411480, y 248 de los 1,344 slots quedaron sin bloques, registrando una tasa de pérdida grave del aproximadamente 18.5%.

Caída rápida de la participación en la red hasta el 75%, pérdida de 382 ETH por parte de los validadores

Las repercusiones de este evento fueron más allá de la simple pérdida de bloques, amenazando la estabilidad general de la red. La participación en la red cayó hasta un 75% en un momento, lo que indica que el mecanismo de consenso de Ethereum no estaba funcionando correctamente.

Los validadores perdieron aproximadamente 382 ETH en recompensas debido a la pérdida de bloques y pruebas. Esto no solo representó daños económicos a nivel individual para los validadores afectados, sino que también pudo haber reducido la confianza en toda la red.

Lecciones del error en el cálculo de la raíz, una oportunidad para reevaluar la resiliencia de la red

Curiosamente, Vitalik Buterin mencionó en el pasado que la “pérdida de determinismo en las decisiones” que ocurre ocasionalmente en Ethereum no suele representar un riesgo grave. Sin embargo, el incidente del error en el cálculo de la raíz de Prysm volvió a demostrar claramente cómo un fallo en un solo cliente puede afectar a toda la red. Se espera que en el futuro la diversidad de clientes y la robustez de operaciones clave como el cálculo de raíces sean aún más importantes.

ETH-3,36%
Ver originales
Esta página puede contener contenido de terceros, que se proporciona únicamente con fines informativos (sin garantías ni declaraciones) y no debe considerarse como un respaldo por parte de Gate a las opiniones expresadas ni como asesoramiento financiero o profesional. Consulte el Descargo de responsabilidad para obtener más detalles.
  • Recompensa
  • Comentar
  • Republicar
  • Compartir
Comentar
0/400
Sin comentarios
  • Anclado

Opera con criptomonedas en cualquier momento y lugar
qrCode
Escanea para descargar la aplicación de Gate
Comunidad
Español
  • 简体中文
  • English
  • Tiếng Việt
  • 繁體中文
  • Español
  • Русский
  • Français (Afrique)
  • Português (Portugal)
  • Bahasa Indonesia
  • 日本語
  • بالعربية
  • Українська
  • Português (Brasil)