octubre 2, 2022
Blockchain Guía Noticias

¿Qué es la reorganización en cadena? – Entender el término en detalle

A reorganization can be abbreviated as reorg, which happens when a block is removed from the blockchain in order to make space for a longer chain. This process allows for a more efficient and streamlined network. Despite its many potential benefits, blockchain remains plagued by challenges. For instance, a block conflict becomes an increasingly common flaw for the blockchain that indicates that if two blocks are being published around the same time, a fork can occur. This is a potential danger for the blockchain.

El método de resolución de conflictos que se utiliza actualmente se basa en la regla denominada «Longest Chain Rule» (regla de la cadena más larga), que establece que si existen diferentes bloques, se considera válida la cadena más larga. Esto asegura que cada nodo sigue el requisito particular de un protocolo, tratando de extender la rama más extensa que conoce. Esta regla ayuda a mantener el orden de la blockchain retrasando las transacciones que se producen en el lado equivocado de una bifurcación.

Esto hace que algunas transacciones se reorganicen en nuevos bloques, lo que mantiene la cadena de bloques funcionando sin problemas. En pocas palabras, la reorganización de la cadena se refiere a un proceso por el cual los bloques de la cadena antigua se desactivan en favor de los bloques de la nueva cadena más larga. Esto ayuda a garantizar que la cadena de bloques sea siempre precisa y coherente. Para comprender completamente la reorganización de la cadena, primero tenemos que aprender algunos conceptos fundamentales, como los fundamentos de la tecnología de la cadena de bloques, los nodos, los bloques y su funcionamiento.

Empezando por una comprensión básica de la tecnología blockchain, tendrá que explorar sus muchos componentes esenciales. Esto le dará una comprensión más profunda de cómo funciona el blockchain, y cómo se puede utilizar en varios campos. La cadena de bloques es una forma innovadora de hacer un seguimiento de las transacciones, garantizando la precisión y la seguridad. Considérelo como una red de ordenadores interconectados que se conocen como nodos. Cada nodo mantiene la base de datos, asegurando que sea precisa y esté actualizada.

Las cadenas de bloques no son todas iguales, y cada una tiene sus propias características que deben tenerse en cuenta. Las cadenas de bloques utilizan distintos mecanismos de consenso, como el proof-of-stake (PoS) y el proof-of-work (PoW). Esto las hace muy diferentes y les permite operar de distintas maneras.

A medida que los usuarios realizan transacciones, los nodos deben verificarlas. Una vez verificada, sigue estando «pendiente» a menos que la recoja un minero (un nodo especializado). Diferentes pools de minería y mineros de Bitcoin de todo el mundo compiten constantemente por la confirmación de estas transacciones. Una vez que la transacción es aprobada, se añade a la cadena de bloques. Sin embargo, los mineros pondrán en los bloques las transacciones que están pendientes en lugar de confirmarlas. El bloque validado se difunde rápidamente a todos los nodos de la red para asegurarse de que es correcto.

Una vez completado el proceso de validación, los nodos añaden nuevos bloques a los antiguos, formando una cadena. Además, los nodos almacenan una copia completa de la cadena de bloques, lo que ayuda a garantizar la coherencia de la red. Ahora que hemos explorado la información básica de la tecnología subyacente de blockchain, podemos entender la reorganización de la cadena de una manera más precisa.

La reorganización de la cadena suele verse en las cadenas de bloques más populares, como Ethereum y Bitcoin. Esto se debe a que estas cadenas de bloques están diseñadas para ser más tolerantes a los fallos, lo que permite realizar cambios más amplios en la red. Esto ocurre cuando una cadena se congestiona demasiado y necesita dividirse para seguir funcionando. Cuando dos nodos construyen un bloque simultáneamente, puede producirse una condición de carrera. Esto puede llevar a una verificación incorrecta de los bloques y a una posible inestabilidad de la red.

Estos bloques, ambos recientes y de la misma cadena de bloques, crean una bifurcación temporal en la red. Esto obliga a otros nodos a tomar una decisión sobre cuál de los dos bloques incluir en su blockchain. Como la reorganización de la cadena suele ocurrir cuando se minan dos bloques al mismo tiempo, habrá desacuerdos sobre el bloque que se minó primero. Diferentes nodos crearán bloques diferentes, por lo que es importante que los bloques se creen rápidamente para que la red pueda funcionar correctamente.

Así, la reorganización de la cadena asegura que todos los nodos contengan las mismas copias del libro mayor, lo que es esencial para mantener el consenso y garantizar que todas las transacciones se registren correctamente. Esto es importante porque garantiza que todos los operadores de los nodos puedan acordar el estado del libro mayor y realizar transacciones.

¿Cómo funciona el proceso de reorganización de la cadena?

Una reorganización de la cadena de bloques se refiere a una situación que hace que los nodos reciban bloques de la cadena más nueva mientras la cadena anterior todavía existe. Esto puede causar problemas a la cadena antigua, ya que puede no ser capaz de seguir el nuevo ritmo. Puede llevar a la inestabilidad y a la confusión en la red, llevando potencialmente a una división de la cadena. Reorganizar los bloques de forma que se reduzca el número de bifurcaciones aumenta la probabilidad de que la red acabe encontrando la cadena correcta.

Por lo tanto, si hay algunos nodos que son más rápidos en comparación con otros, la cadena de bloques se reorganizará. A medida que los nodos más rápidos sean más frecuentes, no podrán llegar a un consenso sobre qué bloque deben procesar primero, y seguirán añadiendo bloques a la cadena de bloques, lo que hará que la cadena más corta sea la que finalmente se procese.

Con los nodos más rápidos que se añaden a la red, las cadenas de bloques seguirán creciendo a diferentes ritmos. Finalmente, una de las cadenas de bloques tendrá una cadena más larga y será aceptada como la versión oficial. En el caso de que dos mineros encuentren un bloque al mismo tiempo, el proceso de distribución de los nuevos bloques en la red hará que el bloque de un minero se vea primero, seguido del bloque encontrado por el segundo minero.

Si dos bloques tienen el mismo nivel de dificultad, se produce un estancamiento y el cliente puede elegir al azar o elegir el bloque que se ha visto anteriormente. A menudo, cuando un tercer minero crea un nuevo bloque después de otros dos mineros, el vínculo se rompe y el otro bloque queda obliterado, lo que da lugar a la reorganización de la blockchain.

Una vez que un nodo ha elegido un bloque, está esencialmente bloqueado y no puede cambiar su elección. Ahora se plantea la cuestión de qué pasará con todas las transacciones que se colocaron en el lado incorrecto del libro mayor. Las transacciones en el lado incorrecto del blockchain se descartan. Dado que sólo las transacciones verificadas en la cadena extendida se incluyen en la blockchain, los bloques que se eliminan o alteran posteriormente no son los segmentos de la historia de la blockchain y serán omitidos eventualmente.

Estos bloques se convierten en huérfanos, lo que significa que no forman parte de ningún otro bloque o grupo. La siguiente pregunta que debe plantearse es ¿cuáles son los resultados de las transacciones que ocurren en los bloques huérfanos? Las transacciones que se producen en los bloques huérfanos no se consideran segmentos del historial oficial de transacciones de la blockchain.

Que se minen dos bloques al mismo tiempo no debería ser un gran problema. Sin embargo, las transacciones de bloques huérfanos deben volver al mempool del nodo. Estas transacciones se propagan entonces por la red y aspiran a ser minadas en cualquiera de los bloques futuros. Dado que la mayoría de las transacciones se producen en el lado correcto de la bifurcación, las que se colocan en el lado equivocado de la bifurcación probablemente experimentarán retrasos durante la reorganización del blockchain.

Dado que las transacciones pueden tardar algún tiempo en ser confirmadas por la red, se considera prudente que la gente espere un tiempo a que las transacciones sean confirmadas por al menos un bloque antes de asumirlas como definitivas. El usuario tiene la posibilidad de que la cadena de bloques se reorganice, en cuyo caso puede esperar que se minen en la cadena ampliada. Pero no siempre está garantizado.

Como la transacción no se incluyó en el bloque más reciente, es como si nunca hubiera existido. Esto significa que cuando un usuario desea consumir su criptodivisa dentro de un bloque huérfano, la transacción sería inválida, ya que los nodos la marcarían. Esto no es posible, porque el activo que el usuario intenta utilizar ni siquiera reside en la cadena. Esto es para prevenir el gasto accidental o malicioso de cripto dentro de un bloque huérfano.

En pocas palabras, hay cierta incoherencia en el momento en que los nodos reciben los bloques debido a la velocidad a la que los bloques se propagan por la red. Dado que hay múltiples bloques que podrían ser considerados los «primeros», habrá un desacuerdo sobre cuál debe ser considerado el primero en la blockchain de cada uno. Este problema puede resolverse minando el siguiente bloque.

A continuación, uno de estos bloques será minado, construyendo sobre un bloque existente para crear una nueva cadena más larga. Cuando cada nodo reciba el último bloque, verá que crea una nueva cadena que es la más larga y reorganizará su cadena para adoptarla. Como resultado, cada nodo es capaz de acordar individualmente la misma versión de la cadena de bloques debido a la reorganización de la cadena.

En pocas palabras, la reorganización de la cadena hace que se desactive el bloque más antiguo del nodo. Cuando la cadena de bloques llega a un bloque con una cadena más larga, elimina el bloque antiguo para dejar espacio al nuevo. La cadena de bloques es un libro de contabilidad distribuido que garantiza que todos los operadores de los nodos tengan la misma copia del libro de contabilidad. Esto se hace a través de la reorganización de la cadena que ayuda a garantizar la fiabilidad y la precisión de la cadena de bloques.

La reorganización de la cadena Ethereum Beacon

La fusión de Ethereum es una novedad revolucionaria que ayudará a mejorar el funcionamiento de la red Ethereum. La actualización de Ethereum 2.0 es un cambio significativo que hace que la red pase de un mecanismo de consenso de una prueba de trabajo (PoW) a una prueba de participación (PoS). La propuesta de fusión de la cadena de balizas de Ethereum y la red principal de Ethereum es un movimiento sensato que beneficiará a ambos proyectos. Está previsto que ocurra en agosto de 2022, y hará que la red combinada sea más fuerte y fiable.

En diciembre de 2020, Ethereum Beacon Chain introdujo el proceso de estaqueo nativo, convirtiéndose en la primera plataforma en ofrecer esta valiosa característica. Esta innovación convirtió a Ethereum Beacon Chain en la plataforma ideal para los inversores que querían ganar recompensas mientras ayudaban a asegurar la red. Mediante el staking de activos, los validadores pasan a formar parte de una poderosa comunidad que puede ayudar a asegurar la blockchain. Sin embargo, el 25 de mayo, la cadena se sometió a una reorganización de siete bloques, que se considera una de las más largas de los últimos años.

Este importante problema de seguridad con la cadena de balizas de Ethereum puso de manifiesto la necesidad de una mayor vigilancia, ya que este fallo de seguridad que se descubrió con la cadena de balizas de Ethereum podría haber tenido graves consecuencias para la red en su conjunto.

¿Qué es la reorganización de los siete bloques?

Analicemos más a fondo la «reorganización de siete bloques». El proceso de validación se interrumpió al ser actualizado por un cliente. Su software anticuado les dejó perplejos durante el proceso de actualización, y no lo actualizaron. Esta «reorganización de siete bloques» significa esencialmente que hay que añadir siete bloques de transacciones nuevas a la red antes de que se descarten. Tras una cuidadosa consideración, la red decidió no utilizar la cadena bifurcada tras concluir que era el camino equivocado.

Pero antes ya se habían añadido siete bloques de transacciones a la base de datos. Según Etherscan, la blockchain de Ethereum alberga una media de 200-300 transacciones por bloque. Esto significa que hasta 2.100 transacciones fueron trasladadas a bloques huérfanos.

¿Qué son los ataques de doble gasto?

Ahora hemos aprendido que si existen dos versiones distintas de una cadena de bloques, se produce una reorganización de la misma. Esto significa que, en caso de disputa, la versión más precisa de la cadena de bloques ganará. Antes de que se procese una reorganización, podría existir el riesgo potencial de que los usuarios gasten sus activos dos veces.

Se trata de un hecho que se denomina «doble gasto». Significa que alguien ha gastado dos monedas diferentes en la misma transacción, y esto se considera algo muy arriesgado. Si alguien gasta maliciosamente la misma moneda dos veces, se trata de un «ataque de doble gasto». Cada vez que un nuevo cliente actualiza su blockchain antes que el resto de validadores, se produce la reorganización de la cadena de Ethereum.

Esto puede llevar a confusión a los validadores, lo que podría hacerles cometer errores. En el caso de la reorganización de la Beacon Chain de Ethereum, los nodos que se actualizaron fueron hasta 12 segundos más rápidos que los nodos que no se actualizaron. Por lo tanto, la reorganización de Beacon Chain parece ser un paso razonable en lugar de uno destructivo.

Ventajas de la reorganización de la cadena

Estos son algunos de los beneficios de la reorganización de la cadena de bloques.

  • Los beneficios de la reorganización de la cadena incluyen una mayor eficiencia en las operaciones de la cadena de bloques. Un libro de contabilidad unificado en cada nodo sería imposible sin la reorganización de la cadena.
  • Esta reorganización de la cadena garantiza que todos los nodos tengan la misma copia del libro mayor, asegurando que todas las transacciones registradas sean válidas, lo que minimiza las posibilidades de errores.
  • El proceso de reorganización de la cadena es relativamente fácil de llevar a cabo, y funcionará sin esfuerzo.

Desventajas de la reorganización de la cadena

La reorganización de la cadena también tiene algunos inconvenientes.

  • Existe un riesgo potencial de doble gasto con la reorganización de la cadena.
  • Cuando dos bloques se publican cerca el uno del otro, puede producirse un conflicto de bloques, que puede llevar a una bifurcación en la cadena de bloques. El conflicto entre bloques se debe a la reorganización de la cadena.
  • Las cadenas que sufren reorganizaciones pueden incurrir en costes adicionales debido a la necesidad de actualizar su estado como resultado de la nueva bifurcación.
  • Since chain reorganization is a possibility, users have to wait for a bit longer before they can be sure that their transactions have been confirmed. Since crypto exchanges don’t accept deposits immediately, it may take them longer to process your payments, which could mean that people are not able to deposit their money as soon as they would like.
  • Dado que la reorganización de la cadena puede aumentar los riesgos de las transacciones para las finanzas descentralizadas, esto significa que los futuros resultados de las operaciones serán menores de lo esperado.
  • La reorganización de la cadena también aumenta el riesgo de estar expuesto a ataques. Esto se debe a que durante una reorganización de la cadena, los atacantes sólo necesitan domar un pequeño porcentaje de los mineros honestos. En cambio, los atacantes simplemente derrotan a los mineros «no honestos». Por lo tanto, la tarea del atacante se hace posible si la reorganización se repite.

Conclusión

Una reorganización de la cadena suele ocurrir cuando se minan dos bloques simultáneamente. No hay un número determinado de bloques que pueda abarcar una reorganización de la cadena. Suele ejecutarse en varios bloques, dependiendo de la situación concreta. Cuando un nodo acepta una nueva cadena con bloques más largos que la cadena actualmente activa, el nodo reorganizará la cadena para aceptar la nueva cadena, sin tener en cuenta su longitud.

Las reorganizaciones de las cadenas son una ocurrencia común en la funcionalidad de un nodo. Al adoptar la cadena más larga, los nodos pueden acordar la misma blockchain en toda la red, haciendo que las reorganizaciones de la cadena sean parte del proceso. Cualquier transacción que se elimine como resultado de una reorganización de la cadena será reciclada en el mempool para que pueda ser minada en la cadena más larga.