¿Qué significa el término ‘bloque huérfano’ en Bitcoin y cuándo se utiliza?

bloques

(OroyFinanzas.com) – El término ‘bloque huérfano’ se utiliza comúnmente en Bitcoin para referirse a varios conceptos. En los últimos tiempos, con la discusión sobre el aumento del tamaño de los bloques dentro de la comunidad Bitcoin, es uno de los argumentos más generalizados en contra de la ampliación del tamaño de los bloques. En OroyFinanzas.com consideramos que es un término que conviene entender, y a continuación vamos a analizar los diferentes significados y contextos en los que se utiliza.

Significado técnico en Bitcoin del término ‘bloque huérfano’ (orphan block)

La palabra huérfano significa que no tiene padre, madre o ambos. Y es precisamente éste el significado técnico que tienen este tipo de bloques en Bitcoin. Un bloque huérfano (orphan blocks, en inglés) son, por tanto, los bloques resueltos correctamente, y por tanto válidos, pero de los que aún no se conoce su ascendencia completa (generalmente su bloque padre) y, por lo tanto, no pueden ser validados. Cuando los nodos reciben este tipo de bloques, son almacenados en lo que se conoce como ‘piscina de bloques huérfanos’ (orphan blocks pool, en inglés), que es un listado con todos estos bloques huérfanos. Cuando el nodo recibe el bloque padre, correctamente enlazado en la cadena, el bloque huérfano se enlaza con su bloque padre, y es entonces cuando queda eliminado de la piscina de bloques huérfanos y pasa a formar parte de la cadena de bloques. Con frecuencia este tipo de bloques se dan cuando dos bloques son minados en un breve periodo de tiempo y los nodos los recibe inversamente, es decir, primero reciben el bloque hijo y posteriormente el bloque padre.

Los ‘stale blocks’ o bloques caducados/anticuados también se conocen generalmente como bloques huérfanos

Sin embargo, a pesar de que este es el significado técnico exacto, con frecuencia el uso de este término se refiere también a otro tipo de bloques, conocidos técnicamente como bloque caducado o anticuado (stale blocks en inglés).

Este tipo de bloques, son los que se forman habitualmente cuando dos mineros consiguen resolver un bloque con pocos segundos de diferencia. De tal forma que en ese momento, ambos emiten sus bloques válidos a la red. Ambos mineros están en lo cierto, sus bloques son válidos y, por lo tanto, ambos tienen derecho a recibir la recompensa (coinbase) asociada a su bloque, la cual emiten. Sin embargo, algunos nodos recibirán un bloque antes que el otro, y comenzarán a resolver el siguiente bloque basándose en el hash del que hayan recibido primero. Por otro lado, habrá otros nodos que recibirán el otro bloque primero. Y, por lo tanto, tendrán en cuenta el hash de éste para resolver el siguiente bloque. En ese momento, ambos bloques válidos están en el mismo nivel de la cadena de bloques y crearán lo que se conoce como una bifurcación de la cadena de bloques ocasional o temporal.

Finalmente un minero produce otro nuevo bloque hijo de uno de los dos bloques competidores que habían sido minados simultáneamente. Y es en ese momento cuando el resto de nodos descartan el otro bloque, ya que para resolver el siguiente bloque deben elegir la cadena de bloques más extensa, o lo que es lo mismo, con más dificultad. Estos bloques, rechazados en el siguiente nivel de la cadena que, sin embargo, son técnicamente bloques válidos, verificados, y cuya ascendencia al bloque génesis existe (por lo tanto no son literalmente huérfanos), simplemente ya no están activos. Son lo que técnicamente se llama bloques caducados o anticuados, aunque con más frecuencia es denominado también bloque huérfano.

Stale y Orphan blocks
Diferencia entre bloque huérfano (orphan block) y bloque anticuado/caducado (stale block)

¿Por qué se ha generalizado el término bloques huérfanos para los bloques caducados o anicuados?

De hecho, incluso en algunos libros y textos avanzados de Bitcoin resulta difícil encontrar el término caducado o anticuado para referirse a este tipo de bloques, y se utiliza indistintamente huérfano para ambos conceptos. Puede llevar a confusión ya que éstos últimos no son huérfanos en el sentido literal de la palabra, ya que sí tienen un bloque padre en la cadena.

Una explicación para entender por qué se ha extendido este término para este concepto es que desde el punto de vista de los mineros, el coinbase que habían enviado asociado a dicho bloque, se denomina huérfano en el cliente, y queda como tal registrado en la cadena de bloques. Sin embargo, es importante resaltar que un minero que haya resuelto un bloque caducado o anticuado nunca recibirá los bitcoins asociados a la recompensa de dicho bloque.

Dado el uso generalizado en la comunidad del término huéfano, para referirse a estos bloques, en OroyFinanzas.com también lo hemos utilizado indistintamente en nuestros contenidos, por ejemplo en este artículo sobre los forks y en este sobre la cadena de bloques.

¿Con qué frecuencia ocurren los bloques huérfanos?

Los bloques huérfanos ocurren con frecuencia. Blockchain.info hace un seguimiento de todos los bloques huérfanos que aparecen en la red y suelen darse varios cada día (entre 1 y 3 de media). Teniendo en cuenta que los bloques se extraen de media cada diez minutos, durante un día se completan 144 bloques, es decir, algo más del 1% de los bloques que se minan en un día son bloques huérfanos.

Fuente: Bitcoin.org

© OroyFinanzas.com

loading...

© OroyFinanzas.com

Sobre el autor

OroyFinanzas.com
El equipo de analistas de OroyFinanzas.com y sus autores invitados para fomentar el entendimiento del dinero.
mencionado en: