Finalidad en Bitcoin

El concepto de finalización al 100% en Bitcoin es crucial para el diseño de Stacks. Esto es lo que convierte a Stacks en una verdadera Capa 2 de Bitcoin y le permite aprovechar toda la seguridad inherente a Bitcoin.

La finalización se refiere al punto en el que las transacciones son irreversibles. Una vez que una blockchain alcanza la finalización, es casi imposible cambiar el historial del libro mayor sin emprender medidas extraordinarias que a menudo son computacional y económicamente prohibitivas.

Cuando hablamos de que los bloques de Stacks tienen finalización al 100% en Bitcoin, queremos decir que son tan difíciles de revertir como las propias transacciones de Bitcoin.

Esa es una afirmación audaz, ¿cómo lo logra Stacks?

Como se indicó más arriba, los mineros son responsables de producir bloques de Stacks durante su período, que corresponde a un único bloque de Bitcoin. Como parte de su transacción de confirmación de bloque, que es la transacción que previamente comprometió el hash del siguiente bloque de Stacks en la cadena de Bitcoin, los mineros estarán en cambio obligados a añadir un hash de bloque indexado.

El hash de bloque indexado es el hash del primer bloque producido por el último minero de Stacks en su período. Este es el hash SHA512/256 tanto del hash de consenso de todas las transacciones de Bitcoin previamente aceptadas que Stacks reconoce, como del hash del propio bloque.

Esto anclará la historia de la cadena de Stacks a Bitcoin hasta el inicio del período del minero anterior, así como todo el estado de Bitcoin causalmente dependiente que Stacks haya procesado. Esto garantiza la finalización en Bitcoin, resuelve problemas de conectividad de los mineros al poner la prevención de forks en los stackers, y permite a los nodos con copias actualizadas del estado de la cadena de Stacks identificar qué bloques de Stacks se ven afectados por una reorganización de Bitcoin y recuperar las transacciones de Stacks afectadas.

Esta relación entre los stackers, los mineros, los bloques de Bitcoin y los bloques de Stacks es lo que mantiene la finalización de Bitcoin mientras permite a los mineros producir bloques de Stacks rápidamente. La finalización en Bitcoin se logra porque en cada bloque de Bitcoin N + 1, el estado de la cadena de Stacks a partir del inicio del período N se escribe en Bitcoin. Incluso si en una fecha futura todas las claves de firma de los antiguos stackers fueran comprometidas, no podrían reescribir la historia de Stacks para el período N sin reescribir la historia de Bitcoin hasta el período N + 1.

Por ello, las transacciones de Stacks pueden considerarse con finalización en Bitcoin después de que finalice el período del que forman parte, es decir, el bloque de Bitcoin N + 1. Por ejemplo, si inicio una transacción de Stacks que es confirmada por un minero de Stacks, al finalizar el período de ese minero (el final del bloque de Bitcoin actual) esa transacción se escribirá en Bitcoin como parte del estado de la cadena de Stacks y todos los mineros futuros estarán obligados a construir sobre esa punta de cadena, haciendo que revertir la transacción sea tan difícil como revertir la transacción correspondiente en Bitcoin.

circle-info

Punto clave: En cada bloque de Bitcoin N + 1 se ancla en Bitcoin el estado de la cadena de Stacks correspondiente al inicio del período N. Esto hace que revertir la historia de Stacks para el período N sea tan difícil como reescribir la historia de Bitcoin hasta N + 1.

Transacciones de Nakamoto y reorganizaciones de Bitcoin

Si las transacciones de Nakamoto siguen la finalización de Bitcoin, ¿qué sucede si Bitcoin hace un fork?

Para responder a esta pregunta, necesitamos distinguir entre dos tipos de transacciones de Stacks: las que dependen de Bitcoin y las internas.

circle-info
  • Dependientes de Bitcoin son transacciones que leen el estado de Bitcoin. Si Bitcoin hace un fork, estas transacciones cambiarán. Para estas, no se puede hacer mejor que seguir la finalización de Bitcoin. Por ejemplo, si moviste BTC de L1 a L2, debes esperar la finalización de Bitcoin antes de que tu BTC en L2 pueda usarse (no tienes BTC en L2 si la transacción en L1 queda sin confirmar debido a un fork).

  • Internas las transacciones no dependen del estado de Bitcoin y, por lo tanto, no cambiarán si Bitcoin hace un fork. Estas pueden tener confirmaciones más rápidas porque incluso si Bitcoin hace un fork, los firmantes pueden asegurarse de que se vuelvan a procesar en el mismo orden.

La conclusión clave es la siguiente:

Bajo Nakamoto Stacks, las transacciones no se reorganizarán de forma impactante debido a un fork de Bitcoin. No solo las reorganizaciones son relativamente poco frecuentes, sino que las transacciones en Stacks que se reorganizaron debido a un fork de Bitcoin se comportan exactamente como lo hacen las transacciones reorganizadas de Bitcoin. Con algo de análisis futuro, las transacciones puramente en la cadena L2 podrían algún día verse completamente afectadas.

chevron-rightLee más sobre el comportamiento de las reorganizaciones de Bitcoinhashtag

Si te interesa aprender más sobre cómo funciona esto, consulta la Reorganizaciones de Bitcoin página de la documentación.

Última actualización

¿Te fue útil?