La regla de la cadena más larga explicado de forma sencilla

Como hemos comentado en el artículo anterior, la cadena de bloques es lineal, pero ¿Cómo es posible que se mantenga así siempre? ¿Qué pasa cuando dos mineros encuentran la solución del mismo bloque a la vez?

Regla de la cadena más larga

Como hemos comentado, puede ocurrir que dos mineros encuentren el hash de un bloque a la vez. El problema de esta casuística es que hay que decidir cual de las dos es válida. Para ello Bitcoin usa la regla de la cadena más larga.

Esta regla lo que nos quiere decir es que el minero que tenga un mayor número de bloques de la cadena oficial, es el verdadero.

Es complicado de entender, pongamos un ejemplo de la vida real (referencia):

Pensemos que somos un pequeño pueblo en el que somos agricultores de arroz. Siempre que recolectamos el arroz lo metemos en sacos de 1KG y los metemos en un carro para llevarlo al ayuntamiento del pueblo y venderlo.

Un día se produce una discusión sobre los sacos de arroz.

Algunos agricultores quieren aumentar el tamaño del saco para aumentar así sus beneficios. Sin embargo, otros agricultores no quieren porque para los más viejos, jóvenes o más débiles sería imposible cargarlo.

El alcalde sugiere que se haga una votación para ver qué elige el pueblo, con una objeción: 
"¿Es eso justo? Trabajo mucho más que estos muchachos. Cosecho mucho más arroz y mi voto debería contar más"

Aquí aparece un agricultor llamado Satoshi Nakamoto, el cual sugiere que se vote con los sacos de arroz. Cada saco de arroz será un voto. De esta forma quien más sacos de arroz tenga, los agricultores que más sacos de arroz produzcan debido a que han trabajado más fuerte, tendrán más peso en la votación.

Todo el mundo acepta esa idea y al día siguiente delante del ayuntamiento se forman dos filas, una a favor de aumentar el tamaño de los sacos y otra en contra. La cadena más larga será la ganadora.

Al final del día la cadena que vota a favor de no aumentar el tamaño de los sacos resulta ser la ganadora porque tiene una cadena de sacos más larga. (No es relevante el resultado en la explicación)

Dentro de la Blockchain, los desacuerdos se resuelven de la misma manera. Cada saco del ejemplo se representa como un bloque y cada fila de sacos representa una cadena.

Cada nodo coloca el primer bloque que recibe en la parte superior de su cadena de bloques.

Siempre que haya un desacuerdo, los participantes de la red (mineros) pueden elegir que cadena quieren seguir, comenzando así una nueva cadena de bloques. Los participantes de la red que estén de acuerdo con esta nueva cadena pueden empezar a añadir bloques a esta nueva cadena. De esta forma se crearan más bloques en una cadena que en otra porque hay más nodos trabajando en ella. (Esto no es del todo así, en las redes como Bitcoin va por capacidad de computo. Como hemos visto en el ejemplo, el trabajador que más duro trabaja tiene más voto que el resto. En términos computacionales, los nodos que tengan «mejor ordenador» tendrán más peso que los que tengan un «peor ordenador»)

Cada cierto tiempo, si la nueva cadena extiende de la anterior, la regla de la cadena más larga se activará y se declarará como la cadena ganadora.

Los nodos están felices de abandonar la cadena más corta en favor de la nueva más larga. Esto se conoce como reorganización en cadena.

En el siguiente artículo explicaremos uno de los fallos de seguridad que tiene la regla de la cadena más larga y como lo solventa Bitcoin.

Deja un comentario